@ieeesa-npm/presentation 0.25.7 → 0.25.9
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/esm2022/lib/assets/constants.json +11 -1
- package/esm2022/lib/components/autocomplete/autocomplete.component.mjs +3 -3
- package/esm2022/lib/components/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/lib/components/color-picker/color-picker.component.mjs +2 -2
- package/esm2022/lib/components/date-picker/date-picker.component.mjs +3 -3
- package/esm2022/lib/components/dynamic-form/dynamic-form.component.mjs +28 -8
- package/esm2022/lib/components/file-upload/file-upload.component.mjs +126 -9
- package/esm2022/lib/components/form-error/form-error.component.mjs +3 -3
- package/esm2022/lib/components/input/input.component.mjs +3 -3
- package/esm2022/lib/components/multi-select-autocomplete/multi-select-autocomplete.component.mjs +3 -3
- package/esm2022/lib/components/notification/notification.component.mjs +3 -3
- package/esm2022/lib/components/radio/radio.component.mjs +3 -3
- package/esm2022/lib/components/select/select.component.mjs +3 -3
- package/esm2022/lib/components/tabs/tabs.component.mjs +30 -10
- package/esm2022/lib/components/text-area/text-area.component.mjs +3 -3
- package/esm2022/lib/components/time-picker/time-picker.component.mjs +3 -3
- package/esm2022/lib/directives/dynamic-form-field/dynamic-form-field.directive.mjs +14 -2
- package/esm2022/lib/models/delete-file.model.mjs +2 -0
- package/esm2022/lib/models/dynamic-properties.model.mjs +13 -0
- package/esm2022/lib/models/field-config.model.mjs +1 -1
- package/esm2022/lib/models/file-attachment.model.mjs +2 -0
- package/esm2022/lib/models/file-upload-payload-model.mjs +2 -0
- package/esm2022/lib/models/file-upload-response.model.mjs +2 -0
- package/esm2022/lib/models/file-upload-status.model.mjs +2 -0
- package/esm2022/lib/models/tab.model.mjs +1 -1
- package/esm2022/lib/models/view-files-format.model.mjs +7 -0
- package/esm2022/lib/services/file-upload.service.mjs +97 -29
- package/esm2022/public-api.mjs +9 -1
- package/fesm2022/ieeesa-npm-presentation.mjs +350 -85
- package/fesm2022/ieeesa-npm-presentation.mjs.map +1 -1
- package/lib/components/chips/chips.component.d.ts +10 -0
- package/lib/components/dynamic-form/dynamic-form.component.d.ts +15 -4
- package/lib/components/file-upload/file-upload.component.d.ts +60 -3
- package/lib/components/tabs/tabs.component.d.ts +10 -1
- package/lib/directives/dynamic-form-field/dynamic-form-field.directive.d.ts +5 -1
- package/lib/models/delete-file.model.d.ts +10 -0
- package/lib/models/dynamic-properties.model.d.ts +10 -0
- package/lib/models/field-config.model.d.ts +9 -0
- package/lib/models/file-attachment.model.d.ts +9 -0
- package/lib/models/file-upload-payload-model.d.ts +3 -0
- package/lib/models/file-upload-response.model.d.ts +11 -0
- package/lib/models/file-upload-status.model.d.ts +6 -0
- package/lib/models/tab.model.d.ts +1 -0
- package/lib/models/view-files-format.model.d.ts +4 -0
- package/lib/services/file-upload.service.d.ts +46 -11
- package/package.json +1 -1
- package/public-api.d.ts +8 -0
- package/src/lib/assets/constants.json +11 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { HttpClient, HttpEventType, HttpHeaders, } from '@angular/common/http';
|
|
2
2
|
import { Injectable } from '@angular/core';
|
|
3
3
|
import { AlertType, } from '@ieeesa-npm/utility';
|
|
4
|
-
import { catchError, last, map, Subject, takeUntil, tap, } from 'rxjs';
|
|
4
|
+
import { catchError, concatMap, from, last, map, Subject, take, takeUntil, tap, } from 'rxjs';
|
|
5
5
|
import * as constants from '../assets/constants.json';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@ieeesa-npm/utility";
|
|
@@ -24,6 +24,8 @@ export class FileUploadService {
|
|
|
24
24
|
this.destroy$ = new Subject();
|
|
25
25
|
this.constants = constants;
|
|
26
26
|
this.isFileUploading = false;
|
|
27
|
+
this.filesUploadedSuccessfullyCount = 0;
|
|
28
|
+
this.uploadedFileName = '';
|
|
27
29
|
this.httpClient = new HttpClient(handler);
|
|
28
30
|
}
|
|
29
31
|
/**
|
|
@@ -61,34 +63,77 @@ export class FileUploadService {
|
|
|
61
63
|
}));
|
|
62
64
|
}
|
|
63
65
|
/**
|
|
64
|
-
*
|
|
65
|
-
* @param
|
|
66
|
-
* @param
|
|
66
|
+
* Gets pre-signed URL for the files to be uploaded in S3 bucket
|
|
67
|
+
* @param fileUploadPayload
|
|
68
|
+
* @param fileUploadAPIPath
|
|
69
|
+
*/
|
|
70
|
+
getPreSignedURL(fileUploadPayload, fileUploadAPIPath = '') {
|
|
71
|
+
return this.httpService
|
|
72
|
+
.postData(`${this.apiBaseUrl}/${fileUploadAPIPath}`, fileUploadPayload)
|
|
73
|
+
.pipe(map((response) => {
|
|
74
|
+
return response;
|
|
75
|
+
}), catchError((errorRes) => {
|
|
76
|
+
throw errorRes;
|
|
77
|
+
}));
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Uploads file to AWS S3 using a pre-signed URL.
|
|
81
|
+
* @param {string} preSignedUrl
|
|
82
|
+
* @param files
|
|
83
|
+
* @param isMultipleFileUpload
|
|
67
84
|
* @return {Observable<any>} -Returns an observable that emits the response after uploading the file to S3.
|
|
68
85
|
* @memberof FileUploadService
|
|
69
86
|
*/
|
|
87
|
+
uploadFileToS3(preSignedUrl, files, isMultipleFileUpload = false
|
|
70
88
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
71
|
-
|
|
89
|
+
) {
|
|
72
90
|
this.loaderNotificationService.show();
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
91
|
+
const filesArray = [];
|
|
92
|
+
this.filesNamesUploadFailed = [];
|
|
93
|
+
this.uploadedFileName = '';
|
|
94
|
+
if (isMultipleFileUpload) {
|
|
95
|
+
Object.values(files).forEach((file) => {
|
|
96
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
97
|
+
const indexForPreSignedUrl = preSignedUrl.findIndex((x) => x.fileName === file.name &&
|
|
98
|
+
x.errorMessage !== 'null' &&
|
|
99
|
+
x.errorMessage !== null);
|
|
100
|
+
if (indexForPreSignedUrl > -1) {
|
|
101
|
+
filesArray.push({
|
|
102
|
+
preSignedUrl: preSignedUrl[indexForPreSignedUrl]?.preSignedUrl,
|
|
103
|
+
fileObj: file,
|
|
104
|
+
fileType: file.type,
|
|
105
|
+
fileSize: file.size,
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
});
|
|
81
109
|
}
|
|
82
110
|
else {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
111
|
+
filesArray.push({
|
|
112
|
+
preSignedUrl: preSignedUrl,
|
|
113
|
+
fileObj: files,
|
|
114
|
+
fileType: files.type,
|
|
115
|
+
fileSize: files.size,
|
|
116
|
+
});
|
|
86
117
|
}
|
|
118
|
+
return from(filesArray).pipe(concatMap((file) => this.httpCallToAWS(file.preSignedUrl, file.fileObj, file.fileType, file.fileSize)), take(filesArray.length));
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Makes http call to AWS to upload file in S3 bucket
|
|
122
|
+
* @param {string} preSignedUrl
|
|
123
|
+
* @param {File} file
|
|
124
|
+
* @param {string} fileType
|
|
125
|
+
* @param {number} fileSize
|
|
126
|
+
* @return {*} {Observable<any>}
|
|
127
|
+
* @memberof FileUploadService
|
|
128
|
+
*/
|
|
129
|
+
httpCallToAWS(preSignedUrl, file, fileType, fileSize
|
|
130
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
131
|
+
) {
|
|
87
132
|
const headers = new HttpHeaders();
|
|
88
|
-
headers.append('Content-Type', fileType);
|
|
89
|
-
headers.append('Content-Length', fileSize);
|
|
133
|
+
headers.append('Content-Type', fileType.toString());
|
|
134
|
+
headers.append('Content-Length', fileSize.toString());
|
|
90
135
|
return this.httpClient
|
|
91
|
-
.put(
|
|
136
|
+
.put(preSignedUrl, file, {
|
|
92
137
|
reportProgress: true,
|
|
93
138
|
observe: 'events',
|
|
94
139
|
headers: headers,
|
|
@@ -114,16 +159,11 @@ export class FileUploadService {
|
|
|
114
159
|
*/
|
|
115
160
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
116
161
|
getEventMessage(event, file) {
|
|
162
|
+
console.log('Event from file upload to AWS', event);
|
|
117
163
|
let fileName = '';
|
|
118
164
|
let fileSize = 0;
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
fileSize = Object.values(file)[0].size;
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
fileName = file.name;
|
|
125
|
-
fileSize = file.size;
|
|
126
|
-
}
|
|
165
|
+
fileName = file.name;
|
|
166
|
+
fileSize = file.size;
|
|
127
167
|
switch (event.type) {
|
|
128
168
|
case HttpEventType.Sent:
|
|
129
169
|
return `Uploading file "${fileName}" of size ${fileSize}.`;
|
|
@@ -135,7 +175,15 @@ export class FileUploadService {
|
|
|
135
175
|
return `File "${fileName}" is ${percentDone}% uploaded.`;
|
|
136
176
|
case HttpEventType.Response:
|
|
137
177
|
this.loaderNotificationService.hide();
|
|
138
|
-
|
|
178
|
+
if (event.status === 200) {
|
|
179
|
+
this.filesUploadedSuccessfullyCount++;
|
|
180
|
+
this.uploadedFileName = fileName;
|
|
181
|
+
return true;
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
this.filesNamesUploadFailed.push(fileName);
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
139
187
|
default:
|
|
140
188
|
return `File "${fileName}" surprising upload event: ${event.type}.`;
|
|
141
189
|
}
|
|
@@ -284,6 +332,26 @@ export class FileUploadService {
|
|
|
284
332
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
285
333
|
return fileName?.split('.').pop().toLowerCase();
|
|
286
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* Deletes file by given fileId
|
|
337
|
+
* @param {string} fileId
|
|
338
|
+
* @return {*} {Observable<DeleteFileResponse>}
|
|
339
|
+
* @memberof FileUploadService
|
|
340
|
+
*/
|
|
341
|
+
deleteFile(deleteFileApiPath) {
|
|
342
|
+
const deleteFilePayload = {
|
|
343
|
+
// Assign data here if needed to send any payload in body
|
|
344
|
+
// example below
|
|
345
|
+
// fileId: arguments[0],
|
|
346
|
+
};
|
|
347
|
+
return this.httpService
|
|
348
|
+
.putData(`${this.apiBaseUrl}/${deleteFileApiPath}`, Object.keys(deleteFilePayload).length ? deleteFilePayload : {})
|
|
349
|
+
.pipe(map((response) => {
|
|
350
|
+
return response;
|
|
351
|
+
}), catchError((error) => {
|
|
352
|
+
throw error;
|
|
353
|
+
}));
|
|
354
|
+
}
|
|
287
355
|
/**
|
|
288
356
|
* Implementation of ngOnDestroy lifecycle hook method to unsubscribe the open observable subscriptions.
|
|
289
357
|
* @memberof FileUploadService
|
|
@@ -301,4 +369,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
301
369
|
providedIn: 'root',
|
|
302
370
|
}]
|
|
303
371
|
}], ctorParameters: function () { return [{ type: i1.HttpService }, { type: i2.HttpBackend }, { type: i1.AlertsService }, { type: i1.LoaderNotificationService }]; } });
|
|
304
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvbGliL3NlcnZpY2VzL2ZpbGUtdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFVBQVUsRUFFVixhQUFhLEVBQ2IsV0FBVyxHQUNaLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBRUwsU0FBUyxHQUdWLE1BQU0scUJBQXFCLENBQUM7QUFNN0IsT0FBTyxFQUNMLFVBQVUsRUFDVixJQUFJLEVBQ0osR0FBRyxFQUVILE9BQU8sRUFDUCxTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxLQUFLLFNBQVMsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUV0RDs7O0dBR0c7QUFJSCxNQUFNLE9BQU8saUJBQWlCO0lBTzVCO0lBQ0UsMENBQTBDO0lBQ25DLFdBQXdCLEVBQy9CLE9BQW9CO0lBQ3BCLDBDQUEwQztJQUNuQyxZQUEyQjtJQUNsQywwQ0FBMEM7SUFDbkMseUJBQW9EO1FBTHBELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBR3hCLGlCQUFZLEdBQVosWUFBWSxDQUFlO1FBRTNCLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBMkI7UUFiN0QsYUFBUSxHQUFxQixJQUFJLE9BQU8sRUFBVyxDQUFDO1FBQ3BELGNBQVMsR0FBRyxTQUFTLENBQUM7UUFJdEIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFVdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGFBQWEsQ0FBQyxVQUFrQjtRQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixD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LENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBYSxFQUFFLEVBQUU7Z0JBQzlDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDakMsYUFBYSxHQUFHLEtBQUssQ0FBQztpQkFDdkI7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sYUFBYSxDQUFDO1NBQ3RCO1FBQ0QsT0FBTyxrQkFBa0IsQ0FBQyxLQUFhLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssZ0JBQWdCLENBQUMsUUFBZ0I7UUFDdkMsb0VBQW9FO1FBQ3BFLE9BQU8sUUFBUSxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDOUIsQ0FBQzsrR0F4VVUsaUJBQWlCO21IQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7NEZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgSHR0cEJhY2tlbmQsXHJcbiAgSHR0cENsaWVudCxcclxuICBIdHRwRXZlbnQsXHJcbiAgSHR0cEV2ZW50VHlwZSxcclxuICBIdHRwSGVhZGVycyxcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEFsZXJ0c1NlcnZpY2UsXHJcbiAgQWxlcnRUeXBlLFxyXG4gIEh0dHBTZXJ2aWNlLFxyXG4gIExvYWRlck5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbn0gZnJvbSAnQGllZWVzYS1ucG0vdXRpbGl0eSc7XHJcbmltcG9ydCB7XHJcbiAgRmlsZVVwbG9hZFByZXNpZ25lZFVybCxcclxuICBHZXRGaWxlRG93bmxvYWRQcmVzaWduZWRVcmxQYXlsb2FkLFxyXG4gIEdldEZpbGVVcGxvYWRQcmVzaWduZWRVcmxQYXlsb2FkLFxyXG59IGZyb20gJy4uL21vZGVscy9maWxlLXVwbG9hZC1wcmVzaWduZWQtdXJsLXJlcy5tb2RlbCc7XHJcbmltcG9ydCB7XHJcbiAgY2F0Y2hFcnJvcixcclxuICBsYXN0LFxyXG4gIG1hcCxcclxuICBPYnNlcnZhYmxlLFxyXG4gIFN1YmplY3QsXHJcbiAgdGFrZVVudGlsLFxyXG4gIHRhcCxcclxufSBmcm9tICdyeGpzJztcclxuaW1wb3J0ICogYXMgY29uc3RhbnRzIGZyb20gJy4uL2Fzc2V0cy9jb25zdGFudHMuanNvbic7XHJcblxyXG4vKipcclxuICogVGhpcyBzZXJ2aWNlIGludGVyYWN0cyB3aXRoIHRoZSBzZXJ2ZXIgdG8gb2J0YWluIHByZS1zaWduZWQgVVJMcyBmb3IgZmlsZSB1cGxvYWQgYW5kIHVwbG9hZHMgZmlsZXMgdG8gQW1hem9uIFMzLlxyXG4gKiBAY2xhc3MgRmlsZVVwbG9hZFNlcnZpY2VcclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG4gIGNvbnN0YW50cyA9IGNvbnN0YW50cztcclxuICBhcGlCYXNlVXJsITogc3RyaW5nO1xyXG4gIGZpbGVCeXRlQXJyYXk6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ7XHJcbiAgaHR0cENsaWVudDogSHR0cENsaWVudDtcclxuICBpc0ZpbGVVcGxvYWRpbmcgPSBmYWxzZTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHVibGljIGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSxcclxuICAgIGhhbmRsZXI6IEh0dHBCYWNrZW5kLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwdWJsaWMgYWxlcnRTZXJ2aWNlOiBBbGVydHNTZXJ2aWNlLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwdWJsaWMgbG9hZGVyTm90aWZpY2F0aW9uU2VydmljZTogTG9hZGVyTm90aWZpY2F0aW9uU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5odHRwQ2xpZW50ID0gbmV3IEh0dHBDbGllbnQoaGFuZGxlcik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSBiYXNlIFVSTCBmb3IgQVBJIHJlcXVlc3RzLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhcGlCYXNlVXJsIC1BUEkgYmFzZSBVUkwuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgc2V0QXBpQmFzZVVybChhcGlCYXNlVXJsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuYXBpQmFzZVVybCA9IGFwaUJhc2VVcmw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgcHJlc2lnbmVkIFVSTCBmb3IgdXBsb2FkaW5nIGZpbGVzIHRvIEFtYXpvbiBTMyBidWNrZXQuXHJcbiAgICogQHBhcmFtIHsoRmlsZSB8IEZpbGVMaXN0KX0gZmlsZVxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8RmlsZVVwbG9hZFByZXNpZ25lZFVybD59XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgZ2V0RmlsZVVwbG9hZFByZXNpZ25lZFVybChcclxuICAgIGZpbGU6IEZpbGUgfCBGaWxlTGlzdCxcclxuICAgIGFwcElkOiBzdHJpbmdcclxuICApOiBPYnNlcnZhYmxlPEZpbGVVcGxvYWRQcmVzaWduZWRVcmw+IHtcclxuICAgIGxldCBmaWxlTmFtZSA9ICcnO1xyXG4gICAgaWYgKE9iamVjdC52YWx1ZXMoZmlsZSkubGVuZ3RoKSBmaWxlTmFtZSA9IE9iamVjdC52YWx1ZXMoZmlsZSlbMF0ubmFtZTtcclxuICAgIGVsc2UgZmlsZU5hbWUgPSAoZmlsZSBhcyBGaWxlKS5uYW1lO1xyXG4gICAgY29uc3QgZmlsZVVwbG9hZFByZXNpZ25lZFVybFBheWxvYWQ6IEdldEZpbGVVcGxvYWRQcmVzaWduZWRVcmxQYXlsb2FkID0ge1xyXG4gICAgICBwYXlsb2FkOiB7XHJcbiAgICAgICAgZmlsZU5hbWU6IGZpbGVOYW1lLFxyXG4gICAgICAgIHRlbmFudEFwcElkOiBhcHBJZCBhcyBzdHJpbmcsXHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcclxuICAgICAgLnBvc3REYXRhKFxyXG4gICAgICAgIGAke3RoaXMuYXBpQmFzZVVybH0vY29uZmlndXJhdGlvbnMvczMvdXBsb2FkRmlsZVVybGAsXHJcbiAgICAgICAgZmlsZVVwbG9hZFByZXNpZ25lZFVybFBheWxvYWRcclxuICAgICAgKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2U7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXMpID0+IHtcclxuICAgICAgICAgIHRocm93IGVycm9yUmVzO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFVwbG9hZHMgZmlsZSB0byBBV1MgUzMgdXNpbmcgYSBwcmVzaWduZWQgVVJMLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwcmVzaWduZWRVcmxcclxuICAgKiBAcGFyYW0geyhGaWxlIHwgRmlsZUxpc3QpfSBmaWxlXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxhbnk+fSAtUmV0dXJucyBhbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHJlc3BvbnNlIGFmdGVyIHVwbG9hZGluZyB0aGUgZmlsZSB0byBTMy5cclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZFNlcnZpY2VcclxuICAgKi9cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIHVwbG9hZEZpbGVUb1MzKHByZXNpZ25lZFVybDogc3RyaW5nLCBmaWxlOiBGaWxlIHwgRmlsZUxpc3QpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgdGhpcy5sb2FkZXJOb3RpZmljYXRpb25TZXJ2aWNlLnNob3coKTtcclxuICAgIGxldCBmaWxlVHlwZSA9ICcnO1xyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgIGxldCBmaWxlU2l6ZTogYW55O1xyXG4gICAgbGV0IGZpbGVPYmo6IEZpbGU7XHJcbiAgICBpZiAoT2JqZWN0LnZhbHVlcyhmaWxlKS5sZW5ndGgpIHtcclxuICAgICAgZmlsZVR5cGUgPSBPYmplY3QudmFsdWVzKGZpbGUpWzBdLnR5cGU7XHJcbiAgICAgIGZpbGVTaXplID0gT2JqZWN0LnZhbHVlcyhmaWxlKVswXS5zaXplO1xyXG4gICAgICBmaWxlT2JqID0gT2JqZWN0LnZhbHVlcyhmaWxlKVswXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGZpbGVUeXBlID0gKGZpbGUgYXMgRmlsZSkudHlwZTtcclxuICAgICAgZmlsZVNpemUgPSAoZmlsZSBhcyBGaWxlKS5zaXplO1xyXG4gICAgICBmaWxlT2JqID0gZmlsZSBhcyBGaWxlO1xyXG4gICAgfVxyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xyXG4gICAgaGVhZGVycy5hcHBlbmQoJ0NvbnRlbnQtVHlwZScsIGZpbGVUeXBlKTtcclxuICAgIGhlYWRlcnMuYXBwZW5kKCdDb250ZW50LUxlbmd0aCcsIGZpbGVTaXplKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLnB1dChwcmVzaWduZWRVcmwsIGZpbGVPYmosIHtcclxuICAgICAgICByZXBvcnRQcm9ncmVzczogdHJ1ZSxcclxuICAgICAgICBvYnNlcnZlOiAnZXZlbnRzJyxcclxuICAgICAgICBoZWFkZXJzOiBoZWFkZXJzLFxyXG4gICAgICB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXHJcbiAgICAgICAgbWFwKChldmVudCkgPT4gdGhpcy5nZXRFdmVudE1lc3NhZ2UoZXZlbnQsIGZpbGUpKSxcclxuICAgICAgICB0YXAoKG1lc3NhZ2UpID0+IHRoaXMuc2hvd1Byb2dyZXNzKG1lc3NhZ2UpKSxcclxuICAgICAgICBsYXN0KCksXHJcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXMpID0+IHtcclxuICAgICAgICAgIHRoaXMubG9hZGVyTm90aWZpY2F0aW9uU2VydmljZS5oaWRlKCk7XHJcbiAgICAgICAgICB0aHJvdyBlcnJvclJlcztcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0cyBmaWxlIHVwbG9hZCBwcm9ncmVzcy5cclxuICAgKiBAcGFyYW0geyp9IG1lc3NhZ2VcclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZFNlcnZpY2VcclxuICAgKi9cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSwgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzLCBuby11bnVzZWQtdmFycywgbm8tZW1wdHktZnVuY3Rpb24sIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxyXG4gIHNob3dQcm9ncmVzcyhtZXNzYWdlOiBhbnkpIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiBkaXN0aW5jdCBtZXNzYWdlIGZvciBzZW50LCB1cGxvYWQgcHJvZ3Jlc3MsICYgcmVzcG9uc2UgZXZlbnRzLlxyXG4gICAqIEBwYXJhbSB7SHR0cEV2ZW50PGFueT59IGV2ZW50XHJcbiAgICogQHBhcmFtIHsoRmlsZSB8IEZpbGVMaXN0KX0gZmlsZVxyXG4gICAqIEByZXR1cm4geyp9XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBnZXRFdmVudE1lc3NhZ2UoZXZlbnQ6IEh0dHBFdmVudDxhbnk+LCBmaWxlOiBGaWxlIHwgRmlsZUxpc3QpIHtcclxuICAgIGxldCBmaWxlTmFtZSA9ICcnO1xyXG4gICAgbGV0IGZpbGVTaXplOiBudW1iZXIgfCBzdHJpbmcgPSAwO1xyXG4gICAgaWYgKE9iamVjdC52YWx1ZXMoZmlsZSkubGVuZ3RoKSB7XHJcbiAgICAgIGZpbGVOYW1lID0gT2JqZWN0LnZhbHVlcyhmaWxlKVswXS5uYW1lO1xyXG4gICAgICBmaWxlU2l6ZSA9IE9iamVjdC52YWx1ZXMoZmlsZSlbMF0uc2l6ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGZpbGVOYW1lID0gKGZpbGUgYXMgRmlsZSkubmFtZTtcclxuICAgICAgZmlsZVNpemUgPSAoZmlsZSBhcyBGaWxlKS5zaXplO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoIChldmVudC50eXBlKSB7XHJcbiAgICAgIGNhc2UgSHR0cEV2ZW50VHlwZS5TZW50OlxyXG4gICAgICAgIHJldHVybiBgVXBsb2FkaW5nIGZpbGUgXCIke2ZpbGVOYW1lfVwiIG9mIHNpemUgJHtmaWxlU2l6ZX0uYDtcclxuICAgICAgY2FzZSBIdHRwRXZlbnRUeXBlLlVwbG9hZFByb2dyZXNzOlxyXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jYXNlLWRlY2xhcmF0aW9uc1xyXG4gICAgICAgIGNvbnN0IHBlcmNlbnREb25lID0gZXZlbnQ/LnRvdGFsXHJcbiAgICAgICAgICA/IE1hdGgucm91bmQoKDEwMCAqIGV2ZW50LmxvYWRlZCkgLyBldmVudC50b3RhbClcclxuICAgICAgICAgIDogMDtcclxuICAgICAgICByZXR1cm4gYEZpbGUgXCIke2ZpbGVOYW1lfVwiIGlzICR7cGVyY2VudERvbmV9JSB1cGxvYWRlZC5gO1xyXG4gICAgICBjYXNlIEh0dHBFdmVudFR5cGUuUmVzcG9uc2U6XHJcbiAgICAgICAgdGhpcy5sb2FkZXJOb3RpZmljYXRpb25TZXJ2aWNlLmhpZGUoKTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gYEZpbGUgXCIke2ZpbGVOYW1lfVwiIHN1cnByaXNpbmcgdXBsb2FkIGV2ZW50OiAke2V2ZW50LnR5cGV9LmA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDb252ZXJ0cyBmaWxlIHRvIGJ5dGUgYXJyYXkuXHJcbiAgICogQHBhcmFtIHtGaWxlfSBmaWxlXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgY29udmVydEZpbGVUb0J5dGVBcnJheShmaWxlOiBGaWxlKTogdm9pZCB7XHJcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgcmVhZGVyLm9ubG9hZGVuZCA9ICgpID0+IHtcclxuICAgICAgY29uc3QgYXJyYXlCdWZmZXIgPSByZWFkZXI/LnJlc3VsdCBhcyBBcnJheUJ1ZmZlcjtcclxuICAgICAgdGhpcy5maWxlQnl0ZUFycmF5ID0gbmV3IFVpbnQ4QXJyYXkoYXJyYXlCdWZmZXIpO1xyXG4gICAgfTtcclxuICAgIHJlYWRlci5vbmVycm9yID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmFsZXJ0U2VydmljZT8uc2hvd01lc3NhZ2Uoe1xyXG4gICAgICAgIHN0YXR1czogJ2N1c3RvbScsXHJcbiAgICAgICAgbWVzc2FnZTogdGhpcy5jb25zdGFudHM/LmZpbGVVcGxvYWQ/Lm1lc3NhZ2U/LmVycm9yPy5lcnJvclJlYWRpbmdGaWxlLFxyXG4gICAgICAgIGFsZXJ0VHlwZTogQWxlcnRUeXBlPy5FUlJPUixcclxuICAgICAgICBpc0Nsb3NlTmVlZGVkOiB0cnVlLFxyXG4gICAgICB9KTtcclxuICAgIH07XHJcbiAgICByZWFkZXIucmVhZEFzQXJyYXlCdWZmZXIoZmlsZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXNldHMgZmlsZSBieXRlIGFycmF5IGZvcm1hdCB0byB1bmRlZmluZWQuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgY2xlYXJGaWxlQnl0ZUFycmF5KCk6IHZvaWQge1xyXG4gICAgdGhpcy5maWxlQnl0ZUFycmF5ID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0cyBmaWxlIHVwbG9hZCBzdGF0dXMuXHJcbiAgICogQHBhcmFtIHtib29sZWFufSBzdGF0dXNcclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZFNlcnZpY2VcclxuICAgKi9cclxuICBzZXRGaWxlVXBsb2FkU3RhdHVzKHN0YXR1czogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5pc0ZpbGVVcGxvYWRpbmcgPSBzdGF0dXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIGZpbGUgdXBsb2FkIHN0YXR1cy5cclxuICAgKiBAcmV0dXJuIHtib29sZWFufVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIGdldEZpbGVVcGxvYWRTdGF0dXMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pc0ZpbGVVcGxvYWRpbmc7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgcHJlc2lnbmVkIFVSTCBmb3IgZG93bmxvYWRpbmcgZmlsZXMgdG8gQW1hem9uIFMzIGJ1Y2tldC5cclxuICAgKiBAcGFyYW0geyhGaWxlIHwgRmlsZUxpc3QpfSBmaWxlXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxzdHJpbmc+fVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIGdldEZpbGVEb3dubG9hZFByZXNpZ25lZFVybHMoXHJcbiAgICBmaWxlOiBGaWxlIHwgRmlsZUxpc3QgfCBzdHJpbmcsXHJcbiAgICBpc1B1YmxpY0FQST86IGJvb2xlYW4sXHJcbiAgICBkb21haW5Vcmw/OiBzdHJpbmdcclxuICApOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgbGV0IGZpbGVOYW1lID0gJyc7XHJcbiAgICBpZiAodHlwZW9mIGZpbGUgPT09ICdzdHJpbmcnKSBmaWxlTmFtZSA9IGZpbGU7XHJcbiAgICBlbHNlIGlmIChPYmplY3QudmFsdWVzKGZpbGUpLmxlbmd0aCkgZmlsZU5hbWUgPSBPYmplY3QudmFsdWVzKGZpbGUpWzBdLm5hbWU7XHJcbiAgICBlbHNlIGZpbGVOYW1lID0gKGZpbGUgYXMgRmlsZSkubmFtZTtcclxuICAgIGxldCBodHRwUmVxdWVzdCE6IE9ic2VydmFibGU8c3RyaW5nPjtcclxuICAgIGlmIChpc1B1YmxpY0FQSSkge1xyXG4gICAgICBjb25zdCBmaWxlRG93bmxvYWRQcmVzaWduZWRVcmxQYXlsb2FkOiBHZXRGaWxlRG93bmxvYWRQcmVzaWduZWRVcmxQYXlsb2FkID1cclxuICAgICAgICB7XHJcbiAgICAgICAgICBwYXlsb2FkOiB7XHJcbiAgICAgICAgICAgIGZpbGVOYW1lOiBmaWxlTmFtZSxcclxuICAgICAgICAgICAgZG9tYWluOiBkb21haW5VcmwgYXMgc3RyaW5nLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9O1xyXG4gICAgICBodHRwUmVxdWVzdCA9IHRoaXMuaHR0cFNlcnZpY2UucG9zdERhdGEoXHJcbiAgICAgICAgYCR7dGhpcy5hcGlCYXNlVXJsfS9jb25maWd1cmF0aW9ucy9wdWJsaWMvZG93bmxvYWRGaWxlVXJsYCxcclxuICAgICAgICBmaWxlRG93bmxvYWRQcmVzaWduZWRVcmxQYXlsb2FkXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBodHRwUmVxdWVzdCA9IHRoaXMuaHR0cFNlcnZpY2UuZ2V0RGF0YShcclxuICAgICAgICBgJHt0aGlzLmFwaUJhc2VVcmx9L2NvbmZpZ3VyYXRpb25zL3MzL2Rvd25sb2FkRmlsZVVybC8ke2ZpbGVOYW1lfWBcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiBodHRwUmVxdWVzdC5waXBlKFxyXG4gICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xyXG4gICAgICB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXMpID0+IHtcclxuICAgICAgICB0aHJvdyBlcnJvclJlcztcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEb3dubG9hZHMgZmlsZSB0byBBV1MgUzMgdXNpbmcgYSBwcmVzaWduZWQgVVJMLlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8YW55Pn1cclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZFNlcnZpY2VcclxuICAgKi9cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIGRvd25sb2FkRmlsZShmaWxlRG93bmxvYWRQcmVzaWduZWRVcmw6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChmaWxlRG93bmxvYWRQcmVzaWduZWRVcmwpLnBpcGUoXHJcbiAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XHJcbiAgICAgIH0pLFxyXG4gICAgICBjYXRjaEVycm9yKChlcnJvclJlcykgPT4ge1xyXG4gICAgICAgIHRocm93IGVycm9yUmVzO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbGlkYXRlcyB0aGUgdG90YWwgc2l6ZSBvZiB0aGUgZmlsZXMgdXBsb2FkZWQuXHJcbiAgICogQHBhcmFtIHsoRmlsZSB8IEZpbGVMaXN0KX0gZmlsZXMgLVRoZSBmaWxlcyB0byBiZSB2YWxpZGF0ZWQuXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1heEZpbGVTaXplXHJcbiAgICogQHBhcmFtIHtib29sZWFufSBpc011bHRpRmlsZVVwbG9hZFxyXG4gICAqIEByZXR1cm4ge2Jvb2xlYW59IC1SZXR1cm5zIHRydWUgaWYgdGhlIHRvdGFsIHNpemUgb2YgZmlsZXMgaXMgd2l0aGluIHRoZSBzcGVjaWZpZWQgbGltaXQsIG90aGVyd2lzZSBmYWxzZS5cclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZFNlcnZpY2VcclxuICAgKi9cclxuICB2YWxpZGF0ZUZpbGVTaXplKFxyXG4gICAgZmlsZXM6IEZpbGUgfCBGaWxlTGlzdCxcclxuICAgIG1heEZpbGVTaXplOiBudW1iZXIsXHJcbiAgICBpc011bHRpRmlsZVVwbG9hZDogYm9vbGVhblxyXG4gICk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKGlzTXVsdGlGaWxlVXBsb2FkKSB7XHJcbiAgICAgIGxldCB0b3RhbFNpemUgPSAwO1xyXG4gICAgICBPYmplY3QudmFsdWVzKGZpbGVzKS5mb3JFYWNoKChmaWxlOiBGaWxlKSA9PiB7XHJcbiAgICAgICAgdG90YWxTaXplICs9IGZpbGUuc2l6ZTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiB0b3RhbFNpemUgLyAoMTAyNCAqIDEwMjQpIDw9IG1heEZpbGVTaXplO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChmaWxlcyBhcyBGaWxlKS5zaXplIC8gKDEwMjQgKiAxMDI0KSA8PSBtYXhGaWxlU2l6ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbGlkYXRlcyB0aGUgZmlsZSB0eXBlcyBvZiB0aGUgdXBsb2FkZWQgZmlsZXMuXHJcbiAgICogQHBhcmFtIHsoRmlsZSB8IEZpbGVMaXN0KX0gZmlsZXNcclxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBhbGxvd2VkRmlsZVR5cGVzXHJcbiAgICogQHBhcmFtIHtib29sZWFufSBpc011bHRpRmlsZVVwbG9hZFxyXG4gICAqIEByZXR1cm4ge2Jvb2xlYW59IC1SZXR1cm5zIHRydWUgaWYgYWxsIGZpbGVzIGhhdmUgdmFsaWQgZXh0ZW5zaW9ucywgb3RoZXJ3aXNlIGZhbHNlLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIHZhbGlkYXRlRmlsZVR5cGVzKFxyXG4gICAgZmlsZXM6IEZpbGUgfCBGaWxlTGlzdCxcclxuICAgIGFsbG93ZWRGaWxlVHlwZXM6IHN0cmluZ1tdLFxyXG4gICAgaXNNdWx0aUZpbGVVcGxvYWQ6IGJvb2xlYW5cclxuICApOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHZhbGlkYXRlU2luZ2xlRmlsZSA9IChmaWxlOiBGaWxlKTogYm9vbGVhbiA9PiB7XHJcbiAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSB0aGlzLmdldEZpbGVFeHRlbnNpb24oZmlsZS5uYW1lKTtcclxuICAgICAgcmV0dXJuIGFsbG93ZWRGaWxlVHlwZXM/LmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pO1xyXG4gICAgfTtcclxuICAgIGlmIChpc011bHRpRmlsZVVwbG9hZCkge1xyXG4gICAgICBsZXQgYWxsRmlsZXNWYWxpZCA9IHRydWU7XHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgIE9iamVjdC52YWx1ZXMoZmlsZXMpPy5mb3JFYWNoKChmaWxlSXRlbTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKCF2YWxpZGF0ZVNpbmdsZUZpbGUoZmlsZUl0ZW0pKSB7XHJcbiAgICAgICAgICBhbGxGaWxlc1ZhbGlkID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIGFsbEZpbGVzVmFsaWQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsaWRhdGVTaW5nbGVGaWxlKGZpbGVzIGFzIEZpbGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXh0cmFjdHMgYW5kIHJldHVybnMgdGhlIGV4dGVuc2lvbiBvZiBhIGZpbGUgZnJvbSBpdHMgbmFtZS5cclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBmaWxlTmFtZVxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gLVRoZSBmaWxlIGV4dGVuc2lvbiBpbiBsb3dlcmNhc2UuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXRGaWxlRXh0ZW5zaW9uKGZpbGVOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cclxuICAgIHJldHVybiBmaWxlTmFtZT8uc3BsaXQoJy4nKS5wb3AoKSEudG9Mb3dlckNhc2UoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEltcGxlbWVudGF0aW9uIG9mIG5nT25EZXN0cm95IGxpZmVjeWNsZSBob29rIG1ldGhvZCB0byB1bnN1YnNjcmliZSB0aGUgb3BlbiBvYnNlcnZhYmxlIHN1YnNjcmlwdGlvbnMuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
372
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvbGliL3NlcnZpY2VzL2ZpbGUtdXBsb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFVBQVUsRUFFVixhQUFhLEVBQ2IsV0FBVyxHQUNaLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBRUwsU0FBUyxHQUdWLE1BQU0scUJBQXFCLENBQUM7QUFNN0IsT0FBTyxFQUNMLFVBQVUsRUFDVixTQUFTLEVBQ1QsSUFBSSxFQUNKLElBQUksRUFDSixHQUFHLEVBRUgsT0FBTyxFQUNQLElBQUksRUFDSixTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxLQUFLLFNBQVMsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQVd0RDs7O0dBR0c7QUFJSCxNQUFNLE9BQU8saUJBQWlCO0lBVzVCO0lBQ0UsMENBQTBDO0lBQ25DLFdBQXdCLEVBQy9CLE9BQW9CO0lBQ3BCLDBDQUEwQztJQUNuQyxZQUEyQjtJQUNsQywwQ0FBMEM7SUFDbkMseUJBQW9EO1FBTHBELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBR3hCLGlCQUFZLEdBQVosWUFBWSxDQUFlO1FBRTNCLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBMkI7UUFqQjdELGFBQVEsR0FBcUIsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNwRCxjQUFTLEdBQUcsU0FBUyxDQUFDO1FBSXRCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBRXhCLG1DQUE4QixHQUFHLENBQUMsQ0FBQztRQUNuQyxxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFXcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJ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QUFDLEVBQUUsQ0FDL0Q7YUFDQSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDZixPQUFPLFFBQVEsQ0FBQztRQUNsQixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixNQUFNLEtBQUssQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDOUIsQ0FBQzsrR0FuYlUsaUJBQWlCO21IQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7NEZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgSHR0cEJhY2tlbmQsXHJcbiAgSHR0cENsaWVudCxcclxuICBIdHRwRXZlbnQsXHJcbiAgSHR0cEV2ZW50VHlwZSxcclxuICBIdHRwSGVhZGVycyxcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEFsZXJ0c1NlcnZpY2UsXHJcbiAgQWxlcnRUeXBlLFxyXG4gIEh0dHBTZXJ2aWNlLFxyXG4gIExvYWRlck5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbn0gZnJvbSAnQGllZWVzYS1ucG0vdXRpbGl0eSc7XHJcbmltcG9ydCB7XHJcbiAgRmlsZVVwbG9hZFByZXNpZ25lZFVybCxcclxuICBHZXRGaWxlRG93bmxvYWRQcmVzaWduZWRVcmxQYXlsb2FkLFxyXG4gIEdldEZpbGVVcGxvYWRQcmVzaWduZWRVcmxQYXlsb2FkLFxyXG59IGZyb20gJy4uL21vZGVscy9maWxlLXVwbG9hZC1wcmVzaWduZWQtdXJsLXJlcy5tb2RlbCc7XHJcbmltcG9ydCB7XHJcbiAgY2F0Y2hFcnJvcixcclxuICBjb25jYXRNYXAsXHJcbiAgZnJvbSxcclxuICBsYXN0LFxyXG4gIG1hcCxcclxuICBPYnNlcnZhYmxlLFxyXG4gIFN1YmplY3QsXHJcbiAgdGFrZSxcclxuICB0YWtlVW50aWwsXHJcbiAgdGFwLFxyXG59IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi4vYXNzZXRzL2NvbnN0YW50cy5qc29uJztcclxuaW1wb3J0IHsgRmlsZVVwbG9hZFBheWxvYWQgfSBmcm9tICcuLi9tb2RlbHMvZmlsZS11cGxvYWQtcGF5bG9hZC1tb2RlbCc7XHJcbmltcG9ydCB7XHJcbiAgRmlsZVVwbG9hZEJvZHlSZXNwb25zZSxcclxuICBGaWxlVXBsb2FkUmVzcG9uc2UsXHJcbn0gZnJvbSAnLi4vbW9kZWxzL2ZpbGUtdXBsb2FkLXJlc3BvbnNlLm1vZGVsJztcclxuaW1wb3J0IHtcclxuICBEZWxldGVGaWxlUGF5bG9hZCxcclxuICBEZWxldGVGaWxlUmVzcG9uc2UsXHJcbn0gZnJvbSAnLi4vbW9kZWxzL2RlbGV0ZS1maWxlLm1vZGVsJztcclxuXHJcbi8qKlxyXG4gKiBUaGlzIHNlcnZpY2UgaW50ZXJhY3RzIHdpdGggdGhlIHNlcnZlciB0byBvYnRhaW4gcHJlLXNpZ25lZCBVUkxzIGZvciBmaWxlIHVwbG9hZCBhbmQgdXBsb2FkcyBmaWxlcyB0byBBbWF6b24gUzMuXHJcbiAqIEBjbGFzcyBGaWxlVXBsb2FkU2VydmljZVxyXG4gKi9cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcbiAgY29uc3RhbnRzID0gY29uc3RhbnRzO1xyXG4gIGFwaUJhc2VVcmwhOiBzdHJpbmc7XHJcbiAgZmlsZUJ5dGVBcnJheTogVWludDhBcnJheSB8IHVuZGVmaW5lZDtcclxuICBodHRwQ2xpZW50OiBIdHRwQ2xpZW50O1xyXG4gIGlzRmlsZVVwbG9hZGluZyA9IGZhbHNlO1xyXG4gIGZpbGVzTmFtZXNVcGxvYWRGYWlsZWQhOiBzdHJpbmdbXTtcclxuICBmaWxlc1VwbG9hZGVkU3VjY2Vzc2Z1bGx5Q291bnQgPSAwO1xyXG4gIHVwbG9hZGVkRmlsZU5hbWUgPSAnJztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHB1YmxpYyBodHRwU2VydmljZTogSHR0cFNlcnZpY2UsXHJcbiAgICBoYW5kbGVyOiBIdHRwQmFja2VuZCxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHVibGljIGFsZXJ0U2VydmljZTogQWxlcnRzU2VydmljZSxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHVibGljIGxvYWRlck5vdGlmaWNhdGlvblNlcnZpY2U6IExvYWRlck5vdGlmaWNhdGlvblNlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMuaHR0cENsaWVudCA9IG5ldyBIdHRwQ2xpZW50KGhhbmRsZXIpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0cyB0aGUgYmFzZSBVUkwgZm9yIEFQSSByZXF1ZXN0cy5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXBpQmFzZVVybCAtQVBJIGJhc2UgVVJMLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIHNldEFwaUJhc2VVcmwoYXBpQmFzZVVybDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmFwaUJhc2VVcmwgPSBhcGlCYXNlVXJsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIHByZXNpZ25lZCBVUkwgZm9yIHVwbG9hZGluZyBmaWxlcyB0byBBbWF6b24gUzMgYnVja2V0LlxyXG4gICAqIEBwYXJhbSB7KEZpbGUgfCBGaWxlTGlzdCl9IGZpbGVcclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPEZpbGVVcGxvYWRQcmVzaWduZWRVcmw+fVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIGdldEZpbGVVcGxvYWRQcmVzaWduZWRVcmwoXHJcbiAgICBmaWxlOiBGaWxlIHwgRmlsZUxpc3QsXHJcbiAgICBhcHBJZDogc3RyaW5nXHJcbiAgKTogT2JzZXJ2YWJsZTxGaWxlVXBsb2FkUHJlc2lnbmVkVXJsPiB7XHJcbiAgICBsZXQgZmlsZU5hbWUgPSAnJztcclxuICAgIGlmIChPYmplY3QudmFsdWVzKGZpbGUpLmxlbmd0aCkgZmlsZU5hbWUgPSBPYmplY3QudmFsdWVzKGZpbGUpWzBdLm5hbWU7XHJcbiAgICBlbHNlIGZpbGVOYW1lID0gKGZpbGUgYXMgRmlsZSkubmFtZTtcclxuICAgIGNvbnN0IGZpbGVVcGxvYWRQcmVzaWduZWRVcmxQYXlsb2FkOiBHZXRGaWxlVXBsb2FkUHJlc2lnbmVkVXJsUGF5bG9hZCA9IHtcclxuICAgICAgcGF5bG9hZDoge1xyXG4gICAgICAgIGZpbGVOYW1lOiBmaWxlTmFtZSxcclxuICAgICAgICB0ZW5hbnRBcHBJZDogYXBwSWQgYXMgc3RyaW5nLFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlXHJcbiAgICAgIC5wb3N0RGF0YShcclxuICAgICAgICBgJHt0aGlzLmFwaUJhc2VVcmx9L2NvbmZpZ3VyYXRpb25zL3MzL3VwbG9hZEZpbGVVcmxgLFxyXG4gICAgICAgIGZpbGVVcGxvYWRQcmVzaWduZWRVcmxQYXlsb2FkXHJcbiAgICAgIClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yUmVzKSA9PiB7XHJcbiAgICAgICAgICB0aHJvdyBlcnJvclJlcztcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0cyBwcmUtc2lnbmVkIFVSTCBmb3IgdGhlIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGluIFMzIGJ1Y2tldFxyXG4gICAqIEBwYXJhbSBmaWxlVXBsb2FkUGF5bG9hZFxyXG4gICAqIEBwYXJhbSBmaWxlVXBsb2FkQVBJUGF0aFxyXG4gICAqL1xyXG4gIGdldFByZVNpZ25lZFVSTChcclxuICAgIGZpbGVVcGxvYWRQYXlsb2FkOiBGaWxlVXBsb2FkUGF5bG9hZCxcclxuICAgIGZpbGVVcGxvYWRBUElQYXRoID0gJydcclxuICApOiBPYnNlcnZhYmxlPEZpbGVVcGxvYWRSZXNwb25zZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcclxuICAgICAgLnBvc3REYXRhKGAke3RoaXMuYXBpQmFzZVVybH0vJHtmaWxlVXBsb2FkQVBJUGF0aH1gLCBmaWxlVXBsb2FkUGF5bG9hZClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yUmVzKSA9PiB7XHJcbiAgICAgICAgICB0aHJvdyBlcnJvclJlcztcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBsb2FkcyBmaWxlIHRvIEFXUyBTMyB1c2luZyBhIHByZS1zaWduZWQgVVJMLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwcmVTaWduZWRVcmxcclxuICAgKiBAcGFyYW0gZmlsZXNcclxuICAgKiBAcGFyYW0gaXNNdWx0aXBsZUZpbGVVcGxvYWRcclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPGFueT59IC1SZXR1cm5zIGFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgcmVzcG9uc2UgYWZ0ZXIgdXBsb2FkaW5nIHRoZSBmaWxlIHRvIFMzLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIHVwbG9hZEZpbGVUb1MzKFxyXG4gICAgcHJlU2lnbmVkVXJsOiBGaWxlVXBsb2FkQm9keVJlc3BvbnNlW10gfCBzdHJpbmcsXHJcbiAgICBmaWxlczogRmlsZSB8IEZpbGVMaXN0LFxyXG4gICAgaXNNdWx0aXBsZUZpbGVVcGxvYWQgPSBmYWxzZVxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgdGhpcy5sb2FkZXJOb3RpZmljYXRpb25TZXJ2aWNlLnNob3coKTtcclxuICAgIGNvbnN0IGZpbGVzQXJyYXkgPSBbXTtcclxuICAgIHRoaXMuZmlsZXNOYW1lc1VwbG9hZEZhaWxlZCA9IFtdO1xyXG4gICAgdGhpcy51cGxvYWRlZEZpbGVOYW1lID0gJyc7XHJcbiAgICBpZiAoaXNNdWx0aXBsZUZpbGVVcGxvYWQpIHtcclxuICAgICAgT2JqZWN0LnZhbHVlcyhmaWxlcykuZm9yRWFjaCgoZmlsZSkgPT4ge1xyXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgICAgY29uc3QgaW5kZXhGb3JQcmVTaWduZWRVcmwgPSAocHJlU2lnbmVkVXJsIGFzIFtdKS5maW5kSW5kZXgoXHJcbiAgICAgICAgICAoeDogRmlsZVVwbG9hZEJvZHlSZXNwb25zZSkgPT5cclxuICAgICAgICAgICAgeC5maWxlTmFtZSA9PT0gKGZpbGUgYXMgRmlsZSkubmFtZSAmJlxyXG4gICAgICAgICAgICB4LmVycm9yTWVzc2FnZSAhPT0gJ251bGwnICYmXHJcbiAgICAgICAgICAgIHguZXJyb3JNZXNzYWdlICE9PSBudWxsXHJcbiAgICAgICAgKTtcclxuICAgICAgICBpZiAoaW5kZXhGb3JQcmVTaWduZWRVcmwgPiAtMSkge1xyXG4gICAgICAgICAgZmlsZXNBcnJheS5wdXNoKHtcclxuICAgICAgICAgICAgcHJlU2lnbmVkVXJsOiAoXHJcbiAgICAgICAgICAgICAgcHJlU2lnbmVkVXJsW2luZGV4Rm9yUHJlU2lnbmVkVXJsXSBhcyBGaWxlVXBsb2FkQm9keVJlc3BvbnNlXHJcbiAgICAgICAgICAgICk/LnByZVNpZ25lZFVybCxcclxuICAgICAgICAgICAgZmlsZU9iajogZmlsZSBhcyBGaWxlLFxyXG4gICAgICAgICAgICBmaWxlVHlwZTogKGZpbGUgYXMgRmlsZSkudHlwZSxcclxuICAgICAgICAgICAgZmlsZVNpemU6IChmaWxlIGFzIEZpbGUpLnNpemUsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZmlsZXNBcnJheS5wdXNoKHtcclxuICAgICAgICBwcmVTaWduZWRVcmw6IHByZVNpZ25lZFVybCBhcyBzdHJpbmcsXHJcbiAgICAgICAgZmlsZU9iajogZmlsZXMgYXMgRmlsZSxcclxuICAgICAgICBmaWxlVHlwZTogKGZpbGVzIGFzIEZpbGUpLnR5cGUsXHJcbiAgICAgICAgZmlsZVNpemU6IChmaWxlcyBhcyBGaWxlKS5zaXplLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiBmcm9tKGZpbGVzQXJyYXkpLnBpcGUoXHJcbiAgICAgIGNvbmNhdE1hcCgoZmlsZSkgPT5cclxuICAgICAgICB0aGlzLmh0dHBDYWxsVG9BV1MoXHJcbiAgICAgICAgICBmaWxlLnByZVNpZ25lZFVybCxcclxuICAgICAgICAgIGZpbGUuZmlsZU9iaixcclxuICAgICAgICAgIGZpbGUuZmlsZVR5cGUsXHJcbiAgICAgICAgICBmaWxlLmZpbGVTaXplXHJcbiAgICAgICAgKVxyXG4gICAgICApLFxyXG4gICAgICB0YWtlKGZpbGVzQXJyYXkubGVuZ3RoKVxyXG4gICAgKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogTWFrZXMgaHR0cCBjYWxsIHRvIEFXUyB0byB1cGxvYWQgZmlsZSBpbiBTMyBidWNrZXRcclxuICAgKiBAcGFyYW0ge3N0cmluZ30gcHJlU2lnbmVkVXJsXHJcbiAgICogQHBhcmFtIHtGaWxlfSBmaWxlXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGZpbGVUeXBlXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGZpbGVTaXplXHJcbiAgICogQHJldHVybiB7Kn0gIHtPYnNlcnZhYmxlPGFueT59XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgaHR0cENhbGxUb0FXUyhcclxuICAgIHByZVNpZ25lZFVybDogc3RyaW5nLFxyXG4gICAgZmlsZTogRmlsZSxcclxuICAgIGZpbGVUeXBlOiBzdHJpbmcsXHJcbiAgICBmaWxlU2l6ZTogbnVtYmVyXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XHJcbiAgICBoZWFkZXJzLmFwcGVuZCgnQ29udGVudC1UeXBlJywgZmlsZVR5cGUudG9TdHJpbmcoKSk7XHJcbiAgICBoZWFkZXJzLmFwcGVuZCgnQ29udGVudC1MZW5ndGgnLCBmaWxlU2l6ZS50b1N0cmluZygpKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XHJcbiAgICAgIC5wdXQocHJlU2lnbmVkVXJsLCBmaWxlLCB7XHJcbiAgICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWUsXHJcbiAgICAgICAgb2JzZXJ2ZTogJ2V2ZW50cycsXHJcbiAgICAgICAgaGVhZGVyczogaGVhZGVycyxcclxuICAgICAgfSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxyXG4gICAgICAgIG1hcCgoZXZlbnQpID0+IHRoaXMuZ2V0RXZlbnRNZXNzYWdlKGV2ZW50LCBmaWxlKSksXHJcbiAgICAgICAgdGFwKChtZXNzYWdlKSA9PiB0aGlzLnNob3dQcm9ncmVzcyhtZXNzYWdlKSksXHJcbiAgICAgICAgbGFzdCgpLFxyXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yUmVzKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmxvYWRlck5vdGlmaWNhdGlvblNlcnZpY2UuaGlkZSgpO1xyXG4gICAgICAgICAgdGhyb3cgZXJyb3JSZXM7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldHMgZmlsZSB1cGxvYWQgcHJvZ3Jlc3MuXHJcbiAgICogQHBhcmFtIHsqfSBtZXNzYWdlXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnksIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycywgbm8tdW51c2VkLXZhcnMsIG5vLWVtcHR5LWZ1bmN0aW9uLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cclxuICBzaG93UHJvZ3Jlc3MobWVzc2FnZTogYW55KSB7fVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm4gZGlzdGluY3QgbWVzc2FnZSBmb3Igc2VudCwgdXBsb2FkIHByb2dyZXNzLCAmIHJlc3BvbnNlIGV2ZW50cy5cclxuICAgKiBAcGFyYW0ge0h0dHBFdmVudDxhbnk+fSBldmVudFxyXG4gICAqIEBwYXJhbSB7KEZpbGUgfCBGaWxlTGlzdCl9IGZpbGVcclxuICAgKiBAcmV0dXJuIHsqfVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgZ2V0RXZlbnRNZXNzYWdlKGV2ZW50OiBIdHRwRXZlbnQ8YW55PiwgZmlsZTogRmlsZSkge1xyXG4gICAgY29uc29sZS5sb2coJ0V2ZW50IGZyb20gZmlsZSB1cGxvYWQgdG8gQVdTJywgZXZlbnQpO1xyXG4gICAgbGV0IGZpbGVOYW1lID0gJyc7XHJcbiAgICBsZXQgZmlsZVNpemU6IG51bWJlciB8IHN0cmluZyA9IDA7XHJcbiAgICBmaWxlTmFtZSA9IChmaWxlIGFzIEZpbGUpLm5hbWU7XHJcbiAgICBmaWxlU2l6ZSA9IChmaWxlIGFzIEZpbGUpLnNpemU7XHJcbiAgICBzd2l0Y2ggKGV2ZW50LnR5cGUpIHtcclxuICAgICAgY2FzZSBIdHRwRXZlbnRUeXBlLlNlbnQ6XHJcbiAgICAgICAgcmV0dXJuIGBVcGxvYWRpbmcgZmlsZSBcIiR7ZmlsZU5hbWV9XCIgb2Ygc2l6ZSAke2ZpbGVTaXplfS5gO1xyXG4gICAgICBjYXNlIEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3M6XHJcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNhc2UtZGVjbGFyYXRpb25zXHJcbiAgICAgICAgY29uc3QgcGVyY2VudERvbmUgPSBldmVudD8udG90YWxcclxuICAgICAgICAgID8gTWF0aC5yb3VuZCgoMTAwICogZXZlbnQubG9hZGVkKSAvIGV2ZW50LnRvdGFsKVxyXG4gICAgICAgICAgOiAwO1xyXG4gICAgICAgIHJldHVybiBgRmlsZSBcIiR7ZmlsZU5hbWV9XCIgaXMgJHtwZXJjZW50RG9uZX0lIHVwbG9hZGVkLmA7XHJcbiAgICAgIGNhc2UgSHR0cEV2ZW50VHlwZS5SZXNwb25zZTpcclxuICAgICAgICB0aGlzLmxvYWRlck5vdGlmaWNhdGlvblNlcnZpY2UuaGlkZSgpO1xyXG4gICAgICAgIGlmIChldmVudC5zdGF0dXMgPT09IDIwMCkge1xyXG4gICAgICAgICAgdGhpcy5maWxlc1VwbG9hZGVkU3VjY2Vzc2Z1bGx5Q291bnQrKztcclxuICAgICAgICAgIHRoaXMudXBsb2FkZWRGaWxlTmFtZSA9IGZpbGVOYW1lO1xyXG4gICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZmlsZXNOYW1lc1VwbG9hZEZhaWxlZC5wdXNoKGZpbGVOYW1lKTtcclxuICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuIGBGaWxlIFwiJHtmaWxlTmFtZX1cIiBzdXJwcmlzaW5nIHVwbG9hZCBldmVudDogJHtldmVudC50eXBlfS5gO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29udmVydHMgZmlsZSB0byBieXRlIGFycmF5LlxyXG4gICAqIEBwYXJhbSB7RmlsZX0gZmlsZVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIGNvbnZlcnRGaWxlVG9CeXRlQXJyYXkoZmlsZTogRmlsZSk6IHZvaWQge1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgIHJlYWRlci5vbmxvYWRlbmQgPSAoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGFycmF5QnVmZmVyID0gcmVhZGVyPy5yZXN1bHQgYXMgQXJyYXlCdWZmZXI7XHJcbiAgICAgIHRoaXMuZmlsZUJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGFycmF5QnVmZmVyKTtcclxuICAgIH07XHJcbiAgICByZWFkZXIub25lcnJvciA9ICgpID0+IHtcclxuICAgICAgdGhpcy5hbGVydFNlcnZpY2U/LnNob3dNZXNzYWdlKHtcclxuICAgICAgICBzdGF0dXM6ICdjdXN0b20nLFxyXG4gICAgICAgIG1lc3NhZ2U6IHRoaXMuY29uc3RhbnRzPy5maWxlVXBsb2FkPy5tZXNzYWdlPy5lcnJvcj8uZXJyb3JSZWFkaW5nRmlsZSxcclxuICAgICAgICBhbGVydFR5cGU6IEFsZXJ0VHlwZT8uRVJST1IsXHJcbiAgICAgICAgaXNDbG9zZU5lZWRlZDogdHJ1ZSxcclxuICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgcmVhZGVyLnJlYWRBc0FycmF5QnVmZmVyKGZpbGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzZXRzIGZpbGUgYnl0ZSBhcnJheSBmb3JtYXQgdG8gdW5kZWZpbmVkLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIGNsZWFyRmlsZUJ5dGVBcnJheSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZmlsZUJ5dGVBcnJheSA9IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHMgZmlsZSB1cGxvYWQgc3RhdHVzLlxyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gc3RhdHVzXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgc2V0RmlsZVVwbG9hZFN0YXR1cyhzdGF0dXM6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuaXNGaWxlVXBsb2FkaW5nID0gc3RhdHVzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyBmaWxlIHVwbG9hZCBzdGF0dXMuXHJcbiAgICogQHJldHVybiB7Ym9vbGVhbn1cclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZFNlcnZpY2VcclxuICAgKi9cclxuICBnZXRGaWxlVXBsb2FkU3RhdHVzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNGaWxlVXBsb2FkaW5nO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIHByZXNpZ25lZCBVUkwgZm9yIGRvd25sb2FkaW5nIGZpbGVzIHRvIEFtYXpvbiBTMyBidWNrZXQuXHJcbiAgICogQHBhcmFtIHsoRmlsZSB8IEZpbGVMaXN0KX0gZmlsZVxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8c3RyaW5nPn1cclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZFNlcnZpY2VcclxuICAgKi9cclxuICBnZXRGaWxlRG93bmxvYWRQcmVzaWduZWRVcmxzKFxyXG4gICAgZmlsZTogRmlsZSB8IEZpbGVMaXN0IHwgc3RyaW5nLFxyXG4gICAgaXNQdWJsaWNBUEk/OiBib29sZWFuLFxyXG4gICAgZG9tYWluVXJsPzogc3RyaW5nXHJcbiAgKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIGxldCBmaWxlTmFtZSA9ICcnO1xyXG4gICAgaWYgKHR5cGVvZiBmaWxlID09PSAnc3RyaW5nJykgZmlsZU5hbWUgPSBmaWxlO1xyXG4gICAgZWxzZSBpZiAoT2JqZWN0LnZhbHVlcyhmaWxlKS5sZW5ndGgpIGZpbGVOYW1lID0gT2JqZWN0LnZhbHVlcyhmaWxlKVswXS5uYW1lO1xyXG4gICAgZWxzZSBmaWxlTmFtZSA9IChmaWxlIGFzIEZpbGUpLm5hbWU7XHJcbiAgICBsZXQgaHR0cFJlcXVlc3QhOiBPYnNlcnZhYmxlPHN0cmluZz47XHJcbiAgICBpZiAoaXNQdWJsaWNBUEkpIHtcclxuICAgICAgY29uc3QgZmlsZURvd25sb2FkUHJlc2lnbmVkVXJsUGF5bG9hZDogR2V0RmlsZURvd25sb2FkUHJlc2lnbmVkVXJsUGF5bG9hZCA9XHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcGF5bG9hZDoge1xyXG4gICAgICAgICAgICBmaWxlTmFtZTogZmlsZU5hbWUsXHJcbiAgICAgICAgICAgIGRvbWFpbjogZG9tYWluVXJsIGFzIHN0cmluZyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfTtcclxuICAgICAgaHR0cFJlcXVlc3QgPSB0aGlzLmh0dHBTZXJ2aWNlLnBvc3REYXRhKFxyXG4gICAgICAgIGAke3RoaXMuYXBpQmFzZVVybH0vY29uZmlndXJhdGlvbnMvcHVibGljL2Rvd25sb2FkRmlsZVVybGAsXHJcbiAgICAgICAgZmlsZURvd25sb2FkUHJlc2lnbmVkVXJsUGF5bG9hZFxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaHR0cFJlcXVlc3QgPSB0aGlzLmh0dHBTZXJ2aWNlLmdldERhdGEoXHJcbiAgICAgICAgYCR7dGhpcy5hcGlCYXNlVXJsfS9jb25maWd1cmF0aW9ucy9zMy9kb3dubG9hZEZpbGVVcmwvJHtmaWxlTmFtZX1gXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaHR0cFJlcXVlc3QucGlwZShcclxuICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiByZXNwb25zZTtcclxuICAgICAgfSksXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yUmVzKSA9PiB7XHJcbiAgICAgICAgdGhyb3cgZXJyb3JSZXM7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRG93bmxvYWRzIGZpbGUgdG8gQVdTIFMzIHVzaW5nIGEgcHJlc2lnbmVkIFVSTC5cclxuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlPGFueT59XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBkb3dubG9hZEZpbGUoZmlsZURvd25sb2FkUHJlc2lnbmVkVXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoZmlsZURvd25sb2FkUHJlc2lnbmVkVXJsKS5waXBlKFxyXG4gICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xyXG4gICAgICB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXMpID0+IHtcclxuICAgICAgICB0aHJvdyBlcnJvclJlcztcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBWYWxpZGF0ZXMgdGhlIHRvdGFsIHNpemUgb2YgdGhlIGZpbGVzIHVwbG9hZGVkLlxyXG4gICAqIEBwYXJhbSB7KEZpbGUgfCBGaWxlTGlzdCl9IGZpbGVzIC1UaGUgZmlsZXMgdG8gYmUgdmFsaWRhdGVkLlxyXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtYXhGaWxlU2l6ZVxyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gaXNNdWx0aUZpbGVVcGxvYWRcclxuICAgKiBAcmV0dXJuIHtib29sZWFufSAtUmV0dXJucyB0cnVlIGlmIHRoZSB0b3RhbCBzaXplIG9mIGZpbGVzIGlzIHdpdGhpbiB0aGUgc3BlY2lmaWVkIGxpbWl0LCBvdGhlcndpc2UgZmFsc2UuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgdmFsaWRhdGVGaWxlU2l6ZShcclxuICAgIGZpbGVzOiBGaWxlIHwgRmlsZUxpc3QsXHJcbiAgICBtYXhGaWxlU2l6ZTogbnVtYmVyLFxyXG4gICAgaXNNdWx0aUZpbGVVcGxvYWQ6IGJvb2xlYW5cclxuICApOiBib29sZWFuIHtcclxuICAgIGlmIChpc011bHRpRmlsZVVwbG9hZCkge1xyXG4gICAgICBsZXQgdG90YWxTaXplID0gMDtcclxuICAgICAgT2JqZWN0LnZhbHVlcyhmaWxlcykuZm9yRWFjaCgoZmlsZTogRmlsZSkgPT4ge1xyXG4gICAgICAgIHRvdGFsU2l6ZSArPSBmaWxlLnNpemU7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gdG90YWxTaXplIC8gKDEwMjQgKiAxMDI0KSA8PSBtYXhGaWxlU2l6ZTtcclxuICAgIH1cclxuICAgIHJldHVybiAoZmlsZXMgYXMgRmlsZSkuc2l6ZSAvICgxMDI0ICogMTAyNCkgPD0gbWF4RmlsZVNpemU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBWYWxpZGF0ZXMgdGhlIGZpbGUgdHlwZXMgb2YgdGhlIHVwbG9hZGVkIGZpbGVzLlxyXG4gICAqIEBwYXJhbSB7KEZpbGUgfCBGaWxlTGlzdCl9IGZpbGVzXHJcbiAgICogQHBhcmFtIHtzdHJpbmdbXX0gYWxsb3dlZEZpbGVUeXBlc1xyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gaXNNdWx0aUZpbGVVcGxvYWRcclxuICAgKiBAcmV0dXJuIHtib29sZWFufSAtUmV0dXJucyB0cnVlIGlmIGFsbCBmaWxlcyBoYXZlIHZhbGlkIGV4dGVuc2lvbnMsIG90aGVyd2lzZSBmYWxzZS5cclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZFNlcnZpY2VcclxuICAgKi9cclxuICB2YWxpZGF0ZUZpbGVUeXBlcyhcclxuICAgIGZpbGVzOiBGaWxlIHwgRmlsZUxpc3QsXHJcbiAgICBhbGxvd2VkRmlsZVR5cGVzOiBzdHJpbmdbXSxcclxuICAgIGlzTXVsdGlGaWxlVXBsb2FkOiBib29sZWFuXHJcbiAgKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCB2YWxpZGF0ZVNpbmdsZUZpbGUgPSAoZmlsZTogRmlsZSk6IGJvb2xlYW4gPT4ge1xyXG4gICAgICBjb25zdCBmaWxlRXh0ZW5zaW9uID0gdGhpcy5nZXRGaWxlRXh0ZW5zaW9uKGZpbGUubmFtZSk7XHJcbiAgICAgIHJldHVybiBhbGxvd2VkRmlsZVR5cGVzPy5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKTtcclxuICAgIH07XHJcbiAgICBpZiAoaXNNdWx0aUZpbGVVcGxvYWQpIHtcclxuICAgICAgbGV0IGFsbEZpbGVzVmFsaWQgPSB0cnVlO1xyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICBPYmplY3QudmFsdWVzKGZpbGVzKT8uZm9yRWFjaCgoZmlsZUl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgIGlmICghdmFsaWRhdGVTaW5nbGVGaWxlKGZpbGVJdGVtKSkge1xyXG4gICAgICAgICAgYWxsRmlsZXNWYWxpZCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiBhbGxGaWxlc1ZhbGlkO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHZhbGlkYXRlU2luZ2xlRmlsZShmaWxlcyBhcyBGaWxlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV4dHJhY3RzIGFuZCByZXR1cm5zIHRoZSBleHRlbnNpb24gb2YgYSBmaWxlIGZyb20gaXRzIG5hbWUuXHJcbiAgICogQHByaXZhdGVcclxuICAgKiBAcGFyYW0ge3N0cmluZ30gZmlsZU5hbWVcclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IC1UaGUgZmlsZSBleHRlbnNpb24gaW4gbG93ZXJjYXNlLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0RmlsZUV4dGVuc2lvbihmaWxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICByZXR1cm4gZmlsZU5hbWU/LnNwbGl0KCcuJykucG9wKCkhLnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIERlbGV0ZXMgZmlsZSBieSBnaXZlbiBmaWxlSWRcclxuICAgKiBAcGFyYW0ge3N0cmluZ30gZmlsZUlkXHJcbiAgICogQHJldHVybiB7Kn0gIHtPYnNlcnZhYmxlPERlbGV0ZUZpbGVSZXNwb25zZT59XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRTZXJ2aWNlXHJcbiAgICovXHJcbiAgZGVsZXRlRmlsZShkZWxldGVGaWxlQXBpUGF0aDogc3RyaW5nKTogT2JzZXJ2YWJsZTxEZWxldGVGaWxlUmVzcG9uc2U+IHtcclxuICAgIGNvbnN0IGRlbGV0ZUZpbGVQYXlsb2FkOiBEZWxldGVGaWxlUGF5bG9hZCA9IHtcclxuICAgICAgLy8gQXNzaWduIGRhdGEgaGVyZSBpZiBuZWVkZWQgdG8gc2VuZCBhbnkgcGF5bG9hZCBpbiBib2R5XHJcbiAgICAgIC8vIGV4YW1wbGUgYmVsb3dcclxuICAgICAgLy8gZmlsZUlkOiBhcmd1bWVudHNbMF0sXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2VcclxuICAgICAgLnB1dERhdGEoXHJcbiAgICAgICAgYCR7dGhpcy5hcGlCYXNlVXJsfS8ke2RlbGV0ZUZpbGVBcGlQYXRofWAsXHJcbiAgICAgICAgT2JqZWN0LmtleXMoZGVsZXRlRmlsZVBheWxvYWQpLmxlbmd0aCA/IGRlbGV0ZUZpbGVQYXlsb2FkIDoge31cclxuICAgICAgKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2U7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcclxuICAgICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnRhdGlvbiBvZiBuZ09uRGVzdHJveSBsaWZlY3ljbGUgaG9vayBtZXRob2QgdG8gdW5zdWJzY3JpYmUgdGhlIG9wZW4gb2JzZXJ2YWJsZSBzdWJzY3JpcHRpb25zLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkU2VydmljZVxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -54,8 +54,11 @@ export * from './lib/models/calendar.model';
|
|
|
54
54
|
export * from './lib/models/checkbox-option.model';
|
|
55
55
|
export * from './lib/models/confirmation-modal-data.model';
|
|
56
56
|
export * from './lib/models/date-picker.model';
|
|
57
|
+
export * from './lib/models/delete-file.model';
|
|
58
|
+
export * from './lib/models/dynamic-properties.model';
|
|
57
59
|
export * from './lib/models/event-emit-type.model';
|
|
58
60
|
export * from './lib/models/field-config.model';
|
|
61
|
+
export * from './lib/models/file-attachment.model';
|
|
59
62
|
export * from './lib/models/footer-config.model';
|
|
60
63
|
export * from './lib/models/form-control-types.model';
|
|
61
64
|
export * from './lib/models/form-field.model';
|
|
@@ -82,6 +85,8 @@ export * from './lib/models/table-actions.model';
|
|
|
82
85
|
export * from './lib/models/table-schema.model';
|
|
83
86
|
export * from './lib/models/breadcrumb.model';
|
|
84
87
|
export * from './lib/models/tile.model';
|
|
88
|
+
export * from './lib/models/file-upload-response.model';
|
|
89
|
+
export * from './lib/models/file-upload-status.model';
|
|
85
90
|
export * from './lib/models/filters-options.model';
|
|
86
91
|
export * from './lib/models/profile-menu.model';
|
|
87
92
|
export * from './lib/models/slide-toggle-options.model';
|
|
@@ -90,12 +95,15 @@ export * from './lib/models/card-button.model';
|
|
|
90
95
|
export * from './lib/models/card-info.model';
|
|
91
96
|
export * from './lib/models/color-format.model';
|
|
92
97
|
export * from './lib/models/allowed-file-types.model';
|
|
98
|
+
export * from './lib/models/file-upload-payload-model';
|
|
93
99
|
export * from './lib/models/file-upload-presigned-url-res.model';
|
|
100
|
+
export * from './lib/models/file-upload-response.model';
|
|
94
101
|
export * from './lib/models/accordion-info.model';
|
|
95
102
|
export * from './lib/models/inactive-tenant.model';
|
|
96
103
|
export * from './lib/models/table-column-menu-info.model';
|
|
104
|
+
export * from './lib/models/view-files-format.model';
|
|
97
105
|
export * from './lib/services/datepicker.service';
|
|
98
106
|
export * from './lib/services/form-utility.service';
|
|
99
107
|
export * from './lib/services/file-upload.service';
|
|
100
108
|
export * from './lib/presentation.module';
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxnRkFBZ0YsQ0FBQztBQUUvRixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0VBQWtFLENBQUM7QUFFakYsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDJDQUEyQyxDQUFDO0FBRTFELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG9DQUFvQyxDQUFDO0FBRW5ELGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgcHJlc2VudGF0aW9uXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXItaGVhZGVyL2RhdGUtcGlja2VyLWhlYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9keW5hbWljLWZvcm0uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZm9ybS1lcnJvci9mb3JtLWVycm9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZm9ybS1zdXBwb3J0LXRleHQvZm9ybS1zdXBwb3J0LXRleHQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC9pbnB1dC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9saXN0L2xpc3QuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vZGFsLWNvbmZpcm1hdGlvbi9tb2RhbC1jb25maXJtYXRpb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9uYXZpZ2F0aW9uLW1lbnUvbmF2aWdhdGlvbi1tZW51LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZXh0LWFyZWEvdGV4dC1hcmVhLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdG9nZ2xlLWJ1dHRvbi90b2dnbGUtYnV0dG9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvd2VsY29tZS93ZWxjb21lLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hpcHMvY2hpcHMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RhdGEtdGFibGUvZGF0YS10YWJsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RpbGUvdGlsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RpbWUtcGlja2VyL3RpbWUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGFicy90YWJzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2xpZGUtdG9nZ2xlL3NsaWRlLXRvZ2dsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NhcmQvY2FyZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbmFjdGl2ZS10ZW5hbnQvaW5hY3RpdmUtdGVuYW50LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW1hZ2UtcHJldmlldy9pbWFnZS1wcmV2aWV3LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcmljaC10ZXh0LWVkaXRvci9yaWNoLXRleHQtZWRpdG9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbXVsdGktc2VsZWN0LWF1dG9jb21wbGV0ZS9tdWx0aS1zZWxlY3QtYXV0b2NvbXBsZXRlLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2R5bmFtaWMtZm9ybS1maWVsZC9keW5hbWljLWZvcm0tZmllbGQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9zZXQtYmFja2dyb3VuZC9zZXQtYmFja2dyb3VuZC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3RleHQtdHJ1bmNhdGVkL3RleHQtdHJ1bmNhdGVkLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9vYnNlcnZlLWRvbS1jaGFuZ2Uvb2JzZXJ2ZS1kb20tY2hhbmdlLmRpcmVjdGl2ZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYWxpZ24tdHlwZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9hcHAtY29uZmlnLWluZm8ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYXV0b2NvbXBsZXRlLW9wdGlvbi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9jYWxlbmRhci5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9jaGVja2JveC1vcHRpb24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY29uZmlybWF0aW9uLW1vZGFsLWRhdGEubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0ZS1waWNrZXIubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZXZlbnQtZW1pdC10eXBlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpZWxkLWNvbmZpZy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb290ZXItY29uZmlnLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tY29udHJvbC10eXBlcy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb3JtLWZpZWxkLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tZ3JpZC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb3JtLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2hlYWRlci1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaWNvbi1idXR0b24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvbGVnZW5kLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2xpbmstdHlwZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9saXN0LWl0ZW0ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvbWVudS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9uYXZpZ2F0aW9uLW1lbnUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvcmFkaW8tb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NlYXJjaC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZWxlY3Qtb3BlbmVkLXN0YXRlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NlbGVjdC1vcHRpb24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2VsZWN0ZWQtZGF0ZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZWxlY3RlZC10aW1lLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90b2dnbGUtYnV0dG9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NoaXAtb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3BhZ2luYXRvci1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvdGFibGUtYWN0aW9ucy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90YWJsZS1zY2hlbWEubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYnJlYWRjcnVtYi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90aWxlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbHRlcnMtb3B0aW9ucy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9wcm9maWxlLW1lbnUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2xpZGUtdG9nZ2xlLW9wdGlvbnMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYnV0dG9uLXR5cGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2FyZC1idXR0b24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2FyZC1pbmZvLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NvbG9yLWZvcm1hdC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9hbGxvd2VkLWZpbGUtdHlwZXMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS11cGxvYWQtcHJlc2lnbmVkLXVybC1yZXMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYWNjb3JkaW9uLWluZm8ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaW5hY3RpdmUtdGVuYW50Lm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYmxlLWNvbHVtbi1tZW51LWluZm8ubW9kZWwnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZGF0ZXBpY2tlci5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZm9ybS11dGlsaXR5LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9maWxlLXVwbG9hZC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByZXNlbnRhdGlvbi5tb2R1bGUnO1xyXG4iXX0=
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxnRkFBZ0YsQ0FBQztBQUUvRixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0VBQWtFLENBQUM7QUFFakYsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxzQ0FBc0MsQ0FBQztBQUVyRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHByZXNlbnRhdGlvblxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RhdGUtcGlja2VyLWhlYWRlci9kYXRlLXBpY2tlci1oZWFkZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vZHluYW1pYy1mb3JtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Zvcm0tZXJyb3IvZm9ybS1lcnJvci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Zvcm0tc3VwcG9ydC10ZXh0L2Zvcm0tc3VwcG9ydC10ZXh0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ljb24tYnV0dG9uL2ljb24tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQvaW5wdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC1jb25maXJtYXRpb24vbW9kYWwtY29uZmlybWF0aW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbmF2aWdhdGlvbi1tZW51L25hdmlnYXRpb24tbWVudS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yYWRpby9yYWRpby5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGV4dC1hcmVhL3RleHQtYXJlYS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvZ2dsZS1idXR0b24vdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3dlbGNvbWUvd2VsY29tZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmlsdGVyL2ZpbHRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9kYXRhLXRhYmxlL2RhdGEtdGFibGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90aWxlL3RpbGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90aW1lLXBpY2tlci90aW1lLXBpY2tlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RhYnMvdGFicy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NsaWRlLXRvZ2dsZS9zbGlkZS10b2dnbGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jYXJkL2NhcmQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5hY3RpdmUtdGVuYW50L2luYWN0aXZlLXRlbmFudC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ltYWdlLXByZXZpZXcvaW1hZ2UtcHJldmlldy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1lZGl0b3IvcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL211bHRpLXNlbGVjdC1hdXRvY29tcGxldGUvbXVsdGktc2VsZWN0LWF1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9keW5hbWljLWZvcm0tZmllbGQvZHluYW1pYy1mb3JtLWZpZWxkLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc2V0LWJhY2tncm91bmQvc2V0LWJhY2tncm91bmQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy90ZXh0LXRydW5jYXRlZC90ZXh0LXRydW5jYXRlZC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvb2JzZXJ2ZS1kb20tY2hhbmdlL29ic2VydmUtZG9tLWNoYW5nZS5kaXJlY3RpdmUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2FsaWduLXR5cGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYXBwLWNvbmZpZy1pbmZvLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2F1dG9jb21wbGV0ZS1vcHRpb24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2FsZW5kYXIubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2hlY2tib3gtb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NvbmZpcm1hdGlvbi1tb2RhbC1kYXRhLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGUtcGlja2VyLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RlbGV0ZS1maWxlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2R5bmFtaWMtcHJvcGVydGllcy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9ldmVudC1lbWl0LXR5cGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmllbGQtY29uZmlnLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtYXR0YWNobWVudC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb290ZXItY29uZmlnLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tY29udHJvbC10eXBlcy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb3JtLWZpZWxkLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tZ3JpZC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb3JtLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2hlYWRlci1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaWNvbi1idXR0b24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvbGVnZW5kLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2xpbmstdHlwZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9saXN0LWl0ZW0ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvbWVudS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9uYXZpZ2F0aW9uLW1lbnUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvcmFkaW8tb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NlYXJjaC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZWxlY3Qtb3BlbmVkLXN0YXRlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NlbGVjdC1vcHRpb24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2VsZWN0ZWQtZGF0ZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZWxlY3RlZC10aW1lLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90b2dnbGUtYnV0dG9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NoaXAtb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3BhZ2luYXRvci1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvdGFibGUtYWN0aW9ucy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90YWJsZS1zY2hlbWEubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYnJlYWRjcnVtYi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90aWxlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtdXBsb2FkLXJlc3BvbnNlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtdXBsb2FkLXN0YXR1cy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9maWx0ZXJzLW9wdGlvbnMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvcHJvZmlsZS1tZW51Lm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NsaWRlLXRvZ2dsZS1vcHRpb25zLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2J1dHRvbi10eXBlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NhcmQtYnV0dG9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NhcmQtaW5mby5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9jb2xvci1mb3JtYXQubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYWxsb3dlZC1maWxlLXR5cGVzLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtdXBsb2FkLXBheWxvYWQtbW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS11cGxvYWQtcHJlc2lnbmVkLXVybC1yZXMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS11cGxvYWQtcmVzcG9uc2UubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYWNjb3JkaW9uLWluZm8ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaW5hY3RpdmUtdGVuYW50Lm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYmxlLWNvbHVtbi1tZW51LWluZm8ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvdmlldy1maWxlcy1mb3JtYXQubW9kZWwnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZGF0ZXBpY2tlci5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZm9ybS11dGlsaXR5LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9maWxlLXVwbG9hZC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByZXNlbnRhdGlvbi5tb2R1bGUnO1xyXG4iXX0=
|