@esolve/ng-esolve-connect 0.8.0 → 0.10.1
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/esm2020/lib/account/esolve-account.service.mjs +160 -36
- package/esm2020/lib/account/esolve-change-password-result.mjs +8 -0
- package/esm2020/lib/account/esolve-forgot-password-response.mjs +2 -0
- package/esm2020/lib/account/esolve-reset-password-result.mjs +11 -0
- package/esm2020/lib/account/esolve-transaction-list.mjs +4 -0
- package/esm2020/lib/account/esolve-transaction-options.mjs +2 -0
- package/esm2020/lib/account/esolve-transaction-record.mjs +2 -0
- package/esm2020/lib/account/esolve-transaction.mjs +145 -0
- package/esm2020/lib/auth/esolve-auth-interceptor.service.mjs +1 -1
- package/esm2020/lib/auth/esolve-auth.service.mjs +25 -25
- package/esm2020/lib/banners/esolve-banner.service.mjs +26 -26
- package/esm2020/lib/cart/esolve-cart.service.mjs +25 -25
- package/esm2020/lib/category-tree/esolve-category-tree.service.mjs +45 -45
- package/esm2020/lib/locations/esolve-locations.service.mjs +15 -15
- package/esm2020/lib/locations/esolve-stock-location-record.mjs +1 -1
- package/esm2020/lib/locations/esolve-stock-location.mjs +16 -16
- package/esm2020/lib/media/esolve-media.service.mjs +25 -25
- package/esm2020/lib/menu/esolve-menu.service.mjs +1 -1
- package/esm2020/lib/payment/esolve-payment-method-record.mjs +1 -1
- package/esm2020/lib/payment/esolve-payment-method.mjs +1 -5
- package/esm2020/lib/payment/esolve-payment.service.mjs +21 -1
- package/esm2020/lib/shared/error-handler/esolve-error-handler.service.mjs +57 -24
- package/esm2020/lib/shared/esolve-list.mjs +9 -0
- package/esm2020/lib/shared/esolve-response.mjs +1 -1
- package/esm2020/lib/shared/esolve-result.mjs +8 -0
- package/esm2020/lib/topics/esolve-topic.service.mjs +11 -11
- package/esm2020/public-api.mjs +8 -1
- package/fesm2015/esolve-ng-esolve-connect.mjs +658 -312
- package/fesm2015/esolve-ng-esolve-connect.mjs.map +1 -1
- package/fesm2020/esolve-ng-esolve-connect.mjs +660 -311
- package/fesm2020/esolve-ng-esolve-connect.mjs.map +1 -1
- package/lib/account/esolve-account.service.d.ts +18 -6
- package/lib/account/esolve-change-password-result.d.ts +6 -0
- package/lib/account/esolve-forgot-password-response.d.ts +7 -0
- package/lib/account/esolve-reset-password-result.d.ts +9 -0
- package/lib/account/esolve-transaction-list.d.ts +4 -0
- package/lib/account/esolve-transaction-options.d.ts +8 -0
- package/lib/account/esolve-transaction-record.d.ts +98 -0
- package/lib/account/esolve-transaction.d.ts +132 -0
- package/lib/auth/esolve-auth.service.d.ts +1 -1
- package/lib/banners/esolve-banner.service.d.ts +6 -6
- package/lib/cart/esolve-cart.service.d.ts +12 -12
- package/lib/category-tree/esolve-category-tree.service.d.ts +7 -7
- package/lib/locations/esolve-locations.service.d.ts +5 -5
- package/lib/locations/esolve-stock-location-record.d.ts +1 -1
- package/lib/locations/esolve-stock-location.d.ts +7 -8
- package/lib/media/esolve-media.service.d.ts +7 -7
- package/lib/payment/esolve-payment-method-record.d.ts +0 -4
- package/lib/payment/esolve-payment-method.d.ts +0 -4
- package/lib/payment/esolve-payment.service.d.ts +2 -0
- package/lib/shared/error-handler/esolve-error-handler.service.d.ts +8 -2
- package/lib/shared/esolve-list.d.ts +7 -0
- package/lib/shared/esolve-response.d.ts +15 -9
- package/lib/shared/esolve-result.d.ts +6 -0
- package/lib/topics/esolve-topic.service.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +7 -0
|
@@ -2,11 +2,16 @@ import { Inject, Injectable } from '@angular/core';
|
|
|
2
2
|
import { throwError } from 'rxjs';
|
|
3
3
|
import { catchError, map } from 'rxjs/operators';
|
|
4
4
|
import { ESOLVE_CONNECT_CONFIG } from '../esolve-connect.config';
|
|
5
|
+
import { EsolveResult } from '../shared/esolve-result';
|
|
5
6
|
import { EsolveAddress } from './esolve-address';
|
|
6
7
|
import { EsolveAddressResult } from './esolve-address-result';
|
|
7
8
|
import { EsolveRegistrationResult } from './esolve-registration-result';
|
|
8
|
-
import { EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact } from './esolve-user-account';
|
|
9
9
|
import { EsolveUserAccountResult } from './esolve-user-account-result';
|
|
10
|
+
import { EsolveChangePasswordResult } from './esolve-change-password-result';
|
|
11
|
+
import { EsolveResetPasswordResult } from './esolve-reset-password-result';
|
|
12
|
+
import { EsolveTransaction } from './esolve-transaction';
|
|
13
|
+
import { EsolveTransactionList } from './esolve-transaction-list';
|
|
14
|
+
import { EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact } from './esolve-user-account';
|
|
10
15
|
import * as i0 from "@angular/core";
|
|
11
16
|
import * as i1 from "@angular/common/http";
|
|
12
17
|
import * as i2 from "../session/esolve-session.service";
|
|
@@ -35,31 +40,6 @@ export class EsolveAccountService {
|
|
|
35
40
|
this._user_id = value;
|
|
36
41
|
}
|
|
37
42
|
}
|
|
38
|
-
processUserAccount(record) {
|
|
39
|
-
if (!record) {
|
|
40
|
-
throw new Error('Invalid record');
|
|
41
|
-
}
|
|
42
|
-
if (+record.userid !== this._user_id) {
|
|
43
|
-
throw new Error('Invalid user account retrieved');
|
|
44
|
-
}
|
|
45
|
-
const user_account = new EsolveUserAccount(+record.userid, record.email, record.registration_type, record.title, record.firstname, record.surname, record.initials, record.gender, record.idnumber);
|
|
46
|
-
user_account.contact_details = new EsolveUserAccountContact(record.telnumber, record.cellnumber, record.fax);
|
|
47
|
-
user_account.business_details = new EsolveUserAccountBusiness(record.busname, record.vatnum, record.busdescript, record.business_type);
|
|
48
|
-
return user_account;
|
|
49
|
-
}
|
|
50
|
-
processUserAddress(records) {
|
|
51
|
-
const user_addresses = [];
|
|
52
|
-
if (!records || (this._user_id === 0)) {
|
|
53
|
-
return user_addresses;
|
|
54
|
-
}
|
|
55
|
-
for (const record of records) {
|
|
56
|
-
if (+record.userid !== this._user_id) {
|
|
57
|
-
continue;
|
|
58
|
-
}
|
|
59
|
-
user_addresses.push(new EsolveAddress(+record.id, record.recipient, record.address_type, record.pobox, record.place_name, record.street_number, record.street, record.suburb, record.city, record.province, record.country, record.postal_code, +record.latitude, +record.longitude));
|
|
60
|
-
}
|
|
61
|
-
return user_addresses;
|
|
62
|
-
}
|
|
63
43
|
updateUserAccount(user_account_data) {
|
|
64
44
|
const body = {
|
|
65
45
|
account: user_account_data
|
|
@@ -109,19 +89,41 @@ export class EsolveAccountService {
|
|
|
109
89
|
}));
|
|
110
90
|
}
|
|
111
91
|
getAddresses() {
|
|
112
|
-
|
|
113
|
-
|
|
92
|
+
try {
|
|
93
|
+
this.loginGuard();
|
|
94
|
+
return this.http.get(`${this.config.api_url}/service/get-addresses.php`, {
|
|
95
|
+
params: {
|
|
96
|
+
ws_id: this.config.wsid,
|
|
97
|
+
user_id: this.user_id
|
|
98
|
+
}
|
|
99
|
+
}).pipe(map(response => {
|
|
100
|
+
if (response.records === undefined) {
|
|
101
|
+
throw response;
|
|
102
|
+
}
|
|
103
|
+
return this.processUserAddress(response.records);
|
|
104
|
+
}));
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
return throwError(error);
|
|
114
108
|
}
|
|
115
|
-
|
|
109
|
+
}
|
|
110
|
+
deleteAddress(id) {
|
|
111
|
+
return this.http.delete(`${this.config.api_url}/service/delete-address.php`, {
|
|
116
112
|
params: {
|
|
117
113
|
ws_id: this.config.wsid,
|
|
118
|
-
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
114
|
+
id: id
|
|
115
|
+
},
|
|
116
|
+
responseType: 'json',
|
|
117
|
+
observe: 'body'
|
|
118
|
+
}).pipe(map(http_response => {
|
|
119
|
+
if ((http_response.result === undefined) ||
|
|
120
|
+
(http_response.result === null) ||
|
|
121
|
+
(http_response.result.status !== 'success')) {
|
|
122
|
+
throw http_response;
|
|
123
123
|
}
|
|
124
|
-
return
|
|
124
|
+
return new EsolveResult(http_response.result.status, http_response.result.code, http_response.result.message);
|
|
125
|
+
}), catchError((errorRes) => {
|
|
126
|
+
return this.errorHandler.handleHttpDeleteError('delete-address', errorRes);
|
|
125
127
|
}));
|
|
126
128
|
}
|
|
127
129
|
register(user_registration) {
|
|
@@ -146,6 +148,128 @@ export class EsolveAccountService {
|
|
|
146
148
|
return this.errorHandler.handleHttpPostError('set-registration', errorRes);
|
|
147
149
|
}));
|
|
148
150
|
}
|
|
151
|
+
changePassword(password, confirm_password) {
|
|
152
|
+
const body = {
|
|
153
|
+
password,
|
|
154
|
+
confirm_password
|
|
155
|
+
};
|
|
156
|
+
return this.http.post(`${this.config.api_url}/service/set-change-password.php`, body, {
|
|
157
|
+
headers: {
|
|
158
|
+
'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8;'
|
|
159
|
+
},
|
|
160
|
+
params: {
|
|
161
|
+
ws_id: this.config.wsid
|
|
162
|
+
},
|
|
163
|
+
responseType: 'json',
|
|
164
|
+
observe: 'body'
|
|
165
|
+
}).pipe(map(http_response => this.responseHandler.validateSingleHttpResponse(http_response, (response) => {
|
|
166
|
+
return new EsolveChangePasswordResult(response);
|
|
167
|
+
})), catchError((errorRes) => {
|
|
168
|
+
return this.errorHandler.handleHttpPostError('set-change-password', errorRes);
|
|
169
|
+
}));
|
|
170
|
+
}
|
|
171
|
+
sendForgotPasswordRequest(email) {
|
|
172
|
+
return this.http.get(`${this.config.api_url}/service/get-forgot-password.php`, {
|
|
173
|
+
params: {
|
|
174
|
+
ws_id: this.config.wsid,
|
|
175
|
+
email: email
|
|
176
|
+
}
|
|
177
|
+
}).pipe(map(response => {
|
|
178
|
+
if ((response.records === undefined) ||
|
|
179
|
+
!('reset_link_sent' in response.records)) {
|
|
180
|
+
throw response;
|
|
181
|
+
}
|
|
182
|
+
return response.records.reset_link_sent;
|
|
183
|
+
}));
|
|
184
|
+
}
|
|
185
|
+
resetPassword(reset_key, password, confirm_password, auto_login = true) {
|
|
186
|
+
return this.http.post(`${this.config.api_url}/service/set-forgot-password.php`, {
|
|
187
|
+
reset_key,
|
|
188
|
+
password,
|
|
189
|
+
confirm_password,
|
|
190
|
+
auto_login
|
|
191
|
+
}, {
|
|
192
|
+
headers: {
|
|
193
|
+
'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8;'
|
|
194
|
+
},
|
|
195
|
+
params: {
|
|
196
|
+
ws_id: this.config.wsid
|
|
197
|
+
},
|
|
198
|
+
responseType: 'json',
|
|
199
|
+
observe: 'body'
|
|
200
|
+
}).pipe(map(http_response => this.responseHandler.validateSingleHttpResponse(http_response, (response) => {
|
|
201
|
+
if (!response.login_required) {
|
|
202
|
+
this.sessionService.handleUpdateSession(response.esolve_id);
|
|
203
|
+
}
|
|
204
|
+
return new EsolveResetPasswordResult(response);
|
|
205
|
+
})), catchError((errorRes) => {
|
|
206
|
+
return this.errorHandler.handleHttpPostError('set-forgot-password', errorRes);
|
|
207
|
+
}));
|
|
208
|
+
}
|
|
209
|
+
getTransactions(options = {}) {
|
|
210
|
+
try {
|
|
211
|
+
this.loginGuard();
|
|
212
|
+
return this.http.get(`${this.config.api_url}/service/get-transactions.php`, {
|
|
213
|
+
params: {
|
|
214
|
+
ws_id: this.config.wsid,
|
|
215
|
+
user_id: this.user_id,
|
|
216
|
+
...options,
|
|
217
|
+
}
|
|
218
|
+
}).pipe(map(response => {
|
|
219
|
+
if (response.records === undefined) {
|
|
220
|
+
throw response;
|
|
221
|
+
}
|
|
222
|
+
const items = this.processTransactions(response.records);
|
|
223
|
+
const total = +response.additional_data.total_records ?? 0;
|
|
224
|
+
const rows = options.rows ?? total;
|
|
225
|
+
const page = options.page || 1;
|
|
226
|
+
return new EsolveTransactionList(items, page, rows, total);
|
|
227
|
+
}));
|
|
228
|
+
}
|
|
229
|
+
catch (error) {
|
|
230
|
+
return throwError(error);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
processUserAccount(record) {
|
|
234
|
+
if (!record) {
|
|
235
|
+
throw new Error('Invalid record');
|
|
236
|
+
}
|
|
237
|
+
if (+record.userid !== this._user_id) {
|
|
238
|
+
throw new Error('Invalid user account retrieved');
|
|
239
|
+
}
|
|
240
|
+
const user_account = new EsolveUserAccount(+record.userid, record.email, record.registration_type, record.title, record.firstname, record.surname, record.initials, record.gender, record.idnumber);
|
|
241
|
+
user_account.contact_details = new EsolveUserAccountContact(record.telnumber, record.cellnumber, record.fax);
|
|
242
|
+
user_account.business_details = new EsolveUserAccountBusiness(record.busname, record.vatnum, record.busdescript, record.business_type);
|
|
243
|
+
return user_account;
|
|
244
|
+
}
|
|
245
|
+
processUserAddress(records) {
|
|
246
|
+
const user_addresses = [];
|
|
247
|
+
if (!records || (this._user_id === 0)) {
|
|
248
|
+
return user_addresses;
|
|
249
|
+
}
|
|
250
|
+
for (const record of records) {
|
|
251
|
+
if (+record.userid !== this._user_id) {
|
|
252
|
+
continue;
|
|
253
|
+
}
|
|
254
|
+
user_addresses.push(new EsolveAddress(+record.id, record.recipient, record.address_type, record.pobox, record.place_name, record.street_number, record.street, record.suburb, record.city, record.province, record.country, record.postal_code, +record.latitude, +record.longitude));
|
|
255
|
+
}
|
|
256
|
+
return user_addresses;
|
|
257
|
+
}
|
|
258
|
+
processTransactions(records) {
|
|
259
|
+
const transactions = [];
|
|
260
|
+
if (records) {
|
|
261
|
+
for (const record of records) {
|
|
262
|
+
const transaction = new EsolveTransaction(record);
|
|
263
|
+
transactions.push(transaction);
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
return transactions;
|
|
267
|
+
}
|
|
268
|
+
loginGuard() {
|
|
269
|
+
if (this.user_id <= 0) {
|
|
270
|
+
this.errorHandler.emitError('login_required', 'Login is required');
|
|
271
|
+
}
|
|
272
|
+
}
|
|
149
273
|
}
|
|
150
274
|
EsolveAccountService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: EsolveAccountService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1.HttpClient }, { token: i2.EsolveSessionService }, { token: i3.EsolveErrorHandlerService }, { token: i4.EsolveResponseHandlerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
151
275
|
EsolveAccountService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: EsolveAccountService, providedIn: 'root' });
|
|
@@ -158,4 +282,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
|
|
|
158
282
|
type: Inject,
|
|
159
283
|
args: [ESOLVE_CONNECT_CONFIG]
|
|
160
284
|
}] }, { type: i1.HttpClient }, { type: i2.EsolveSessionService }, { type: i3.EsolveErrorHandlerService }, { type: i4.EsolveResponseHandlerService }]; } });
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWFjY291bnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvYWNjb3VudC9lc29sdmUtYWNjb3VudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQXVCLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSTlELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBTXhFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSx5QkFBeUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRy9HLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7QUFLdkUsTUFBTSxPQUFPLG9CQUFvQjtJQWU3QixZQUMyQyxNQUEyQixFQUMxRCxJQUFnQixFQUNoQixjQUFvQyxFQUNwQyxZQUF1QyxFQUN2QyxlQUE2QztRQUpkLFdBQU0sR0FBTixNQUFNLENBQXFCO1FBQzFELFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsbUJBQWMsR0FBZCxjQUFjLENBQXNCO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUEyQjtRQUN2QyxvQkFBZSxHQUFmLGVBQWUsQ0FBOEI7UUFuQmpELGFBQVEsR0FBRyxDQUFDLENBQUM7UUFxQmpCLElBQUksQ0FBQyxjQUFj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bUJBQW1CLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQy9EO1lBRUQsT0FBTyxJQUFJLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FDSixDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsUUFBaUMsRUFBRSxFQUFFO1lBQzdDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQzs7aUhBOU9RLG9CQUFvQixrQkFnQmpCLHFCQUFxQjtxSEFoQnhCLG9CQUFvQixjQUZqQixNQUFNOzJGQUVULG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQWlCUSxNQUFNOzJCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgRXNvbHZlQ29ubmVjdENvbmZpZywgRVNPTFZFX0NPTk5FQ1RfQ09ORklHIH0gZnJvbSAnLi4vZXNvbHZlLWNvbm5lY3QuY29uZmlnJztcclxuaW1wb3J0IHsgRXNvbHZlQWRkcmVzcyB9IGZyb20gJy4vZXNvbHZlLWFkZHJlc3MnO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRyZXNzUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtYWRkcmVzcy1yZWNvcmQnO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRyZXNzUmVzdWx0IH0gZnJvbSAnLi9lc29sdmUtYWRkcmVzcy1yZXN1bHQnO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRyZXNzUG9zdERhdGEgfSBmcm9tICcuL2Vzb2x2ZS1hZGRyZXNzLXNldC1kYXRhJztcclxuaW1wb3J0IHsgRXNvbHZlQWRkcmVzc1Jlc3BvbnNlIH0gZnJvbSAnLi9lc29sdmUtYWRkcmVzcy1yZXNwb25zZSc7XHJcbmltcG9ydCB7IEVzb2x2ZVJlZ2lzdHJhdGlvbkRhdGEgfSBmcm9tICcuL2Vzb2x2ZS1yZWdpc3RyYXRpb24tZGF0YSc7XHJcbmltcG9ydCB7IEVzb2x2ZVJlZ2lzdHJhdGlvblJlc3VsdCB9IGZyb20gJy4vZXNvbHZlLXJlZ2lzdHJhdGlvbi1yZXN1bHQnO1xyXG5pbXBvcnQgeyBFc29sdmVSZWdpc3RyYXRpb25Qb3N0UmVzcG9uc2VJdGVtIH0gZnJvbSAnLi9lc29sdmUtcmVnaXN0cmF0aW9uLXBvc3QtcmVzcG9uc2UtaXRlbSc7XHJcbmltcG9ydCB7IEVzb2x2ZVNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2Vzc2lvbi9lc29sdmUtc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRXNvbHZlR2V0UmVzcG9uc2UsIEVzb2x2ZVNldFJlc3BvbnNlIH0gZnJvbSAnLi4vc2hhcmVkL2Vzb2x2ZS1yZXNwb25zZSc7XHJcbmltcG9ydCB7IEVzb2x2ZUVycm9ySGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvZXJyb3ItaGFuZGxlci9lc29sdmUtZXJyb3ItaGFuZGxlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZS1oYW5kbGVyL2Vzb2x2ZS1yZXNwb25zZS1oYW5kbGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVVc2VyQWNjb3VudCwgRXNvbHZlVXNlckFjY291bnRCdXNpbmVzcywgRXNvbHZlVXNlckFjY291bnRDb250YWN0IH0gZnJvbSAnLi9lc29sdmUtdXNlci1hY2NvdW50JztcclxuaW1wb3J0IHsgRXNvbHZlVXNlckFjY291bnRSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS11c2VyLWFjY291bnQtcmVjb3JkJztcclxuaW1wb3J0IHsgRXNvbHZlVXNlckFjY291bnREYXRhIH0gZnJvbSAnLi9lc29sdmUtdXNlci1hY2NvdW50LWRhdGEnO1xyXG5pbXBvcnQgeyBFc29sdmVVc2VyQWNjb3VudFJlc3VsdCB9IGZyb20gJy4vZXNvbHZlLXVzZXItYWNjb3VudC1yZXN1bHQnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVBY2NvdW50U2VydmljZSB7XHJcbiAgICBwcml2YXRlIF91c2VyX2lkID0gMDtcclxuXHJcbiAgICBwdWJsaWMgZ2V0IHVzZXJfaWQoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fdXNlcl9pZDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0IHVzZXJfaWQodmFsdWU6IG51bWJlcikge1xyXG4gICAgICAgIHZhbHVlID0gKCh2YWx1ZSA+IDApID8gdmFsdWUgOiAwKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX3VzZXJfaWQgIT09IHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3VzZXJfaWQgPSB2YWx1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgQEluamVjdChFU09MVkVfQ09OTkVDVF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBFc29sdmVDb25uZWN0Q29uZmlnLFxyXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgICAgICBwcml2YXRlIHNlc3Npb25TZXJ2aWNlOiBFc29sdmVTZXNzaW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGVycm9ySGFuZGxlcjogRXNvbHZlRXJyb3JIYW5kbGVyU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlc3BvbnNlSGFuZGxlcjogRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZVxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5zZXNzaW9uU2VydmljZS5zZXNzaW9uLnN1YnNjcmliZSgoc2Vzc2lvbikgPT4ge1xyXG4gICAgICAgICAgICBpZiAoc2Vzc2lvbi5rZXkgIT09ICcnKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXJfaWQgPSBzZXNzaW9uLmlkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBwcm9jZXNzVXNlckFjY291bnQocmVjb3JkOiBFc29sdmVVc2VyQWNjb3VudFJlY29yZCk6IEVzb2x2ZVVzZXJBY2NvdW50IHtcclxuICAgICAgICBpZiAoIXJlY29yZCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVjb3JkJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoK3JlY29yZC51c2VyaWQgIT09IHRoaXMuX3VzZXJfaWQpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHVzZXIgYWNjb3VudCByZXRyaWV2ZWQnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHVzZXJfYWNjb3VudCA9IG5ldyBFc29sdmVVc2VyQWNjb3VudChcclxuICAgICAgICAgICAgK3JlY29yZC51c2VyaWQsXHJcbiAgICAgICAgICAgIHJlY29yZC5lbWFpbCxcclxuICAgICAgICAgICAgcmVjb3JkLnJlZ2lzdHJhdGlvbl90eXBlLFxyXG4gICAgICAgICAgICByZWNvcmQudGl0bGUsXHJcbiAgICAgICAgICAgIHJlY29yZC5maXJzdG5hbWUsXHJcbiAgICAgICAgICAgIHJlY29yZC5zdXJuYW1lLFxyXG4gICAgICAgICAgICByZWNvcmQuaW5pdGlhbHMsXHJcbiAgICAgICAgICAgIHJlY29yZC5nZW5kZXIsXHJcbiAgICAgICAgICAgIHJlY29yZC5pZG51bWJlclxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIHVzZXJfYWNjb3VudC5jb250YWN0X2RldGFpbHMgPSBuZXcgRXNvbHZlVXNlckFjY291bnRDb250YWN0KFxyXG4gICAgICAgICAgICByZWNvcmQudGVsbnVtYmVyLFxyXG4gICAgICAgICAgICByZWNvcmQuY2VsbG51bWJlcixcclxuICAgICAgICAgICAgcmVjb3JkLmZheFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIHVzZXJfYWNjb3VudC5idXNpbmVzc19kZXRhaWxzID0gbmV3IEVzb2x2ZVVzZXJBY2NvdW50QnVzaW5lc3MoXHJcbiAgICAgICAgICAgIHJlY29yZC5idXNuYW1lLFxyXG4gICAgICAgICAgICByZWNvcmQudmF0bnVtLFxyXG4gICAgICAgICAgICByZWNvcmQuYnVzZGVzY3JpcHQsXHJcbiAgICAgICAgICAgIHJlY29yZC5idXNpbmVzc190eXBlXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHVzZXJfYWNjb3VudDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHByb2Nlc3NVc2VyQWRkcmVzcyhyZWNvcmRzOiBFc29sdmVBZGRyZXNzUmVjb3JkW10pOiBFc29sdmVBZGRyZXNzW10ge1xyXG4gICAgICAgIGNvbnN0IHVzZXJfYWRkcmVzc2VzOiBFc29sdmVBZGRyZXNzW10gPSBbXTtcclxuXHJcbiAgICAgICAgaWYgKCFyZWNvcmRzIHx8ICh0aGlzLl91c2VyX2lkID09PSAwKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdXNlcl9hZGRyZXNzZXM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XHJcbiAgICAgICAgICAgIGlmICgrcmVjb3JkLnVzZXJpZCAhPT0gdGhpcy5fdXNlcl9pZCkge1xyXG4gICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHVzZXJfYWRkcmVzc2VzLnB1c2gobmV3IEVzb2x2ZUFkZHJlc3MoXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkLmlkLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLnJlY2lwaWVudCxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5hZGRyZXNzX3R5cGUsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQucG9ib3gsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQucGxhY2VfbmFtZSxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5zdHJlZXRfbnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLnN0cmVldCxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5zdWJ1cmIsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQuY2l0eSxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5wcm92aW5jZSxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5jb3VudHJ5LFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBvc3RhbF9jb2RlLFxyXG4gICAgICAgICAgICAgICAgK3JlY29yZC5sYXRpdHVkZSxcclxuICAgICAgICAgICAgICAgICtyZWNvcmQubG9uZ2l0dWRlXHJcbiAgICAgICAgICAgICkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHVzZXJfYWRkcmVzc2VzO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyB1cGRhdGVVc2VyQWNjb3VudCh1c2VyX2FjY291bnRfZGF0YTogRXNvbHZlVXNlckFjY291bnREYXRhKTogT2JzZXJ2YWJsZTxFc29sdmVVc2VyQWNjb3VudFJlc3VsdD4ge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XHJcbiAgICAgICAgICAgIGFjY291bnQ6IHVzZXJfYWNjb3VudF9kYXRhXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPihcclxuICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2VydmljZS9zZXQtdXNlci1hY2NvdW50LnBocGAsXHJcbiAgICAgICAgICAgIGJvZHksXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OydcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICB3c19pZDogdGhpcy5jb25maWcud3NpZFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxyXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApLnBpcGUoXHJcbiAgICAgICAgICAgIG1hcCgoaHR0cF9yZXNwb25zZSkgPT4gdGhpcy5yZXNwb25zZUhhbmRsZXIudmFsaWRhdGVTaW5nbGVIdHRwUmVzcG9uc2UoXHJcbiAgICAgICAgICAgICAgICBodHRwX3Jlc3BvbnNlLFxyXG4gICAgICAgICAgICAgICAgKHJlc3BvbnNlKSA9PiBuZXcgRXNvbHZlVXNlckFjY291bnRSZXN1bHQocmVzcG9uc2UpXHJcbiAgICAgICAgICAgICkpLFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvclJlczogSHR0cEVycm9yUmVzcG9uc2UgfCBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVIdHRwUG9zdEVycm9yKCdzZXQtdXNlci1hY2NvdW50JywgZXJyb3JSZXMpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldFVzZXJBY2NvdW50KCk6IE9ic2VydmFibGU8RXNvbHZlVXNlckFjY291bnQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVVc2VyQWNjb3VudFJlY29yZFtdPj4oXHJcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2UvZ2V0LWFjY291bnQucGhwYCxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgd3NfaWQ6IHRoaXMuY29uZmlnLndzaWRcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgICAgICAocmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkKSB8fFxyXG4gICAgICAgICAgICAgICAgICAgIChyZXNwb25zZS5yZWNvcmRzLmxlbmd0aCA9PT0gMClcclxuICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IHJlY29yZCA9IHJlc3BvbnNlLnJlY29yZHNbMF07XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1VzZXJBY2NvdW50KHJlY29yZCk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0QWRkcmVzcyhhZGRyZXNzX3Bvc3RfZGF0YTogRXNvbHZlQWRkcmVzc1Bvc3REYXRhKTogT2JzZXJ2YWJsZTxFc29sdmVBZGRyZXNzUmVzdWx0PiB7XHJcbiAgICAgICAgY29uc3QgYm9keSA9IHtcclxuICAgICAgICAgICAgYWRkcmVzczogYWRkcmVzc19wb3N0X2RhdGFcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8RXNvbHZlU2V0UmVzcG9uc2U8RXNvbHZlQWRkcmVzc1Jlc3BvbnNlPj4oXHJcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2Uvc2V0LWFkZHJlc3MucGhwYCxcclxuICAgICAgICAgICAgYm9keSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTg7J1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHBhcmFtczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHdzX2lkOiB0aGlzLmNvbmZpZy53c2lkXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXHJcbiAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keSdcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgbWFwKChodHRwX3Jlc3BvbnNlKSA9PiB0aGlzLnJlc3BvbnNlSGFuZGxlci52YWxpZGF0ZVNpbmdsZUh0dHBSZXNwb25zZShcclxuICAgICAgICAgICAgICAgIGh0dHBfcmVzcG9uc2UsXHJcbiAgICAgICAgICAgICAgICAocmVzcG9uc2UpID0+IG5ldyBFc29sdmVBZGRyZXNzUmVzdWx0KHJlc3BvbnNlKVxyXG4gICAgICAgICAgICApKSxcclxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXIuaGFuZGxlSHR0cFBvc3RFcnJvcignc2V0LXJlZ2lzdHJhdGlvbicsIGVycm9yUmVzKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRBZGRyZXNzZXMoKTogT2JzZXJ2YWJsZTxFc29sdmVBZGRyZXNzW10+IHtcclxuICAgICAgICBpZiAodGhpcy51c2VyX2lkIDw9IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoJ0xvZyBpbiBpcyByZXF1aXJlZCcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlQWRkcmVzc1JlY29yZFtdPj4oXHJcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2UvZ2V0LWFkZHJlc3Nlcy5waHBgLFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICB3c19pZDogdGhpcy5jb25maWcud3NpZCxcclxuICAgICAgICAgICAgICAgICAgICB1c2VyX2lkOiB0aGlzLnVzZXJfaWRcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzVXNlckFkZHJlc3MocmVzcG9uc2UucmVjb3Jkcyk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcmVnaXN0ZXIodXNlcl9yZWdpc3RyYXRpb246IEVzb2x2ZVJlZ2lzdHJhdGlvbkRhdGEpOiBPYnNlcnZhYmxlPEVzb2x2ZVJlZ2lzdHJhdGlvblJlc3VsdD4ge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XHJcbiAgICAgICAgICAgIHVzZXI6IHVzZXJfcmVnaXN0cmF0aW9uXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPEVzb2x2ZVJlZ2lzdHJhdGlvblBvc3RSZXNwb25zZUl0ZW0+PihcclxuICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2VydmljZS9zZXQtcmVnaXN0cmF0aW9uLnBocGAsXHJcbiAgICAgICAgICAgIGJvZHksXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OydcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICB3c19pZDogdGhpcy5jb25maWcud3NpZFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxyXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApLnBpcGUoXHJcbiAgICAgICAgICAgIG1hcChodHRwX3Jlc3BvbnNlID0+IHRoaXMucmVzcG9uc2VIYW5kbGVyLnZhbGlkYXRlU2luZ2xlSHR0cFJlc3BvbnNlKFxyXG4gICAgICAgICAgICAgICAgaHR0cF9yZXNwb25zZSxcclxuICAgICAgICAgICAgICAgIChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5hdXRvX2xvZ2luKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2Vzc2lvblNlcnZpY2UuaGFuZGxlVXBkYXRlU2Vzc2lvbihyZXNwb25zZS5lc29sdmVfaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBFc29sdmVSZWdpc3RyYXRpb25SZXN1bHQocmVzcG9uc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApKSxcclxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXIuaGFuZGxlSHR0cFBvc3RFcnJvcignc2V0LXJlZ2lzdHJhdGlvbicsIGVycm9yUmVzKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
285
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWFjY291bnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvYWNjb3VudC9lc29sdmUtYWNjb3VudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQXVCLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBVXZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUk5RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUd4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU3RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUseUJBQXlCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7O0FBUy9HLE1BQU0sT0FBTyxvQkFBb0I7SUFlN0IsWUFDMkMsTUFBMkIsRUFDMUQsSUFBZ0IsRUFDaEIsY0FBb0MsRUFDcEMsWUFBdUMsRUFDdkMsZUFBNkM7UUFKZCxXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQUMxRCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLG1CQUFjLEdBQWQsY0FBYyxDQUFzQjtRQUNwQyxpQkFBWSxHQUFaLFlBQVksQ0FBMkI7UUFDdkMsb0JBQWUsR0FBZixlQUFlLENBQThCO1FBbkJqRCxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBcUJqQixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUM5QyxJQUFJLE9BQU8sQ0FBQyxHQUFHLEtBQUssRUFBRSxFQUFFO2dCQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUM7YUFDN0I7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUF4QkQsSUFBVyxPQUFPO1FBQ2QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFXLE9BQU8sQ0FBQyxLQUFhO1FBQzVCLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWxDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxLQUFLLEVBQUU7WUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7U0FDekI7SUFDTCxDQUFDO0lBZ0JNLGlCQUFpQixDQUFDLGlCQUF3QztRQUM3RCxNQUFNLElBQUksR0FBRztZQUNULE9BQU8sRUFBRSxpQkFBaUI7U0FDN0IsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ2pCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLCtCQUErQixFQUNyRCxJQUFJLEVBQ0o7WUFDSSxPQUFPLEVBQUU7Z0JBQ0wsY0FBYyxFQUFFLGtEQUFrRDthQUNyRTtZQUNELE1BQU0sRUFBRTtnQkFDSixLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO2FBQzFCO1lBQ0QsWUFBWSxFQUFFLE1BQU07WUFDcEIsT0FBTyxFQUFFLE1BQU07U0FDbEIsQ0FDSixDQUFDLElBQUksQ0FDRixHQUFHLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsMEJBQTBCLENBQ2xFLGFBQWEsRUFDYixDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FDdEQsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxDQUFDLFFBQWlDLEVBQUUsRUFBRTtZQUM3QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDL0UsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFTSxjQUFjO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ2hCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLDBCQUEwQixFQUNoRDtZQUNJLE1BQU0sRUFBRTtnQkFDSixLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO2FBQzFCO1NBQ0osQ0FDSixDQUFDLElBQUksQ0FDRixHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDWCxJQUNJLENBQUMsUUFBUSxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUM7Z0JBQ2hDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLEVBQ2pDO2dCQUNFLE1BQU0sUUFBUSxDQUFDO2FBQ2xCO1lBRUQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVuQyxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQztJQUVNLFVBQVUsQ0FBQyxpQkFBd0M7UUFDdEQsTUFBTSxJQUFJLEdBQUc7WUFDVCxPQUFPLEVBQUUsaUJBQWlCO1NBQzdCLENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUNqQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTywwQkFBMEIsRUFDaEQsSUFBSSxFQUNKO1lBQ0ksT0FBTyxFQUFFO2dCQUNMLGNBQWMsRUFBRSxrREFBa0Q7YUFDckU7WUFDRCxNQUFNLEVBQUU7Z0JBQ0osS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSTthQUMxQjtZQUNELFlBQVksRUFBRSxNQUFNO1lBQ3BCLE9BQU8sRUFBRSxNQUFNO1NBQ2xCLENBQ0osQ0FBQyxJQUFJLENBQ0YsR0FBRyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLDBCQUEwQixDQUNsRSxhQUFhLEVBQ2IsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksbUJBQW1CLENBQUMsUUFBUSxDQUFDLENBQ2xELENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxRQUFpQyxFQUFFLEVBQUU7WUFDN0MsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQy9FLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRU0sWUFBWTtRQUNmLElBQUk7WUFDQSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFFbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDaEIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sNEJBQTRCLEVBQ2xEO2dCQUNJLE1BQU0sRUFBRTtvQkFDSixLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO29CQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87aUJBQ3hCO2FBQ0osQ0FDSixDQUFDLElBQUksQ0FDRixHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ1gsSUFBSSxRQUFRLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRTtvQkFDaEMsTUFBTSxRQUFRLENBQUM7aUJBQ2xCO2dCQUVELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyRCxDQUFDLENBQUMsQ0FDTCxDQUFDO1NBQ0w7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNaLE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzVCO0lBQ0wsQ0FBQztJQUVNLGFBQWEsQ0FBQyxFQUFVO1FBQzNCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQ25CLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLDZCQUE2QixFQUNuRDtZQUNJLE1BQU0sRUFBRTtnQkFDSixLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO2dCQUN2QixFQUFFLEVBQUUsRUFBRTthQUNUO1lBQ0QsWUFBWSxFQUFFLE1BQU07WUFDcEIsT0FBTyxFQUFFLE1BQU07U0FDbEIsQ0FDSixDQUFDLElBQUksQ0FDRixHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDaEIsSUFDSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDO2dCQUNwQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDO2dCQUMvQixDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxFQUM3QztnQkFDRSxNQUFNLGFBQWEsQ0FBQzthQUN2QjtZQUVELE9BQU8sSUFBSSxZQUFZLENBQ25CLGFBQWEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUMzQixhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksRUFDekIsYUFBYSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQy9CLENBQUM7UUFDTixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxRQUFpQyxFQUFFLEVBQUU7WUFDN0MsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQy9FLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRU0sUUFBUSxDQUFDLGlCQUF5QztRQUNyRCxNQUFNLElBQUksR0FBRztZQUNULElBQUksRUFBRSxpQkFBaUI7U0FDMUIsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ2pCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLCtCQUErQixFQUNyRCxJQUFJLEVBQ0o7WUFDSSxPQUFPLEVBQUU7Z0JBQ0wsY0FBYyxFQUFFLGtEQUFrRDthQUNyRTtZQUNELE1BQU0sRUFBRTtnQkFDSixLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO2FBQzFCO1lBQ0QsWUFBWSxFQUFFLE1BQU07WUFDcEIsT0FBTyxFQUFFLE1BQU07U0FDbEIsQ0FDSixDQUFDLElBQUksQ0FDRixHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLDBCQUEwQixDQUNoRSxhQUFhLEVBQ2IsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNULElBQUksUUFBUSxDQUFDLFVBQVUsRUFBRTtnQkFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDL0Q7WUFFRCxPQUFPLElBQUksd0JBQXdCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEQsQ0FBQyxDQUNKLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxRQUFpQyxFQUFFLEVBQUU7WUFDN0MsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQy9FLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRU0sY0FBYyxDQUFDLFFBQWdCLEVBQUUsZ0JBQXdCO1FBQzVELE1BQU0sSUFBSSxHQUFHO1lBQ1QsUUFBUTtZQUNSLGdCQUFnQjtTQUNuQixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDakIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sa0NBQWtDLEVBQ3hELElBQUksRUFDSjtZQUNJLE9BQU8sRUFBRTtnQkFDTCxjQUFjLEVBQUUsa0RBQWtEO2FBQ3JFO1lBQ0QsTUFBTSxFQUFFO2dCQUNKLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUk7YUFDMUI7WUFDRCxZQUFZLEVBQUUsTUFBTTtZQUNwQixPQUFPLEVBQUUsTUFBTTtTQUNsQixDQUNKLENBQUMsSUFBSSxDQUNGLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsMEJBQTBCLENBQ2hFLGFBQWEsRUFDYixDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ1QsT0FBTyxJQUFJLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BELENBQUMsQ0FDSixDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsUUFBaUMsRUFBRSxFQUFFO1lBQzdDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxxQkFBcUIsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNsRixDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQztJQUVNLHlCQUF5QixDQUFDLEtBQWE7UUFDMUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDaEIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sa0NBQWtDLEVBQ3hEO1lBQ0ksTUFBTSxFQUFFO2dCQUNKLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUk7Z0JBQ3ZCLEtBQUssRUFBRSxLQUFLO2FBQ2Y7U0FDSixDQUNKLENBQUMsSUFBSSxDQUNGLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNYLElBQ0ksQ0FBQyxRQUFRLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQztnQkFDaEMsQ0FBQyxDQUFDLGlCQUFpQixJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFDMUM7Z0JBQ0UsTUFBTSxRQUFRLENBQUM7YUFDbEI7WUFFRCxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRU0sYUFBYSxDQUNoQixTQUFpQixFQUNqQixRQUFnQixFQUNoQixnQkFBd0IsRUFDeEIsVUFBVSxHQUFHLElBQUk7UUFFakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDakIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sa0NBQWtDLEVBQ3hEO1lBQ0ksU0FBUztZQUNULFFBQVE7WUFDUixnQkFBZ0I7WUFDaEIsVUFBVTtTQUNiLEVBQ0Q7WUFDSSxPQUFPLEVBQUU7Z0JBQ0wsY0FBYyxFQUFFLGtEQUFrRDthQUNyRTtZQUNELE1BQU0sRUFBRTtnQkFDSixLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJO2FBQzFCO1lBQ0QsWUFBWSxFQUFFLE1BQU07WUFDcEIsT0FBTyxFQUFFLE1BQU07U0FDbEIsQ0FDSixDQUFDLElBQUksQ0FDRixHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLDBCQUEwQixDQUNoRSxhQUFhLEVBQ2IsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNULElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFO2dCQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUMvRDtZQUVELE9BQU8sSUFBSSx5QkFBeUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRCxDQUFDLENBQ0osQ0FBQyxFQUNGLFVBQVUsQ0FBQyxDQUFDLFFBQWlDLEVBQUUsRUFBRTtZQUM3QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUMscUJBQXFCLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDbEYsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFTSxlQUFlLENBQUMsVUFBb0MsRUFBRTtRQUN6RCxJQUFJO1lBQ0EsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBRWxCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ2hCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLCtCQUErQixFQUNyRDtnQkFDSSxNQUFNLEVBQUU7b0JBQ0osS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSTtvQkFDdkIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO29CQUNyQixHQUFHLE9BQU87aUJBQ2I7YUFDSixDQUNKLENBQUMsSUFBSSxDQUNGLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDWCxJQUFJLFFBQVEsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO29CQUNoQyxNQUFNLFFBQVEsQ0FBQztpQkFDbEI7Z0JBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDekQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUM7Z0JBQzNELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDO2dCQUNuQyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQztnQkFFL0IsT0FBTyxJQUFJLHFCQUFxQixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQy9ELENBQUMsQ0FBQyxDQUNMLENBQUM7U0FDTDtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ1osT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBRU8sa0JBQWtCLENBQUMsTUFBK0I7UUFDdEQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE1BQU0sSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUNyQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1NBQ3JEO1FBRUQsTUFBTSxZQUFZLEdBQUcsSUFBSSxpQkFBaUIsQ0FDdEMsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUNkLE1BQU0sQ0FBQyxLQUFLLEVBQ1osTUFBTSxDQUFDLGlCQUFpQixFQUN4QixNQUFNLENBQUMsS0FBSyxFQUNaLE1BQU0sQ0FBQyxTQUFTLEVBQ2hCLE1BQU0sQ0FBQyxPQUFPLEVBQ2QsTUFBTSxDQUFDLFFBQVEsRUFDZixNQUFNLENBQUMsTUFBTSxFQUNiLE1BQU0sQ0FBQyxRQUFRLENBQ2xCLENBQUM7UUFFRixZQUFZLENBQUMsZUFBZSxHQUFHLElBQUksd0JBQXdCLENBQ3ZELE1BQU0sQ0FBQyxTQUFTLEVBQ2hCLE1BQU0sQ0FBQyxVQUFVLEVBQ2pCLE1BQU0sQ0FBQyxHQUFHLENBQ2IsQ0FBQztRQUVGLFlBQVksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLHlCQUF5QixDQUN6RCxNQUFNLENBQUMsT0FBTyxFQUNkLE1BQU0sQ0FBQyxNQUFNLEVBQ2IsTUFBTSxDQUFDLFdBQVcsRUFDbEIsTUFBTSxDQUFDLGFBQWEsQ0FDdkIsQ0FBQztRQUVGLE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxPQUE4QjtRQUNyRCxNQUFNLGNBQWMsR0FBb0IsRUFBRSxDQUFDO1FBRTNDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQ25DLE9BQU8sY0FBYyxDQUFDO1NBQ3pCO1FBRUQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7WUFDMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDbEMsU0FBUzthQUNaO1lBRUQsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLGFBQWEsQ0FDakMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUNWLE1BQU0sQ0FBQyxTQUFTLEVBQ2hCLE1BQU0sQ0FBQyxZQUFZLEVBQ25CLE1BQU0sQ0FBQyxLQUFLLEVBQ1osTUFBTSxDQUFDLFVBQVUsRUFDakIsTUFBTSxDQUFDLGFBQWEsRUFDcEIsTUFBTSxDQUFDLE1BQU0sRUFDYixNQUFNLENBQUMsTUFBTSxFQUNiLE1BQU0sQ0FBQyxJQUFJLEVBQ1gsTUFBTSxDQUFDLFFBQVEsRUFDZixNQUFNLENBQUMsT0FBTyxFQUNkLE1BQU0sQ0FBQyxXQUFXLEVBQ2xCLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFDaEIsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUNwQixDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sY0FBYyxDQUFDO0lBQzFCLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxPQUFrQztRQUMxRCxNQUFNLFlBQVksR0FBd0IsRUFBRSxDQUFDO1FBRTdDLElBQUksT0FBTyxFQUFFO1lBQ1QsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7Z0JBQzFCLE1BQU0sV0FBVyxHQUFHLElBQUksaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBRWxELFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDbEM7U0FDSjtRQUVELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxVQUFVO1FBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRTtZQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1NBQ3RFO0lBQ0wsQ0FBQzs7aUhBcmFRLG9CQUFvQixrQkFnQmpCLHFCQUFxQjtxSEFoQnhCLG9CQUFvQixjQUZqQixNQUFNOzJGQUVULG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQWlCUSxNQUFNOzJCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgRXNvbHZlQ29ubmVjdENvbmZpZywgRVNPTFZFX0NPTk5FQ1RfQ09ORklHIH0gZnJvbSAnLi4vZXNvbHZlLWNvbm5lY3QuY29uZmlnJztcclxuaW1wb3J0IHsgRXNvbHZlUmVzdWx0IH0gZnJvbSAnLi4vc2hhcmVkL2Vzb2x2ZS1yZXN1bHQnO1xyXG5pbXBvcnQge1xyXG4gICAgRXNvbHZlRGVsZXRlUmVzcG9uc2UsXHJcbiAgICBFc29sdmVHZXRSZXNwb25zZSxcclxuICAgIEVzb2x2ZVNldFJlc3BvbnNlXHJcbn0gZnJvbSAnLi4vc2hhcmVkL2Vzb2x2ZS1yZXNwb25zZSc7XHJcbmltcG9ydCB7IEVzb2x2ZUVycm9ySGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvZXJyb3ItaGFuZGxlci9lc29sdmUtZXJyb3ItaGFuZGxlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZS1oYW5kbGVyL2Vzb2x2ZS1yZXNwb25zZS1oYW5kbGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3Nlc3Npb24vZXNvbHZlLXNlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEVzb2x2ZVJlZ2lzdHJhdGlvblBvc3RSZXNwb25zZUl0ZW0gfSBmcm9tICcuL2Vzb2x2ZS1yZWdpc3RyYXRpb24tcG9zdC1yZXNwb25zZS1pdGVtJztcclxuaW1wb3J0IHsgRXNvbHZlQWRkcmVzcyB9IGZyb20gJy4vZXNvbHZlLWFkZHJlc3MnO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRyZXNzUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtYWRkcmVzcy1yZWNvcmQnO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRyZXNzUmVzdWx0IH0gZnJvbSAnLi9lc29sdmUtYWRkcmVzcy1yZXN1bHQnO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRyZXNzUG9zdERhdGEgfSBmcm9tICcuL2Vzb2x2ZS1hZGRyZXNzLXNldC1kYXRhJztcclxuaW1wb3J0IHsgRXNvbHZlQWRkcmVzc1Jlc3BvbnNlIH0gZnJvbSAnLi9lc29sdmUtYWRkcmVzcy1yZXNwb25zZSc7XHJcbmltcG9ydCB7IEVzb2x2ZVJlZ2lzdHJhdGlvbkRhdGEgfSBmcm9tICcuL2Vzb2x2ZS1yZWdpc3RyYXRpb24tZGF0YSc7XHJcbmltcG9ydCB7IEVzb2x2ZVJlZ2lzdHJhdGlvblJlc3VsdCB9IGZyb20gJy4vZXNvbHZlLXJlZ2lzdHJhdGlvbi1yZXN1bHQnO1xyXG5pbXBvcnQgeyBFc29sdmVVc2VyQWNjb3VudFJlY29yZCB9IGZyb20gJy4vZXNvbHZlLXVzZXItYWNjb3VudC1yZWNvcmQnO1xyXG5pbXBvcnQgeyBFc29sdmVVc2VyQWNjb3VudERhdGEgfSBmcm9tICcuL2Vzb2x2ZS11c2VyLWFjY291bnQtZGF0YSc7XHJcbmltcG9ydCB7IEVzb2x2ZVVzZXJBY2NvdW50UmVzdWx0IH0gZnJvbSAnLi9lc29sdmUtdXNlci1hY2NvdW50LXJlc3VsdCc7XHJcbmltcG9ydCB7IEVzb2x2ZUNoYW5nZVBhc3N3b3JkUmVzdWx0IH0gZnJvbSAnLi9lc29sdmUtY2hhbmdlLXBhc3N3b3JkLXJlc3VsdCc7XHJcbmltcG9ydCB7IEVzb2x2ZUZvcmdvdFBhc3N3b3JkUmVzcG9uc2UgfSBmcm9tICcuL2Vzb2x2ZS1mb3Jnb3QtcGFzc3dvcmQtcmVzcG9uc2UnO1xyXG5pbXBvcnQgeyBFc29sdmVSZXNldFBhc3N3b3JkUmVzdWx0IH0gZnJvbSAnLi9lc29sdmUtcmVzZXQtcGFzc3dvcmQtcmVzdWx0JztcclxuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25SZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS10cmFuc2FjdGlvbi1yZWNvcmQnO1xyXG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvbiB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uJztcclxuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25PcHRpb25zIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24tb3B0aW9ucyc7XHJcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uTGlzdCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLWxpc3QnO1xyXG5pbXBvcnQgeyBFc29sdmVVc2VyQWNjb3VudCwgRXNvbHZlVXNlckFjY291bnRCdXNpbmVzcywgRXNvbHZlVXNlckFjY291bnRDb250YWN0IH0gZnJvbSAnLi9lc29sdmUtdXNlci1hY2NvdW50JztcclxuXHJcbmludGVyZmFjZSBFc29sdmVGb3Jnb3RQYXNzd29yZEdldFJlc3VsdCB7XHJcbiAgICByZXNldF9saW5rX3NlbnQ6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRXNvbHZlQWNjb3VudFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSBfdXNlcl9pZCA9IDA7XHJcblxyXG4gICAgcHVibGljIGdldCB1c2VyX2lkKCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VzZXJfaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldCB1c2VyX2lkKHZhbHVlOiBudW1iZXIpIHtcclxuICAgICAgICB2YWx1ZSA9ICgodmFsdWUgPiAwKSA/IHZhbHVlIDogMCk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLl91c2VyX2lkICE9PSB2YWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLl91c2VyX2lkID0gdmFsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIEBJbmplY3QoRVNPTFZFX0NPTk5FQ1RfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogRXNvbHZlQ29ubmVjdENvbmZpZyxcclxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICAgICAgcHJpdmF0ZSBzZXNzaW9uU2VydmljZTogRXNvbHZlU2Vzc2lvblNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBlcnJvckhhbmRsZXI6IEVzb2x2ZUVycm9ySGFuZGxlclNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByZXNwb25zZUhhbmRsZXI6IEVzb2x2ZVJlc3BvbnNlSGFuZGxlclNlcnZpY2VcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2Vzc2lvbi5zdWJzY3JpYmUoKHNlc3Npb24pID0+IHtcclxuICAgICAgICAgICAgaWYgKHNlc3Npb24ua2V5ICE9PSAnJykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy51c2VyX2lkID0gc2Vzc2lvbi5pZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyB1cGRhdGVVc2VyQWNjb3VudCh1c2VyX2FjY291bnRfZGF0YTogRXNvbHZlVXNlckFjY291bnREYXRhKTogT2JzZXJ2YWJsZTxFc29sdmVVc2VyQWNjb3VudFJlc3VsdD4ge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XHJcbiAgICAgICAgICAgIGFjY291bnQ6IHVzZXJfYWNjb3VudF9kYXRhXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPihcclxuICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2VydmljZS9zZXQtdXNlci1hY2NvdW50LnBocGAsXHJcbiAgICAgICAgICAgIGJvZHksXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OydcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICB3c19pZDogdGhpcy5jb25maWcud3NpZFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxyXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApLnBpcGUoXHJcbiAgICAgICAgICAgIG1hcCgoaHR0cF9yZXNwb25zZSkgPT4gdGhpcy5yZXNwb25zZUhhbmRsZXIudmFsaWRhdGVTaW5nbGVIdHRwUmVzcG9uc2UoXHJcbiAgICAgICAgICAgICAgICBodHRwX3Jlc3BvbnNlLFxyXG4gICAgICAgICAgICAgICAgKHJlc3BvbnNlKSA9PiBuZXcgRXNvbHZlVXNlckFjY291bnRSZXN1bHQocmVzcG9uc2UpXHJcbiAgICAgICAgICAgICkpLFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvclJlczogSHR0cEVycm9yUmVzcG9uc2UgfCBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVIdHRwUG9zdEVycm9yKCdzZXQtdXNlci1hY2NvdW50JywgZXJyb3JSZXMpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldFVzZXJBY2NvdW50KCk6IE9ic2VydmFibGU8RXNvbHZlVXNlckFjY291bnQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVVc2VyQWNjb3VudFJlY29yZFtdPj4oXHJcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2UvZ2V0LWFjY291bnQucGhwYCxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgd3NfaWQ6IHRoaXMuY29uZmlnLndzaWRcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgICAgICAocmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkKSB8fFxyXG4gICAgICAgICAgICAgICAgICAgIChyZXNwb25zZS5yZWNvcmRzLmxlbmd0aCA9PT0gMClcclxuICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGNvbnN0IHJlY29yZCA9IHJlc3BvbnNlLnJlY29yZHNbMF07XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1VzZXJBY2NvdW50KHJlY29yZCk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0QWRkcmVzcyhhZGRyZXNzX3Bvc3RfZGF0YTogRXNvbHZlQWRkcmVzc1Bvc3REYXRhKTogT2JzZXJ2YWJsZTxFc29sdmVBZGRyZXNzUmVzdWx0PiB7XHJcbiAgICAgICAgY29uc3QgYm9keSA9IHtcclxuICAgICAgICAgICAgYWRkcmVzczogYWRkcmVzc19wb3N0X2RhdGFcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8RXNvbHZlU2V0UmVzcG9uc2U8RXNvbHZlQWRkcmVzc1Jlc3BvbnNlPj4oXHJcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2Uvc2V0LWFkZHJlc3MucGhwYCxcclxuICAgICAgICAgICAgYm9keSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTg7J1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHBhcmFtczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHdzX2lkOiB0aGlzLmNvbmZpZy53c2lkXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXHJcbiAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keSdcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgbWFwKChodHRwX3Jlc3BvbnNlKSA9PiB0aGlzLnJlc3BvbnNlSGFuZGxlci52YWxpZGF0ZVNpbmdsZUh0dHBSZXNwb25zZShcclxuICAgICAgICAgICAgICAgIGh0dHBfcmVzcG9uc2UsXHJcbiAgICAgICAgICAgICAgICAocmVzcG9uc2UpID0+IG5ldyBFc29sdmVBZGRyZXNzUmVzdWx0KHJlc3BvbnNlKVxyXG4gICAgICAgICAgICApKSxcclxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXIuaGFuZGxlSHR0cFBvc3RFcnJvcignc2V0LXJlZ2lzdHJhdGlvbicsIGVycm9yUmVzKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRBZGRyZXNzZXMoKTogT2JzZXJ2YWJsZTxFc29sdmVBZGRyZXNzW10+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICB0aGlzLmxvZ2luR3VhcmQoKTtcclxuXHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZUFkZHJlc3NSZWNvcmRbXT4+KFxyXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2VydmljZS9nZXQtYWRkcmVzc2VzLnBocGAsXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdzX2lkOiB0aGlzLmNvbmZpZy53c2lkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2VyX2lkOiB0aGlzLnVzZXJfaWRcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NVc2VyQWRkcmVzcyhyZXNwb25zZS5yZWNvcmRzKTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZGVsZXRlQWRkcmVzcyhpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxFc29sdmVSZXN1bHQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZTxFc29sdmVEZWxldGVSZXNwb25zZT4oXHJcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2UvZGVsZXRlLWFkZHJlc3MucGhwYCxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgd3NfaWQ6IHRoaXMuY29uZmlnLndzaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGlkXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXHJcbiAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keSdcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgbWFwKGh0dHBfcmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgICAgIChodHRwX3Jlc3BvbnNlLnJlc3VsdCA9PT0gdW5kZWZpbmVkKSB8fFxyXG4gICAgICAgICAgICAgICAgICAgIChodHRwX3Jlc3BvbnNlLnJlc3VsdCA9PT0gbnVsbCkgfHxcclxuICAgICAgICAgICAgICAgICAgICAoaHR0cF9yZXNwb25zZS5yZXN1bHQuc3RhdHVzICE9PSAnc3VjY2VzcycpXHJcbiAgICAgICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBodHRwX3Jlc3BvbnNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlUmVzdWx0KFxyXG4gICAgICAgICAgICAgICAgICAgIGh0dHBfcmVzcG9uc2UucmVzdWx0LnN0YXR1cyxcclxuICAgICAgICAgICAgICAgICAgICBodHRwX3Jlc3BvbnNlLnJlc3VsdC5jb2RlLFxyXG4gICAgICAgICAgICAgICAgICAgIGh0dHBfcmVzcG9uc2UucmVzdWx0Lm1lc3NhZ2VcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvclJlczogSHR0cEVycm9yUmVzcG9uc2UgfCBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVIdHRwRGVsZXRlRXJyb3IoJ2RlbGV0ZS1hZGRyZXNzJywgZXJyb3JSZXMpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHJlZ2lzdGVyKHVzZXJfcmVnaXN0cmF0aW9uOiBFc29sdmVSZWdpc3RyYXRpb25EYXRhKTogT2JzZXJ2YWJsZTxFc29sdmVSZWdpc3RyYXRpb25SZXN1bHQ+IHtcclxuICAgICAgICBjb25zdCBib2R5ID0ge1xyXG4gICAgICAgICAgICB1c2VyOiB1c2VyX3JlZ2lzdHJhdGlvblxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxFc29sdmVTZXRSZXNwb25zZTxFc29sdmVSZWdpc3RyYXRpb25Qb3N0UmVzcG9uc2VJdGVtPj4oXHJcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2Uvc2V0LXJlZ2lzdHJhdGlvbi5waHBgLFxyXG4gICAgICAgICAgICBib2R5LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD11dGYtODsnXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgd3NfaWQ6IHRoaXMuY29uZmlnLndzaWRcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcclxuICAgICAgICAgICAgICAgIG9ic2VydmU6ICdib2R5J1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKS5waXBlKFxyXG4gICAgICAgICAgICBtYXAoaHR0cF9yZXNwb25zZSA9PiB0aGlzLnJlc3BvbnNlSGFuZGxlci52YWxpZGF0ZVNpbmdsZUh0dHBSZXNwb25zZShcclxuICAgICAgICAgICAgICAgIGh0dHBfcmVzcG9uc2UsXHJcbiAgICAgICAgICAgICAgICAocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UuYXV0b19sb2dpbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25TZXJ2aWNlLmhhbmRsZVVwZGF0ZVNlc3Npb24ocmVzcG9uc2UuZXNvbHZlX2lkKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlUmVnaXN0cmF0aW9uUmVzdWx0KHJlc3BvbnNlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKSksXHJcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yUmVzOiBIdHRwRXJyb3JSZXNwb25zZSB8IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUh0dHBQb3N0RXJyb3IoJ3NldC1yZWdpc3RyYXRpb24nLCBlcnJvclJlcyk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgY2hhbmdlUGFzc3dvcmQocGFzc3dvcmQ6IHN0cmluZywgY29uZmlybV9wYXNzd29yZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxFc29sdmVDaGFuZ2VQYXNzd29yZFJlc3VsdD4ge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XHJcbiAgICAgICAgICAgIHBhc3N3b3JkLFxyXG4gICAgICAgICAgICBjb25maXJtX3Bhc3N3b3JkXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPihcclxuICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2VydmljZS9zZXQtY2hhbmdlLXBhc3N3b3JkLnBocGAsXHJcbiAgICAgICAgICAgIGJvZHksXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OydcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICB3c19pZDogdGhpcy5jb25maWcud3NpZFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxyXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApLnBpcGUoXHJcbiAgICAgICAgICAgIG1hcChodHRwX3Jlc3BvbnNlID0+IHRoaXMucmVzcG9uc2VIYW5kbGVyLnZhbGlkYXRlU2luZ2xlSHR0cFJlc3BvbnNlKFxyXG4gICAgICAgICAgICAgICAgaHR0cF9yZXNwb25zZSxcclxuICAgICAgICAgICAgICAgIChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlQ2hhbmdlUGFzc3dvcmRSZXN1bHQocmVzcG9uc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApKSxcclxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXIuaGFuZGxlSHR0cFBvc3RFcnJvcignc2V0LWNoYW5nZS1wYXNzd29yZCcsIGVycm9yUmVzKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZW5kRm9yZ290UGFzc3dvcmRSZXF1ZXN0KGVtYWlsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVGb3Jnb3RQYXNzd29yZEdldFJlc3VsdD4+KFxyXG4gICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9zZXJ2aWNlL2dldC1mb3Jnb3QtcGFzc3dvcmQucGhwYCxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgd3NfaWQ6IHRoaXMuY29uZmlnLndzaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgZW1haWw6IGVtYWlsXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApLnBpcGUoXHJcbiAgICAgICAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICAgICAgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkgfHxcclxuICAgICAgICAgICAgICAgICAgICAhKCdyZXNldF9saW5rX3NlbnQnIGluIHJlc3BvbnNlLnJlY29yZHMpXHJcbiAgICAgICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UucmVjb3Jkcy5yZXNldF9saW5rX3NlbnQ7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcmVzZXRQYXNzd29yZChcclxuICAgICAgICByZXNldF9rZXk6IHN0cmluZyxcclxuICAgICAgICBwYXNzd29yZDogc3RyaW5nLFxyXG4gICAgICAgIGNvbmZpcm1fcGFzc3dvcmQ6IHN0cmluZyxcclxuICAgICAgICBhdXRvX2xvZ2luID0gdHJ1ZVxyXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVSZXNldFBhc3N3b3JkUmVzdWx0PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPEVzb2x2ZUZvcmdvdFBhc3N3b3JkUmVzcG9uc2U+PihcclxuICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2VydmljZS9zZXQtZm9yZ290LXBhc3N3b3JkLnBocGAsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHJlc2V0X2tleSxcclxuICAgICAgICAgICAgICAgIHBhc3N3b3JkLFxyXG4gICAgICAgICAgICAgICAgY29uZmlybV9wYXNzd29yZCxcclxuICAgICAgICAgICAgICAgIGF1dG9fbG9naW5cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTg7J1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHBhcmFtczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHdzX2lkOiB0aGlzLmNvbmZpZy53c2lkXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXHJcbiAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keSdcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgbWFwKGh0dHBfcmVzcG9uc2UgPT4gdGhpcy5yZXNwb25zZUhhbmRsZXIudmFsaWRhdGVTaW5nbGVIdHRwUmVzcG9uc2UoXHJcbiAgICAgICAgICAgICAgICBodHRwX3Jlc3BvbnNlLFxyXG4gICAgICAgICAgICAgICAgKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFyZXNwb25zZS5sb2dpbl9yZXF1aXJlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25TZXJ2aWNlLmhhbmRsZVVwZGF0ZVNlc3Npb24ocmVzcG9uc2UuZXNvbHZlX2lkKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlUmVzZXRQYXNzd29yZFJlc3VsdChyZXNwb25zZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICkpLFxyXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvclJlczogSHR0cEVycm9yUmVzcG9uc2UgfCBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVIdHRwUG9zdEVycm9yKCdzZXQtZm9yZ290LXBhc3N3b3JkJywgZXJyb3JSZXMpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldFRyYW5zYWN0aW9ucyhvcHRpb25zOiBFc29sdmVUcmFuc2FjdGlvbk9wdGlvbnMgPSB7fSk6IE9ic2VydmFibGU8RXNvbHZlVHJhbnNhY3Rpb25MaXN0PiB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgdGhpcy5sb2dpbkd1YXJkKCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVUcmFuc2FjdGlvblJlY29yZFtdPj4oXHJcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9zZXJ2aWNlL2dldC10cmFuc2FjdGlvbnMucGhwYCxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd3NfaWQ6IHRoaXMuY29uZmlnLndzaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJfaWQ6IHRoaXMudXNlcl9pZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgLi4ub3B0aW9ucyxcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5wcm9jZXNzVHJhbnNhY3Rpb25zKHJlc3BvbnNlLnJlY29yZHMpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsID0gK3Jlc3BvbnNlLmFkZGl0aW9uYWxfZGF0YS50b3RhbF9yZWNvcmRzID8/IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93cyA9IG9wdGlvbnMucm93cyA/PyB0b3RhbDtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBwYWdlID0gb3B0aW9ucy5wYWdlIHx8IDE7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlVHJhbnNhY3Rpb25MaXN0KGl0ZW1zLCBwYWdlLCByb3dzLCB0b3RhbCk7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBwcm9jZXNzVXNlckFjY291bnQocmVjb3JkOiBFc29sdmVVc2VyQWNjb3VudFJlY29yZCk6IEVzb2x2ZVVzZXJBY2NvdW50IHtcclxuICAgICAgICBpZiAoIXJlY29yZCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVjb3JkJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoK3JlY29yZC51c2VyaWQgIT09IHRoaXMuX3VzZXJfaWQpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHVzZXIgYWNjb3VudCByZXRyaWV2ZWQnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHVzZXJfYWNjb3VudCA9IG5ldyBFc29sdmVVc2VyQWNjb3VudChcclxuICAgICAgICAgICAgK3JlY29yZC51c2VyaWQsXHJcbiAgICAgICAgICAgIHJlY29yZC5lbWFpbCxcclxuICAgICAgICAgICAgcmVjb3JkLnJlZ2lzdHJhdGlvbl90eXBlLFxyXG4gICAgICAgICAgICByZWNvcmQudGl0bGUsXHJcbiAgICAgICAgICAgIHJlY29yZC5maXJzdG5hbWUsXHJcbiAgICAgICAgICAgIHJlY29yZC5zdXJuYW1lLFxyXG4gICAgICAgICAgICByZWNvcmQuaW5pdGlhbHMsXHJcbiAgICAgICAgICAgIHJlY29yZC5nZW5kZXIsXHJcbiAgICAgICAgICAgIHJlY29yZC5pZG51bWJlclxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIHVzZXJfYWNjb3VudC5jb250YWN0X2RldGFpbHMgPSBuZXcgRXNvbHZlVXNlckFjY291bnRDb250YWN0KFxyXG4gICAgICAgICAgICByZWNvcmQudGVsbnVtYmVyLFxyXG4gICAgICAgICAgICByZWNvcmQuY2VsbG51bWJlcixcclxuICAgICAgICAgICAgcmVjb3JkLmZheFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIHVzZXJfYWNjb3VudC5idXNpbmVzc19kZXRhaWxzID0gbmV3IEVzb2x2ZVVzZXJBY2NvdW50QnVzaW5lc3MoXHJcbiAgICAgICAgICAgIHJlY29yZC5idXNuYW1lLFxyXG4gICAgICAgICAgICByZWNvcmQudmF0bnVtLFxyXG4gICAgICAgICAgICByZWNvcmQuYnVzZGVzY3JpcHQsXHJcbiAgICAgICAgICAgIHJlY29yZC5idXNpbmVzc190eXBlXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHVzZXJfYWNjb3VudDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHByb2Nlc3NVc2VyQWRkcmVzcyhyZWNvcmRzOiBFc29sdmVBZGRyZXNzUmVjb3JkW10pOiBFc29sdmVBZGRyZXNzW10ge1xyXG4gICAgICAgIGNvbnN0IHVzZXJfYWRkcmVzc2VzOiBFc29sdmVBZGRyZXNzW10gPSBbXTtcclxuXHJcbiAgICAgICAgaWYgKCFyZWNvcmRzIHx8ICh0aGlzLl91c2VyX2lkID09PSAwKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdXNlcl9hZGRyZXNzZXM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XHJcbiAgICAgICAgICAgIGlmICgrcmVjb3JkLnVzZXJpZCAhPT0gdGhpcy5fdXNlcl9pZCkge1xyXG4gICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHVzZXJfYWRkcmVzc2VzLnB1c2gobmV3IEVzb2x2ZUFkZHJlc3MoXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkLmlkLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLnJlY2lwaWVudCxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5hZGRyZXNzX3R5cGUsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQucG9ib3gsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQucGxhY2VfbmFtZSxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5zdHJlZXRfbnVtYmVyLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLnN0cmVldCxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5zdWJ1cmIsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQuY2l0eSxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5wcm92aW5jZSxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5jb3VudHJ5LFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBvc3RhbF9jb2RlLFxyXG4gICAgICAgICAgICAgICAgK3JlY29yZC5sYXRpdHVkZSxcclxuICAgICAgICAgICAgICAgICtyZWNvcmQubG9uZ2l0dWRlXHJcbiAgICAgICAgICAgICkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHVzZXJfYWRkcmVzc2VzO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcHJvY2Vzc1RyYW5zYWN0aW9ucyhyZWNvcmRzOiBFc29sdmVUcmFuc2FjdGlvblJlY29yZFtdKTogRXNvbHZlVHJhbnNhY3Rpb25bXSB7XHJcbiAgICAgICAgY29uc3QgdHJhbnNhY3Rpb25zOiBFc29sdmVUcmFuc2FjdGlvbltdID0gW107XHJcblxyXG4gICAgICAgIGlmIChyZWNvcmRzKSB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlY29yZHMpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gbmV3IEVzb2x2ZVRyYW5zYWN0aW9uKHJlY29yZCk7XHJcblxyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25zLnB1c2godHJhbnNhY3Rpb24pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdHJhbnNhY3Rpb25zO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgbG9naW5HdWFyZCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy51c2VyX2lkIDw9IDApIHtcclxuICAgICAgICAgICAgdGhpcy5lcnJvckhhbmRsZXIuZW1pdEVycm9yKCdsb2dpbl9yZXF1aXJlZCcsICdMb2dpbiBpcyByZXF1aXJlZCcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { EsolveResponseResult } from '../shared/response-handler/esolve-response-result';
|
|
2
|
+
export class EsolveChangePasswordResult extends EsolveResponseResult {
|
|
3
|
+
constructor(response) {
|
|
4
|
+
super(response);
|
|
5
|
+
this.password_updated = (response.status.state === 'success');
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWNoYW5nZS1wYXNzd29yZC1yZXN1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL2FjY291bnQvZXNvbHZlLWNoYW5nZS1wYXNzd29yZC1yZXN1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFFekYsTUFBTSxPQUFPLDBCQUEyQixTQUFRLG9CQUFvQjtJQUdoRSxZQUNJLFFBQWdDO1FBRWhDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVoQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQztJQUNsRSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVQb3N0UmVzcG9uc2VJdGVtIH0gZnJvbSAnLi4vc2hhcmVkL2Vzb2x2ZS1yZXNwb25zZSc7XHJcbmltcG9ydCB7IEVzb2x2ZVJlc3BvbnNlUmVzdWx0IH0gZnJvbSAnLi4vc2hhcmVkL3Jlc3BvbnNlLWhhbmRsZXIvZXNvbHZlLXJlc3BvbnNlLXJlc3VsdCc7XHJcblxyXG5leHBvcnQgY2xhc3MgRXNvbHZlQ2hhbmdlUGFzc3dvcmRSZXN1bHQgZXh0ZW5kcyBFc29sdmVSZXNwb25zZVJlc3VsdCB7XHJcbiAgICBwdWJsaWMgcGFzc3dvcmRfdXBkYXRlZDogYm9vbGVhbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICByZXNwb25zZTogRXNvbHZlUG9zdFJlc3BvbnNlSXRlbVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIocmVzcG9uc2UpO1xyXG5cclxuICAgICAgICB0aGlzLnBhc3N3b3JkX3VwZGF0ZWQgPSAocmVzcG9uc2Uuc3RhdHVzLnN0YXRlID09PSAnc3VjY2VzcycpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWZvcmdvdC1wYXNzd29yZC1yZXNwb25zZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvYWNjb3VudC9lc29sdmUtZm9yZ290LXBhc3N3b3JkLXJlc3BvbnNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVQb3N0UmVzcG9uc2VJdGVtIH0gZnJvbSAnLi4vc2hhcmVkL2Vzb2x2ZS1yZXNwb25zZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVzb2x2ZUZvcmdvdFBhc3N3b3JkUmVzcG9uc2UgZXh0ZW5kcyBFc29sdmVQb3N0UmVzcG9uc2VJdGVtIHtcclxuICAgIGVzb2x2ZV9pZDogbnVtYmVyO1xyXG4gICAgcmVzZXRfc3VjY2VzczogYm9vbGVhbjtcclxuICAgIHBhc3N3b3JkX21hdGNoZXNfb2xkOiBib29sZWFuO1xyXG4gICAgbG9naW5fcmVxdWlyZWQ6IGJvb2xlYW47XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EsolveResponseResult } from '../shared/response-handler/esolve-response-result';
|
|
2
|
+
export class EsolveResetPasswordResult extends EsolveResponseResult {
|
|
3
|
+
constructor(response) {
|
|
4
|
+
super(response);
|
|
5
|
+
this.id = response.esolve_id;
|
|
6
|
+
this.reset_success = response.reset_success;
|
|
7
|
+
this.password_matches_old = response.password_matches_old;
|
|
8
|
+
this.login_required = response.login_required;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXJlc2V0LXBhc3N3b3JkLXJlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvYWNjb3VudC9lc29sdmUtcmVzZXQtcGFzc3dvcmQtcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBR3pGLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxvQkFBb0I7SUFNL0QsWUFDSSxRQUFzQztRQUV0QyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFaEIsSUFBSSxDQUFDLEVBQUUsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDO1FBQzdCLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQztRQUM1QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsUUFBUSxDQUFDLG9CQUFvQixDQUFDO1FBQzFELElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQztJQUNsRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVSZXNwb25zZVJlc3VsdCB9IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZS1oYW5kbGVyL2Vzb2x2ZS1yZXNwb25zZS1yZXN1bHQnO1xyXG5pbXBvcnQgeyBFc29sdmVGb3Jnb3RQYXNzd29yZFJlc3BvbnNlIH0gZnJvbSAnLi9lc29sdmUtZm9yZ290LXBhc3N3b3JkLXJlc3BvbnNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVSZXNldFBhc3N3b3JkUmVzdWx0IGV4dGVuZHMgRXNvbHZlUmVzcG9uc2VSZXN1bHQge1xyXG4gICAgcHVibGljIGlkOiBudW1iZXI7XHJcbiAgICBwdWJsaWMgcmVzZXRfc3VjY2VzczogYm9vbGVhbjtcclxuICAgIHB1YmxpYyBwYXNzd29yZF9tYXRjaGVzX29sZDogYm9vbGVhbjtcclxuICAgIHB1YmxpYyBsb2dpbl9yZXF1aXJlZDogYm9vbGVhbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICByZXNwb25zZTogRXNvbHZlRm9yZ290UGFzc3dvcmRSZXNwb25zZVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIocmVzcG9uc2UpO1xyXG5cclxuICAgICAgICB0aGlzLmlkID0gcmVzcG9uc2UuZXNvbHZlX2lkO1xyXG4gICAgICAgIHRoaXMucmVzZXRfc3VjY2VzcyA9IHJlc3BvbnNlLnJlc2V0X3N1Y2Nlc3M7XHJcbiAgICAgICAgdGhpcy5wYXNzd29yZF9tYXRjaGVzX29sZCA9IHJlc3BvbnNlLnBhc3N3b3JkX21hdGNoZXNfb2xkO1xyXG4gICAgICAgIHRoaXMubG9naW5fcmVxdWlyZWQgPSByZXNwb25zZS5sb2dpbl9yZXF1aXJlZDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { EsolveList } from '../shared/esolve-list';
|
|
2
|
+
export class EsolveTransactionList extends EsolveList {
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLWxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL2FjY291bnQvZXNvbHZlLXRyYW5zYWN0aW9uLWxpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR25ELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxVQUE2QjtDQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXNvbHZlTGlzdCB9IGZyb20gJy4uL3NoYXJlZC9lc29sdmUtbGlzdCc7XHJcbmltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24nO1xyXG5cclxuZXhwb3J0IGNsYXNzIEVzb2x2ZVRyYW5zYWN0aW9uTGlzdCBleHRlbmRzIEVzb2x2ZUxpc3Q8RXNvbHZlVHJhbnNhY3Rpb24+IHsgfVxyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL2FjY291bnQvZXNvbHZlLXRyYW5zYWN0aW9uLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVzb2x2ZVRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRXNvbHZlVHJhbnNhY3Rpb25PcHRpb25zIHtcclxuICAgIHR5cGU/OiBFc29sdmVUcmFuc2FjdGlvblR5cGU7XHJcbiAgICBwYWdlPzogbnVtYmVyO1xyXG4gICAgcm93cz86IG51bWJlcjtcclxuICAgIGZyb21fZGF0ZT86IHN0cmluZztcclxuICAgIHRvX2RhdGU/OiBzdHJpbmc7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLXJlY29yZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvYWNjb3VudC9lc29sdmUtdHJhbnNhY3Rpb24tcmVjb3JkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVTdG9ja0xvY2F0aW9uUmVjb3JkIH0gZnJvbSAnLi4vbG9jYXRpb25zL2Vzb2x2ZS1zdG9jay1sb2NhdGlvbi1yZWNvcmQnO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRyZXNzVHlwZSB9IGZyb20gJy4vZXNvbHZlLWFkZHJlc3MtcmVjb3JkJztcclxuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnLi9lc29sdmUtdHJhbnNhY3Rpb24nO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFc29sdmVUcmFuc2FjdGlvbkl0ZW1SZWNvcmQge1xyXG4gICAgY29kZTogc3RyaW5nO1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgcXR5OiBudW1iZXI7XHJcbiAgICBkaXNjb3VudDogbnVtYmVyO1xyXG4gICAgdmF0X3JhdGU6IG51bWJlcjtcclxuICAgIHByaWNlOiBudW1iZXI7XHJcbiAgICBwcmljZV9leGNsdXNpdmU6IG51bWJlcjtcclxuICAgIHByaWNlX2V4Y2x1c2l2ZV9hZnRlcl9kaXNjb3VudDogbnVtYmVyO1xyXG4gICAgcHJpY2VfaW5jbHVzaXZlOiBudW1iZXI7XHJcbiAgICBwcmljZV9pbmNsdXNpdmVfYWZ0ZXJfZGlzY291bnQ6IG51bWJlcjtcclxuICAgIGxpbmVfdG90YWxfZXhjbHVzaXZlOiBudW1iZXI7XHJcbiAgICBsaW5lX3RvdGFsX2V4Y2x1c2l2ZV9hZnRlcl9kaXNjb3VudDogbnVtYmVyO1xyXG4gICAgbGluZV90b3RhbF9pbmNsdXNpdmU6IG51bWJlcjtcclxuICAgIGxpbmVfdG90YWxfaW5jbHVzaXZlX2FmdGVyX2Rpc2NvdW50OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRXNvbHZlVHJhbnNhY3Rpb25DbGllbnRSZWNvcmQge1xyXG4gICAgaWQ6IG51bWJlcjtcclxuICAgIGNvbXBhbnlfbmFtZTogc3RyaW5nO1xyXG4gICAgYWNjb3VudDogc3RyaW5nO1xyXG4gICAgYnJhbmNoX2NvZGU6IHN0cmluZztcclxuICAgIGZpcnN0bmFtZTogc3RyaW5nO1xyXG4gICAgc3VybmFtZTogc3RyaW5nO1xyXG4gICAgZW1haWw6IHN0cmluZztcclxuICAgIGNvbnRhY3RfbnVtYmVyOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRXNvbHZlVHJhbnNhY3Rpb25Vc2VyUmVjb3JkIHtcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICBlbWFpbDogc3RyaW5nO1xyXG4gICAgZmlyc3RuYW1lOiBzdHJpbmc7XHJcbiAgICBzdXJuYW1lOiBzdHJpbmc7XHJcbiAgICB0ZWxudW1iZXI6IHN0cmluZztcclxuICAgIGNlbGxudW1iZXI6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFc29sdmVUcmFuc2FjdGlvblBheW1lbnRNZXRob2RSZWNvcmQge1xyXG4gICAgaWQ6IG51bWJlcjtcclxuICAgIHBheW1ldGhvZF9uYW1lOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgaW50ZWdyYXRpb25fdHlwZTogc3RyaW5nO1xyXG4gICAgc2VydmljZV9wcm92aWRlcjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVzb2x2ZVRyYW5zYWN0aW9uTG9jYXRpb25SZWNvcmQgZXh0ZW5kcyBFc29sdmVTdG9ja0xvY2F0aW9uUmVjb3JkIHsgfVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFc29sdmVUcmFuc2FjdGlvblNoaXBwaW5nTWV0aG9kUmVjb3JkIHtcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICBjYXJyaWVyX25hbWU6IHN0cmluZztcclxuICAgIGRlbGl2ZXJ5X2NhdGVnb3J5OiBzdHJpbmc7XHJcbiAgICBsb2NhdGlvbjogc3RyaW5nO1xyXG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIHByaWNpbmc6IHN0cmluZztcclxuICAgIGNsaWVudF90b19jb2xsZWN0OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVzb2x2ZVRyYW5zYWN0aW9uUmVjb3JkIHtcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICB0cmFuc2FjdGlvbl90eXBlOiBFc29sdmVUcmFuc2FjdGlvblR5cGU7XHJcbiAgICBsb3lhbHR5bnVtYmVyOiBzdHJpbmc7XHJcbiAgICBzdGF0dXM6IHN0cmluZztcclxuXHJcbiAgICByZXBzX2lkOiBudW1iZXI7XHJcbiAgICBjbGllbnQ6IEVzb2x2ZVRyYW5zYWN0aW9uQ2xpZW50UmVjb3JkIHwgbnVsbDtcclxuICAgIHVzZXI6IEVzb2x2ZVRyYW5zYWN0aW9uVXNlclJlY29yZCB8IG51bGw7XHJcblxyXG4gICAgLy8gTG9jYXRpb25cclxuICAgIGVycF9pZGVudGlmaWVyOiBzdHJpbmc7XHJcbiAgICBsb2NhdGlvbl9kZXRhaWxzOiBFc29sdmVUcmFuc2FjdGlvbkxvY2F0aW9uUmVjb3JkIHwgbnVsbDtcclxuXHJcbiAgICAvLyBFeHRlcm5hbCBOdW1iZXJzXHJcbiAgICBleHRlcm5hbF9vcmRlcl9udW1iZXI6IHN0cmluZztcclxuICAgIGV4dGVybmFsX2ludm9pY2VfbnVtYmVyOiBzdHJpbmc7XHJcblxyXG4gICAgLy8gRGF0ZXNcclxuICAgIHR4ZGF0ZTogc3RyaW5nO1xyXG4gICAgdHhkYXRlX3RpbWVzdGFtcDogbnVtYmVyO1xyXG4gICAgZXhwZWN0ZWRfZGF0ZTogc3RyaW5nO1xyXG4gICAgZXhwZWN0ZWRfZGF0ZV90aW1lc3RhbXA6IG51bWJlcjtcclxuXHJcbiAgICAvLyBUb3RhbHNcclxuICAgIGludm9pY2VfYW1vdW50OiBudW1iZXI7XHJcbiAgICB2YXQ6IG51bWJlcjtcclxuICAgIGRpc2NvdW50OiBudW1iZXI7XHJcbiAgICB0b3RhbDogbnVtYmVyO1xyXG4gICAgc2hpcHBpbmdfdG90YWw6IG51bWJlcjtcclxuICAgIGluc3VyYW5jZV90b3RhbDogbnVtYmVyO1xyXG5cclxuICAgIC8vIFBheW1lbnRcclxuICAgIHBheW1lbnQ6IG51bWJlcjtcclxuICAgIHBheW1lbnRfbWV0aG9kOiBzdHJpbmc7XHJcbiAgICBwYXltZW50X21ldGhvZF9kZXRhaWxzOiBFc29sdmVUcmFuc2FjdGlvblBheW1lbnRNZXRob2RSZWNvcmQgfCBudWxsO1xyXG4gICAgZ2F0ZXdheV90cmFuc2FjdGlvbl9pZDogc3RyaW5nO1xyXG4gICAgcGF5bWVudF9yZWZlcmVuY2U6IHN0cmluZztcclxuICAgIHBheW1lbnRfZGVzY3JpcHRpb246IHN0cmluZztcclxuXHJcbiAgICAvLyBTaGlwcGluZ1xyXG4gICAgc2hpcHBpbmdfbWV0aG9kOiBzdHJpbmc7XHJcbiAgICBzaGlwcGluZ19tZXRob2RfZGV0YWlsczogRXNvbHZlVHJhbnNhY3Rpb25TaGlwcGluZ01ldGhvZFJlY29yZCB8IG51bGw7XHJcblxyXG4gICAgLy8gQWRkcmVzcyBEZXRhaWxzXHJcbiAgICByZWNpcGllbnQ6IHN0cmluZztcclxuICAgIGFkZHJlc3NfdHlwZTogRXNvbHZlQWRkcmVzc1R5cGU7XHJcbiAgICBhZGRyZXNzX2Rlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBwb2JveDogc3RyaW5nO1xyXG4gICAgc3RyZWV0X251bWJlcjogc3RyaW5nO1xyXG4gICAgc3RyZWV0OiBzdHJpbmc7XHJcbiAgICBzdWJ1cmI6IHN0cmluZztcclxuICAgIGNpdHk6IHN0cmluZztcclxuICAgIHByb3ZpbmNlOiBzdHJpbmc7XHJcbiAgICBjb3VudHJ5OiBzdHJpbmc7XHJcbiAgICBwb3N0YWxfY29kZTogc3RyaW5nO1xyXG5cclxuICAgIHRyYW5zYWN0aW9uX2l0ZW1zOiBFc29sdmVUcmFuc2FjdGlvbkl0ZW1SZWNvcmRbXTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { EsolveStockLocation } from '../locations/esolve-stock-location';
|
|
2
|
+
export class EsolveTransaction {
|
|
3
|
+
constructor(record) {
|
|
4
|
+
// Transaction Items
|
|
5
|
+
this.items = [];
|
|
6
|
+
this.id = +record.id;
|
|
7
|
+
this.type = record.transaction_type;
|
|
8
|
+
this.status = record.status;
|
|
9
|
+
this.loyalty_number = record.loyaltynumber;
|
|
10
|
+
this.external_order_number = record.external_order_number;
|
|
11
|
+
this.external_invoice_number = record.external_invoice_number;
|
|
12
|
+
this.date = new Date(+record.txdate_timestamp * 1000);
|
|
13
|
+
this.expected_date = new Date(+record.expected_date_timestamp * 1000);
|
|
14
|
+
this.invoice_amount = +record.invoice_amount;
|
|
15
|
+
this.vat = +record.vat;
|
|
16
|
+
this.discount = +record.discount;
|
|
17
|
+
this.total = +record.total;
|
|
18
|
+
this.shipping_total = +record.shipping_total;
|
|
19
|
+
this.insurance_total = +record.insurance_total;
|
|
20
|
+
this.payment = +record.payment;
|
|
21
|
+
this.payment_reference = record.payment_reference;
|
|
22
|
+
this.payment_description = record.payment_description;
|
|
23
|
+
this.gateway_transaction_id = record.gateway_transaction_id;
|
|
24
|
+
this.address = new EsolveTransactionAddress(record.recipient, record.address_type, record.address_description, record.street_number, record.street, record.suburb, record.city, record.province, record.country, record.postal_code, record.pobox);
|
|
25
|
+
if (record.user) {
|
|
26
|
+
this.user = new EsolveTransactionUser(+record.user.id, record.user.email, record.user.firstname, record.user.surname, record.user.telnumber, record.user.cellnumber);
|
|
27
|
+
}
|
|
28
|
+
if (record.client) {
|
|
29
|
+
this.client = new EsolveTransactionClient(+record.client.id, record.client.account, record.client.company_name, record.client.branch_code, record.client.email, record.client.firstname, record.client.surname, record.client.contact_number);
|
|
30
|
+
}
|
|
31
|
+
if (record.location_details) {
|
|
32
|
+
this.location = new EsolveTransactionLocation(record.location_details);
|
|
33
|
+
}
|
|
34
|
+
if (record.payment_method_details) {
|
|
35
|
+
this.payment_method = new EsolveTransactionPaymentMethod(record.payment_method_details.id, record.payment_method_details.paymethod_name, record.payment_method_details.description, record.payment_method_details.integration_type, record.payment_method_details.service_provider);
|
|
36
|
+
}
|
|
37
|
+
if (record.shipping_method_details) {
|
|
38
|
+
this.shipping_method = new EsolveTransactionShippingMethod(+record.shipping_method_details.id, record.shipping_method_details.carrier_name, record.shipping_method_details.delivery_category, record.shipping_method_details.location, record.shipping_method_details.description, record.shipping_method_details.pricing, !!record.shipping_method_details.client_to_collect);
|
|
39
|
+
}
|
|
40
|
+
this.parseTransactionItems(record.transaction_items);
|
|
41
|
+
}
|
|
42
|
+
parseTransactionItems(record_items) {
|
|
43
|
+
for (const record_item of record_items) {
|
|
44
|
+
const price = new EsolveTransactionItemPrice(+record_item.price_exclusive, +record_item.price_inclusive, +record_item.price_exclusive_after_discount, +record_item.price_inclusive_after_discount);
|
|
45
|
+
const line_total = new EsolveTransactionItemPrice(+record_item.line_total_exclusive, +record_item.line_total_inclusive, +record_item.line_total_exclusive_after_discount, +record_item.line_total_inclusive_after_discount);
|
|
46
|
+
const item = new EsolveTransactionItem(record_item.code, record_item.name, +record_item.qty, +record_item.discount, +record_item.vat_rate, price, line_total);
|
|
47
|
+
this.items.push(item);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export class EsolveTransactionClient {
|
|
52
|
+
constructor(id, account, company_name, branch_code, email, first_name, last_name, contact_number) {
|
|
53
|
+
this.id = id;
|
|
54
|
+
this.account = account;
|
|
55
|
+
this.company_name = company_name;
|
|
56
|
+
this.branch_code = branch_code;
|
|
57
|
+
this.email = email;
|
|
58
|
+
this.first_name = first_name;
|
|
59
|
+
this.last_name = last_name;
|
|
60
|
+
this.contact_number = contact_number;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
export class EsolveTransactionUser {
|
|
64
|
+
constructor(id, email, first_name, last_name, tel_number, cell_number) {
|
|
65
|
+
this.id = id;
|
|
66
|
+
this.email = email;
|
|
67
|
+
this.first_name = first_name;
|
|
68
|
+
this.last_name = last_name;
|
|
69
|
+
this.tel_number = tel_number;
|
|
70
|
+
this.cell_number = cell_number;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
export class EsolveTransactionLocation extends EsolveStockLocation {
|
|
74
|
+
}
|
|
75
|
+
export class EsolveTransactionPaymentMethod {
|
|
76
|
+
constructor(id, name, description, integration_type, service_provider) {
|
|
77
|
+
this.id = id;
|
|
78
|
+
this.name = name;
|
|
79
|
+
this.description = description;
|
|
80
|
+
this.integration_type = integration_type;
|
|
81
|
+
this.service_provider = service_provider;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
export class EsolveTransactionShippingMethod {
|
|
85
|
+
constructor(id, name, delivery_category, location, description, pricing, client_to_collect) {
|
|
86
|
+
this.id = id;
|
|
87
|
+
this.name = name;
|
|
88
|
+
this.delivery_category = delivery_category;
|
|
89
|
+
this.location = location;
|
|
90
|
+
this.description = description;
|
|
91
|
+
this.pricing = pricing;
|
|
92
|
+
this.client_to_collect = client_to_collect;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
export class EsolveTransactionAddress {
|
|
96
|
+
constructor(recipient, address_type, address_description, street_number, street, suburb, city, province, country, postal_code, pobox) {
|
|
97
|
+
this.recipient = recipient;
|
|
98
|
+
this.address_type = address_type;
|
|
99
|
+
this.address_description = address_description;
|
|
100
|
+
this.street_number = street_number;
|
|
101
|
+
this.street = street;
|
|
102
|
+
this.suburb = suburb;
|
|
103
|
+
this.city = city;
|
|
104
|
+
this.province = province;
|
|
105
|
+
this.country = country;
|
|
106
|
+
this.postal_code = postal_code;
|
|
107
|
+
this.pobox = pobox;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
export class EsolveTransactionItem {
|
|
111
|
+
constructor(code, name, qty, discount, vat_rate, price, line_total) {
|
|
112
|
+
this.code = code;
|
|
113
|
+
this.name = name;
|
|
114
|
+
this.qty = qty;
|
|
115
|
+
this.discount = discount;
|
|
116
|
+
this.vat_rate = vat_rate;
|
|
117
|
+
this.price = price;
|
|
118
|
+
this.line_total = line_total;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
export class EsolveTransactionItemPrice {
|
|
122
|
+
constructor(
|
|
123
|
+
/**
|
|
124
|
+
* Price without tax
|
|
125
|
+
*/
|
|
126
|
+
price,
|
|
127
|
+
/**
|
|
128
|
+
* Price with tax
|
|
129
|
+
*/
|
|
130
|
+
price_with_tax,
|
|
131
|
+
/**
|
|
132
|
+
* Price without tax and with discounts applied if appilcable
|
|
133
|
+
*/
|
|
134
|
+
price_discounted,
|
|
135
|
+
/**
|
|
136
|
+
* Price with tax and with discounts applied if appilcable
|
|
137
|
+
*/
|
|
138
|
+
price_with_tax_discounted) {
|
|
139
|
+
this.price = price;
|
|
140
|
+
this.price_with_tax = price_with_tax;
|
|
141
|
+
this.price_discounted = price_discounted;
|
|
142
|
+
this.price_with_tax_discounted = price_with_tax_discounted;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi9hY2NvdW50L2Vzb2x2ZS10cmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQU16RSxNQUFNLE9BQU8saUJBQWlCO0lBMEMxQixZQUFZLE1BQStCO1FBSDNDLG9CQUFvQjtRQUNiLFVBQUssR0FBNEIsRUFBRSxDQUFDO1FBR3ZDLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7UUFDM0MsSUFBSSxDQUFDLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQztRQUMxRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDO1FBRTlELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUV0RSxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQztRQUM3QyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsTUFBTSxDQUFD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aEIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixVQUFLLEdBQUwsS0FBSyxDQUE0QjtRQUNqQyxlQUFVLEdBQVYsVUFBVSxDQUE0QjtJQUM3QyxDQUFDO0NBQ1I7QUFFRCxNQUFNLE9BQU8sMEJBQTBCO0lBQ25DO0lBQ0k7O09BRUc7SUFDSSxLQUFhO0lBQ3BCOztPQUVHO0lBQ0ksY0FBc0I7SUFDN0I7O09BRUc7SUFDSSxnQkFBd0I7SUFDL0I7O09BRUc7SUFDSSx5QkFBaUM7UUFaakMsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUliLG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBSXRCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBUTtRQUl4Qiw4QkFBeUIsR0FBekIseUJBQXlCLENBQVE7SUFDeEMsQ0FBQztDQUNSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXNvbHZlU3RvY2tMb2NhdGlvbiB9IGZyb20gJy4uL2xvY2F0aW9ucy9lc29sdmUtc3RvY2stbG9jYXRpb24nO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRyZXNzVHlwZSB9IGZyb20gJy4vZXNvbHZlLWFkZHJlc3MtcmVjb3JkJztcclxuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25JdGVtUmVjb3JkLCBFc29sdmVUcmFuc2FjdGlvblJlY29yZCB9IGZyb20gJy4vZXNvbHZlLXRyYW5zYWN0aW9uLXJlY29yZCc7XHJcblxyXG5leHBvcnQgdHlwZSBFc29sdmVUcmFuc2FjdGlvblR5cGUgPSAnb3JkZXInIHwgJ3F1b3RlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVUcmFuc2FjdGlvbiB7XHJcbiAgICBwdWJsaWMgaWQ6IG51bWJlcjtcclxuICAgIHB1YmxpYyB0eXBlOiBFc29sdmVUcmFuc2FjdGlvblR5cGU7XHJcbiAgICBwdWJsaWMgc3RhdHVzOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgbG95YWx0eV9udW1iZXI6IHN0cmluZztcclxuICAgIHB1YmxpYyBleHRlcm5hbF9vcmRlcl9udW1iZXI6IHN0cmluZztcclxuICAgIHB1YmxpYyBleHRlcm5hbF9pbnZvaWNlX251bWJlcjogc3RyaW5nO1xyXG5cclxuICAgIC8vIERhdGVzXHJcbiAgICBwdWJsaWMgZGF0ZTogRGF0ZTtcclxuICAgIHB1YmxpYyBleHBlY3RlZF9kYXRlOiBEYXRlO1xyXG5cclxuICAgIHB1YmxpYyBjbGllbnQ/OiBFc29sdmVUcmFuc2FjdGlvbkNsaWVudDtcclxuICAgIHB1YmxpYyB1c2VyPzogRXNvbHZlVHJhbnNhY3Rpb25Vc2VyO1xyXG5cclxuICAgIC8vIExvY2F0aW9uXHJcbiAgICBwdWJsaWMgbG9jYXRpb24/OiBFc29sdmVUcmFuc2FjdGlvbkxvY2F0aW9uO1xyXG5cclxuICAgIC8vIFRvdGFsc1xyXG4gICAgcHVibGljIGludm9pY2VfYW1vdW50OiBudW1iZXI7XHJcbiAgICBwdWJsaWMgdmF0OiBudW1iZXI7XHJcbiAgICBwdWJsaWMgZGlzY291bnQ6IG51bWJlcjtcclxuICAgIHB1YmxpYyB0b3RhbDogbnVtYmVyO1xyXG4gICAgcHVibGljIHNoaXBwaW5nX3RvdGFsOiBudW1iZXI7XHJcbiAgICBwdWJsaWMgaW5zdXJhbmNlX3RvdGFsOiBudW1iZXI7XHJcblxyXG4gICAgLy8gUGF5bWVudFxyXG4gICAgcHVibGljIHBheW1lbnRfbWV0aG9kPzogRXNvbHZlVHJhbnNhY3Rpb25QYXltZW50TWV0aG9kO1xyXG4gICAgcHVibGljIHBheW1lbnQ6IG51bWJlcjtcclxuICAgIHB1YmxpYyBnYXRld2F5X3RyYW5zYWN0aW9uX2lkOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgcGF5bWVudF9yZWZlcmVuY2U6IHN0cmluZztcclxuICAgIHB1YmxpYyBwYXltZW50X2Rlc2NyaXB0aW9uOiBzdHJpbmc7XHJcblxyXG4gICAgLy8gU2hpcHBpbmdcclxuICAgIHB1YmxpYyBzaGlwcGluZ19tZXRob2Q/OiBFc29sdmVUcmFuc2FjdGlvblNoaXBwaW5nTWV0aG9kO1xyXG5cclxuICAgIC8vIEFkZHJlc3MgRGV0YWlsc1xyXG4gICAgcHVibGljIGFkZHJlc3M6IEVzb2x2ZVRyYW5zYWN0aW9uQWRkcmVzcztcclxuXHJcbiAgICAvLyBUcmFuc2FjdGlvbiBJdGVtc1xyXG4gICAgcHVibGljIGl0ZW1zOiBFc29sdmVUcmFuc2FjdGlvbkl0ZW1bXSA9IFtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHJlY29yZDogRXNvbHZlVHJhbnNhY3Rpb25SZWNvcmQpIHtcclxuICAgICAgICB0aGlzLmlkID0gK3JlY29yZC5pZDtcclxuICAgICAgICB0aGlzLnR5cGUgPSByZWNvcmQudHJhbnNhY3Rpb25fdHlwZTtcclxuICAgICAgICB0aGlzLnN0YXR1cyA9IHJlY29yZC5zdGF0dXM7XHJcbiAgICAgICAgdGhpcy5sb3lhbHR5X251bWJlciA9IHJlY29yZC5sb3lhbHR5bnVtYmVyO1xyXG4gICAgICAgIHRoaXMuZXh0ZXJuYWxfb3JkZXJfbnVtYmVyID0gcmVjb3JkLmV4dGVybmFsX29yZGVyX251bWJlcjtcclxuICAgICAgICB0aGlzLmV4dGVybmFsX2ludm9pY2VfbnVtYmVyID0gcmVjb3JkLmV4dGVybmFsX2ludm9pY2VfbnVtYmVyO1xyXG5cclxuICAgICAgICB0aGlzLmRhdGUgPSBuZXcgRGF0ZSgrcmVjb3JkLnR4ZGF0ZV90aW1lc3RhbXAgKiAxMDAwKTtcclxuICAgICAgICB0aGlzLmV4cGVjdGVkX2RhdGUgPSBuZXcgRGF0ZSgrcmVjb3JkLmV4cGVjdGVkX2RhdGVfdGltZXN0YW1wICogMTAwMCk7XHJcblxyXG4gICAgICAgIHRoaXMuaW52b2ljZV9hbW91bnQgPSArcmVjb3JkLmludm9pY2VfYW1vdW50O1xyXG4gICAgICAgIHRoaXMudmF0ID0gK3JlY29yZC52YXQ7XHJcbiAgICAgICAgdGhpcy5kaXNjb3VudCA9ICtyZWNvcmQuZGlzY291bnQ7XHJcbiAgICAgICAgdGhpcy50b3RhbCA9ICtyZWNvcmQudG90YWw7XHJcbiAgICAgICAgdGhpcy5zaGlwcGluZ190b3RhbCA9ICtyZWNvcmQuc2hpcHBpbmdfdG90YWw7XHJcbiAgICAgICAgdGhpcy5pbnN1cmFuY2VfdG90YWwgPSArcmVjb3JkLmluc3VyYW5jZV90b3RhbDtcclxuXHJcbiAgICAgICAgdGhpcy5wYXltZW50ID0gK3JlY29yZC5wYXltZW50O1xyXG4gICAgICAgIHRoaXMucGF5bWVudF9yZWZlcmVuY2UgPSByZWNvcmQucGF5bWVudF9yZWZlcmVuY2U7XHJcbiAgICAgICAgdGhpcy5wYXltZW50X2Rlc2NyaXB0aW9uID0gcmVjb3JkLnBheW1lbnRfZGVzY3JpcHRpb247XHJcbiAgICAgICAgdGhpcy5nYXRld2F5X3RyYW5zYWN0aW9uX2lkID0gcmVjb3JkLmdhdGV3YXlfdHJhbnNhY3Rpb25faWQ7XHJcblxyXG4gICAgICAgIHRoaXMuYWRkcmVzcyA9IG5ldyBFc29sdmVUcmFuc2FjdGlvbkFkZHJlc3MoXHJcbiAgICAgICAgICAgIHJlY29yZC5yZWNpcGllbnQsXHJcbiAgICAgICAgICAgIHJlY29yZC5hZGRyZXNzX3R5cGUsXHJcbiAgICAgICAgICAgIHJlY29yZC5hZGRyZXNzX2Rlc2NyaXB0aW9uLFxyXG4gICAgICAgICAgICByZWNvcmQuc3RyZWV0X251bWJlcixcclxuICAgICAgICAgICAgcmVjb3JkLnN0cmVldCxcclxuICAgICAgICAgICAgcmVjb3JkLnN1YnVyYixcclxuICAgICAgICAgICAgcmVjb3JkLmNpdHksXHJcbiAgICAgICAgICAgIHJlY29yZC5wcm92aW5jZSxcclxuICAgICAgICAgICAgcmVjb3JkLmNvdW50cnksXHJcbiAgICAgICAgICAgIHJlY29yZC5wb3N0YWxfY29kZSxcclxuICAgICAgICAgICAgcmVjb3JkLnBvYm94XHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgaWYgKHJlY29yZC51c2VyKSB7XHJcbiAgICAgICAgICAgIHRoaXMudXNlciA9IG5ldyBFc29sdmVUcmFuc2FjdGlvblVzZXIoXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkLnVzZXIuaWQsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci5lbWFpbCxcclxuICAgICAgICAgICAgICAgIHJlY29yZC51c2VyLmZpcnN0bmFtZSxcclxuICAgICAgICAgICAgICAgIHJlY29yZC51c2VyLnN1cm5hbWUsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci50ZWxudW1iZXIsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQudXNlci5jZWxsbnVtYmVyXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAocmVjb3JkLmNsaWVudCkge1xyXG4gICAgICAgICAgICB0aGlzLmNsaWVudCA9IG5ldyBFc29sdmVUcmFuc2FjdGlvbkNsaWVudChcclxuICAgICAgICAgICAgICAgICtyZWNvcmQuY2xpZW50LmlkLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5hY2NvdW50LFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5jb21wYW55X25hbWUsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQuY2xpZW50LmJyYW5jaF9jb2RlLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5lbWFpbCxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5jbGllbnQuZmlyc3RuYW1lLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5zdXJuYW1lLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLmNsaWVudC5jb250YWN0X251bWJlclxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHJlY29yZC5sb2NhdGlvbl9kZXRhaWxzKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9jYXRpb24gPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25Mb2NhdGlvbihyZWNvcmQubG9jYXRpb25fZGV0YWlscyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAocmVjb3JkLnBheW1lbnRfbWV0aG9kX2RldGFpbHMpIHtcclxuICAgICAgICAgICAgdGhpcy5wYXltZW50X21ldGhvZCA9IG5ldyBFc29sdmVUcmFuc2FjdGlvblBheW1lbnRNZXRob2QoXHJcbiAgICAgICAgICAgICAgICByZWNvcmQucGF5bWVudF9tZXRob2RfZGV0YWlscy5pZCxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5wYXltZW50X21ldGhvZF9kZXRhaWxzLnBheW1ldGhvZF9uYW1lLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBheW1lbnRfbWV0aG9kX2RldGFpbHMuZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICByZWNvcmQucGF5bWVudF9tZXRob2RfZGV0YWlscy5pbnRlZ3JhdGlvbl90eXBlLFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkLnBheW1lbnRfbWV0aG9kX2RldGFpbHMuc2VydmljZV9wcm92aWRlclxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscykge1xyXG4gICAgICAgICAgICB0aGlzLnNoaXBwaW5nX21ldGhvZCA9IG5ldyBFc29sdmVUcmFuc2FjdGlvblNoaXBwaW5nTWV0aG9kKFxyXG4gICAgICAgICAgICAgICAgK3JlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscy5pZCxcclxuICAgICAgICAgICAgICAgIHJlY29yZC5zaGlwcGluZ19tZXRob2RfZGV0YWlscy5jYXJyaWVyX25hbWUsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQuc2hpcHBpbmdfbWV0aG9kX2RldGFpbHMuZGVsaXZlcnlfY2F0ZWdvcnksXHJcbiAgICAgICAgICAgICAgICByZWNvcmQuc2hpcHBpbmdfbWV0aG9kX2RldGFpbHMubG9jYXRpb24sXHJcbiAgICAgICAgICAgICAgICByZWNvcmQuc2hpcHBpbmdfbWV0aG9kX2RldGFpbHMuZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICByZWNvcmQuc2hpcHBpbmdfbWV0aG9kX2RldGFpbHMucHJpY2luZyxcclxuICAgICAgICAgICAgICAgICEhcmVjb3JkLnNoaXBwaW5nX21ldGhvZF9kZXRhaWxzLmNsaWVudF90b19jb2xsZWN0XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnBhcnNlVHJhbnNhY3Rpb25JdGVtcyhyZWNvcmQudHJhbnNhY3Rpb25faXRlbXMpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcGFyc2VUcmFuc2FjdGlvbkl0ZW1zKHJlY29yZF9pdGVtczogRXNvbHZlVHJhbnNhY3Rpb25JdGVtUmVjb3JkW10pOiB2b2lkIHtcclxuICAgICAgICBmb3IgKGNvbnN0IHJlY29yZF9pdGVtIG9mIHJlY29yZF9pdGVtcykge1xyXG4gICAgICAgICAgICBjb25zdCBwcmljZSA9IG5ldyBFc29sdmVUcmFuc2FjdGlvbkl0ZW1QcmljZShcclxuICAgICAgICAgICAgICAgICtyZWNvcmRfaXRlbS5wcmljZV9leGNsdXNpdmUsXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkX2l0ZW0ucHJpY2VfaW5jbHVzaXZlLFxyXG4gICAgICAgICAgICAgICAgK3JlY29yZF9pdGVtLnByaWNlX2V4Y2x1c2l2ZV9hZnRlcl9kaXNjb3VudCxcclxuICAgICAgICAgICAgICAgICtyZWNvcmRfaXRlbS5wcmljZV9pbmNsdXNpdmVfYWZ0ZXJfZGlzY291bnRcclxuICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGxpbmVfdG90YWwgPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25JdGVtUHJpY2UoXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkX2l0ZW0ubGluZV90b3RhbF9leGNsdXNpdmUsXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkX2l0ZW0ubGluZV90b3RhbF9pbmNsdXNpdmUsXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkX2l0ZW0ubGluZV90b3RhbF9leGNsdXNpdmVfYWZ0ZXJfZGlzY291bnQsXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkX2l0ZW0ubGluZV90b3RhbF9pbmNsdXNpdmVfYWZ0ZXJfZGlzY291bnRcclxuICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBuZXcgRXNvbHZlVHJhbnNhY3Rpb25JdGVtKFxyXG4gICAgICAgICAgICAgICAgcmVjb3JkX2l0ZW0uY29kZSxcclxuICAgICAgICAgICAgICAgIHJlY29yZF9pdGVtLm5hbWUsXHJcbiAgICAgICAgICAgICAgICArcmVjb3JkX2l0ZW0ucXR5LFxyXG4gICAgICAgICAgICAgICAgK3JlY29yZF9pdGVtLmRpc2NvdW50LFxyXG4gICAgICAgICAgICAgICAgK3JlY29yZF9pdGVtLnZhdF9yYXRlLFxyXG4gICAgICAgICAgICAgICAgcHJpY2UsXHJcbiAgICAgICAgICAgICAgICBsaW5lX3RvdGFsXHJcbiAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLml0ZW1zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRXNvbHZlVHJhbnNhY3Rpb25DbGllbnQge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIGlkOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGFjY291bnQ6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgY29tcGFueV9uYW1lOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIGJyYW5jaF9jb2RlOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIGVtYWlsOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIGZpcnN0X25hbWU6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgbGFzdF9uYW1lOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIGNvbnRhY3RfbnVtYmVyOiBzdHJpbmdcclxuICAgICkgeyB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVUcmFuc2FjdGlvblVzZXIge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIGlkOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGVtYWlsOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIGZpcnN0X25hbWU6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgbGFzdF9uYW1lOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIHRlbF9udW1iZXI6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgY2VsbF9udW1iZXI6IHN0cmluZ1xyXG4gICAgKSB7IH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEVzb2x2ZVRyYW5zYWN0aW9uTG9jYXRpb24gZXh0ZW5kcyBFc29sdmVTdG9ja0xvY2F0aW9uIHsgfVxyXG5cclxuZXhwb3J0IGNsYXNzIEVzb2x2ZVRyYW5zYWN0aW9uUGF5bWVudE1ldGhvZCB7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgaWQ6IG51bWJlcixcclxuICAgICAgICBwdWJsaWMgbmFtZTogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyBkZXNjcmlwdGlvbjogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyBpbnRlZ3JhdGlvbl90eXBlOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIHNlcnZpY2VfcHJvdmlkZXI6IHN0cmluZ1xyXG4gICAgKSB7IH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEVzb2x2ZVRyYW5zYWN0aW9uU2hpcHBpbmdNZXRob2Qge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIGlkOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIG5hbWU6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgZGVsaXZlcnlfY2F0ZWdvcnk6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgbG9jYXRpb246IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgZGVzY3JpcHRpb246IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgcHJpY2luZzogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyBjbGllbnRfdG9fY29sbGVjdDogYm9vbGVhblxyXG4gICAgKSB7IH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEVzb2x2ZVRyYW5zYWN0aW9uQWRkcmVzcyB7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgcmVjaXBpZW50OiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIGFkZHJlc3NfdHlwZTogRXNvbHZlQWRkcmVzc1R5cGUsXHJcbiAgICAgICAgcHVibGljIGFkZHJlc3NfZGVzY3JpcHRpb246IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgc3RyZWV0X251bWJlcjogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyBzdHJlZXQ6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgc3VidXJiOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIGNpdHk6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgcHJvdmluY2U6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgY291bnRyeTogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyBwb3N0YWxfY29kZTogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyBwb2JveDogc3RyaW5nXHJcbiAgICApIHsgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRXNvbHZlVHJhbnNhY3Rpb25JdGVtIHtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyBjb2RlOiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIG5hbWU6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgcXR5OiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRpc2NvdW50OiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIHZhdF9yYXRlOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIHByaWNlOiBFc29sdmVUcmFuc2FjdGlvbkl0ZW1QcmljZSxcclxuICAgICAgICBwdWJsaWMgbGluZV90b3RhbDogRXNvbHZlVHJhbnNhY3Rpb25JdGVtUHJpY2VcclxuICAgICkgeyB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVUcmFuc2FjdGlvbkl0ZW1QcmljZSB7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBQcmljZSB3aXRob3V0IHRheFxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIHB1YmxpYyBwcmljZTogbnVtYmVyLFxyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqIFByaWNlIHdpdGggdGF4XHJcbiAgICAgICAgICovXHJcbiAgICAgICAgcHVibGljIHByaWNlX3dpdGhfdGF4OiBudW1iZXIsXHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogUHJpY2Ugd2l0aG91dCB0YXggYW5kIHdpdGggZGlzY291bnRzIGFwcGxpZWQgaWYgYXBwaWxjYWJsZVxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIHB1YmxpYyBwcmljZV9kaXNjb3VudGVkOiBudW1iZXIsXHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogUHJpY2Ugd2l0aCB0YXggYW5kIHdpdGggZGlzY291bnRzIGFwcGxpZWQgaWYgYXBwaWxjYWJsZVxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIHB1YmxpYyBwcmljZV93aXRoX3RheF9kaXNjb3VudGVkOiBudW1iZXJcclxuICAgICkgeyB9XHJcbn1cclxuIl19
|
|
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
|
|
|
40
40
|
type: Inject,
|
|
41
41
|
args: [ESOLVE_CONNECT_CONFIG]
|
|
42
42
|
}] }, { type: i1.EsolveSessionService }]; } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWF1dGgtaW50ZXJjZXB0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvYXV0aC9lc29sdmUtYXV0aC1pbnRlcmNlcHRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFJSCxVQUFVLEVBRWIsTUFBTSxzQkFBc0IsQ0FBQztBQUk5QixPQUFPLEVBQXVCLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUl0RixNQUFNLE9BQU8sNEJBQTRCO0lBQ3JDLFlBQzJDLE1BQTJCLEVBQzFELE9BQTZCO1FBREUsV0FBTSxHQUFOLE1BQU0sQ0FBcUI7UUFDMUQsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7SUFDckMsQ0FBQztJQUVFLFNBQVMsQ0FBQyxHQUFxQixFQUFFLElBQWlCO1FBQ3JELElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sV0FBVyxDQUFDLEVBQUU7WUFDdkQsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFbEYsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMxQyxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDO1lBQzdCLElBQUksTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7WUFFOUIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUM7WUFFNUMsSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFO2dCQUNmLElBQUksa0JBQWtCLEtBQUssc0JBQXNCLEVBQUU7b0JBQy9DLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQzNDO2FBQ0o7WUFFRCxlQUFlLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUMxQixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFDeEQsQ0FBQyxDQUFDLENBQUM7WUFFSCxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO2dCQUMzQixHQUFHLEVBQUUsWUFBWTtnQkFDakIsTUFBTTthQUNULENBQUMsQ0FBQztZQUVILE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNwQztRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDOzt5SEFuQ1EsNEJBQTRCLGtCQUV6QixxQkFBcUI7NkhBRnhCLDRCQUE0QjsyRkFBNUIsNEJBQTRCO2tCQUR4QyxVQUFVOzswQkFHRixNQUFNOzJCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gICAgSHR0cEludGVyY2VwdG9yLFxyXG4gICAgSHR0cFJlcXVlc3QsXHJcbiAgICBIdHRwSGFuZGxlcixcclxuICAgIEh0dHBQYXJhbXMsXHJcbiAgICBIdHRwRXZlbnRcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVDb25uZWN0Q29uZmlnLCBFU09MVkVfQ09OTkVDVF9DT05GSUcgfSBmcm9tICcuLi9lc29sdmUtY29ubmVjdC5jb25maWcnO1xyXG5pbXBvcnQgeyBFc29sdmVTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3Nlc3Npb24vZXNvbHZlLXNlc3Npb24uc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVBdXRoSW50ZXJjZXB0b3JTZXJ2aWNlIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIEBJbmplY3QoRVNPTFZFX0NPTk5FQ1RfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogRXNvbHZlQ29ubmVjdENvbmZpZyxcclxuICAgICAgICBwcml2YXRlIHNlc3Npb246IEVzb2x2ZVNlc3Npb25TZXJ2aWNlXHJcbiAgICApIHsgfVxyXG5cclxuICAgIHB1YmxpYyBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuICAgICAgICBpZiAocmVxLnVybC5zdGFydHNXaXRoKGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2UvYCkpIHtcclxuICAgICAgICAgICAgY29uc3Qgc2VydmljZV9pZGVudGlmaWVyID0gcmVxLnVybC5yZXBsYWNlKGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NlcnZpY2UvYCwgJycpO1xyXG5cclxuICAgICAgICAgICAgY29uc3Qgb2xkX3BhcmFtc19rZXlzID0gcmVxLnBhcmFtcy5rZXlzKCk7XHJcbiAgICAgICAgICAgIGNvbnN0IG1vZGlmaWVkX3VybCA9IHJlcS51cmw7XHJcbiAgICAgICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG5cclxuICAgICAgICAgICAgY29uc3Qgc2Vzc2lvbiA9IHRoaXMuc2Vzc2lvbi5jdXJyZW50U2Vzc2lvbjtcclxuXHJcbiAgICAgICAgICAgIGlmIChzZXNzaW9uLnZhbGlkKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoc2VydmljZV9pZGVudGlmaWVyICE9PSAnZ2V0LWFjY2Vzcy10b2tlbi5waHAnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgna2V5Jywgc2Vzc2lvbi5rZXkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBvbGRfcGFyYW1zX2tleXMuZm9yRWFjaChrZXkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldChrZXksIHJlcS5wYXJhbXMuZ2V0KGtleSkgfHwgJycpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IG1vZGlmaWVkX3JlcSA9IHJlcS5jbG9uZSh7XHJcbiAgICAgICAgICAgICAgICB1cmw6IG1vZGlmaWVkX3VybCxcclxuICAgICAgICAgICAgICAgIHBhcmFtc1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShtb2RpZmllZF9yZXEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|