taxtank-core 0.11.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taxtank-core.umd.js +2742 -2773
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/collections/collection.js +4 -1
- package/esm2015/lib/collections/depreciation.collection.js +24 -10
- package/esm2015/lib/collections/transaction.collection.js +28 -1
- package/esm2015/lib/collections/vehicle-logbook.collection.js +88 -0
- package/esm2015/lib/collections/vehicle.collection.js +9 -0
- package/esm2015/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.js +3 -1
- package/esm2015/lib/db/Enums/chart-accounts-list.enum.js +4 -3
- package/esm2015/lib/db/Models/vehicle-claim.js +1 -1
- package/esm2015/lib/db/Models/vehicle.js +1 -1
- package/esm2015/lib/forms/index.js +3 -1
- package/esm2015/lib/forms/vehicle/vehicle-claim.form.js +114 -0
- package/esm2015/lib/forms/vehicle/vehicle.form.js +20 -0
- package/esm2015/lib/interfaces/event-listener.interface.js +1 -1
- package/esm2015/lib/interfaces/expense.interface.js +2 -0
- package/esm2015/lib/interfaces/tank.interface.js +1 -1
- package/esm2015/lib/models/chart-accounts/chart-accounts-value.js +4 -0
- package/esm2015/lib/models/chart-accounts/chart-accounts.js +34 -1
- package/esm2015/lib/models/depreciation/depreciation.js +5 -1
- package/esm2015/lib/models/event/app-event-type.enum.js +4 -1
- package/esm2015/lib/models/logbook/logbook-period.js +8 -1
- package/esm2015/lib/models/logbook/vehicle-claim.js +63 -4
- package/esm2015/lib/models/logbook/vehicle-logbook.js +9 -3
- package/esm2015/lib/models/logbook/vehicle.js +7 -29
- package/esm2015/lib/models/transaction/transaction.js +1 -1
- package/esm2015/lib/services/account-setup/account-setup.service.js +7 -22
- package/esm2015/lib/services/http/bank/bank-account/bank-account.service.js +6 -15
- package/esm2015/lib/services/http/bank/bank-connection/bank-connection.service.js +6 -15
- package/esm2015/lib/services/http/bank/bank-transaction/bank-transaction.service.js +6 -15
- package/esm2015/lib/services/http/bank/basiq/basiq.service.js +6 -15
- package/esm2015/lib/services/http/chart-accounts/chart-accounts.service.js +1 -1
- package/esm2015/lib/services/http/chat/chat.service.js +8 -12
- package/esm2015/lib/services/http/chat/message/message.service.js +8 -12
- package/esm2015/lib/services/http/chat/message-document/message-document.service.js +1 -1
- package/esm2015/lib/services/http/depreciation/depreciation.service.js +6 -23
- package/esm2015/lib/services/http/document/document-folder/document-folder.service.js +6 -14
- package/esm2015/lib/services/http/firm/client-movement/client-movement.service.js +6 -15
- package/esm2015/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.js +6 -15
- package/esm2015/lib/services/http/income-source/income-source.service.js +6 -14
- package/esm2015/lib/services/http/income-source/salary-forecast/salary-forecast.service.js +6 -15
- package/esm2015/lib/services/http/income-source/sole-forecast/sole-forecast.service.js +6 -15
- package/esm2015/lib/services/http/loan/loan.service.js +6 -15
- package/esm2015/lib/services/http/property/property-document/property-document.service.js +6 -15
- package/esm2015/lib/services/http/property/property-share/property-share.service.js +6 -15
- package/esm2015/lib/services/http/property/property.service.js +6 -15
- package/esm2015/lib/services/http/rest/rest.service.js +31 -4
- package/esm2015/lib/services/http/service-notification/service-notification.service.js +8 -12
- package/esm2015/lib/services/http/subscription/subscription.service.js +1 -4
- package/esm2015/lib/services/http/tax-review/tax-review-history/tax-review-history.service.js +15 -16
- package/esm2015/lib/services/http/tax-review/tax-review.service.js +6 -15
- package/esm2015/lib/services/http/tax-summary/tax-summary.service.js +1 -1
- package/esm2015/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.js +6 -15
- package/esm2015/lib/services/http/transaction/transaction.service.js +6 -25
- package/esm2015/lib/services/http/user/user-event-setting/user-event-setting.service.js +6 -14
- package/esm2015/lib/services/http/user/user-event-type/user-event-type.service.js +6 -14
- package/esm2015/lib/services/http/vehicle/messages.enum.js +13 -0
- package/esm2015/lib/services/http/vehicle/vehicle-claim.service.js +24 -0
- package/esm2015/lib/services/http/vehicle/vehicle-logbook.service.js +59 -0
- package/esm2015/lib/services/http/vehicle/vehicle.service.js +49 -213
- package/esm2015/public-api.js +7 -2
- package/fesm2015/taxtank-core.js +2481 -2458
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/collections/collection.d.ts +1 -0
- package/lib/collections/depreciation.collection.d.ts +5 -4
- package/lib/collections/transaction.collection.d.ts +9 -0
- package/lib/collections/vehicle-logbook.collection.d.ts +30 -0
- package/lib/collections/vehicle.collection.d.ts +6 -0
- package/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.d.ts +3 -1
- package/lib/db/Enums/chart-accounts-list.enum.d.ts +4 -3
- package/lib/db/Models/vehicle-claim.d.ts +2 -0
- package/lib/db/Models/vehicle.d.ts +2 -0
- package/lib/forms/index.d.ts +2 -0
- package/lib/forms/vehicle/vehicle-claim.form.d.ts +43 -0
- package/lib/forms/vehicle/vehicle.form.d.ts +11 -0
- package/lib/interfaces/event-listener.interface.d.ts +1 -0
- package/lib/interfaces/expense.interface.d.ts +12 -0
- package/lib/interfaces/tank.interface.d.ts +2 -0
- package/lib/models/chart-accounts/chart-accounts-value.d.ts +3 -0
- package/lib/models/chart-accounts/chart-accounts.d.ts +18 -0
- package/lib/models/depreciation/depreciation.d.ts +6 -2
- package/lib/models/event/app-event-type.enum.d.ts +4 -1
- package/lib/models/logbook/logbook-period.d.ts +4 -0
- package/lib/models/logbook/vehicle-claim.d.ts +20 -3
- package/lib/models/logbook/vehicle-logbook.d.ts +8 -2
- package/lib/models/logbook/vehicle.d.ts +5 -7
- package/lib/models/transaction/transaction.d.ts +2 -2
- package/lib/services/account-setup/account-setup.service.d.ts +3 -7
- package/lib/services/http/bank/bank-account/bank-account.service.d.ts +2 -7
- package/lib/services/http/bank/bank-connection/bank-connection.service.d.ts +2 -7
- package/lib/services/http/bank/bank-transaction/bank-transaction.service.d.ts +3 -8
- package/lib/services/http/bank/basiq/basiq.service.d.ts +2 -7
- package/lib/services/http/chat/chat.service.d.ts +4 -7
- package/lib/services/http/chat/message/message.service.d.ts +4 -7
- package/lib/services/http/chat/message-document/message-document.service.d.ts +3 -3
- package/lib/services/http/depreciation/depreciation.service.d.ts +2 -11
- package/lib/services/http/document/document-folder/document-folder.service.d.ts +0 -6
- package/lib/services/http/firm/client-movement/client-movement.service.d.ts +2 -7
- package/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.d.ts +2 -7
- package/lib/services/http/income-source/income-source.service.d.ts +0 -6
- package/lib/services/http/income-source/salary-forecast/salary-forecast.service.d.ts +1 -7
- package/lib/services/http/income-source/sole-forecast/sole-forecast.service.d.ts +2 -7
- package/lib/services/http/loan/loan.service.d.ts +2 -7
- package/lib/services/http/property/property-document/property-document.service.d.ts +3 -8
- package/lib/services/http/property/property-share/property-share.service.d.ts +2 -7
- package/lib/services/http/property/property.service.d.ts +2 -7
- package/lib/services/http/rest/rest.service.d.ts +17 -2
- package/lib/services/http/service-notification/service-notification.service.d.ts +4 -7
- package/lib/services/http/subscription/subscription.service.d.ts +0 -1
- package/lib/services/http/tax-review/tax-review-history/tax-review-history.service.d.ts +7 -7
- package/lib/services/http/tax-review/tax-review.service.d.ts +1 -7
- package/lib/services/http/tax-summary/tax-summary.service.d.ts +2 -1
- package/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.d.ts +3 -8
- package/lib/services/http/transaction/transaction.service.d.ts +0 -12
- package/lib/services/http/user/user-event-setting/user-event-setting.service.d.ts +0 -6
- package/lib/services/http/user/user-event-type/user-event-type.service.d.ts +0 -6
- package/lib/services/http/vehicle/messages.enum.d.ts +11 -0
- package/lib/services/http/vehicle/vehicle-claim.service.d.ts +13 -0
- package/lib/services/http/vehicle/vehicle-logbook.service.d.ts +22 -0
- package/lib/services/http/vehicle/vehicle.service.d.ts +17 -80
- package/package.json +1 -1
- package/public-api.d.ts +6 -1
- package/esm2015/lib/collections/logbook.collection.js +0 -97
- package/lib/collections/logbook.collection.d.ts +0 -19
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ChartAccountsValue as ChartAccountsValueBase } from '../../db/Models/chart-accounts-value';
|
|
2
|
+
export class ChartAccountsValue extends ChartAccountsValueBase {
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtYWNjb3VudHMtdmFsdWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzLXZhbHVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsSUFBSSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXBHLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxzQkFBc0I7Q0FDN0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFydEFjY291bnRzVmFsdWUgYXMgQ2hhcnRBY2NvdW50c1ZhbHVlQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9jaGFydC1hY2NvdW50cy12YWx1ZSc7XG5cbmV4cG9ydCBjbGFzcyBDaGFydEFjY291bnRzVmFsdWUgZXh0ZW5kcyBDaGFydEFjY291bnRzVmFsdWVCYXNlIHtcbn1cbiJdfQ==
|
|
@@ -7,6 +7,8 @@ import { ChartAccountsListEnum } from '../../db/Enums/chart-accounts-list.enum';
|
|
|
7
7
|
import { ChartAccountsCategoryEnum } from '../../db/Enums/chart-accounts-category.enum';
|
|
8
8
|
import { ChartAccountsHeadingVehicleListEnum } from '../../db/Enums/chart-accounts-heading-vehicle-list.enum';
|
|
9
9
|
import { CHART_ACCOUNTS_CATEGORIES } from './chart-accounts-categories.const';
|
|
10
|
+
import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
|
|
11
|
+
import { FinancialYear } from '../financial-year/financial-year';
|
|
10
12
|
export class ChartAccounts extends ChartAccountsBase {
|
|
11
13
|
/**
|
|
12
14
|
* Return name as string
|
|
@@ -20,6 +22,25 @@ export class ChartAccounts extends ChartAccountsBase {
|
|
|
20
22
|
isKlmsForWork() {
|
|
21
23
|
return this.id === ChartAccountsListEnum.KLMS_TRAVELLED_FOR_WORK;
|
|
22
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* Check if chart accounts id is related for 'Klms travelled for sole' category
|
|
27
|
+
*/
|
|
28
|
+
isKlmsForSole() {
|
|
29
|
+
return this.id === ChartAccountsListEnum.KLMS_TRAVELLED;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Check if accounts id is related for KLMs category related to passed tank type
|
|
33
|
+
*/
|
|
34
|
+
isKLMsByTankType(tankType) {
|
|
35
|
+
switch (tankType) {
|
|
36
|
+
case TankTypeEnum.WORK:
|
|
37
|
+
return this.isKlmsForWork();
|
|
38
|
+
case TankTypeEnum.SOLE:
|
|
39
|
+
return this.isKlmsForSole();
|
|
40
|
+
default:
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
23
44
|
/**
|
|
24
45
|
* Check if chart accounts id is related for 'NRAS Tax Offset' category
|
|
25
46
|
*/
|
|
@@ -114,6 +135,18 @@ export class ChartAccounts extends ChartAccountsBase {
|
|
|
114
135
|
isVehicleLoanExpense() {
|
|
115
136
|
return this.id === ChartAccountsListEnum.VEHICLE_LOAN_INTEREST || this.id === ChartAccountsListEnum.VEHICLE_LOAN_PRINCIPAL;
|
|
116
137
|
}
|
|
138
|
+
/**
|
|
139
|
+
* Get chart accounts value for current financial year
|
|
140
|
+
*/
|
|
141
|
+
getCurrentYearValue() {
|
|
142
|
+
return this.getValueByYear(new FinancialYear().year);
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Get chart accounts value by financial year
|
|
146
|
+
*/
|
|
147
|
+
getValueByYear(year) {
|
|
148
|
+
return this.values.find((value) => value.financialYear === year);
|
|
149
|
+
}
|
|
117
150
|
}
|
|
118
151
|
__decorate([
|
|
119
152
|
Type(() => ChartAccountsHeading)
|
|
@@ -121,4 +154,4 @@ __decorate([
|
|
|
121
154
|
__decorate([
|
|
122
155
|
Type(() => ChartAccountsMetadata)
|
|
123
156
|
], ChartAccounts.prototype, "metadata", void 0);
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtYWNjb3VudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxJQUFJLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEYsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQzlHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRTlFLE1BQU0sT0FBTyxhQUFjLFNBQVEsaUJBQWlCO0lBT2xEOztPQUVHO0lBQ0gsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsRUFBRSxLQUFLLHFCQUFxQixDQUFDLHVCQUF1QixDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU07UUFDSixPQUFPLElBQUksQ0FBQyxFQUFFLEtBQUsscUJBQXFCLENBQUMsbUJBQW1CLENBQUM7SUFDL0QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUMsRUFBRSxLQUFLLHFCQUFxQixDQUFDLGdCQUFnQixDQUFDO0lBQzVELENBQUM7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cG9ydCB7IENoYXJ0QWNjb3VudHMgYXMgQ2hhcnRBY2NvdW50c0Jhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvY2hhcnQtYWNjb3VudHMnO1xyXG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xyXG5pbXBvcnQgeyBDaGFydEFjY291bnRzSGVhZGluZyB9IGZyb20gJy4vY2hhcnQtYWNjb3VudHMtaGVhZGluZyc7XHJcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNNZXRhZGF0YSB9IGZyb20gJy4vY2hhcnQtYWNjb3VudHMtbWV0YWRhdGEnO1xyXG5pbXBvcnQgeyBDaGFydEFjY291bnRzTGlzdEVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1saXN0LmVudW0nO1xyXG5pbXBvcnQgeyBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcnkuZW51bSc7XHJcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNIZWFkaW5nVmVoaWNsZUxpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtaGVhZGluZy12ZWhpY2xlLWxpc3QuZW51bSc7XHJcbmltcG9ydCB7IENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMgfSBmcm9tICcuL2NoYXJ0LWFjY291bnRzLWNhdGVnb3JpZXMuY29uc3QnO1xyXG5cclxuZXhwb3J0IGNsYXNzIENoYXJ0QWNjb3VudHMgZXh0ZW5kcyBDaGFydEFjY291bnRzQmFzZSB7XHJcbiAgQFR5cGUoKCkgPT4gQ2hhcnRBY2NvdW50c0hlYWRpbmcpXHJcbiAgaGVhZGluZzogQ2hhcnRBY2NvdW50c0hlYWRpbmc7XHJcblxyXG4gIEBUeXBlKCgpID0+IENoYXJ0QWNjb3VudHNNZXRhZGF0YSlcclxuICBtZXRhZGF0YTogQ2hhcnRBY2NvdW50c01ldGFkYXRhW107XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiBuYW1lIGFzIHN0cmluZ1xyXG4gICAqL1xyXG4gIHRvU3RyaW5nKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaWQgaXMgcmVsYXRlZCBmb3IgJ0tsbXMgdHJhdmVsbGVkIGZvciB3b3JrJyBjYXRlZ29yeVxyXG4gICAqL1xyXG4gIGlzS2xtc0ZvcldvcmsoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLktMTVNfVFJBVkVMTEVEX0ZPUl9XT1JLO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaWQgaXMgcmVsYXRlZCBmb3IgJ05SQVMgVGF4IE9mZnNldCcgY2F0ZWdvcnlcclxuICAgKi9cclxuICBpc05SQVMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlRBWF9PRkZTRVRTX05fUl9BX1M7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGFydCBhY2NvdW50cyBpZCBpcyByZWxhdGVkIGZvciAnSW50ZXJlc3Qgb24gTG9hbicgY2F0ZWdvcnlcclxuICAgKi9cclxuICBpc0ludGVyZXN0T25Mb2FuKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9PTl9MT0FOO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaWQgaXMgcmVsYXRlZCBmb3IgJ01vdG9yIFZlaGljbGVzJyBjYXRlZ29yeVxyXG4gICAqL1xyXG4gIGlzVmVoaWNsZXMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlZFSElDTEVTO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaWQgaXMgcmVsYXRlZCBmb3IgJ0ludGVyZXN0IEVhcm5lZCcgY2F0ZWdvcnlcclxuICAgKi9cclxuICBpc0ludGVyZXN0RWFybmVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9FQVJORUQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGFydCBhY2NvdW50cyBpZCBpcyByZWxhdGVkIGZvciAnVHJ1c3QgSW5jb21lJyBjYXRlZ29yeVxyXG4gICAqL1xyXG4gIGlzVHJ1c3RJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlRSVVNUX0lOQ09NRTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoZWNrIGlmIGNoYXJ0IGFjY291bnRzIGlkIGlzIHJlbGF0ZWQgZm9yICdNb3RvciB2ZWhpY2xlcyAoY29tbWVyY2lhbCBjYXJzKScgY2F0ZWdvcnlcclxuICAgKi9cclxuICBpc0NvbW1lcmNpYWxWZWhpY2xlcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uQ09NTUVSQ0lBTF9WRUhJQ0xFUztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoZWNrIGlmIGNoYXJ0IGFjY291bnRzIGlzIHdvcmsgaW5jb21lXHJcbiAgICovXHJcbiAgaXNXb3JrSW5jb21lKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnkgPT09IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uV09SS19JTkNPTUU7XHJcbiAgfVxyXG5cclxuICBpc1ZlaGljbGVFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhQ2hhcnRBY2NvdW50c0hlYWRpbmdWZWhpY2xlTGlzdEVudW1bdGhpcy5oZWFkaW5nPy5pZF07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGFydCBhY2NvdW50cyBpcyBvdGhlciBpbmNvbWVcclxuICAgKi9cclxuICBpc090aGVySW5jb21lKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnkgPT09IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uT1RIRVJfSU5DT01FO1xyXG4gIH1cclxuXHJcbiAgaXNJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5pbmNvbWUuaW5jbHVkZXModGhpcy5jYXRlZ29yeSk7XHJcbiAgfVxyXG5cclxuICBpc1Byb3BlcnR5KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucHJvcGVydHkuaW5jbHVkZXModGhpcy5jYXRlZ29yeSk7XHJcbiAgfVxyXG5cclxuICBpc1dvcmtFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFtDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtLldPUktfRVhQRU5TRSwgQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bS5PVEhFUl9FWFBFTlNFLCBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtLldPUktfREVQUkVDSUFUSU9OXVxyXG4gICAgICAuaW5jbHVkZXModGhpcy5jYXRlZ29yeSk7XHJcbiAgfVxyXG5cclxuICBpc1NvbGVFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFtDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtLlNPTEVfRVhQRU5TRSwgQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bS5TT0xFX0RFUFJFQ0lBVElPTl1cclxuICAgICAgLmluY2x1ZGVzKHRoaXMuY2F0ZWdvcnkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaXMgcHJvcGVydHkgZXhwZW5zZVxyXG4gICAqL1xyXG4gIGlzUHJvcGVydHlFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnkgPT09IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uUFJPUEVSVFlfRVhQRU5TRTtcclxuICB9XHJcblxyXG4gIGlzUGVyc29uYWwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wZXJzb25hbC5pbmNsdWRlcyh0aGlzLmNhdGVnb3J5KTtcclxuICB9XHJcblxyXG4gIGlzUGVyc29uYWxFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnkgPT09IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uUEVSU09OQUxfRVhQRU5TRTtcclxuICB9XHJcblxyXG4gIGlzUHJvcGVydHlEZXByZWNpYXRpb24oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gW0NoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uUFJPUEVSVFlfREVQUkVDSUFUSU9OLCBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtLlBST1BFUlRZX0NBUElUQUxfV09SS1NdXHJcbiAgICAgIC5pbmNsdWRlcyh0aGlzLmNhdGVnb3J5KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoZWNrIGlmIGNoYXJ0IGFjY291bnRzIGNhdGVnb3J5IGlzIGRlcHJlY2lhdGlvblxyXG4gICAqL1xyXG4gIGlzRGVwcmVjaWF0aW9uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuZGVwcmVjaWF0aW9uLmluY2x1ZGVzKHRoaXMuY2F0ZWdvcnkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gY2hhcnQgYWNjb3VudCBpcyB3b3JrIHJlbGF0ZWQgY2FyIGV4cGVuc2VzXHJcbiAgICovXHJcbiAgaXNWZWhpY2xlTG9hbkV4cGVuc2UoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlZFSElDTEVfTE9BTl9JTlRFUkVTVCB8fCB0aGlzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uVkVISUNMRV9MT0FOX1BSSU5DSVBBTDtcclxuICB9XHJcbn1cclxuIl19
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtYWNjb3VudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxJQUFJLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEYsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQzlHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFHakUsTUFBTSxPQUFPLGFBQWMsU0FBUSxpQkFBaUI7SUFPbEQ7O09BRUc7SUFDSCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRDs7T0FFRztJQUNILGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxFQUFFLEtBQUsscUJBQXFCLENBQUMsdUJBQXVCLENBQUM7SUFDbkUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLEVBQUUsS0FBSyxxQkFBcUIsQ0FBQyxjQUFjLENBQUM7SUFDMUQsQ0FBQztJQUVE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LFFBQVEsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDWixPQUFPLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxFQUFFLEtBQUsscUJBQXFCLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLEVBQUUsS0FBSyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQztJQUM3SCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxtQkFBbUI7UUFDakIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYyxDQUFDLElBQVk7UUFDekIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQXlCLEVBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDaEcsQ0FBQztDQUNGO0FBcktDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDOzhDQUNIO0FBRzlCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDOytDQUNBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyBhcyBDaGFydEFjY291bnRzQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9jaGFydC1hY2NvdW50cyc7XHJcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XHJcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNIZWFkaW5nIH0gZnJvbSAnLi9jaGFydC1hY2NvdW50cy1oZWFkaW5nJztcclxuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c01ldGFkYXRhIH0gZnJvbSAnLi9jaGFydC1hY2NvdW50cy1tZXRhZGF0YSc7XHJcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XHJcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcclxuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0hlYWRpbmdWZWhpY2xlTGlzdEVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1oZWFkaW5nLXZlaGljbGUtbGlzdC5lbnVtJztcclxuaW1wb3J0IHsgQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUyB9IGZyb20gJy4vY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XHJcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcclxuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c1ZhbHVlIH0gZnJvbSAnLi9jaGFydC1hY2NvdW50cy12YWx1ZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgQ2hhcnRBY2NvdW50cyBleHRlbmRzIENoYXJ0QWNjb3VudHNCYXNlIHtcclxuICBAVHlwZSgoKSA9PiBDaGFydEFjY291bnRzSGVhZGluZylcclxuICBoZWFkaW5nOiBDaGFydEFjY291bnRzSGVhZGluZztcclxuXHJcbiAgQFR5cGUoKCkgPT4gQ2hhcnRBY2NvdW50c01ldGFkYXRhKVxyXG4gIG1ldGFkYXRhOiBDaGFydEFjY291bnRzTWV0YWRhdGFbXTtcclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJuIG5hbWUgYXMgc3RyaW5nXHJcbiAgICovXHJcbiAgdG9TdHJpbmcoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLm5hbWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGFydCBhY2NvdW50cyBpZCBpcyByZWxhdGVkIGZvciAnS2xtcyB0cmF2ZWxsZWQgZm9yIHdvcmsnIGNhdGVnb3J5XHJcbiAgICovXHJcbiAgaXNLbG1zRm9yV29yaygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uS0xNU19UUkFWRUxMRURfRk9SX1dPUks7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGFydCBhY2NvdW50cyBpZCBpcyByZWxhdGVkIGZvciAnS2xtcyB0cmF2ZWxsZWQgZm9yIHNvbGUnIGNhdGVnb3J5XHJcbiAgICovXHJcbiAgaXNLbG1zRm9yU29sZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uS0xNU19UUkFWRUxMRUQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBhY2NvdW50cyBpZCBpcyByZWxhdGVkIGZvciBLTE1zIGNhdGVnb3J5IHJlbGF0ZWQgdG8gcGFzc2VkIHRhbmsgdHlwZVxyXG4gICAqL1xyXG4gIGlzS0xNc0J5VGFua1R5cGUodGFua1R5cGU6IFRhbmtUeXBlRW51bSk6IGJvb2xlYW4ge1xyXG4gICAgc3dpdGNoICh0YW5rVHlwZSkge1xyXG4gICAgICBjYXNlIFRhbmtUeXBlRW51bS5XT1JLOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmlzS2xtc0ZvcldvcmsoKTtcclxuICAgICAgY2FzZSBUYW5rVHlwZUVudW0uU09MRTpcclxuICAgICAgICByZXR1cm4gdGhpcy5pc0tsbXNGb3JTb2xlKCk7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaWQgaXMgcmVsYXRlZCBmb3IgJ05SQVMgVGF4IE9mZnNldCcgY2F0ZWdvcnlcclxuICAgKi9cclxuICBpc05SQVMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlRBWF9PRkZTRVRTX05fUl9BX1M7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGFydCBhY2NvdW50cyBpZCBpcyByZWxhdGVkIGZvciAnSW50ZXJlc3Qgb24gTG9hbicgY2F0ZWdvcnlcclxuICAgKi9cclxuICBpc0ludGVyZXN0T25Mb2FuKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9PTl9MT0FOO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaWQgaXMgcmVsYXRlZCBmb3IgJ01vdG9yIFZlaGljbGVzJyBjYXRlZ29yeVxyXG4gICAqL1xyXG4gIGlzVmVoaWNsZXMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlZFSElDTEVTO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaWQgaXMgcmVsYXRlZCBmb3IgJ0ludGVyZXN0IEVhcm5lZCcgY2F0ZWdvcnlcclxuICAgKi9cclxuICBpc0ludGVyZXN0RWFybmVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9FQVJORUQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGFydCBhY2NvdW50cyBpZCBpcyByZWxhdGVkIGZvciAnVHJ1c3QgSW5jb21lJyBjYXRlZ29yeVxyXG4gICAqL1xyXG4gIGlzVHJ1c3RJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlRSVVNUX0lOQ09NRTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoZWNrIGlmIGNoYXJ0IGFjY291bnRzIGlkIGlzIHJlbGF0ZWQgZm9yICdNb3RvciB2ZWhpY2xlcyAoY29tbWVyY2lhbCBjYXJzKScgY2F0ZWdvcnlcclxuICAgKi9cclxuICBpc0NvbW1lcmNpYWxWZWhpY2xlcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uQ09NTUVSQ0lBTF9WRUhJQ0xFUztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoZWNrIGlmIGNoYXJ0IGFjY291bnRzIGlzIHdvcmsgaW5jb21lXHJcbiAgICovXHJcbiAgaXNXb3JrSW5jb21lKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnkgPT09IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uV09SS19JTkNPTUU7XHJcbiAgfVxyXG5cclxuICBpc1ZlaGljbGVFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhQ2hhcnRBY2NvdW50c0hlYWRpbmdWZWhpY2xlTGlzdEVudW1bdGhpcy5oZWFkaW5nPy5pZF07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGFydCBhY2NvdW50cyBpcyBvdGhlciBpbmNvbWVcclxuICAgKi9cclxuICBpc090aGVySW5jb21lKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnkgPT09IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uT1RIRVJfSU5DT01FO1xyXG4gIH1cclxuXHJcbiAgaXNJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5pbmNvbWUuaW5jbHVkZXModGhpcy5jYXRlZ29yeSk7XHJcbiAgfVxyXG5cclxuICBpc1Byb3BlcnR5KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucHJvcGVydHkuaW5jbHVkZXModGhpcy5jYXRlZ29yeSk7XHJcbiAgfVxyXG5cclxuICBpc1dvcmtFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFtDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtLldPUktfRVhQRU5TRSwgQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bS5PVEhFUl9FWFBFTlNFLCBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtLldPUktfREVQUkVDSUFUSU9OXVxyXG4gICAgICAuaW5jbHVkZXModGhpcy5jYXRlZ29yeSk7XHJcbiAgfVxyXG5cclxuICBpc1NvbGVFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFtDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtLlNPTEVfRVhQRU5TRSwgQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bS5TT0xFX0RFUFJFQ0lBVElPTl1cclxuICAgICAgLmluY2x1ZGVzKHRoaXMuY2F0ZWdvcnkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgY2hhcnQgYWNjb3VudHMgaXMgcHJvcGVydHkgZXhwZW5zZVxyXG4gICAqL1xyXG4gIGlzUHJvcGVydHlFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnkgPT09IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uUFJPUEVSVFlfRVhQRU5TRTtcclxuICB9XHJcblxyXG4gIGlzUGVyc29uYWwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wZXJzb25hbC5pbmNsdWRlcyh0aGlzLmNhdGVnb3J5KTtcclxuICB9XHJcblxyXG4gIGlzUGVyc29uYWxFeHBlbnNlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnkgPT09IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uUEVSU09OQUxfRVhQRU5TRTtcclxuICB9XHJcblxyXG4gIGlzUHJvcGVydHlEZXByZWNpYXRpb24oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gW0NoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uUFJPUEVSVFlfREVQUkVDSUFUSU9OLCBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtLlBST1BFUlRZX0NBUElUQUxfV09SS1NdXHJcbiAgICAgIC5pbmNsdWRlcyh0aGlzLmNhdGVnb3J5KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoZWNrIGlmIGNoYXJ0IGFjY291bnRzIGNhdGVnb3J5IGlzIGRlcHJlY2lhdGlvblxyXG4gICAqL1xyXG4gIGlzRGVwcmVjaWF0aW9uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuZGVwcmVjaWF0aW9uLmluY2x1ZGVzKHRoaXMuY2F0ZWdvcnkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gY2hhcnQgYWNjb3VudCBpcyB3b3JrIHJlbGF0ZWQgY2FyIGV4cGVuc2VzXHJcbiAgICovXHJcbiAgaXNWZWhpY2xlTG9hbkV4cGVuc2UoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlZFSElDTEVfTE9BTl9JTlRFUkVTVCB8fCB0aGlzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uVkVISUNMRV9MT0FOX1BSSU5DSVBBTDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBjaGFydCBhY2NvdW50cyB2YWx1ZSBmb3IgY3VycmVudCBmaW5hbmNpYWwgeWVhclxyXG4gICAqL1xyXG4gIGdldEN1cnJlbnRZZWFyVmFsdWUoKTogQ2hhcnRBY2NvdW50c1ZhbHVlIHtcclxuICAgIHJldHVybiB0aGlzLmdldFZhbHVlQnlZZWFyKG5ldyBGaW5hbmNpYWxZZWFyKCkueWVhcik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgY2hhcnQgYWNjb3VudHMgdmFsdWUgYnkgZmluYW5jaWFsIHllYXJcclxuICAgKi9cclxuICBnZXRWYWx1ZUJ5WWVhcih5ZWFyOiBudW1iZXIpOiBDaGFydEFjY291bnRzVmFsdWUge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsdWVzLmZpbmQoKHZhbHVlOiBDaGFydEFjY291bnRzVmFsdWUpOiBib29sZWFuID0+IHZhbHVlLmZpbmFuY2lhbFllYXIgPT09IHllYXIpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -16,6 +16,10 @@ export class Depreciation extends DepreciationBase {
|
|
|
16
16
|
super(...arguments);
|
|
17
17
|
this.forecasts = [];
|
|
18
18
|
this.type = DepreciationTypeEnum.PLANT_EQUIPMENT;
|
|
19
|
+
/**
|
|
20
|
+
* @TODO remove after ? signs removed from db models
|
|
21
|
+
*/
|
|
22
|
+
this.amount = 0;
|
|
19
23
|
}
|
|
20
24
|
isCapital() {
|
|
21
25
|
return this.type === DepreciationTypeEnum.CAPITAL_WORKS;
|
|
@@ -149,4 +153,4 @@ __decorate([
|
|
|
149
153
|
__decorate([
|
|
150
154
|
Type(() => BankTransaction)
|
|
151
155
|
], Depreciation.prototype, "bankTransaction", void 0);
|
|
152
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjaWF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9kZXByZWNpYXRpb24vZGVwcmVjaWF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDM0YsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0seURBQXlELENBQUM7QUFDOUcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFJM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXpELE1BQU0sT0FBTyxZQUFhLFNBQVEsZ0JBQWdCO0lBQWxEOztRQXNDRSxjQUFTLEdBQTJCLEVBQUUsQ0FBQztRQVF2QyxTQUFJLEdBQXlCLG9CQUFvQixDQUFDLGVBQWUsQ0FBQztJQTBHcEUsQ0FBQztJQXRHQyxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLG9CQUFvQixDQUFD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WUFBWSxDQUFDLHdCQUF3QixDQUFDO29CQUN4RyxDQUFDLENBQUMsR0FBRyxDQUFDLFlBQVksSUFBSSxJQUFJLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3BHLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDLENBQUM7K0NBQ3FDO0FBR3ZDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQzttREFDRztBQUc3QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7cURBQ0siLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXByZWNpYXRpb24gYXMgRGVwcmVjaWF0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9kZXByZWNpYXRpb24nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9kZXByZWNpYXRpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi1jYWxjdWxhdGlvbi5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNIZWFkaW5nVmVoaWNsZUxpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtaGVhZGluZy12ZWhpY2xlLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTGlzdEVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1saXN0LmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QgfSBmcm9tICcuL2RlcHJlY2lhdGlvbi1jYXBpdGFsLXByb2plY3QnO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uRm9yZWNhc3QgfSBmcm9tICcuL2RlcHJlY2lhdGlvbi1mb3JlY2FzdCc7XG5pbXBvcnQgeyBGaW5hbmNpYWxZZWFyIH0gZnJvbSAnLi4vZmluYW5jaWFsLXllYXIvZmluYW5jaWFsLXllYXInO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbiB9IGZyb20gJy4uL2JhbmsvYmFuay10cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBJVGFuayB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvdGFuay5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSVJlY2VpcHQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3JlY2VpcHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IElBc3NldCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYXNzZXQuaW50ZXJmYWNlJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcywgVHJhbnNmb3JtLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuLi90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBEZXByZWNpYXRpb24gZXh0ZW5kcyBEZXByZWNpYXRpb25CYXNlIGltcGxlbWVudHMgSVRhbmssIElSZWNlaXB0IHtcbiAgc3RhdGljIFdSSVRURU5fT0ZGX1RIUkVTSE9MRCA9IDMwMDtcbiAgc3RhdGljIExPV19WQUxVRV9QT09MX1RIUkVTSE9MRCA9IDEwMDA7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgcHVyY2hhc2VEYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIGRhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgbG93VmFsdWVQb29sRGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICB3cml0ZU9mZk1hbnVhbERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgd3JpdGVPZmZEYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0KVxuICBkZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdDogRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3Q7XG5cbiAgQFR5cGUoKCkgPT4gRGVwcmVjaWF0aW9uRm9yZWNhc3QpXG4gIEBUcmFuc2Zvcm0oKHt2YWx1ZSwgb2JqfSkgPT4ge1xuICAgIC8vIHZhbHVlID0gYXJyYXkgb2YgRGVwcmVjaWF0aW9uRm9yZWNhc3RcbiAgICAvLyBvYmogPSBwbGFpbiAod2hvbGUgRGVwcmVjaWF0aW9uIG9iamVjdClcbiAgICAvLyBTZXQgaXNMVlAgZmxhZyBmb3IgZWFjaCBEZXByZWNpYXRpb25Gb3JlY2FzdFxuICAgIC8vIEBUT0RPIHJlZmFjdG9yXG4gICAgdmFsdWUuZm9yRWFjaCgoZm9yZWNhc3Q6IERlcHJlY2lhdGlvbkZvcmVjYXN0KTogdm9pZCA9PiB7XG4gICAgICBmb3JlY2FzdC5pc0xWUCA9XG4gICAgICAgIGZvcmVjYXN0LmNsb3NlQmFsYW5jZSA8IDEwMDAgJiZcbiAgICAgICAgb2JqLmNhbGN1bGF0aW9uID09PSBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0uRElNSU5JU0hJTkcgJiZcbiAgICAgICAgb2JqLnR5cGUgPT09IERlcHJlY2lhdGlvblR5cGVFbnVtLlBMQU5UX0VRVUlQTUVOVCAmJlxuICAgICAgICAhKG9iai5hbW91bnQgPiBEZXByZWNpYXRpb24uV1JJVFRFTl9PRkZfVEhSRVNIT0xEICYmIG9iai5hbW91bnQgPCBEZXByZWNpYXRpb24uTE9XX1ZBTFVFX1BPT0xfVEhSRVNIT0xEKSAmJlxuICAgICAgICAhKG9iai53cml0ZU9mZkRhdGUgJiYgbmV3IEZpbmFuY2lhbFllYXIobmV3IERhdGUob2JqLndyaXRlT2ZmRGF0ZSkpLnllYXIgPT09IG9iai5maW5hbmNpYWxZZWFyKTtcbiAgICB9KTtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH0pXG4gIGZvcmVjYXN0czogRGVwcmVjaWF0aW9uRm9yZWNhc3RbXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IENoYXJ0QWNjb3VudHMpXG4gIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHM7XG5cbiAgQFR5cGUoKCkgPT4gQmFua1RyYW5zYWN0aW9uKVxuICBiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbjtcblxuICB0eXBlOiBEZXByZWNpYXRpb25UeXBlRW51bSA9IERlcHJlY2lhdGlvblR5cGVFbnVtLlBMQU5UX0VRVUlQTUVOVDtcblxuICByZWNlaXB0OiBJQXNzZXQ7XG5cbiAgaXNDYXBpdGFsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IERlcHJlY2lhdGlvblR5cGVFbnVtLkNBUElUQUxfV09SS1M7XG4gIH1cblxuICBpc0JvcnJvd2luZ0V4cGVuc2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gRGVwcmVjaWF0aW9uVHlwZUVudW0uQk9SUk9XSU5HX0VYUEVOU0VTO1xuICB9XG5cbiAgaXNBc3NldCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBEZXByZWNpYXRpb25UeXBlRW51bS5QTEFOVF9FUVVJUE1FTlQ7XG4gIH1cblxuICAvKipcbiAgICogY2hlY2sgaWYgZGVwcmVjaWF0aW9uIHNob3VsZCBiZSBkaXNwbGF5ZWQgaW4gd3JpdHRlbiBvZmYgY2F0ZWdvcnlcbiAgICogZGV0YWlscyBpbiBwcm9qZWN0IGRvY3VtZW50YXRpb25cbiAgICogQFRPRE8gbmV3IEZpbmFuY2lhbFllYXIodGhpcy53cml0ZU9mZkRhdGUpID09PSBuZXcgRmluYW5jaWFsWWVhcigpXG4gICAqL1xuICBpc1dyaXR0ZW5PZmYoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNBc3NldCAmJiB0aGlzLndyaXRlT2ZmRGF0ZSAmJiBuZXcgRmluYW5jaWFsWWVhcih0aGlzLndyaXRlT2ZmRGF0ZSkueWVhciA9PT0gdGhpcy5maW5hbmNpYWxZZWFyO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGRlcHJlY2lhdGlvbiBpcyBQbGFudCAmIEVxdWlwbWVudFxuICAgKi9cbiAgaXNQbGFudEVxdWlwbWVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0Fzc2V0KCkgJiYgIXRoaXMuaXNXcml0dGVuT2ZmKCkgJiYgIXRoaXMuaXNMb3dWYWx1ZVBvb2woKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBjaGVjayBpZiBkZXByZWNpYXRpb24gc2hvdWxkIGJlIGRpc3BsYXllZCBpbiBsb3cgdmFsdWUgcG9vbFxuICAgKiBkZXRhaWxzIGluIHByb2plY3QgZG9jdW1lbnRhdGlvblxuICAgKiBAVE9ETyBuZXcgRmluYW5jaWFsWWVhcih0aGlzLndyaXRlT2ZmRGF0ZSkgPT09IG5ldyBGaW5hbmNpYWxZZWFyKClcbiAgICovXG4gIGlzTG93VmFsdWVQb29sKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzQXNzZXQgJiZcbiAgICAgIHRoaXMuY2FsY3VsYXRpb24gPT09IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bS5ESU1JTklTSElORyAmJlxuICAgICAgdGhpcy5hbW91bnQgPiBEZXByZWNpYXRpb24uV1JJVFRFTl9PRkZfVEhSRVNIT0xEICYmXG4gICAgICB0aGlzLmFtb3VudCA8PSBEZXByZWNpYXRpb24uTE9XX1ZBTFVFX1BPT0xfVEhSRVNIT0xEO1xuICB9XG5cbiAgaXNQcmltZUNvc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRpb24gPT09IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bS5QUklNRV9DT1NUO1xuICB9XG5cbiAgaXNEaW1pbmlzaGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jYWxjdWxhdGlvbiA9PT0gRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtLkRJTUlOSVNISU5HO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGRlcHJlY2lhdGlvbiBjaGFydCBhY2NvdW50cyBoZWFkaW5nIHJlbGF0ZWQgdG8gdmVoaWNsZXMgY2F0ZWdvcnlcbiAgICovXG4gIGlzVmVoaWNsZURlcHJlY2lhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmhlYWRpbmc/LmlkID09PSBDaGFydEFjY291bnRzSGVhZGluZ1ZlaGljbGVMaXN0RW51bS5ERVBSRUNJQVRJT05fVkVISUNMRVM7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGRlcHJlY2lhdGlvbiBwdXJjaGFzZSBkYXRlXG4gICAqL1xuICBnZXREYXRlKCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLmRhdGU7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gd3JvbmcgeWVhciwgdXNlIGN1cnJlbnQgZmluYW5jaWFsIHllYXIsIGNoZWNrIGV2ZXJ5d2hlcmVcbiAgICovXG4gIGdldCBjdXJyZW50WWVhckZvcmVjYXN0KCk6IERlcHJlY2lhdGlvbkZvcmVjYXN0IHtcbiAgICByZXR1cm4gdGhpcy5mb3JlY2FzdHMuZmluZCgoZm9yZWNhc3Q6IERlcHJlY2lhdGlvbkZvcmVjYXN0KTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gZm9yZWNhc3QuZmluYW5jaWFsWWVhciA9PT0gbmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0Rm9yZWNhc3RCeVllYXIoeWVhcjogbnVtYmVyKTogRGVwcmVjaWF0aW9uRm9yZWNhc3Qge1xuICAgIHJldHVybiB0aGlzLmZvcmVjYXN0cy5maW5kKChmb3JlY2FzdDogRGVwcmVjaWF0aW9uRm9yZWNhc3QpOiBib29sZWFuID0+IHtcbiAgICAgIHJldHVybiBmb3JlY2FzdC5maW5hbmNpYWxZZWFyID09PSB5ZWFyO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0Q2xhaW1BbW91bnRCeVllYXIoeWVhcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRGb3JlY2FzdEJ5WWVhcih5ZWFyKT8uY2xhaW1BbW91bnQgfHwgMDtcbiAgfVxuXG4gIGdldENsb3NlQmFsYW5jZUJ5WWVhcih5ZWFyOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldEZvcmVjYXN0QnlZZWFyKHllYXIpPy5jbG9zZUJhbGFuY2UgfHwgMDtcbiAgfVxuXG4gIGlzQnVpbGRpbmdBdENvc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLkJVSUxESU5HX0FUX0NPU1Q7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IHRyYW5zYWN0aW9uIGZyb20gY3VycmVudCBkZXByZWNpYXRpb25cbiAgICovXG4gIHRvVHJhbnNhY3Rpb24ocGFyYW1zID0ge30pOiBUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhcbiAgICAgIFRyYW5zYWN0aW9uLFxuICAgICAgT2JqZWN0LmFzc2lnbihwYXJhbXMsIHRoaXMsICB7YW1vdW50OiB0aGlzLmN1cnJlbnRZZWFyRm9yZWNhc3QuYW1vdW50fSlcbiAgICApO1xuICB9XG5cbiAgZ2V0IGNsYWltQW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFllYXJGb3JlY2FzdD8uY2xhaW1BbW91bnQgfHwgMDtcbiAgfVxufVxuIl19
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjaWF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9kZXByZWNpYXRpb24vZGVwcmVjaWF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDM0YsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0seURBQXlELENBQUM7QUFDOUcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR3pELE1BQU0sT0FBTyxZQUFhLFNBQVEsZ0JBQWdCO0lBQWxEOztRQXNDRSxjQUFTLEdBQTJCLEVBQUUsQ0FBQztRQVF2QyxTQUFJLEdBQXlCLG9CQUFvQixDQUFDLGVBQWUsQ0FBQztRQUlsRTs7V0FFRztRQUNILFdBQU0sR0FBVyxDQUFDLENBQUM7SUF3R3JCLENBQUM7SUF0R0MsU0FBUztRQUNQ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Q0FBQyxxQkFBcUIsSUFBSSxHQUFHLENBQUMsTUFBTSxHQUFHLFlBQVksQ0FBQyx3QkFBd0IsQ0FBQztvQkFDeEcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxZQUFZLElBQUksSUFBSSxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNwRyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQyxDQUFDOytDQUNxQztBQUd2QztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUM7bURBQ0c7QUFHN0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDO3FEQUNLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVwcmVjaWF0aW9uIGFzIERlcHJlY2lhdGlvbkJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvZGVwcmVjaWF0aW9uJztcbmltcG9ydCB7IERlcHJlY2lhdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9kZXByZWNpYXRpb24tY2FsY3VsYXRpb24uZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzSGVhZGluZ1ZlaGljbGVMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWhlYWRpbmctdmVoaWNsZS1saXN0LmVudW0nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0xpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtbGlzdC5lbnVtJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0IH0gZnJvbSAnLi9kZXByZWNpYXRpb24tY2FwaXRhbC1wcm9qZWN0JztcbmltcG9ydCB7IERlcHJlY2lhdGlvbkZvcmVjYXN0IH0gZnJvbSAnLi9kZXByZWNpYXRpb24tZm9yZWNhc3QnO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHMgfSBmcm9tICcuLi9jaGFydC1hY2NvdW50cy9jaGFydC1hY2NvdW50cyc7XG5pbXBvcnQgeyBCYW5rVHJhbnNhY3Rpb24gfSBmcm9tICcuLi9iYW5rL2JhbmstdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgSVJlY2VpcHQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3JlY2VpcHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IElBc3NldCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYXNzZXQuaW50ZXJmYWNlJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcywgVHJhbnNmb3JtLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuLi90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBFeHBlbnNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9leHBlbnNlLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBEZXByZWNpYXRpb24gZXh0ZW5kcyBEZXByZWNpYXRpb25CYXNlIGltcGxlbWVudHMgRXhwZW5zZSwgSVJlY2VpcHQge1xuICBzdGF0aWMgV1JJVFRFTl9PRkZfVEhSRVNIT0xEID0gMzAwO1xuICBzdGF0aWMgTE9XX1ZBTFVFX1BPT0xfVEhSRVNIT0xEID0gMTAwMDtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBwdXJjaGFzZURhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBsb3dWYWx1ZVBvb2xEYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIHdyaXRlT2ZmTWFudWFsRGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICB3cml0ZU9mZkRhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QpXG4gIGRlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0OiBEZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdDtcblxuICBAVHlwZSgoKSA9PiBEZXByZWNpYXRpb25Gb3JlY2FzdClcbiAgQFRyYW5zZm9ybSgoe3ZhbHVlLCBvYmp9KSA9PiB7XG4gICAgLy8gdmFsdWUgPSBhcnJheSBvZiBEZXByZWNpYXRpb25Gb3JlY2FzdFxuICAgIC8vIG9iaiA9IHBsYWluICh3aG9sZSBEZXByZWNpYXRpb24gb2JqZWN0KVxuICAgIC8vIFNldCBpc0xWUCBmbGFnIGZvciBlYWNoIERlcHJlY2lhdGlvbkZvcmVjYXN0XG4gICAgLy8gQFRPRE8gcmVmYWN0b3JcbiAgICB2YWx1ZS5mb3JFYWNoKChmb3JlY2FzdDogRGVwcmVjaWF0aW9uRm9yZWNhc3QpOiB2b2lkID0+IHtcbiAgICAgIGZvcmVjYXN0LmlzTFZQID1cbiAgICAgICAgZm9yZWNhc3QuY2xvc2VCYWxhbmNlIDwgMTAwMCAmJlxuICAgICAgICBvYmouY2FsY3VsYXRpb24gPT09IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bS5ESU1JTklTSElORyAmJlxuICAgICAgICBvYmoudHlwZSA9PT0gRGVwcmVjaWF0aW9uVHlwZUVudW0uUExBTlRfRVFVSVBNRU5UICYmXG4gICAgICAgICEob2JqLmFtb3VudCA+IERlcHJlY2lhdGlvbi5XUklUVEVOX09GRl9USFJFU0hPTEQgJiYgb2JqLmFtb3VudCA8IERlcHJlY2lhdGlvbi5MT1dfVkFMVUVfUE9PTF9USFJFU0hPTEQpICYmXG4gICAgICAgICEob2JqLndyaXRlT2ZmRGF0ZSAmJiBuZXcgRmluYW5jaWFsWWVhcihuZXcgRGF0ZShvYmoud3JpdGVPZmZEYXRlKSkueWVhciA9PT0gb2JqLmZpbmFuY2lhbFllYXIpO1xuICAgIH0pO1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfSlcbiAgZm9yZWNhc3RzOiBEZXByZWNpYXRpb25Gb3JlY2FzdFtdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gQ2hhcnRBY2NvdW50cylcbiAgY2hhcnRBY2NvdW50czogQ2hhcnRBY2NvdW50cztcblxuICBAVHlwZSgoKSA9PiBCYW5rVHJhbnNhY3Rpb24pXG4gIGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uO1xuXG4gIHR5cGU6IERlcHJlY2lhdGlvblR5cGVFbnVtID0gRGVwcmVjaWF0aW9uVHlwZUVudW0uUExBTlRfRVFVSVBNRU5UO1xuXG4gIHJlY2VpcHQ6IElBc3NldDtcblxuICAvKipcbiAgICogQFRPRE8gcmVtb3ZlIGFmdGVyID8gc2lnbnMgcmVtb3ZlZCBmcm9tIGRiIG1vZGVsc1xuICAgKi9cbiAgYW1vdW50OiBudW1iZXIgPSAwO1xuXG4gIGlzQ2FwaXRhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBEZXByZWNpYXRpb25UeXBlRW51bS5DQVBJVEFMX1dPUktTO1xuICB9XG5cbiAgaXNCb3Jyb3dpbmdFeHBlbnNlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IERlcHJlY2lhdGlvblR5cGVFbnVtLkJPUlJPV0lOR19FWFBFTlNFUztcbiAgfVxuXG4gIGlzQXNzZXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gRGVwcmVjaWF0aW9uVHlwZUVudW0uUExBTlRfRVFVSVBNRU5UO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrIGlmIGRlcHJlY2lhdGlvbiBzaG91bGQgYmUgZGlzcGxheWVkIGluIHdyaXR0ZW4gb2ZmIGNhdGVnb3J5XG4gICAqIGRldGFpbHMgaW4gcHJvamVjdCBkb2N1bWVudGF0aW9uXG4gICAqIEBUT0RPIG5ldyBGaW5hbmNpYWxZZWFyKHRoaXMud3JpdGVPZmZEYXRlKSA9PT0gbmV3IEZpbmFuY2lhbFllYXIoKVxuICAgKi9cbiAgaXNXcml0dGVuT2ZmKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzQXNzZXQgJiYgdGhpcy53cml0ZU9mZkRhdGUgJiYgbmV3IEZpbmFuY2lhbFllYXIodGhpcy53cml0ZU9mZkRhdGUpLnllYXIgPT09IHRoaXMuZmluYW5jaWFsWWVhcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBkZXByZWNpYXRpb24gaXMgUGxhbnQgJiBFcXVpcG1lbnRcbiAgICovXG4gIGlzUGxhbnRFcXVpcG1lbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNBc3NldCgpICYmICF0aGlzLmlzV3JpdHRlbk9mZigpICYmICF0aGlzLmlzTG93VmFsdWVQb29sKCk7XG4gIH1cblxuICAvKipcbiAgICogY2hlY2sgaWYgZGVwcmVjaWF0aW9uIHNob3VsZCBiZSBkaXNwbGF5ZWQgaW4gbG93IHZhbHVlIHBvb2xcbiAgICogZGV0YWlscyBpbiBwcm9qZWN0IGRvY3VtZW50YXRpb25cbiAgICogQFRPRE8gbmV3IEZpbmFuY2lhbFllYXIodGhpcy53cml0ZU9mZkRhdGUpID09PSBuZXcgRmluYW5jaWFsWWVhcigpXG4gICAqL1xuICBpc0xvd1ZhbHVlUG9vbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0Fzc2V0ICYmXG4gICAgICB0aGlzLmNhbGN1bGF0aW9uID09PSBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0uRElNSU5JU0hJTkcgJiZcbiAgICAgIHRoaXMuYW1vdW50ID4gRGVwcmVjaWF0aW9uLldSSVRURU5fT0ZGX1RIUkVTSE9MRCAmJlxuICAgICAgdGhpcy5hbW91bnQgPD0gRGVwcmVjaWF0aW9uLkxPV19WQUxVRV9QT09MX1RIUkVTSE9MRDtcbiAgfVxuXG4gIGlzUHJpbWVDb3N0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNhbGN1bGF0aW9uID09PSBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0uUFJJTUVfQ09TVDtcbiAgfVxuXG4gIGlzRGltaW5pc2hpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRpb24gPT09IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bS5ESU1JTklTSElORztcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBkZXByZWNpYXRpb24gY2hhcnQgYWNjb3VudHMgaGVhZGluZyByZWxhdGVkIHRvIHZlaGljbGVzIGNhdGVnb3J5XG4gICAqL1xuICBpc1ZlaGljbGVEZXByZWNpYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5oZWFkaW5nPy5pZCA9PT0gQ2hhcnRBY2NvdW50c0hlYWRpbmdWZWhpY2xlTGlzdEVudW0uREVQUkVDSUFUSU9OX1ZFSElDTEVTO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBkZXByZWNpYXRpb24gcHVyY2hhc2UgZGF0ZVxuICAgKi9cbiAgZ2V0RGF0ZSgpOiBEYXRlIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIHdyb25nIHllYXIsIHVzZSBjdXJyZW50IGZpbmFuY2lhbCB5ZWFyLCBjaGVjayBldmVyeXdoZXJlXG4gICAqL1xuICBnZXQgY3VycmVudFllYXJGb3JlY2FzdCgpOiBEZXByZWNpYXRpb25Gb3JlY2FzdCB7XG4gICAgcmV0dXJuIHRoaXMuZm9yZWNhc3RzLmZpbmQoKGZvcmVjYXN0OiBEZXByZWNpYXRpb25Gb3JlY2FzdCk6IGJvb2xlYW4gPT4ge1xuICAgICAgcmV0dXJuIGZvcmVjYXN0LmZpbmFuY2lhbFllYXIgPT09IG5ldyBGaW5hbmNpYWxZZWFyKCkueWVhcjtcbiAgICB9KTtcbiAgfVxuXG4gIGdldEZvcmVjYXN0QnlZZWFyKHllYXI6IG51bWJlcik6IERlcHJlY2lhdGlvbkZvcmVjYXN0IHtcbiAgICByZXR1cm4gdGhpcy5mb3JlY2FzdHMuZmluZCgoZm9yZWNhc3Q6IERlcHJlY2lhdGlvbkZvcmVjYXN0KTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gZm9yZWNhc3QuZmluYW5jaWFsWWVhciA9PT0geWVhcjtcbiAgICB9KTtcbiAgfVxuXG4gIGdldENsYWltQW1vdW50QnlZZWFyKHllYXI6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Rm9yZWNhc3RCeVllYXIoeWVhcik/LmNsYWltQW1vdW50IHx8IDA7XG4gIH1cblxuICBnZXRDbG9zZUJhbGFuY2VCeVllYXIoeWVhcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRGb3JlY2FzdEJ5WWVhcih5ZWFyKT8uY2xvc2VCYWxhbmNlIHx8IDA7XG4gIH1cblxuICBpc0J1aWxkaW5nQXRDb3N0KCkge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5CVUlMRElOR19BVF9DT1NUO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyB0cmFuc2FjdGlvbiBmcm9tIGN1cnJlbnQgZGVwcmVjaWF0aW9uXG4gICAqL1xuICB0b1RyYW5zYWN0aW9uKHBhcmFtcyA9IHt9KTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoXG4gICAgICBUcmFuc2FjdGlvbixcbiAgICAgIE9iamVjdC5hc3NpZ24ocGFyYW1zLCB0aGlzLCAge2Ftb3VudDogdGhpcy5jdXJyZW50WWVhckZvcmVjYXN0LmFtb3VudH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldCBjbGFpbUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRZZWFyRm9yZWNhc3Q/LmNsYWltQW1vdW50IHx8IDA7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -38,5 +38,8 @@ export var AppEventTypeEnum;
|
|
|
38
38
|
AppEventTypeEnum[AppEventTypeEnum["USER_UPDATED"] = 35] = "USER_UPDATED";
|
|
39
39
|
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_UPDATED"] = 36] = "VEHICLE_CLAIM_UPDATED";
|
|
40
40
|
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_CREATED"] = 37] = "VEHICLE_CLAIM_CREATED";
|
|
41
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_CREATED"] = 38] = "VEHICLE_LOGBOOK_CREATED";
|
|
42
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_UPDATED"] = 39] = "VEHICLE_LOGBOOK_UPDATED";
|
|
43
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_DELETED"] = 40] = "VEHICLE_LOGBOOK_DELETED";
|
|
41
44
|
})(AppEventTypeEnum || (AppEventTypeEnum = {}));
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWV2ZW50LXR5cGUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxnQkEwQ1g7QUExQ0QsV0FBWSxnQkFBZ0I7SUFDMUIsMkZBQXNCLENBQUE7SUFDdEIseUZBQXFCLENBQUE7SUFDckIsdUZBQW9CLENBQUE7SUFDcEIsdUZBQW9CLENBQUE7SUFDcEIsbUdBQTBCLENBQUE7SUFDMUIsMkZBQXNCLENBQUE7SUFDdEIsK0VBQWdCLENBQUE7SUFDaEIsaUhBQWlDLENBQUE7SUFDakMsdUZBQW9CLENBQUE7SUFDcEIseUZBQXFCLENBQUE7SUFDckIsNEZBQXNCLENBQUE7SUFDdEIsNEZBQXNCLENBQUE7SUFDdEIsZ0hBQWdDLENBQUE7SUFDaEMsZ0hBQWdDLENBQUE7SUFDaEMsd0VBQVksQ0FBQTtJQUNaLHNGQUFtQixDQUFBO0lBQ25CLDhFQUFlLENBQUE7SUFDZix3RkFBb0IsQ0FBQTtJQUNwQix3RkFBb0IsQ0FBQTtJQUNwQixvRkFBa0IsQ0FBQTtJQUNsQiw0R0FBOEIsQ0FBQTtJQUM5Qiw4RkFBdUIsQ0FBQTtJQUN2QixrR0FBeUIsQ0FBQTtJQUN6QixrR0FBeUIsQ0FBQTtJQUN6QixrR0FBeUIsQ0FBQTtJQUN6Qiw0RkFBc0IsQ0FBQTtJQUN0QixzR0FBMkIsQ0FBQTtJQUMzQiwwR0FBNkIsQ0FBQTtJQUM3QixzSEFBbUMsQ0FBQTtJQUNuQyx3R0FBNEIsQ0FBQTtJQUM1QixvRkFBa0IsQ0FBQTtJQUNsQixzRkFBbUIsQ0FBQTtJQUNuQixzRkFBbUIsQ0FBQTtJQUNuQixzRkFBbUIsQ0FBQTtJQUNuQix3RkFBb0IsQ0FBQTtJQUNwQix3RUFBWSxDQUFBO0lBQ1osMEZBQXFCLENBQUE7SUFDckIsMEZBQXFCLENBQUE7SUFDckIsOEZBQXVCLENBQUE7SUFDdkIsOEZBQXVCLENBQUE7SUFDdkIsOEZBQXVCLENBQUE7QUFDekIsQ0FBQyxFQTFDVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBMEMzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEFwcEV2ZW50VHlwZUVudW0ge1xuICBDTElFTlRfTU9WRU1FTlRfQ0xPU0VELFxuICBCQU5LX0NPTk5FQ1RJT05fQURERUQsXG4gIEJBTktfQUNDT1VOVF9DUkVBVEVELFxuICBCQU5LX0FDQ09VTlRfVVBEQVRFRCxcbiAgQkFOS19UUkFOU0FDVElPTl9BTExPQ0FURUQsXG4gIENMSUVOVF9JTlZJVEVfQUNDRVBURUQsXG4gIENMSUVOVF9PUEVOX0NIQVQsXG4gIENMSUVOVF9UUkFOU0ZFUl9UT19PVEhFUl9FTVBMT1lFRSxcbiAgREVQUkVDSUFUSU9OX0RFTEVURUQsXG4gIERFUFJFQ0lBVElPTlNfQ1JFQVRFRCxcbiAgSU5DT01FX1NPVVJDRVNfQ1JFQVRFRCxcbiAgSU5DT01FX1NPVVJDRVNfVVBEQVRFRCxcbiAgSU5DT01FX1NPVVJDRVNfRk9SRUNBU1RTX0NSRUFURUQsXG4gIElOQ09NRV9TT1VSQ0VTX0ZPUkVDQVNUU19VUERBVEVELFxuICBMT0FOX1VQREFURUQsXG4gIExPQU5fUEFZT1VUX1VQREFURUQsXG4gIE1FU1NBR0VfQ1JFQVRFRCxcbiAgTUVTU0FHRV9GSUxFX0NSRUFURUQsXG4gIE1FU1NBR0VfRklMRV9ERUxFVEVELFxuICBOT1RJRklDQVRJT05fQURERUQsXG4gIFBST1BFUlRZX1VQREFURURfV0lUSF9ET0NVTUVOVCxcbiAgUFJPUEVSVFlfRE9DVU1FTlRfQURERUQsXG4gIFBST1BFUlRZX01PVkVNRU5UX0NSRUFURUQsXG4gIFBST1BFUlRZX01PVkVNRU5UX1VQREFURUQsXG4gIFBST1BFUlRZX01PVkVNRU5UX0RFTEVURUQsXG4gIFBST1BFUlRZX1NIQVJFX1VQREFURUQsXG4gIFBST1BFUlRZX1NVQlNDUklQVElPTl9BRERFRCxcbiAgUFJPUEVSVFlfU1VCU0NSSVBUSU9OX0RFTEVURUQsXG4gIFBST1BFUlRZX1ZBTFVBVElPTl9ET0NVTUVOVF9DUkVBVEVELFxuICBTRVJWSUNFX1NVQlNDUklQVElPTl9VUERBVEVELFxuICBUQVhfUkVWSUVXX1VQREFURUQsXG4gIFRSQU5TQUNUSU9OX0NSRUFURUQsXG4gIFRSQU5TQUNUSU9OX0RFTEVURUQsXG4gIFRSQU5TQUNUSU9OX1VQREFURUQsXG4gIFRSQU5TQUNUSU9OU19DUkVBVEVELFxuICBVU0VSX1VQREFURUQsXG4gIFZFSElDTEVfQ0xBSU1fVVBEQVRFRCxcbiAgVkVISUNMRV9DTEFJTV9DUkVBVEVELFxuICBWRUhJQ0xFX0xPR0JPT0tfQ1JFQVRFRCxcbiAgVkVISUNMRV9MT0dCT09LX1VQREFURUQsXG4gIFZFSElDTEVfTE9HQk9PS19ERUxFVEVEXG59XG4iXX0=
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { Type } from 'class-transformer';
|
|
3
|
+
import { FinancialYear } from '../financial-year/financial-year';
|
|
4
|
+
/**
|
|
5
|
+
* Class contains traveled kilometers and work usage percent in 12 weeks date range
|
|
6
|
+
*/
|
|
3
7
|
export class LogbookPeriod {
|
|
8
|
+
isEndOfYear() {
|
|
9
|
+
return this.to === new FinancialYear().endDate;
|
|
10
|
+
}
|
|
4
11
|
}
|
|
5
12
|
__decorate([
|
|
6
13
|
Type(() => Date)
|
|
@@ -8,4 +15,4 @@ __decorate([
|
|
|
8
15
|
__decorate([
|
|
9
16
|
Type(() => Date)
|
|
10
17
|
], LogbookPeriod.prototype, "to", void 0);
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nYm9vay1wZXJpb2QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2xvZ2Jvb2svbG9nYm9vay1wZXJpb2QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFakU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sYUFBYTtJQVV4QixXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsRUFBRSxLQUFLLElBQUksYUFBYSxFQUFFLENBQUMsT0FBTyxDQUFDO0lBQ2pELENBQUM7Q0FDRjtBQVhDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzsyQ0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBGaW5hbmNpYWxZZWFyIH0gZnJvbSAnLi4vZmluYW5jaWFsLXllYXIvZmluYW5jaWFsLXllYXInO1xuXG4vKipcbiAqIENsYXNzIGNvbnRhaW5zIHRyYXZlbGVkIGtpbG9tZXRlcnMgYW5kIHdvcmsgdXNhZ2UgcGVyY2VudCBpbiAxMiB3ZWVrcyBkYXRlIHJhbmdlXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dib29rUGVyaW9kIHtcbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZnJvbTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICB0bzogRGF0ZTtcblxuICBraWxvbWV0ZXJzOiBudW1iZXI7XG4gIHdvcmtVc2FnZTogbnVtYmVyO1xuXG4gIGlzRW5kT2ZZZWFyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRvID09PSBuZXcgRmluYW5jaWFsWWVhcigpLmVuZERhdGU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { VehicleClaim as VehicleClaimBase } from '../../db/Models/vehicle-claim';
|
|
2
2
|
import { VehicleClaimMethodEnum } from '../../db/Enums/vehicle-claim-method.enum';
|
|
3
3
|
import { FinancialYear } from '../financial-year/financial-year';
|
|
4
|
+
import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
|
|
5
|
+
import { plainToClass } from 'class-transformer';
|
|
6
|
+
import { TransactionSourceEnum } from '../../db/Enums/transaction-source.enum';
|
|
7
|
+
import { TransactionTypeEnum } from '../../db/Enums/transaction-type.enum';
|
|
8
|
+
import { ChartAccountsListEnum } from '../../db/Enums/chart-accounts-list.enum';
|
|
9
|
+
import { Transaction } from '../transaction/transaction';
|
|
4
10
|
const WEEKS_IN_YEAR = 52;
|
|
5
11
|
export class VehicleClaim extends VehicleClaimBase {
|
|
6
12
|
constructor() {
|
|
@@ -19,14 +25,67 @@ export class VehicleClaim extends VehicleClaimBase {
|
|
|
19
25
|
get averageWeeklyTraveledKms() {
|
|
20
26
|
return this.kilometers / WEEKS_IN_YEAR;
|
|
21
27
|
}
|
|
22
|
-
|
|
28
|
+
isLogbookMethod() {
|
|
23
29
|
return this.method === VehicleClaimMethodEnum.LOGBOOK;
|
|
24
30
|
}
|
|
31
|
+
isKLMsMethod() {
|
|
32
|
+
return this.method === VehicleClaimMethodEnum.KMS;
|
|
33
|
+
}
|
|
34
|
+
isWorkTank() {
|
|
35
|
+
return this.tankType === TankTypeEnum.WORK;
|
|
36
|
+
}
|
|
37
|
+
isSoleTank() {
|
|
38
|
+
return this.tankType === TankTypeEnum.SOLE;
|
|
39
|
+
}
|
|
25
40
|
/**
|
|
26
|
-
* Claim amount for
|
|
41
|
+
* Claim amount for KLMs method. Exists only for KLMs method.
|
|
27
42
|
*/
|
|
28
|
-
|
|
43
|
+
getKLMsClaimAmount(vehicleClaimRate) {
|
|
44
|
+
if (!this.isKLMsMethod()) {
|
|
45
|
+
return 0;
|
|
46
|
+
}
|
|
29
47
|
return +(this.kilometers * vehicleClaimRate).toFixed(2);
|
|
30
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Get logbook claim amount. Exists only for logbook method.
|
|
51
|
+
* ClaimAmount = WorkUsage * transaction/depreciation amount
|
|
52
|
+
*/
|
|
53
|
+
getLogbookClaimAmount(transactions) {
|
|
54
|
+
if (!this.isLogbookMethod()) {
|
|
55
|
+
return 0;
|
|
56
|
+
}
|
|
57
|
+
const transactionsAmount = transactions
|
|
58
|
+
.getByTankType(this.tankType)
|
|
59
|
+
.getVehicleTransactions()
|
|
60
|
+
// except klms transactions because they needed only for klms method
|
|
61
|
+
.filter((transaction) => !transaction.chartAccounts.isKLMsByTankType(this.tankType))
|
|
62
|
+
.sumBy('amount');
|
|
63
|
+
// Math.abs because amount will be negative (because we sum expenses), but we don't want negative percent value
|
|
64
|
+
return Math.abs(transactionsAmount) * this.workUsage / 100;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Create KLMs transaction based on vehicle claim and vehicle claim rate
|
|
68
|
+
* @TODO handle on backend: Create klms transaction when vhicle claim created
|
|
69
|
+
*/
|
|
70
|
+
toTransaction(vehicleClaimRate) {
|
|
71
|
+
return plainToClass(Transaction, {
|
|
72
|
+
amount: this.kilometers * vehicleClaimRate,
|
|
73
|
+
source: TransactionSourceEnum.CASH,
|
|
74
|
+
type: TransactionTypeEnum.DEBIT,
|
|
75
|
+
taxWithheld: 0,
|
|
76
|
+
description: 'Klm’s method',
|
|
77
|
+
date: new Date(`${new FinancialYear().year}-06-30`),
|
|
78
|
+
claimPercent: 100,
|
|
79
|
+
chartAccounts: {
|
|
80
|
+
id: this.getKlmsChartAccountsIdByTankType(this.tankType)
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
getKlmsChartAccountsIdByTankType(tankType = this.tankType) {
|
|
85
|
+
if (tankType === TankTypeEnum.WORK) {
|
|
86
|
+
return ChartAccountsListEnum.KLMS_TRAVELLED_FOR_WORK;
|
|
87
|
+
}
|
|
88
|
+
return ChartAccountsListEnum.KLMS_TRAVELLED;
|
|
89
|
+
}
|
|
31
90
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvbG9nYm9vay92ZWhpY2xlLWNsYWltLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLElBQUksZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHekQsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0FBRXpCLE1BQU0sT0FBTyxZQUFhLFNBQVEsZ0JBQWdCO0lBQWxEOztRQUNFLDZCQUE2QjtRQUM3QixhQUFRLEdBQVcsSUFBSSxDQUFDO1FBQ3hCLGtCQUFhLEdBQVcsSUFBSSxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUM7UUFFakQsV0FBTSxHQUEyQixzQkFBc0IsQ0FBQyxHQUFHLENBQUM7UUFDNUQsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUN2QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGFBQVEsR0FBWSxJQUFJLENBQUM7SUFrRjNCLENBQUM7SUFoRkM7O09BRUc7SUFDSCxJQUFJLHdCQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLHNCQUFzQixDQUFDLE9BQU8sQ0FBQztJQUN4RCxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxzQkFBc0IsQ0FBQyxHQUFHLENBQUM7SUFDcEQsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssWUFBWSxDQUFDLElBQUksQ0FBQztJQUM3QyxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxZQUFZLENBQUMsSUFBSSxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQixDQUFDLGdCQUF3QjtRQUN6QyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFO1lBQ3hCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLGdCQUFnQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRDs7O09BR0c7SUFDSCxxQkFBcUIsQ0FBQyxZQUFtQztRQUN2RCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFO1lBQzNCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxNQUFNLGtCQUFrQixHQUFXLFlBQVk7YUFDNUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7YUFDNUIsc0JBQXNCLEVBQUU7WUFDekIsb0VBQW9FO2FBQ25FLE1BQU0sQ0FBQyxDQUFDLFdBQXdCLEVBQVcsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDekcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRW5CLCtHQUErRztRQUMvRyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsYUFBYSxDQUFDLGdCQUF3QjtRQUNwQyxPQUFPLFlBQVksQ0FBQyxXQUFXLEVBQUU7WUFDL0IsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsZ0JBQWdCO1lBQzFDLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxJQUFJO1lBQ2xDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxLQUFLO1lBQy9CLFdBQVcsRUFBRSxDQUFDO1lBQ2QsV0FBVyxFQUFFLGNBQWM7WUFDM0IsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQyxJQUFJLFFBQVEsQ0FBQztZQUNuRCxZQUFZLEVBQUUsR0FBRztZQUNqQixhQUFhLEVBQUU7Z0JBQ2IsRUFBRSxFQUFFLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2FBQ3pEO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdDQUFnQyxDQUFDLFdBQXlCLElBQUksQ0FBQyxRQUFRO1FBQ3JFLElBQUksUUFBUSxLQUFLLFlBQVksQ0FBQyxJQUFJLEVBQUU7WUFDbEMsT0FBTyxxQkFBcUIsQ0FBQyx1QkFBdUIsQ0FBQztTQUN0RDtRQUVELE9BQU8scUJBQXFCLENBQUMsY0FBYyxDQUFBO0lBQzdDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZlaGljbGVDbGFpbSBhcyBWZWhpY2xlQ2xhaW1CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3ZlaGljbGUtY2xhaW0nO1xuaW1wb3J0IHsgVmVoaWNsZUNsYWltTWV0aG9kRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3ZlaGljbGUtY2xhaW0tbWV0aG9kLmVudW0nO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU291cmNlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLXNvdXJjZS5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0xpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtbGlzdC5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvdHJhbnNhY3Rpb24uY29sbGVjdGlvbic7XG5cbmNvbnN0IFdFRUtTX0lOX1lFQVIgPSA1MjtcblxuZXhwb3J0IGNsYXNzIFZlaGljbGVDbGFpbSBleHRlbmRzIFZlaGljbGVDbGFpbUJhc2Uge1xuICAvLyBsaW1pdCBmb3Iga21zIGNsYWltIG1ldGhvZFxuICBrbXNMaW1pdDogbnVtYmVyID0gNTAwMDtcbiAgZmluYW5jaWFsWWVhcjogbnVtYmVyID0gbmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyO1xuXG4gIG1ldGhvZDogVmVoaWNsZUNsYWltTWV0aG9kRW51bSA9IFZlaGljbGVDbGFpbU1ldGhvZEVudW0uS01TO1xuICBraWxvbWV0ZXJzOiBudW1iZXIgPSAwO1xuICB3b3JrVXNhZ2U6IG51bWJlciA9IDA7XG4gIGlzTWFudWFsOiBib29sZWFuID0gdHJ1ZTtcblxuICAvKipcbiAgICogZ2V0IGFtb3VudCBvZiBraWxvbWV0cmVzIHBlciB3ZWVrXG4gICAqL1xuICBnZXQgYXZlcmFnZVdlZWtseVRyYXZlbGVkS21zKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMua2lsb21ldGVycyAvIFdFRUtTX0lOX1lFQVI7XG4gIH1cblxuICBpc0xvZ2Jvb2tNZXRob2QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubWV0aG9kID09PSBWZWhpY2xlQ2xhaW1NZXRob2RFbnVtLkxPR0JPT0s7XG4gIH1cblxuICBpc0tMTXNNZXRob2QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubWV0aG9kID09PSBWZWhpY2xlQ2xhaW1NZXRob2RFbnVtLktNUztcbiAgfVxuXG4gIGlzV29ya1RhbmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudGFua1R5cGUgPT09IFRhbmtUeXBlRW51bS5XT1JLO1xuICB9XG5cbiAgaXNTb2xlVGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50YW5rVHlwZSA9PT0gVGFua1R5cGVFbnVtLlNPTEU7XG4gIH1cblxuICAvKipcbiAgICogQ2xhaW0gYW1vdW50IGZvciBLTE1zIG1ldGhvZC4gRXhpc3RzIG9ubHkgZm9yIEtMTXMgbWV0aG9kLlxuICAgKi9cbiAgZ2V0S0xNc0NsYWltQW1vdW50KHZlaGljbGVDbGFpbVJhdGU6IG51bWJlcik6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmlzS0xNc01ldGhvZCgpKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gKyh0aGlzLmtpbG9tZXRlcnMgKiB2ZWhpY2xlQ2xhaW1SYXRlKS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsb2dib29rIGNsYWltIGFtb3VudC4gRXhpc3RzIG9ubHkgZm9yIGxvZ2Jvb2sgbWV0aG9kLlxuICAgKiBDbGFpbUFtb3VudCA9IFdvcmtVc2FnZSAqIHRyYW5zYWN0aW9uL2RlcHJlY2lhdGlvbiBhbW91bnRcbiAgICovXG4gIGdldExvZ2Jvb2tDbGFpbUFtb3VudCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmlzTG9nYm9va01ldGhvZCgpKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBjb25zdCB0cmFuc2FjdGlvbnNBbW91bnQ6IG51bWJlciA9IHRyYW5zYWN0aW9uc1xuICAgICAgLmdldEJ5VGFua1R5cGUodGhpcy50YW5rVHlwZSlcbiAgICAgIC5nZXRWZWhpY2xlVHJhbnNhY3Rpb25zKClcbiAgICAgIC8vIGV4Y2VwdCBrbG1zIHRyYW5zYWN0aW9ucyBiZWNhdXNlIHRoZXkgbmVlZGVkIG9ubHkgZm9yIGtsbXMgbWV0aG9kXG4gICAgICAuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+ICF0cmFuc2FjdGlvbi5jaGFydEFjY291bnRzLmlzS0xNc0J5VGFua1R5cGUodGhpcy50YW5rVHlwZSkpXG4gICAgICAuc3VtQnkoJ2Ftb3VudCcpO1xuXG4gICAgLy8gTWF0aC5hYnMgYmVjYXVzZSBhbW91bnQgd2lsbCBiZSBuZWdhdGl2ZSAoYmVjYXVzZSB3ZSBzdW0gZXhwZW5zZXMpLCBidXQgd2UgZG9uJ3Qgd2FudCBuZWdhdGl2ZSBwZXJjZW50IHZhbHVlXG4gICAgcmV0dXJuIE1hdGguYWJzKHRyYW5zYWN0aW9uc0Ftb3VudCkgKiB0aGlzLndvcmtVc2FnZSAvIDEwMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgS0xNcyB0cmFuc2FjdGlvbiBiYXNlZCBvbiB2ZWhpY2xlIGNsYWltIGFuZCB2ZWhpY2xlIGNsYWltIHJhdGVcbiAgICogQFRPRE8gaGFuZGxlIG9uIGJhY2tlbmQ6IENyZWF0ZSBrbG1zIHRyYW5zYWN0aW9uIHdoZW4gdmhpY2xlIGNsYWltIGNyZWF0ZWRcbiAgICovXG4gIHRvVHJhbnNhY3Rpb24odmVoaWNsZUNsYWltUmF0ZTogbnVtYmVyKTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoVHJhbnNhY3Rpb24sIHtcbiAgICAgIGFtb3VudDogdGhpcy5raWxvbWV0ZXJzICogdmVoaWNsZUNsYWltUmF0ZSxcbiAgICAgIHNvdXJjZTogVHJhbnNhY3Rpb25Tb3VyY2VFbnVtLkNBU0gsXG4gICAgICB0eXBlOiBUcmFuc2FjdGlvblR5cGVFbnVtLkRFQklULFxuICAgICAgdGF4V2l0aGhlbGQ6IDAsXG4gICAgICBkZXNjcmlwdGlvbjogJ0tsbeKAmXMgbWV0aG9kJyxcbiAgICAgIGRhdGU6IG5ldyBEYXRlKGAke25ldyBGaW5hbmNpYWxZZWFyKCkueWVhcn0tMDYtMzBgKSxcbiAgICAgIGNsYWltUGVyY2VudDogMTAwLFxuICAgICAgY2hhcnRBY2NvdW50czoge1xuICAgICAgICBpZDogdGhpcy5nZXRLbG1zQ2hhcnRBY2NvdW50c0lkQnlUYW5rVHlwZSh0aGlzLnRhbmtUeXBlKVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0S2xtc0NoYXJ0QWNjb3VudHNJZEJ5VGFua1R5cGUodGFua1R5cGU6IFRhbmtUeXBlRW51bSA9IHRoaXMudGFua1R5cGUpOiBudW1iZXIge1xuICAgIGlmICh0YW5rVHlwZSA9PT0gVGFua1R5cGVFbnVtLldPUkspIHtcbiAgICAgIHJldHVybiBDaGFydEFjY291bnRzTGlzdEVudW0uS0xNU19UUkFWRUxMRURfRk9SX1dPUks7XG4gICAgfVxuXG4gICAgcmV0dXJuIENoYXJ0QWNjb3VudHNMaXN0RW51bS5LTE1TX1RSQVZFTExFRFxuICB9XG59XG4iXX0=
|
|
@@ -3,14 +3,20 @@ import { VehicleLogbook as VehicleLogbookBase } from '../../db/Models/vehicle-lo
|
|
|
3
3
|
import { VehicleLogbookPurposeEnum } from '../../db/Enums/vehicle-logbook-purpose.enum';
|
|
4
4
|
import { Type } from 'class-transformer';
|
|
5
5
|
export class VehicleLogbook extends VehicleLogbookBase {
|
|
6
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Get amount of kilometers in this logbook
|
|
8
|
+
*/
|
|
9
|
+
getKlms() {
|
|
7
10
|
return this.odometerEnd - this.odometerStart;
|
|
8
11
|
}
|
|
9
|
-
|
|
12
|
+
/**
|
|
13
|
+
* Check if logbook is business-related
|
|
14
|
+
*/
|
|
15
|
+
isBusiness() {
|
|
10
16
|
return this.purpose === VehicleLogbookPurposeEnum.BUSINESS;
|
|
11
17
|
}
|
|
12
18
|
}
|
|
13
19
|
__decorate([
|
|
14
20
|
Type(() => Date)
|
|
15
21
|
], VehicleLogbook.prototype, "date", void 0);
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1sb2dib29rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9sb2dib29rL3ZlaGljbGUtbG9nYm9vay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGNBQWMsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6QyxNQUFNLE9BQU8sY0FBZSxTQUFRLGtCQUFrQjtJQUlwRDs7T0FFRztJQUNILE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxLQUFLLHlCQUF5QixDQUFDLFFBQVEsQ0FBQztJQUM3RCxDQUFDO0NBQ0Y7QUFmQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7NENBQ04iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZWhpY2xlTG9nYm9vayBhcyBWZWhpY2xlTG9nYm9va0Jhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvdmVoaWNsZS1sb2dib29rJztcbmltcG9ydCB7IFZlaGljbGVMb2dib29rUHVycG9zZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy92ZWhpY2xlLWxvZ2Jvb2stcHVycG9zZS5lbnVtJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBWZWhpY2xlTG9nYm9vayBleHRlbmRzIFZlaGljbGVMb2dib29rQmFzZSB7XG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIGRhdGU6IERhdGU7XG5cbiAgLyoqXG4gICAqIEdldCBhbW91bnQgb2Yga2lsb21ldGVycyBpbiB0aGlzIGxvZ2Jvb2tcbiAgICovXG4gIGdldEtsbXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5vZG9tZXRlckVuZCAtIHRoaXMub2RvbWV0ZXJTdGFydDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBsb2dib29rIGlzIGJ1c2luZXNzLXJlbGF0ZWRcbiAgICovXG4gIGlzQnVzaW5lc3MoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucHVycG9zZSA9PT0gVmVoaWNsZUxvZ2Jvb2tQdXJwb3NlRW51bS5CVVNJTkVTUztcbiAgfVxufVxuIl19
|
|
@@ -1,39 +1,17 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { Vehicle as VehicleBase } from '../../db/Models/vehicle';
|
|
3
|
-
import { VehicleLogbookPurposeEnum } from '../../db/Enums/vehicle-logbook-purpose.enum';
|
|
4
3
|
import { VehicleLogbook } from './vehicle-logbook';
|
|
5
4
|
import { Type } from 'class-transformer';
|
|
5
|
+
import { VehicleLogbookCollection } from '../../collections/vehicle-logbook.collection';
|
|
6
6
|
export class Vehicle extends VehicleBase {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
this.logbook.forEach((lb) => {
|
|
13
|
-
kilometers += lb.kilometres;
|
|
14
|
-
});
|
|
15
|
-
return kilometers;
|
|
16
|
-
}
|
|
17
|
-
get workKilometres() {
|
|
18
|
-
let kilometers = 0;
|
|
19
|
-
this.logbook.forEach((lb) => {
|
|
20
|
-
if (lb.purpose === VehicleLogbookPurposeEnum.BUSINESS) {
|
|
21
|
-
kilometers += lb.kilometres;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
return kilometers;
|
|
25
|
-
}
|
|
26
|
-
get personalKilometres() {
|
|
27
|
-
return this.totalKilometres - this.workKilometres;
|
|
28
|
-
}
|
|
29
|
-
get lastLogbook() {
|
|
30
|
-
if (!this.logbook.length) {
|
|
31
|
-
return { odometerEnd: 0 };
|
|
32
|
-
}
|
|
33
|
-
return this.logbook.slice(-1)[0];
|
|
7
|
+
/**
|
|
8
|
+
* Get vehicle's logbooks as collection
|
|
9
|
+
*/
|
|
10
|
+
getLogbooks() {
|
|
11
|
+
return new VehicleLogbookCollection(this.logbook);
|
|
34
12
|
}
|
|
35
13
|
}
|
|
36
14
|
__decorate([
|
|
37
15
|
Type(() => VehicleLogbook)
|
|
38
16
|
], Vehicle.prototype, "logbook", void 0);
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvbG9nYm9vay92ZWhpY2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFeEYsTUFBTSxPQUFPLE9BQVEsU0FBUSxXQUFXO0lBSXRDOztPQUVHO0lBQ0gsV0FBVztRQUNULE9BQU8sSUFBSSx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEQsQ0FBQztDQUNGO0FBUkM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDO3dDQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmVoaWNsZSBhcyBWZWhpY2xlQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy92ZWhpY2xlJztcbmltcG9ydCB7IFZlaGljbGVMb2dib29rIH0gZnJvbSAnLi92ZWhpY2xlLWxvZ2Jvb2snO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFZlaGljbGVMb2dib29rQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL3ZlaGljbGUtbG9nYm9vay5jb2xsZWN0aW9uJztcblxuZXhwb3J0IGNsYXNzIFZlaGljbGUgZXh0ZW5kcyBWZWhpY2xlQmFzZSB7XG4gIEBUeXBlKCgpID0+IFZlaGljbGVMb2dib29rKVxuICBsb2dib29rOiBWZWhpY2xlTG9nYm9va1tdO1xuXG4gIC8qKlxuICAgKiBHZXQgdmVoaWNsZSdzIGxvZ2Jvb2tzIGFzIGNvbGxlY3Rpb25cbiAgICovXG4gIGdldExvZ2Jvb2tzKCk6IFZlaGljbGVMb2dib29rQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBWZWhpY2xlTG9nYm9va0NvbGxlY3Rpb24odGhpcy5sb2dib29rKTtcbiAgfVxufVxuIl19
|
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTVELCtDQUErQztBQUMvQyxNQUFNLE9BQU8sV0FBWSxTQUFRLGVBQWU7SUFBaEQ7O1FBQ0Usb0NBQW9DO1FBRXBDLGlCQUFZLEdBQWtCLEVBQUUsQ0FBQztRQWVqQyxhQUFRLEdBQTBCLEVBQUUsQ0FBQztRQVlyQyxnQkFBVyxHQUE0QixFQUFFLENBQUM7UUFNMUMsUUFBRyxHQUFXLENBQUMsQ0FBQztRQUNoQixjQUFTLEdBQTZCLHdCQUF3QixDQUFDLGNBQWMsQ0FBQztRQUk5RSxpQkFBWSxHQUFXLEdBQUcsQ0FBQztRQUMzQixXQUFNLEdBQVcsQ0FBQyxDQUFDO0lBNkxyQixDQUFDO0lBM0xDLE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssbUJBQW1CLENBQUMsS0FBSyxDQUFDO0lBQ2pELENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLG1CQUFtQixDQUFDLE1BQU0sQ0FBQztJQUNsRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ3hCO1FBRUQsT0FBTyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUN2QjtRQUVELE9BQU8seUJBQXlCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyx5QkFBeUIsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLFFBQVEsSUFBSSxFQUFFO1lBQ1osS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNwQixPQUFPLHlCQUF5QixDQUFDLFFBQVEsQ0FBQztZQUU1QyxLQUFLLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3hCLE9BQU8seUJBQXlCLENBQUMsUUFBUSxDQUFDO1lBRTVDLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDcEIsT0FBTyx5QkFBeUIsQ0FBQyxJQUFJLENBQUM7WUFFeEM7Z0JBQ0UsT0FBTyx5QkFBeUIsQ0FBQyxJQUFJLENBQUM7U0FDekM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLDJCQUEyQjtRQUM3QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxLQUFLLHFCQUFxQixDQUFDLHVCQUF1QixDQUFDO0lBQ2pGLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVk7UUFDVix3RUFBd0U7UUFDeEUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDWix3RUFBd0U7UUFDeEUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyw2QkFBNkIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsNkJBQTZCLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLDZCQUE2QixDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyw2QkFBNkIsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLHdCQUF3QixDQUFDLFFBQVEsQ0FBQztJQUM5RCxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7O09BR0c7SUFDSyxxQkFBcUIsQ0FBQyxLQUFvQzs7UUFDaEUsT0FBTyxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLG1CQUF3QyxFQUFXLEVBQUU7WUFDL0UsT0FBTyxtQkFBbUIsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLEtBQUssS0FBSyxDQUFDO1FBQ2hFLENBQUMsQ0FBQywwQ0FBRSxLQUFLLENBQUEsSUFBSSxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7T0FHRztJQUNLLHFCQUFxQixDQUFDLFVBQWdDO1FBQzVELG9HQUFvRztRQUNwRyxNQUFNLFFBQVEsR0FBVyxVQUFVLEtBQUssb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTVFLFFBQVEsSUFBSSxFQUFFO1lBQ1osS0FBSyxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUN4QixPQUFPLElBQUksQ0FBQyxNQUFNO29CQUNoQixDQUFDLElBQUksQ0FBQyxZQUFZO3lCQUNmLE1BQU0sQ0FBQyxDQUFDLEdBQVcsRUFBRSxXQUF3QixFQUFVLEVBQUUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7WUFDcEgsS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7WUFDekg7Z0JBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxxQkFBcUIsQ0FBQyxnQkFBZ0IsQ0FBQztJQUMxRSxDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxxQkFBcUIsQ0FBQyxJQUFJLENBQUM7SUFDcEQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYztRQUNaLE9BQU8sWUFBWSxDQUFDLFlBQVksRUFBRTtZQUNoQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixJQUFJLEVBQUUsb0JBQW9CLENBQUMsZUFBZTtZQUMxQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxVQUFVO1NBQzVHLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVcsQ0FBQyxXQUE0QztRQUN0RCxPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsa0JBQWtCLENBQUMsV0FBNEM7UUFDN0QsT0FBTyxXQUFXLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDNUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsb0JBQW9CLENBQUMsV0FBNEM7UUFDL0QsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FDRjtBQXBPQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7aURBQ1M7QUFHakM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDOzZDQUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzRDQUNIO0FBRzVCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztrREFDRztBQUc3QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7aURBQ0U7QUFHM0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7NkNBQ0s7QUFHckM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzZDQUNGO0FBR3RCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dEQUNRO0FBSTFDO0lBREMsT0FBTyxDQUFDLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO3lDQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLW1ldGFkYXRhLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblNvdXJjZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1zb3VyY2UuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLWNhbGN1bGF0aW9uLmVudW0nO1xuaW1wb3J0IHsgRXhjbHVkZSwgcGxhaW5Ub0NsYXNzLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi9wcm9wZXJ0eS9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlY2VpcHQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLXJlY2VpcHQnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1tZXRhZGF0YSc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbi9sb2FuJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbic7XG5pbXBvcnQgeyBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XG5pbXBvcnQgeyBJbmNvbWVBbW91bnRUeXBlRW51bSB9IGZyb20gJy4vaW5jb21lLWFtb3VudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgSVJlY2VpcHQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3JlY2VpcHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IElUYW5rIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy90YW5rLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbiB9IGZyb20gJy4uL2RlcHJlY2lhdGlvbi9kZXByZWNpYXRpb24nO1xuXG4vLyBAVE9ETyByZWZhY3RvciB3aXRoIGJhc2VNb2RlbCBpbiBjb25zdHJ1Y3RvclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlIGltcGxlbWVudHMgSVJlY2VpcHQsIElUYW5rIHtcbiAgLy8gbGlzdCBvZiBjaGlsZCB0cmFuc2FjdGlvbnMgKGZlZXMpXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10gPSBbXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eSlcbiAgcHJvcGVydHk6IFByb3BlcnR5O1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uUmVjZWlwdClcbiAgcmVjZWlwdDogVHJhbnNhY3Rpb25SZWNlaXB0O1xuXG4gIEBUeXBlKCgpID0+IENoYXJ0QWNjb3VudHMpXG4gIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHM7XG5cbiAgQFR5cGUoKCkgPT4gSW5jb21lU291cmNlKVxuICBpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbk1ldGFkYXRhKVxuICBtZXRhZGF0YTogVHJhbnNhY3Rpb25NZXRhZGF0YVtdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb24pXG4gIHRyYW5zZmVyOiBUcmFuc2FjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBMb2FuKVxuICBsb2FuOiBMb2FuO1xuXG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIGRhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb25BbGxvY2F0aW9uKVxuICBhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uW10gPSBbXTtcblxuICAvLyBjb3VsZCBiZSBGaWxlIHdoZW4ganVzdCBhZGRlZCBuZXcgaW1hZ2VcbiAgQEV4Y2x1ZGUoe3RvUGxhaW5Pbmx5OiB0cnVlfSlcbiAgZmlsZTogRmlsZTtcblxuICB0YXg6IG51bWJlciA9IDA7XG4gIG9wZXJhdGlvbjogVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtID0gVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLkZJTkRfQU5EX01BVENIO1xuICBhbGxvY2F0ZWRBbW91bnQ6IG51bWJlcjtcbiAgdW5hbGxvY2F0ZWRBbW91bnQ6IG51bWJlcjtcbiAgaXNTZWxlY3RlZDogYm9vbGVhbjtcbiAgY2xhaW1QZXJjZW50OiBudW1iZXIgPSAxMDA7XG4gIGFtb3VudDogbnVtYmVyID0gMDtcblxuICBpc0RlYml0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IFRyYW5zYWN0aW9uVHlwZUVudW0uREVCSVQ7XG4gIH1cblxuICBpc0NyZWRpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkNSRURJVDtcbiAgfVxuXG4gIGlzSW5jb21lKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5jaGFydEFjY291bnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0NyZWRpdCgpO1xuICAgIH1cblxuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmluY29tZS5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNFeHBlbnNlKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5jaGFydEFjY291bnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0RlYml0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuZXhwZW5zZS5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNQZXJzb25hbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wZXJzb25hbC5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgZ2V0IGNoYXJ0QWNjb3VudHNDYXRlZ29yaWVzKCk6IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW1bXSB7XG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlIHRoaXMuaXNQZXJzb25hbCgpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wZXJzb25hbDtcblxuICAgICAgY2FzZSB0aGlzLmlzUHJvcGVydHlUYW5rKCk6XG4gICAgICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLnByb3BlcnR5O1xuXG4gICAgICBjYXNlIHRoaXMuaXNTb2xlVGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5zb2xlO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy53b3JrO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiBoYXMgJ0tsbXMgdHJhdmVsbGVkIGZvciB3b3JrJyBjaGFydCBhY2NvdW50cyBjYXRlZ29yeVxuICAgKi9cbiAgZ2V0IGlzS2xtc0NoYXJ0QWNjb3VudHNDYXRlZ29yeSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uS0xNU19UUkFWRUxMRURfRk9SX1dPUks7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIGRhdGVcbiAgICovXG4gIGdldERhdGUoKTogRGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiB0eXBlIGlzIHZlaGljbGVcbiAgICovXG4gIGlzVmVoaWNsZVRyYW5zYWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaXNWZWhpY2xlRXhwZW5zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBuZXQgYW1vdW50IChjbGVhbiBhbW91bnQgYWZ0ZXIgYWxsIGRlZHVjdGlvbnMpXG4gICAqL1xuICBnZXROZXRBbW91bnQoKTogbnVtYmVyIHtcbiAgICAvLyBAVE9ETyBmaXggaGFjayB3aGlsZSB0cmFuc2FjdGlvbnMgcmVmYWN0b3JpbmcgKHVzZSBjbGFzcy10cmFuc2Zvcm1lcilcbiAgICByZXR1cm4gKyhNYXRoLnJvdW5kKHRoaXMuZ2V0SW5jb21lQW1vdW50QnlUeXBlKEluY29tZUFtb3VudFR5cGVFbnVtLk5FVCkgKiAxMDApIC8gMTAwKS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBncm9zcyBpbmNvbWUgYW1vdW50XG4gICAqL1xuICBnZXRHcm9zc0luY29tZSgpOiBudW1iZXIge1xuICAgIC8vIEBUT0RPIGZpeCBoYWNrIHdoaWxlIHRyYW5zYWN0aW9ucyByZWZhY3RvcmluZyAodXNlIGNsYXNzLXRyYW5zZm9ybWVyKVxuICAgIHJldHVybiArKE1hdGgucm91bmQodGhpcy5nZXRJbmNvbWVBbW91bnRCeVR5cGUoSW5jb21lQW1vdW50VHlwZUVudW0uR1JPU1MpICogMTAwKSAvIDEwMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIGdldCB0YXhGcmVlQ29tcG9uZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLlRBWF9GUkVFX0NPTVBPTkVOVCk7XG4gIH1cblxuICBnZXQgZnJhbmtpbmdDcmVkaXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uRlJBTktJTkdfQ1JFRElUKTtcbiAgfVxuXG4gIGdldCBlbGlnaWJsZUZvclJlZHVjdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5FTElHSUJMRV9GT1JfUkVEVUNUSU9OKTtcbiAgfVxuXG4gIGdldCB1bnRheGVkRWxlbWVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5VTlRBWEVEX0VMRU1FTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRyYW5zYWN0aW9uIHJlY29uY2lsZSBvcGVyYXRpb24gaWYgVFJBTlNGRVJcbiAgICogQFRPRE8gYmFkIHVzYWdlIG9mIGdldCAoYW5kIGFsbCBpcyogbWV0aG9kcyksIGdldHRlciBzaG91bGQgc291bmQgbGlrZSBhIG5vdW5cbiAgICovXG4gIGdldCBpc1RyYW5zZmVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm9wZXJhdGlvbiA9PT0gVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLlRSQU5TRkVSO1xuICB9XG5cbiAgZ2V0IGRlYml0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNEZWJpdCgpID8gTWF0aC5hYnModGhpcy5hbW91bnQpIDogMDtcbiAgfVxuXG4gIGdldCBjcmVkaXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pc0NyZWRpdCgpID8gTWF0aC5hYnModGhpcy5hbW91bnQpIDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdmFsdWUgb2YgdHJhbnNhY3Rpb24gbWV0YWRhdGEgZmllbGRcbiAgICogQHBhcmFtIGZpZWxkIGZvciB3aGljaCB2YWx1ZSBzaG91bGQgYmUgcmV0dXJuZWRcbiAgICovXG4gIHByaXZhdGUgZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKGZpZWxkOiBDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bSk6IG51bWJlciB7XG4gICAgcmV0dXJuICt0aGlzLm1ldGFkYXRhLmZpbmQoKHRyYW5zYWN0aW9uTWV0YWRhdGE6IFRyYW5zYWN0aW9uTWV0YWRhdGEpOiBib29sZWFuID0+IHtcbiAgICAgIHJldHVybiB0cmFuc2FjdGlvbk1ldGFkYXRhLmNoYXJ0QWNjb3VudHNNZXRhZGF0YS5pZCA9PT0gZmllbGQ7XG4gICAgfSk/LnZhbHVlIHx8IDA7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBOZXQgb3IgR3Jvc3MgaW5jb21lIGFtb3VudCBiYXNlZCBvbiBwcm92aWRlZCBpbmNvbWUgdHlwZVxuICAgKiBAcGFyYW0gaW5jb21lVHlwZSBieSB3aGljaCBhbW91bnQgc2hvdWxkIGJlIHJldHVybmVkXG4gICAqL1xuICBwcml2YXRlIGdldEluY29tZUFtb3VudEJ5VHlwZShpbmNvbWVUeXBlOiBJbmNvbWVBbW91bnRUeXBlRW51bSk6IG51bWJlciB7XG4gICAgLy8gbW9kaWZpZXIgdGhhdCBkZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHZhbHVlcyBvZiB0aGUgdHJhbnNhY3Rpb24gZmllbGRzIHdpbGwgYmUgYWRkZWQgb3Igc3VidHJhY3RlZFxuICAgIGNvbnN0IG1vZGlmaWVyOiBudW1iZXIgPSBpbmNvbWVUeXBlID09PSBJbmNvbWVBbW91bnRUeXBlRW51bS5HUk9TUyA/IDEgOiAtMTtcblxuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzUHJvcGVydHlUYW5rKCk6XG4gICAgICAgIHJldHVybiB0aGlzLmFtb3VudCArXG4gICAgICAgICAgKHRoaXMudHJhbnNhY3Rpb25zXG4gICAgICAgICAgICAucmVkdWNlKChzdW06IG51bWJlciwgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogbnVtYmVyID0+IHN1bSArIE1hdGguYWJzKHRyYW5zYWN0aW9uLmFtb3VudCksIDApICogbW9kaWZpZXIpO1xuICAgICAgY2FzZSB0aGlzLmlzV29ya1RhbmsoKTpcbiAgICAgICAgcmV0dXJuIHRoaXMuYW1vdW50ICsgKCh0aGlzLnRheCArIHRoaXMuZnJhbmtpbmdDcmVkaXQgLSB0aGlzLnRheEZyZWVDb21wb25lbnQgLSB0aGlzLmVsaWdpYmxlRm9yUmVkdWN0aW9uKSAqIG1vZGlmaWVyKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB0aGlzLmFtb3VudCB8fCAwO1xuICAgIH1cbiAgfVxuXG4gIGlzSW50ZXJlc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLklOVEVSRVNUX09OX0xPQU47XG4gIH1cblxuICBpc0Nhc2goKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc291cmNlID09PSBUcmFuc2FjdGlvblNvdXJjZUVudW0uQ0FTSDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgRGVwcmVjaWF0aW9uIGluc3RhbmNlIGJhc2VkIG9uIFRyYW5zYWN0aW9uXG4gICAqL1xuICB0b0RlcHJlY2lhdGlvbigpOiBEZXByZWNpYXRpb24ge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoRGVwcmVjaWF0aW9uLCB7XG4gICAgICBkYXRlOiB0aGlzLmRhdGUsXG4gICAgICBhbW91bnQ6IHRoaXMuYW1vdW50LFxuICAgICAgY2hhcnRBY2NvdW50czogdGhpcy5jaGFydEFjY291bnRzLFxuICAgICAgZGVzY3JpcHRpb246IHRoaXMuZGVzY3JpcHRpb24sXG4gICAgICB0eXBlOiBEZXByZWNpYXRpb25UeXBlRW51bS5QTEFOVF9FUVVJUE1FTlQsXG4gICAgICBjbGFpbVBlcmNlbnQ6IHRoaXMuY2xhaW1QZXJjZW50LFxuICAgICAgcHJvcGVydHk6IHRoaXMucHJvcGVydHksXG4gICAgICBjYWxjdWxhdGlvbjogdGhpcy5wcm9wZXJ0eSA/IHRoaXMucHJvcGVydHkuZGVwcmVjaWF0aW9uQ2FsY3VsYXRpb24gOiBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0uUFJJTUVfQ09TVFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRyYW5zYWN0aW9uIGlzIGNvbXBsZXRlbHkgYWxsb2NhdGVkXG4gICAqL1xuICBpc0FsbG9jYXRlZChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldE5ldEFtb3VudCgpID09PSB0aGlzLmdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIGFsbG9jYXRlZCBhbW91bnRcbiAgICovXG4gIGdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIGFsbG9jYXRpb25zLmdldEJ5VHJhbnNhY3Rpb25zSWRzKFt0aGlzLmlkXSkuYW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiB1bmFsbG9jYXRlZCBhbW91bnRcbiAgICovXG4gIGdldFVuYWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXROZXRBbW91bnQoKSAtIHRoaXMuZ2V0QWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zKTtcbiAgfVxufVxuIl19
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENB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USxDQUFDOzZDQUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzRDQUNIO0FBRzVCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztrREFDRztBQUc3QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7aURBQ0U7QUFHM0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7NkNBQ0s7QUFHckM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzZDQUNGO0FBR3RCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dEQUNRO0FBSTFDO0lBREMsT0FBTyxDQUFDLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO3lDQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLW1ldGFkYXRhLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblNvdXJjZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1zb3VyY2UuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLWNhbGN1bGF0aW9uLmVudW0nO1xuaW1wb3J0IHsgRXhjbHVkZSwgcGxhaW5Ub0NsYXNzLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi9wcm9wZXJ0eS9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlY2VpcHQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLXJlY2VpcHQnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1tZXRhZGF0YSc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbi9sb2FuJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbic7XG5pbXBvcnQgeyBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XG5pbXBvcnQgeyBJbmNvbWVBbW91bnRUeXBlRW51bSB9IGZyb20gJy4vaW5jb21lLWFtb3VudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgSVJlY2VpcHQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3JlY2VpcHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgeyBFeHBlbnNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9leHBlbnNlLmludGVyZmFjZSc7XG5cbi8vIEBUT0RPIHJlZmFjdG9yIHdpdGggYmFzZU1vZGVsIGluIGNvbnN0cnVjdG9yXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2UgaW1wbGVtZW50cyBFeHBlbnNlLCBJUmVjZWlwdCB7XG4gIC8vIGxpc3Qgb2YgY2hpbGQgdHJhbnNhY3Rpb25zIChmZWVzKVxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbilcbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gUHJvcGVydHkpXG4gIHByb3BlcnR5OiBQcm9wZXJ0eTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvblJlY2VpcHQpXG4gIHJlY2VpcHQ6IFRyYW5zYWN0aW9uUmVjZWlwdDtcblxuICBAVHlwZSgoKSA9PiBDaGFydEFjY291bnRzKVxuICBjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzO1xuXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZSlcbiAgaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2U7XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb25NZXRhZGF0YSlcbiAgbWV0YWRhdGE6IFRyYW5zYWN0aW9uTWV0YWRhdGFbXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2ZlcjogVHJhbnNhY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBkYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uQWxsb2NhdGlvbilcbiAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdID0gW107XG5cbiAgLy8gY291bGQgYmUgRmlsZSB3aGVuIGp1c3QgYWRkZWQgbmV3IGltYWdlXG4gIEBFeGNsdWRlKHt0b1BsYWluT25seTogdHJ1ZX0pXG4gIGZpbGU6IEZpbGU7XG5cbiAgdGF4OiBudW1iZXIgPSAwO1xuICBvcGVyYXRpb246IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSA9IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5GSU5EX0FORF9NQVRDSDtcbiAgYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIHVuYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIGlzU2VsZWN0ZWQ6IGJvb2xlYW47XG4gIGNsYWltUGVyY2VudDogbnVtYmVyID0gMTAwO1xuICBhbW91bnQ6IG51bWJlciA9IDA7XG5cbiAgaXNEZWJpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkRFQklUO1xuICB9XG5cbiAgaXNDcmVkaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlRW51bS5DUkVESVQ7XG4gIH1cblxuICBpc0luY29tZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5pbmNvbWUuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzRXhwZW5zZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNEZWJpdCgpO1xuICAgIH1cblxuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmV4cGVuc2UuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzUGVyc29uYWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWwuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGdldCBjaGFydEFjY291bnRzQ2F0ZWdvcmllcygpOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10ge1xuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzUGVyc29uYWwoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWw7XG5cbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eTtcblxuICAgICAgY2FzZSB0aGlzLmlzU29sZVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuc29sZTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMud29yaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaGFzICdLbG1zIHRyYXZlbGxlZCBmb3Igd29yaycgY2hhcnQgYWNjb3VudHMgY2F0ZWdvcnlcbiAgICovXG4gIGdldCBpc0tsbXNDaGFydEFjY291bnRzQ2F0ZWdvcnkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLktMTVNfVFJBVkVMTEVEX0ZPUl9XT1JLO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBkYXRlXG4gICAqL1xuICBnZXREYXRlKCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLmRhdGU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gdHlwZSBpcyB2ZWhpY2xlXG4gICAqL1xuICBpc1ZlaGljbGVUcmFuc2FjdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlzVmVoaWNsZUV4cGVuc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbmV0IGFtb3VudCAoY2xlYW4gYW1vdW50IGFmdGVyIGFsbCBkZWR1Y3Rpb25zKVxuICAgKi9cbiAgZ2V0TmV0QW1vdW50KCk6IG51bWJlciB7XG4gICAgLy8gQFRPRE8gZml4IGhhY2sgd2hpbGUgdHJhbnNhY3Rpb25zIHJlZmFjdG9yaW5nICh1c2UgY2xhc3MtdHJhbnNmb3JtZXIpXG4gICAgcmV0dXJuICsoTWF0aC5yb3VuZCh0aGlzLmdldEluY29tZUFtb3VudEJ5VHlwZShJbmNvbWVBbW91bnRUeXBlRW51bS5ORVQpICogMTAwKSAvIDEwMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZ3Jvc3MgaW5jb21lIGFtb3VudFxuICAgKi9cbiAgZ2V0R3Jvc3NJbmNvbWUoKTogbnVtYmVyIHtcbiAgICAvLyBAVE9ETyBmaXggaGFjayB3aGlsZSB0cmFuc2FjdGlvbnMgcmVmYWN0b3JpbmcgKHVzZSBjbGFzcy10cmFuc2Zvcm1lcilcbiAgICByZXR1cm4gKyhNYXRoLnJvdW5kKHRoaXMuZ2V0SW5jb21lQW1vdW50QnlUeXBlKEluY29tZUFtb3VudFR5cGVFbnVtLkdST1NTKSAqIDEwMCkgLyAxMDApLnRvRml4ZWQoMik7XG4gIH1cblxuICBnZXQgdGF4RnJlZUNvbXBvbmVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5UQVhfRlJFRV9DT01QT05FTlQpO1xuICB9XG5cbiAgZ2V0IGZyYW5raW5nQ3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLkZSQU5LSU5HX0NSRURJVCk7XG4gIH1cblxuICBnZXQgZWxpZ2libGVGb3JSZWR1Y3Rpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uRUxJR0lCTEVfRk9SX1JFRFVDVElPTik7XG4gIH1cblxuICBnZXQgdW50YXhlZEVsZW1lbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uVU5UQVhFRF9FTEVNRU5UKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiByZWNvbmNpbGUgb3BlcmF0aW9uIGlmIFRSQU5TRkVSXG4gICAqIEBUT0RPIGJhZCB1c2FnZSBvZiBnZXQgKGFuZCBhbGwgaXMqIG1ldGhvZHMpLCBnZXR0ZXIgc2hvdWxkIHNvdW5kIGxpa2UgYSBub3VuXG4gICAqL1xuICBnZXQgaXNUcmFuc2ZlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5UUkFOU0ZFUjtcbiAgfVxuXG4gIGdldCBkZWJpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzRGViaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICBnZXQgY3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHZhbHVlIG9mIHRyYW5zYWN0aW9uIG1ldGFkYXRhIGZpZWxkXG4gICAqIEBwYXJhbSBmaWVsZCBmb3Igd2hpY2ggdmFsdWUgc2hvdWxkIGJlIHJldHVybmVkXG4gICAqL1xuICBwcml2YXRlIGdldE1ldGFkYXRhRmllbGRWYWx1ZShmaWVsZDogQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0pOiBudW1iZXIge1xuICAgIHJldHVybiArdGhpcy5tZXRhZGF0YS5maW5kKCh0cmFuc2FjdGlvbk1ldGFkYXRhOiBUcmFuc2FjdGlvbk1ldGFkYXRhKTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gdHJhbnNhY3Rpb25NZXRhZGF0YS5jaGFydEFjY291bnRzTWV0YWRhdGEuaWQgPT09IGZpZWxkO1xuICAgIH0pPy52YWx1ZSB8fCAwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgTmV0IG9yIEdyb3NzIGluY29tZSBhbW91bnQgYmFzZWQgb24gcHJvdmlkZWQgaW5jb21lIHR5cGVcbiAgICogQHBhcmFtIGluY29tZVR5cGUgYnkgd2hpY2ggYW1vdW50IHNob3VsZCBiZSByZXR1cm5lZFxuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVBbW91bnRCeVR5cGUoaW5jb21lVHlwZTogSW5jb21lQW1vdW50VHlwZUVudW0pOiBudW1iZXIge1xuICAgIC8vIG1vZGlmaWVyIHRoYXQgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSB2YWx1ZXMgb2YgdGhlIHRyYW5zYWN0aW9uIGZpZWxkcyB3aWxsIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWRcbiAgICBjb25zdCBtb2RpZmllcjogbnVtYmVyID0gaW5jb21lVHlwZSA9PT0gSW5jb21lQW1vdW50VHlwZUVudW0uR1JPU1MgPyAxIDogLTE7XG5cbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgK1xuICAgICAgICAgICh0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgLnJlZHVjZSgoc3VtOiBudW1iZXIsIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IG51bWJlciA9PiBzdW0gKyBNYXRoLmFicyh0cmFuc2FjdGlvbi5hbW91bnQpLCAwKSAqIG1vZGlmaWVyKTtcbiAgICAgIGNhc2UgdGhpcy5pc1dvcmtUYW5rKCk6XG4gICAgICAgIHJldHVybiB0aGlzLmFtb3VudCArICgodGhpcy50YXggKyB0aGlzLmZyYW5raW5nQ3JlZGl0IC0gdGhpcy50YXhGcmVlQ29tcG9uZW50IC0gdGhpcy5lbGlnaWJsZUZvclJlZHVjdGlvbikgKiBtb2RpZmllcik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgfHwgMDtcbiAgICB9XG4gIH1cblxuICBpc0ludGVyZXN0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9PTl9MT0FOO1xuICB9XG5cbiAgaXNDYXNoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNvdXJjZSA9PT0gVHJhbnNhY3Rpb25Tb3VyY2VFbnVtLkNBU0g7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIERlcHJlY2lhdGlvbiBpbnN0YW5jZSBiYXNlZCBvbiBUcmFuc2FjdGlvblxuICAgKi9cbiAgdG9EZXByZWNpYXRpb24oKTogRGVwcmVjaWF0aW9uIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKERlcHJlY2lhdGlvbiwge1xuICAgICAgZGF0ZTogdGhpcy5kYXRlLFxuICAgICAgYW1vdW50OiB0aGlzLmFtb3VudCxcbiAgICAgIGNoYXJ0QWNjb3VudHM6IHRoaXMuY2hhcnRBY2NvdW50cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogRGVwcmVjaWF0aW9uVHlwZUVudW0uUExBTlRfRVFVSVBNRU5ULFxuICAgICAgY2xhaW1QZXJjZW50OiB0aGlzLmNsYWltUGVyY2VudCxcbiAgICAgIHByb3BlcnR5OiB0aGlzLnByb3BlcnR5LFxuICAgICAgY2FsY3VsYXRpb246IHRoaXMucHJvcGVydHkgPyB0aGlzLnByb3BlcnR5LmRlcHJlY2lhdGlvbkNhbGN1bGF0aW9uIDogRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtLlBSSU1FX0NPU1RcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiBpcyBjb21wbGV0ZWx5IGFsbG9jYXRlZFxuICAgKi9cbiAgaXNBbGxvY2F0ZWQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXROZXRBbW91bnQoKSA9PT0gdGhpcy5nZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBhbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBhbGxvY2F0aW9ucy5nZXRCeVRyYW5zYWN0aW9uc0lkcyhbdGhpcy5pZF0pLmFtb3VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb24gdW5hbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV0QW1vdW50KCkgLSB0aGlzLmdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
|