kwikid-agent-dashboard 0.0.32 → 0.0.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/kwikid-agent-dashboard.umd.js +98 -74
- package/bundles/kwikid-agent-dashboard.umd.js.map +1 -1
- package/esm2015/lib/components/customer-details/customer-details.component.js +2 -2
- package/esm2015/lib/components/customer-list/customer-list.component.js +37 -17
- package/esm2015/lib/components/customer-tile/customer-tile.component.js +15 -25
- package/esm2015/lib/kwikid-agent-dashboard.component.js +2 -2
- package/esm2015/lib/services/agent.service.js +1 -1
- package/esm2015/lib/services/google-maps.service.js +4 -4
- package/esm2015/lib/services/open-street-maps.service.js +4 -4
- package/fesm2015/kwikid-agent-dashboard.js +58 -48
- package/fesm2015/kwikid-agent-dashboard.js.map +1 -1
- package/lib/components/customer-list/customer-list.component.d.ts +4 -1
- package/lib/components/customer-tile/customer-tile.component.d.ts +0 -2
- package/lib/services/agent.service.d.ts +1 -1
- package/lib/services/google-maps.service.d.ts +1 -1
- package/lib/services/open-street-maps.service.d.ts +1 -1
- package/package.json +1 -1
|
@@ -56,7 +56,7 @@ export class CustomerDetailsComponent {
|
|
|
56
56
|
}
|
|
57
57
|
close() {
|
|
58
58
|
var _a, _b;
|
|
59
|
-
this.agentService.
|
|
59
|
+
this.agentService.currentTaskDetails = undefined;
|
|
60
60
|
if (((_b = (_a = this.agentService.config) === null || _a === void 0 ? void 0 : _a.dashboard) === null || _b === void 0 ? void 0 : _b.mapType) == 'google-maps') {
|
|
61
61
|
this.googleMapsService.plotDirectionsForSelectedTask(null);
|
|
62
62
|
}
|
|
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
87
87
|
}], removeTask: [{
|
|
88
88
|
type: Output
|
|
89
89
|
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItZGV0YWlscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b21lci1kZXRhaWxzL2N1c3RvbWVyLWRldGFpbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWFnZW50LWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tZXItZGV0YWlscy9jdXN0b21lci1kZXRhaWxzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBR04sdUJBQXVCLEVBQ3hCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7OztBQVcvRSxNQUFNLE9BQU8sd0JBQXdCO0lBZW5DLFlBQ1MsWUFBMEIsRUFDMUIsaUJBQW9DLEVBQ3BDLHFCQUE0QyxFQUMzQyxHQUFzQjtRQUh2QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDM0MsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFqQmhDLGFBQVEsR0FBUSxFQUFFLENBQUM7UUFLbkIsb0JBQWUsR0FBa0IsRUFBRSxDQUFDO1FBR3BDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRzlCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBTzdCLENBQUM7SUFFSixXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQs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QUFFLENBQUMsbUNBQW1DLENBQUM7b0JBQ2hELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO2lCQUNqRDt1TUFHQyxRQUFRO3NCQURQLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQU1OLFFBQVE7c0JBRFAsTUFBTTtnQkFJUCxVQUFVO3NCQURULE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNoZWNrT2JqZWN0UGF0aEV4aXN0cywgZ2V0T2JqZWN0VmFsdWVGcm9tUGF0aCB9IGZyb20gJ2t3aWtpZC10b29sa2l0JztcbmltcG9ydCB7IEFnZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FnZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgR29vZ2xlTWFwc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9nb29nbGUtbWFwcy5zZXJ2aWNlJztcbmltcG9ydCB7IE9wZW5TdHJlZXRNYXBzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL29wZW4tc3RyZWV0LW1hcHMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N1c3RvbWVyLWRldGFpbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tZXItZGV0YWlscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2N1c3RvbWVyLWRldGFpbHMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0XG59KVxuZXhwb3J0IGNsYXNzIEN1c3RvbWVyRGV0YWlsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KClcbiAgY3VzdG9tZXI6IGFueSA9IHt9O1xuXG4gIEBJbnB1dCgpXG4gIGNvbmZpZzogYW55O1xuXG4gIHZpZXdUYXNrRGV0YWlsczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gIEBPdXRwdXQoKVxuICBuZXh0U3RlcCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcmVtb3ZlVGFzayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgYWdlbnRTZXJ2aWNlOiBBZ2VudFNlcnZpY2UsXG4gICAgcHVibGljIGdvb2dsZU1hcHNTZXJ2aWNlOiBHb29nbGVNYXBzU2VydmljZSxcbiAgICBwdWJsaWMgb3BlblN0cmVldE1hcHNTZXJ2aWNlOiBPcGVuU3RyZWV0TWFwc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy52aWV3VGFza0RldGFpbHMgPVxuICAgICAgdGhpcy5jb25maWc/LmRhc2hib2FyZD8udmlld1Rhc2tEZXRhaWxzID8/IHRoaXMudmlld1Rhc2tEZXRhaWxzO1xuICB9XG5cbiAgZ2V0VGFza0NyZWF0aW9uVGltZSh0YXNrKSB7XG4gICAgaWYgKFxuICAgICAgY2hlY2tPYmplY3RQYXRoRXhpc3RzKFxuICAgICAgICB0aGlzLmFnZW50U2VydmljZS5jb25maWcsXG4gICAgICAgICdkYXNoYm9hcmQudGFza0NyZWF0aW9uVGltZVBhdGgnXG4gICAgICApXG4gICAgKSB7XG4gICAgICBjb25zdCB0aW1lID0gZ2V0T2JqZWN0VmFsdWVGcm9tUGF0aChcbiAgICAgICAgdGFzayxcbiAgICAgICAgdGhpcy5hZ2VudFNlcnZpY2UuY29uZmlnLmRhc2hib2FyZC50YXNrQ3JlYXRpb25UaW1lUGF0aFxuICAgICAgKTtcbiAgICAgIHJldHVybiB0aGlzLmNvbnZlcnRFcG9jaFRvRGF0ZSh0aW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuY29udmVydEVwb2NoVG9EYXRlKFxuICAgICAgICB0YXNrPy50YXNrX2NyZWF0aW9uX3RpbWUgPz8gdGFzaz8uc3RhcnRfdGltZVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBjb252ZXJ0RXBvY2hUb0RhdGUoZXBvY2hUaW1lKTogc3RyaW5nIHtcbiAgICBpZiAodHlwZW9mIGVwb2NoVGltZSA9PSAnc3RyaW5nJykgZXBvY2hUaW1lID0gTnVtYmVyKGVwb2NoVGltZSk7XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGVwb2NoVGltZSAqIDEwMDApOyAvLyBDb252ZXJ0IHRvIG1pbGxpc2Vjb25kc1xuICAgIGNvbnN0IGRheSA9IGRhdGUuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTtcbiAgICBjb25zdCBtb250aCA9IChkYXRlLmdldE1vbnRoKCkgKyAxKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7IC8vIE1vbnRocyBhcmUgemVyby1iYXNlZFxuICAgIGNvbnN0IHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtcblxuICAgIHJldHVybiBgJHtkYXl9LSR7bW9udGh9LSR7eWVhcn1gO1xuICB9XG5cbiAgZ2V0VGFza0RldGFpbHModGFza0RhdGEpIHtcbiAgICByZXR1cm4gZ2V0T2JqZWN0VmFsdWVGcm9tUGF0aCh0aGlzLmN1c3RvbWVyLCB0YXNrRGF0YSk7XG4gIH1cblxuICBnb1RvTWFwcyhsb2NhdGlvbikge1xuICAgIHdpbmRvdy5vcGVuKGAke2xvY2F0aW9ufWAsICdfYmxhbmsnKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tOZXh0KGUpIHtcbiAgICB0aGlzLm5leHRTdGVwLmVtaXQoZSk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmFnZW50U2VydmljZS5pc1Nob3dUYXNrRGV0YWlscyA9IHVuZGVmaW5lZDtcblxuICAgIGlmICh0aGlzLmFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8ubWFwVHlwZSA9PSAnZ29vZ2xlLW1hcHMnKSB7XG4gICAgICB0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLnBsb3REaXJlY3Rpb25zRm9yU2VsZWN0ZWRUYXNrKG51bGwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9wZW5TdHJlZXRNYXBzU2VydmljZS5wbG90RGlyZWN0aW9uc0ZvclNlbGVjdGVkVGFzayhudWxsKTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVPbkNsaWNrUmVtb3ZlVGFzayh0YXNrKSB7XG4gICAgdGhpcy5yZW1vdmVUYXNrLmVtaXQodGFzayk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjdXN0b21lci1kZXRhaWxzLXdyYXBwZXJcIj5cbiAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLWRldGFpbHMtaGVhZGluZ1wiPlVzZXIgRGV0YWlsczwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItZGV0YWlscy1ib2R5XCI+XG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLWRldGFpbHMtdXNlci1pZFwiPlxuICAgICAgPGt3aWt1aS1sYWJlbC12YWx1ZS1wYWlyXG4gICAgICAgIFtkYXRhXT1cImN1c3RvbWVyXCJcbiAgICAgICAgW2ZpZWxkXT1cImNvbmZpZz8uZGFzaGJvYXJkPy50YXNrSWRlbnRpZmllciA/PyB7dmFsdWU6JyQudXNlcl9pZCcsIHR5cGU6ICdzdHJpbmcnfSBcIlxuICAgICAgPjwva3dpa3VpLWxhYmVsLXZhbHVlLXBhaXI+XG5cbiAgICAgIDxzdGF0dXMtcGlsbFxuICAgICAgICAqbmdJZj1cImNvbmZpZz8uZGFzaGJvYXJkPy5pc1Nob3dUYXNrU3RhdHVzXCJcbiAgICAgICAgW3N0YXR1c109XCJjdXN0b21lci5zZXNzaW9uX3N0YXR1c1wiXG4gICAgICA+PC9zdGF0dXMtcGlsbD5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJjdXN0b21lci1kZXRhaWxzLXRhYmxlXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiY3VzdG9tZXItZGV0YWlscy10YWJsZS1kYXRhXCJcbiAgICAgICAgKm5nRm9yPVwibGV0IHRhc2tEYXRhIG9mIHZpZXdUYXNrRGV0YWlsc1wiXG4gICAgICA+XG4gICAgICAgIDxrd2lrdWktbGFiZWwtdmFsdWUtcGFpclxuICAgICAgICAgIFtmaWVsZF09XCJ0YXNrRGF0YVwiXG4gICAgICAgICAgW2RhdGFdPVwiY3VzdG9tZXJcIlxuICAgICAgICA+PC9rd2lrdWktbGFiZWwtdmFsdWUtcGFpcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLWRldGFpbHMtZGF0ZVwiPlxuICAgICAgQ3JlYXRlZCBhdDoge3sgZ2V0VGFza0NyZWF0aW9uVGltZShjdXN0b21lcikgfX1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJjdXN0b21lci1kZXRhaWxzLWFjdGlvbnNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b21lci1kZXRhaWxzLXRhc2stYnV0dG9uc1wiPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiY29uZmlnLmRhc2hib2FyZD8uaXNBbGxvd1JlbW92ZVRhc2tcIlxuICAgICAgICAgIFtpY29uXT1cIid0dWlJY29uVHJhc2gyJ1wiXG4gICAgICAgICAgW3NoYXBlXT1cIidyb3VuZGVkJ1wiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAob25DbGljayk9XCJoYW5kbGVPbkNsaWNrUmVtb3ZlVGFzayhjdXN0b21lcilcIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiY29uZmlnLmRhc2hib2FyZD8uaXNTaG93Q29weUxpbmtcIlxuICAgICAgICAgIGljb249XCJ0dWlJY29uQ29weVwiXG4gICAgICAgICAgW3NoYXBlXT1cIidyb3VuZGVkJ1wiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAob25DbGljayk9XCJcbiAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2tOZXh0KHtcbiAgICAgICAgICAgICAgY3VzdG9tZXI6IGN1c3RvbWVyLFxuICAgICAgICAgICAgICBzdGVwVHlwZTogJ1NIQVJFX0pPVVJORVlfTElOSydcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXCJcbiAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLWRldGFpbHMtam91cm5leS1idXR0b25zXCI+XG4gICAgICAgIDxrd2lrdWktYnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgIGNvbmZpZy5kYXNoYm9hcmQ/LmlzU2hvd01hcHMgJiZcbiAgICAgICAgICAgIGN1c3RvbWVyPy5pc1ZhbGlkTG9jYXRpb25cbiAgICAgICAgICBcIlxuICAgICAgICAgIGxhYmVsPVwiU2hvdyBEaXJlY3Rpb25zXCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwiZmxhdFwiXG4gICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgIHN0eWxlcz1cImZvbnQtc2l6ZTowLjdyZW07XCJcbiAgICAgICAgICAob25DbGljayk9XCJcbiAgICAgICAgICAgIGdvVG9NYXBzKGN1c3RvbWVyPy5nb29nbGVNYXBzVXJsKVxuICAgICAgICAgIFwiXG4gICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgIDxrd2lrdWktYnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgIGNvbmZpZy5kYXNoYm9hcmQ/LmlzQWxsb3dTdGFydEpvdXJuZXkgJiZcbiAgICAgICAgICAgIGFnZW50U2VydmljZS5jYW5TdGFydEpvdXJuZXkoY3VzdG9tZXIuc2Vzc2lvbl9zdGF0dXMpXG4gICAgICAgICAgXCJcbiAgICAgICAgICBsYWJlbD1cIlN0YXJ0IEpvdXJuZXlcIlxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJwcmltYXJ5XCJcbiAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgc3R5bGVzPVwiZm9udC1zaXplOjAuN3JlbTtcIlxuICAgICAgICAgIChvbkNsaWNrKT1cIlxuICAgICAgICAgICAgaGFuZGxlT25DbGlja05leHQoeyBjdXN0b21lcjogY3VzdG9tZXIsIHN0ZXBUeXBlOiAnU1RBUlRfSk9VUk5FWScgfSlcbiAgICAgICAgICBcIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItZGV0YWlscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b21lci1kZXRhaWxzL2N1c3RvbWVyLWRldGFpbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWFnZW50LWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tZXItZGV0YWlscy9jdXN0b21lci1kZXRhaWxzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBR04sdUJBQXVCLEVBQ3hCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7OztBQVcvRSxNQUFNLE9BQU8sd0JBQXdCO0lBZW5DLFlBQ1MsWUFBMEIsRUFDMUIsaUJBQW9DLEVBQ3BDLHFCQUE0QyxFQUMzQyxHQUFzQjtRQUh2QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDM0MsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFqQmhDLGFBQVEsR0FBUSxFQUFFLENBQUM7UUFLbkIsb0JBQWUsR0FBa0IsRUFBRSxDQUFDO1FBR3BDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRzlCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBTzdCLENBQUM7SUFFSixXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQs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QUFFLENBQUMsbUNBQW1DLENBQUM7b0JBQ2hELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO2lCQUNqRDt1TUFHQyxRQUFRO3NCQURQLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQU1OLFFBQVE7c0JBRFAsTUFBTTtnQkFJUCxVQUFVO3NCQURULE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNoZWNrT2JqZWN0UGF0aEV4aXN0cywgZ2V0T2JqZWN0VmFsdWVGcm9tUGF0aCB9IGZyb20gJ2t3aWtpZC10b29sa2l0JztcbmltcG9ydCB7IEFnZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FnZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgR29vZ2xlTWFwc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9nb29nbGUtbWFwcy5zZXJ2aWNlJztcbmltcG9ydCB7IE9wZW5TdHJlZXRNYXBzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL29wZW4tc3RyZWV0LW1hcHMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N1c3RvbWVyLWRldGFpbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tZXItZGV0YWlscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2N1c3RvbWVyLWRldGFpbHMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0XG59KVxuZXhwb3J0IGNsYXNzIEN1c3RvbWVyRGV0YWlsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KClcbiAgY3VzdG9tZXI6IGFueSA9IHt9O1xuXG4gIEBJbnB1dCgpXG4gIGNvbmZpZzogYW55O1xuXG4gIHZpZXdUYXNrRGV0YWlsczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gIEBPdXRwdXQoKVxuICBuZXh0U3RlcCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgcmVtb3ZlVGFzayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgYWdlbnRTZXJ2aWNlOiBBZ2VudFNlcnZpY2UsXG4gICAgcHVibGljIGdvb2dsZU1hcHNTZXJ2aWNlOiBHb29nbGVNYXBzU2VydmljZSxcbiAgICBwdWJsaWMgb3BlblN0cmVldE1hcHNTZXJ2aWNlOiBPcGVuU3RyZWV0TWFwc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy52aWV3VGFza0RldGFpbHMgPVxuICAgICAgdGhpcy5jb25maWc/LmRhc2hib2FyZD8udmlld1Rhc2tEZXRhaWxzID8/IHRoaXMudmlld1Rhc2tEZXRhaWxzO1xuICB9XG5cbiAgZ2V0VGFza0NyZWF0aW9uVGltZSh0YXNrKSB7XG4gICAgaWYgKFxuICAgICAgY2hlY2tPYmplY3RQYXRoRXhpc3RzKFxuICAgICAgICB0aGlzLmFnZW50U2VydmljZS5jb25maWcsXG4gICAgICAgICdkYXNoYm9hcmQudGFza0NyZWF0aW9uVGltZVBhdGgnXG4gICAgICApXG4gICAgKSB7XG4gICAgICBjb25zdCB0aW1lID0gZ2V0T2JqZWN0VmFsdWVGcm9tUGF0aChcbiAgICAgICAgdGFzayxcbiAgICAgICAgdGhpcy5hZ2VudFNlcnZpY2UuY29uZmlnLmRhc2hib2FyZC50YXNrQ3JlYXRpb25UaW1lUGF0aFxuICAgICAgKTtcbiAgICAgIHJldHVybiB0aGlzLmNvbnZlcnRFcG9jaFRvRGF0ZSh0aW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuY29udmVydEVwb2NoVG9EYXRlKFxuICAgICAgICB0YXNrPy50YXNrX2NyZWF0aW9uX3RpbWUgPz8gdGFzaz8uc3RhcnRfdGltZVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBjb252ZXJ0RXBvY2hUb0RhdGUoZXBvY2hUaW1lKTogc3RyaW5nIHtcbiAgICBpZiAodHlwZW9mIGVwb2NoVGltZSA9PSAnc3RyaW5nJykgZXBvY2hUaW1lID0gTnVtYmVyKGVwb2NoVGltZSk7XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGVwb2NoVGltZSAqIDEwMDApOyAvLyBDb252ZXJ0IHRvIG1pbGxpc2Vjb25kc1xuICAgIGNvbnN0IGRheSA9IGRhdGUuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTtcbiAgICBjb25zdCBtb250aCA9IChkYXRlLmdldE1vbnRoKCkgKyAxKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7IC8vIE1vbnRocyBhcmUgemVyby1iYXNlZFxuICAgIGNvbnN0IHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtcblxuICAgIHJldHVybiBgJHtkYXl9LSR7bW9udGh9LSR7eWVhcn1gO1xuICB9XG5cbiAgZ2V0VGFza0RldGFpbHModGFza0RhdGEpIHtcbiAgICByZXR1cm4gZ2V0T2JqZWN0VmFsdWVGcm9tUGF0aCh0aGlzLmN1c3RvbWVyLCB0YXNrRGF0YSk7XG4gIH1cblxuICBnb1RvTWFwcyhsb2NhdGlvbikge1xuICAgIHdpbmRvdy5vcGVuKGAke2xvY2F0aW9ufWAsICdfYmxhbmsnKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tOZXh0KGUpIHtcbiAgICB0aGlzLm5leHRTdGVwLmVtaXQoZSk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmFnZW50U2VydmljZS5jdXJyZW50VGFza0RldGFpbHMgPSB1bmRlZmluZWQ7XG5cbiAgICBpZiAodGhpcy5hZ2VudFNlcnZpY2UuY29uZmlnPy5kYXNoYm9hcmQ/Lm1hcFR5cGUgPT0gJ2dvb2dsZS1tYXBzJykge1xuICAgICAgdGhpcy5nb29nbGVNYXBzU2VydmljZS5wbG90RGlyZWN0aW9uc0ZvclNlbGVjdGVkVGFzayhudWxsKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuU3RyZWV0TWFwc1NlcnZpY2UucGxvdERpcmVjdGlvbnNGb3JTZWxlY3RlZFRhc2sobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlT25DbGlja1JlbW92ZVRhc2sodGFzaykge1xuICAgIHRoaXMucmVtb3ZlVGFzay5lbWl0KHRhc2spO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY3VzdG9tZXItZGV0YWlscy13cmFwcGVyXCI+XG4gIDxkaXYgY2xhc3M9XCJjdXN0b21lci1kZXRhaWxzLWhlYWRpbmdcIj5Vc2VyIERldGFpbHM8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLWRldGFpbHMtYm9keVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjdXN0b21lci1kZXRhaWxzLXVzZXItaWRcIj5cbiAgICAgIDxrd2lrdWktbGFiZWwtdmFsdWUtcGFpclxuICAgICAgICBbZGF0YV09XCJjdXN0b21lclwiXG4gICAgICAgIFtmaWVsZF09XCJjb25maWc/LmRhc2hib2FyZD8udGFza0lkZW50aWZpZXIgPz8ge3ZhbHVlOickLnVzZXJfaWQnLCB0eXBlOiAnc3RyaW5nJ30gXCJcbiAgICAgID48L2t3aWt1aS1sYWJlbC12YWx1ZS1wYWlyPlxuXG4gICAgICA8c3RhdHVzLXBpbGxcbiAgICAgICAgKm5nSWY9XCJjb25maWc/LmRhc2hib2FyZD8uaXNTaG93VGFza1N0YXR1c1wiXG4gICAgICAgIFtzdGF0dXNdPVwiY3VzdG9tZXIuc2Vzc2lvbl9zdGF0dXNcIlxuICAgICAgPjwvc3RhdHVzLXBpbGw+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItZGV0YWlscy10YWJsZVwiPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImN1c3RvbWVyLWRldGFpbHMtdGFibGUtZGF0YVwiXG4gICAgICAgICpuZ0Zvcj1cImxldCB0YXNrRGF0YSBvZiB2aWV3VGFza0RldGFpbHNcIlxuICAgICAgPlxuICAgICAgICA8a3dpa3VpLWxhYmVsLXZhbHVlLXBhaXJcbiAgICAgICAgICBbZmllbGRdPVwidGFza0RhdGFcIlxuICAgICAgICAgIFtkYXRhXT1cImN1c3RvbWVyXCJcbiAgICAgICAgPjwva3dpa3VpLWxhYmVsLXZhbHVlLXBhaXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJjdXN0b21lci1kZXRhaWxzLWRhdGVcIj5cbiAgICAgIENyZWF0ZWQgYXQ6IHt7IGdldFRhc2tDcmVhdGlvblRpbWUoY3VzdG9tZXIpIH19XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItZGV0YWlscy1hY3Rpb25zXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItZGV0YWlscy10YXNrLWJ1dHRvbnNcIj5cbiAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAqbmdJZj1cImNvbmZpZy5kYXNoYm9hcmQ/LmlzQWxsb3dSZW1vdmVUYXNrXCJcbiAgICAgICAgICBbaWNvbl09XCIndHVpSWNvblRyYXNoMidcIlxuICAgICAgICAgIFtzaGFwZV09XCIncm91bmRlZCdcIlxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJpY29uXCJcbiAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlT25DbGlja1JlbW92ZVRhc2soY3VzdG9tZXIpXCJcbiAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAqbmdJZj1cImNvbmZpZy5kYXNoYm9hcmQ/LmlzU2hvd0NvcHlMaW5rXCJcbiAgICAgICAgICBpY29uPVwidHVpSWNvbkNvcHlcIlxuICAgICAgICAgIFtzaGFwZV09XCIncm91bmRlZCdcIlxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJpY29uXCJcbiAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgKG9uQ2xpY2spPVwiXG4gICAgICAgICAgICBoYW5kbGVPbkNsaWNrTmV4dCh7XG4gICAgICAgICAgICAgIGN1c3RvbWVyOiBjdXN0b21lcixcbiAgICAgICAgICAgICAgc3RlcFR5cGU6ICdTSEFSRV9KT1VSTkVZX0xJTksnXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIFwiXG4gICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b21lci1kZXRhaWxzLWpvdXJuZXktYnV0dG9uc1wiPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBjb25maWcuZGFzaGJvYXJkPy5pc1Nob3dNYXBzICYmXG4gICAgICAgICAgICBjdXN0b21lcj8uaXNWYWxpZExvY2F0aW9uXG4gICAgICAgICAgXCJcbiAgICAgICAgICBsYWJlbD1cIlNob3cgRGlyZWN0aW9uc1wiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cImZsYXRcIlxuICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICBzdHlsZXM9XCJmb250LXNpemU6MC43cmVtO1wiXG4gICAgICAgICAgKG9uQ2xpY2spPVwiXG4gICAgICAgICAgICBnb1RvTWFwcyhjdXN0b21lcj8uZ29vZ2xlTWFwc1VybClcbiAgICAgICAgICBcIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBjb25maWcuZGFzaGJvYXJkPy5pc0FsbG93U3RhcnRKb3VybmV5ICYmXG4gICAgICAgICAgICBhZ2VudFNlcnZpY2UuY2FuU3RhcnRKb3VybmV5KGN1c3RvbWVyLnNlc3Npb25fc3RhdHVzKVxuICAgICAgICAgIFwiXG4gICAgICAgICAgbGFiZWw9XCJTdGFydCBKb3VybmV5XCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwicHJpbWFyeVwiXG4gICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgIHN0eWxlcz1cImZvbnQtc2l6ZTowLjdyZW07XCJcbiAgICAgICAgICAob25DbGljayk9XCJcbiAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2tOZXh0KHsgY3VzdG9tZXI6IGN1c3RvbWVyLCBzdGVwVHlwZTogJ1NUQVJUX0pPVVJORVknIH0pXG4gICAgICAgICAgXCJcbiAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -23,45 +23,65 @@ export class CustomerListComponent {
|
|
|
23
23
|
this.filteredData = [];
|
|
24
24
|
this.formGroup = new FormGroup({});
|
|
25
25
|
this.max = new TuiDay(new Date().getFullYear(), new Date().getMonth(), new Date().getDate());
|
|
26
|
-
|
|
26
|
+
}
|
|
27
|
+
ngOnInit() {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
this.setDateRange();
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
setDateRange() {
|
|
33
|
+
var _a, _b, _c, _d, _e;
|
|
34
|
+
const searchDateStart = (_b = (_a = this.config.dashboard) === null || _a === void 0 ? void 0 : _a.searchDateStart) !== null && _b !== void 0 ? _b : {
|
|
35
|
+
day: 0,
|
|
36
|
+
month: 0,
|
|
37
|
+
year: 0
|
|
38
|
+
};
|
|
39
|
+
const currentDate = new Date();
|
|
40
|
+
const startDate = new Date((_c = currentDate.getFullYear() - (searchDateStart === null || searchDateStart === void 0 ? void 0 : searchDateStart.year)) !== null && _c !== void 0 ? _c : 0, (_d = currentDate.getMonth() - (searchDateStart === null || searchDateStart === void 0 ? void 0 : searchDateStart.month)) !== null && _d !== void 0 ? _d : 0, (_e = currentDate.getDate() - (searchDateStart === null || searchDateStart === void 0 ? void 0 : searchDateStart.day)) !== null && _e !== void 0 ? _e : 0);
|
|
41
|
+
this.fromDate = this.getDate(startDate);
|
|
27
42
|
this.toDate = this.getDate(null);
|
|
28
43
|
this.dateRangeFormControl = new FormControl({
|
|
29
|
-
value: new TuiDayRange(new TuiDay(
|
|
44
|
+
value: new TuiDayRange(new TuiDay(startDate.getFullYear(), startDate.getMonth(), startDate.getDate()), this.max),
|
|
30
45
|
disabled: false
|
|
31
46
|
});
|
|
32
47
|
this.formGroup.addControl('dateRange', this.dateRangeFormControl);
|
|
33
48
|
this.searchFormControl = new FormControl('');
|
|
34
49
|
this.formGroup.addControl('search', this.searchFormControl);
|
|
35
50
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
this.maxLength = (_b = (_a = this.config.dashboard) === null || _a === void 0 ? void 0 : _a.searchDateRange) !== null && _b !== void 0 ? _b : this.maxLength;
|
|
40
|
-
setTimeout(() => __awaiter(this, void 0, void 0, function* () {
|
|
41
|
-
var _c;
|
|
51
|
+
setUpMaps() {
|
|
52
|
+
var _a;
|
|
53
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
42
54
|
if (this.config.dashboard.isShowMaps) {
|
|
43
|
-
if (((
|
|
55
|
+
if (((_a = this.config.dashboard) === null || _a === void 0 ? void 0 : _a.mapType) == 'open-street') {
|
|
44
56
|
yield this.openStreetMapsService.initializeMap();
|
|
45
57
|
}
|
|
46
58
|
else {
|
|
47
59
|
yield this.googleMapsService.initializeMap();
|
|
48
60
|
}
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
setCustomersList() {
|
|
65
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
66
|
+
if (this.config.dashboard.isShowMaps) {
|
|
49
67
|
this.filteredData = yield this.plotMarkers(this.customers);
|
|
50
68
|
}
|
|
51
69
|
else {
|
|
52
70
|
this.filteredData = this.customers;
|
|
53
71
|
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
ngAfterViewInit() {
|
|
75
|
+
var _a, _b;
|
|
76
|
+
this.maxLength = (_b = (_a = this.config.dashboard) === null || _a === void 0 ? void 0 : _a.searchDateRange) !== null && _b !== void 0 ? _b : this.maxLength;
|
|
77
|
+
setTimeout(() => __awaiter(this, void 0, void 0, function* () {
|
|
78
|
+
yield this.setUpMaps();
|
|
79
|
+
yield this.setCustomersList();
|
|
54
80
|
}), 1000);
|
|
55
81
|
}
|
|
56
82
|
ngOnChanges() {
|
|
57
83
|
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
-
|
|
59
|
-
(this.googleMapsService.map || this.openStreetMapsService.map)) {
|
|
60
|
-
this.filteredData = yield this.plotMarkers(this.customers);
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
this.filteredData = this.customers;
|
|
64
|
-
}
|
|
84
|
+
yield this.setCustomersList();
|
|
65
85
|
});
|
|
66
86
|
}
|
|
67
87
|
handleOnClickNext(e) {
|
|
@@ -142,4 +162,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
142
162
|
}], filterTaskList: [{
|
|
143
163
|
type: Output
|
|
144
164
|
}] } });
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b21lci1saXN0L2N1c3RvbWVyLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWFnZW50LWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tZXItbGlzdC9jdXN0b21lci1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7O0FBV3BELE1BQU0sT0FBTyxxQkFBcUI7SUFrQ2hDLFlBQ1MsaUJBQW9DLEVBQ3BDLHFCQUE0QyxFQUM1QyxZQUEwQjtRQUYxQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsaUJBQVksR0FBWixZQUFZLENBQWM7UUE3Qm5DLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRzlCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2hDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUtwQyxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQixjQUFTLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFPekMsUUFBRyxHQUFXLElBQUksTUFBTSxDQUN0QixJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxFQUN4QixJQUFJLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUNyQixJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUNyQixDQUFDO1FBUUEsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVqQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxXQUFXLENBQUM7WUFDMUMsS0FBSyxFQUFFLElBQUksV0FBVyxDQUNwQixJQUFJLE1BQU0sQ0FDUixJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxFQUN4QixJQUFJLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUNyQixJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUNyQixFQUNELElBQUksTUFBTSxDQUNSLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQ3hCLElBQUksSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQ3JCLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQ3JCLENBQ0Y7WUFDRCxRQUFRLEVBQUUsS0FBSztTQUNoQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFbEUsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsUUFBUSxLQUFJLENBQUM7SUFFYixlQUFlOztRQUNiLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBQSxNQUFBLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUywwQ0FBRSxlQUFlLG1DQUFJLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDMUUsVUFBVSxDQUFDLEdBQVMsRUFBRTs7WUFDcEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUU7Z0JBQ3BDLElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUywwQ0FBRSxPQUFPLEtBQUksYUFBYSxFQUFFO29CQUNuRCxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztpQkFDbEQ7cUJBQU07b0JBQ0wsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7aUJBQzlDO2dCQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUM1RDtpQkFBTTtnQkFDTCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDcEM7UUFDSCxDQUFDLENBQUEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFSyxXQUFXOztZQUNmLElBQ0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsVUFBVTtnQkFDaEMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsRUFDOUQ7Z0JBQ0EsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQzVEO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUNwQztRQUNILENBQUM7S0FBQTtJQUVELGlCQUFpQixDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxDQUFDO1FBQ1AsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUMxQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFaEMsSUFBSSxLQUFLLEdBQW9CLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDakQsSUFBSSxHQUFHLEdBQW9CLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQyxJQUFJLEtBQUssR0FBRyxFQUFFO1lBQUUsS0FBSyxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUM7UUFDcEMsSUFBSSxHQUFHLEdBQUcsRUFBRTtZQUFFLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBRTlCLE1BQU0sS0FBSyxHQUFHLEdBQUcsSUFBSSxJQUFJLEtBQUssSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN4QyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFSyxXQUFXLENBQUMsU0FBUzs7O1lBQ3pCLElBQUksQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLDBDQUFFLDBCQUEwQixDQUFBLEVBQUU7Z0JBQ3RELFNBQVMsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7b0JBQ3hDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUNuRSxDQUFDLENBQUMsQ0FBQzthQUNKO1lBRUQsSUFBSSxDQUFBLE1BQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLDBDQUFFLE9BQU8sS0FBSSxhQUFhLEVBQUU7Z0JBQ25ELFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyx5QkFBeUIsQ0FDcEUsU0FBUyxDQUNWLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMseUJBQXlCLENBQ2hFLFNBQVMsQ0FDVixDQUFDO2FBQ0g7WUFFRCxPQUFPLFNBQVMsQ0FBQzs7S0FDbEI7SUFFRCxVQUFVLENBQUMsS0FBSztRQUNkLElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDdEIsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDNUIsSUFBSSxJQUFJLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQztRQUNyQixLQUFLLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3pDLElBQUksR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDckMsT0FBTyxHQUFHLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQUs7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDO1lBQzFCLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN4QixPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDckIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFLO1FBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBRUQsdUJBQXVCLENBQUMsSUFBSTtRQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsc0JBQXNCLENBQUMsTUFBTTtRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuQyxDQUFDOztzSUE3SlUscUJBQXFCOzBIQUFyQixxQkFBcUIsK05DYmxDLDZvREFrREE7NEZEckNhLHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsU0FBUyxFQUFFLENBQUMsK0JBQStCLENBQUM7aUJBQzdDO3VLQUdDLFNBQVM7c0JBRFIsS0FBSztnQkFJTixNQUFNO3NCQURMLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxNQUFNO2dCQUlQLFVBQVU7c0JBRFQsTUFBTTtnQkFJUCxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVHVpRGF5LCBUdWlEYXlSYW5nZSB9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHsgR29vZ2xlTWFwc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9nb29nbGUtbWFwcy5zZXJ2aWNlJztcbmltcG9ydCB7IEVTdGF0dXMgfSBmcm9tICcuLi9jdXN0b21lci10aWxlL3N0YXR1cy1waWxsL3N0YXR1cy1waWxsLmRlZmluaXRpb25zJztcbmltcG9ydCB7IEFnZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FnZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgT3BlblN0cmVldE1hcHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvb3Blbi1zdHJlZXQtbWFwcy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3VzdG9tZXItbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jdXN0b21lci1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3VzdG9tZXItbGlzdC5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tZXJMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KClcbiAgY3VzdG9tZXJzOiBhbnk7XG5cbiAgQElucHV0KClcbiAgY29uZmlnOiBhbnk7XG5cbiAgQE91dHB1dCgpXG4gIG5leHRTdGVwID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICByZW1vdmVUYXNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBmaWx0ZXJUYXNrTGlzdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBzZWFyY2hUZXh0O1xuXG4gIGxhc3RJbmZvV2luZG93T3BlbmVkOiBhbnk7XG4gIGZpbHRlcmVkRGF0YSA9IFtdO1xuICBmb3JtR3JvdXA6IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xuICBkYXRlUmFuZ2VGb3JtQ29udHJvbDogRm9ybUNvbnRyb2w7XG4gIHRvRGF0ZUZvcm1Db250cm9sOiBGb3JtQ29udHJvbDtcbiAgc2VhcmNoRm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xuXG4gIGZyb21EYXRlOiBzdHJpbmcgfCBEYXRlO1xuICB0b0RhdGU6IHN0cmluZyB8IERhdGU7XG4gIG1heDogVHVpRGF5ID0gbmV3IFR1aURheShcbiAgICBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCksXG4gICAgbmV3IERhdGUoKS5nZXRNb250aCgpLFxuICAgIG5ldyBEYXRlKCkuZ2V0RGF0ZSgpXG4gICk7XG4gIG1heExlbmd0aDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBnb29nbGVNYXBzU2VydmljZTogR29vZ2xlTWFwc1NlcnZpY2UsXG4gICAgcHVibGljIG9wZW5TdHJlZXRNYXBzU2VydmljZTogT3BlblN0cmVldE1hcHNTZXJ2aWNlLFxuICAgIHB1YmxpYyBhZ2VudFNlcnZpY2U6IEFnZW50U2VydmljZVxuICApIHtcbiAgICB0aGlzLmZyb21EYXRlID0gdGhpcy5nZXREYXRlKG51bGwpO1xuICAgIHRoaXMudG9EYXRlID0gdGhpcy5nZXREYXRlKG51bGwpO1xuXG4gICAgdGhpcy5kYXRlUmFuZ2VGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCh7XG4gICAgICB2YWx1ZTogbmV3IFR1aURheVJhbmdlKFxuICAgICAgICBuZXcgVHVpRGF5KFxuICAgICAgICAgIG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSxcbiAgICAgICAgICBuZXcgRGF0ZSgpLmdldE1vbnRoKCksXG4gICAgICAgICAgbmV3IERhdGUoKS5nZXREYXRlKClcbiAgICAgICAgKSxcbiAgICAgICAgbmV3IFR1aURheShcbiAgICAgICAgICBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCksXG4gICAgICAgICAgbmV3IERhdGUoKS5nZXRNb250aCgpLFxuICAgICAgICAgIG5ldyBEYXRlKCkuZ2V0RGF0ZSgpXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICBkaXNhYmxlZDogZmFsc2VcbiAgICB9KTtcbiAgICB0aGlzLmZvcm1Hcm91cC5hZGRDb250cm9sKCdkYXRlUmFuZ2UnLCB0aGlzLmRhdGVSYW5nZUZvcm1Db250cm9sKTtcblxuICAgIHRoaXMuc2VhcmNoRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJycpO1xuICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2woJ3NlYXJjaCcsIHRoaXMuc2VhcmNoRm9ybUNvbnRyb2wpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1heExlbmd0aCA9IHRoaXMuY29uZmlnLmRhc2hib2FyZD8uc2VhcmNoRGF0ZVJhbmdlID8/IHRoaXMubWF4TGVuZ3RoO1xuICAgIHNldFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuY29uZmlnLmRhc2hib2FyZC5pc1Nob3dNYXBzKSB7XG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5kYXNoYm9hcmQ/Lm1hcFR5cGUgPT0gJ29wZW4tc3RyZWV0Jykge1xuICAgICAgICAgIGF3YWl0IHRoaXMub3BlblN0cmVldE1hcHNTZXJ2aWNlLmluaXRpYWxpemVNYXAoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhd2FpdCB0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLmluaXRpYWxpemVNYXAoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmZpbHRlcmVkRGF0YSA9IGF3YWl0IHRoaXMucGxvdE1hcmtlcnModGhpcy5jdXN0b21lcnMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSB0aGlzLmN1c3RvbWVycztcbiAgICAgIH1cbiAgICB9LCAxMDAwKTtcbiAgfVxuXG4gIGFzeW5jIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmIChcbiAgICAgIHRoaXMuY29uZmlnLmRhc2hib2FyZC5pc1Nob3dNYXBzICYmXG4gICAgICAodGhpcy5nb29nbGVNYXBzU2VydmljZS5tYXAgfHwgdGhpcy5vcGVuU3RyZWV0TWFwc1NlcnZpY2UubWFwKVxuICAgICkge1xuICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSBhd2FpdCB0aGlzLnBsb3RNYXJrZXJzKHRoaXMuY3VzdG9tZXJzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSB0aGlzLmN1c3RvbWVycztcbiAgICB9XG4gIH1cblxuICBoYW5kbGVPbkNsaWNrTmV4dChlKSB7XG4gICAgdGhpcy5uZXh0U3RlcC5lbWl0KGUpO1xuICB9XG5cbiAgZ2V0RGF0ZShkKSB7XG4gICAgY29uc3QgZGF0ZSA9IGQgPyBuZXcgRGF0ZShkKSA6IG5ldyBEYXRlKCk7XG4gICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcblxuICAgIGxldCBtb250aDogbnVtYmVyIHwgc3RyaW5nID0gZGF0ZS5nZXRNb250aCgpICsgMTtcbiAgICBsZXQgZGF5OiBudW1iZXIgfCBzdHJpbmcgPSBkYXRlLmdldERhdGUoKTtcbiAgICBpZiAobW9udGggPCAxMCkgbW9udGggPSAnMCcgKyBtb250aDtcbiAgICBpZiAoZGF5IDwgMTApIGRheSA9ICcwJyArIGRheTtcblxuICAgIGNvbnN0IHRvZGF5ID0gYCR7eWVhcn0tJHttb250aH0tJHtkYXl9YDtcbiAgICByZXR1cm4gdG9kYXk7XG4gIH1cblxuICBhc3luYyBwbG90TWFya2VycyhjdXN0b21lcnMpIHtcbiAgICBpZiAoIXRoaXMuY29uZmlnLmRhc2hib2FyZD8uaXNQbG90Q29tcGxldGVkVGFza01hcmtlcnMpIHtcbiAgICAgIGN1c3RvbWVycyA9IGN1c3RvbWVycy5maWx0ZXIoKGN1c3RvbWVyKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFnZW50U2VydmljZS5jYW5QbG90TWFya2VycyhjdXN0b21lci5zZXNzaW9uX3N0YXR1cyk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jb25maWcuZGFzaGJvYXJkPy5tYXBUeXBlID09ICdvcGVuLXN0cmVldCcpIHtcbiAgICAgIGN1c3RvbWVycyA9IGF3YWl0IHRoaXMub3BlblN0cmVldE1hcHNTZXJ2aWNlLnBsb3REaXJlY3Rpb25zRm9yQWxsVGFza3MoXG4gICAgICAgIGN1c3RvbWVyc1xuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3VzdG9tZXJzID0gYXdhaXQgdGhpcy5nb29nbGVNYXBzU2VydmljZS5wbG90RGlyZWN0aW9uc0ZvckFsbFRhc2tzKFxuICAgICAgICBjdXN0b21lcnNcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGN1c3RvbWVycztcbiAgfVxuXG4gIGdldFR1aURhdGUoZXZlbnQpIHtcbiAgICBsZXQgeWVhciA9IGV2ZW50LnllYXI7XG4gICAgbGV0IG1vbnRoID0gZXZlbnQubW9udGggKyAxO1xuICAgIGxldCBkYXRlID0gZXZlbnQuZGF5O1xuICAgIG1vbnRoID0gbW9udGggPCAxMCA/ICcwJyArIG1vbnRoIDogbW9udGg7XG4gICAgZGF0ZSA9IGRhdGUgPCAxMCA/ICcwJyArIGRhdGUgOiBkYXRlO1xuICAgIHJldHVybiBgJHt5ZWFyfS0ke21vbnRofS0ke2RhdGV9YDtcbiAgfVxuXG4gIG9uRGF0ZVJhbmdlQ2hhbmdlKGV2ZW50KSB7XG4gICAgdGhpcy5mcm9tRGF0ZSA9IHRoaXMuZ2V0VHVpRGF0ZShldmVudC52YWx1ZS5mcm9tKTtcbiAgICB0aGlzLnRvRGF0ZSA9IHRoaXMuZ2V0VHVpRGF0ZShldmVudC52YWx1ZS50byk7XG4gICAgdGhpcy5oYW5kbGVPbkZpbHRlclRhc2tMaXN0KHtcbiAgICAgIGZyb21fZGF0ZTogdGhpcy5mcm9tRGF0ZSxcbiAgICAgIHRvX2RhdGU6IHRoaXMudG9EYXRlXG4gICAgfSk7XG4gIH1cblxuICBvblNlYXJjaEZpbHRlcihldmVudCkge1xuICAgIHRoaXMuc2VhcmNoVGV4dCA9IGV2ZW50LnZhbHVlO1xuICB9XG5cbiAgaGFuZGxlT25DbGlja1JlbW92ZVRhc2sodGFzaykge1xuICAgIHRoaXMucmVtb3ZlVGFzay5lbWl0KHRhc2spO1xuICB9XG5cbiAgaGFuZGxlT25GaWx0ZXJUYXNrTGlzdChmaWx0ZXIpIHtcbiAgICB0aGlzLmZpbHRlclRhc2tMaXN0LmVtaXQoZmlsdGVyKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImN1c3RvbWVyLWxpc3Qtd3JhcHBlclwiPlxuICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItbGlzdC1maWx0ZXJcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgIDxrd2lrdWktaW5wdXQtZGF0ZS1yYW5nZVxuICAgICAgKm5nSWY9XCJjb25maWc/LmRhc2hib2FyZD8uaXNBbGxvd0RhdGVGaWx0ZXJcIlxuICAgICAgW2xhYmVsXT1cIidEYXRlIFJhbmdlJ1wiXG4gICAgICBbaWRdPVwiJ2RhdGVSYW5nZSdcIlxuICAgICAgW3NpemVdPVwiJ20nXCJcbiAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgIFttYXhMZW5ndGhdPVwibWF4TGVuZ3RoXCJcbiAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiJ2RhdGVSYW5nZSdcIlxuICAgICAgW2Zvcm1Db250cm9sXT1cImRhdGVSYW5nZUZvcm1Db250cm9sXCJcbiAgICAgIChnZXRLZXlWYWx1ZSk9XCJvbkRhdGVSYW5nZUNoYW5nZSgkZXZlbnQpXCJcbiAgICA+PC9rd2lrdWktaW5wdXQtZGF0ZS1yYW5nZT5cbiAgICA8a3dpa3VpLWlucHV0XG4gICAgICAqbmdJZj1cImNvbmZpZz8uZGFzaGJvYXJkPy5pc0FsbG93U2VhcmNoRmlsdGVyXCJcbiAgICAgIFtsYWJlbF09XCInU2VhcmNoJ1wiXG4gICAgICBbaWRdPVwiJ3NlYXJjaCdcIlxuICAgICAgaWNvbj1cInR1aUljb25TZWFyY2hcIlxuICAgICAgc2l6ZT1cIm1cIlxuICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2ggQW55IFRhc2tcIlxuICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCInc2VhcmNoJ1wiXG4gICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoRm9ybUNvbnRyb2xcIlxuICAgICAgKGdldEtleVZhbHVlKT1cIm9uU2VhcmNoRmlsdGVyKCRldmVudClcIlxuICAgID48L2t3aWt1aS1pbnB1dD5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRhc2stbGlzdFwiPlxuICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQgaXRlbVNpemU9XCIxXCIgY2xhc3M9XCJjdXN0b21lci10YXNrLWxpc3Qtc2Nyb2xsXCI+XG4gICAgICA8ZGl2XG4gICAgICAgICpjZGtWaXJ0dWFsRm9yPVwiXG4gICAgICAgICAgbGV0IGN1c3RvbWVyIG9mIGZpbHRlcmVkRGF0YSB8IGZpbHRlcjogc2VhcmNoVGV4dDtcbiAgICAgICAgICBpbmRleCBhcyBpbmRleFxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8Y3VzdG9tZXItdGlsZVxuICAgICAgICAgIGNsYXNzPVwiZXhhbXBsZS1pdGVtXCJcbiAgICAgICAgICBbY3VzdG9tZXJdPVwiY3VzdG9tZXJcIlxuICAgICAgICAgIFtjb25maWddPVwiY29uZmlnXCJcbiAgICAgICAgICBbaW5kZXhdPVwiaW5kZXhcIlxuICAgICAgICAgIChuZXh0U3RlcCk9XCJoYW5kbGVPbkNsaWNrTmV4dCgkZXZlbnQpXCJcbiAgICAgICAgICAocmVtb3ZlVGFzayk9XCJoYW5kbGVPbkNsaWNrUmVtb3ZlVGFzaygkZXZlbnQpXCJcbiAgICAgICAgPjwvY3VzdG9tZXItdGlsZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItbGlzdC1lbXB0eVwiICpuZ0lmPVwiZmlsdGVyZWREYXRhLmxlbmd0aCA9PT0gMFwiPlxuICAgIHt7Y29uZmlnPy5kYXNoYm9hcmQ/LmVtcHR5VGFza0xpc3RNZXNzYWdlID8/ICcwIFRhc2tzIGZvciB0aGUgZ2l2ZW4gRGF0ZS4nfX1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b21lci1saXN0L2N1c3RvbWVyLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWFnZW50LWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tZXItbGlzdC9jdXN0b21lci1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7O0FBV3BELE1BQU0sT0FBTyxxQkFBcUI7SUFrQ2hDLFlBQ1MsaUJBQW9DLEVBQ3BDLHFCQUE0QyxFQUM1QyxZQUEwQjtRQUYxQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsaUJBQVksR0FBWixZQUFZLENBQWM7UUE3Qm5DLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRzlCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2hDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUtwQyxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQixjQUFTLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFPekMsUUFBRyxHQUFXLElBQUksTUFBTSxDQUN0QixJQUFJLElBQUksRUFBRSxD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LENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsc0JBQXNCLENBQUM7WUFDMUIsU0FBUyxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3hCLE9BQU8sRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNyQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQUs7UUFDbEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO0lBQ2hDLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxJQUFJO1FBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxNQUFNO1FBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25DLENBQUM7O3NJQTVLVSxxQkFBcUI7MEhBQXJCLHFCQUFxQiwrTkNibEMsNm9EQWtEQTs0RkRyQ2EscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixXQUFXLEVBQUUsZ0NBQWdDO29CQUM3QyxTQUFTLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztpQkFDN0M7dUtBR0MsU0FBUztzQkFEUixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixRQUFRO3NCQURQLE1BQU07Z0JBSVAsVUFBVTtzQkFEVCxNQUFNO2dCQUlQLGNBQWM7c0JBRGIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUdWlEYXksIFR1aURheVJhbmdlIH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQgeyBHb29nbGVNYXBzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2dvb2dsZS1tYXBzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRVN0YXR1cyB9IGZyb20gJy4uL2N1c3RvbWVyLXRpbGUvc3RhdHVzLXBpbGwvc3RhdHVzLXBpbGwuZGVmaW5pdGlvbnMnO1xuaW1wb3J0IHsgQWdlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWdlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBPcGVuU3RyZWV0TWFwc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vcGVuLXN0cmVldC1tYXBzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdXN0b21lci1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbWVyLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jdXN0b21lci1saXN0LmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21lckxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBjdXN0b21lcnM6IGFueTtcblxuICBASW5wdXQoKVxuICBjb25maWc6IGFueTtcblxuICBAT3V0cHV0KClcbiAgbmV4dFN0ZXAgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpXG4gIHJlbW92ZVRhc2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpXG4gIGZpbHRlclRhc2tMaXN0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHNlYXJjaFRleHQ7XG5cbiAgbGFzdEluZm9XaW5kb3dPcGVuZWQ6IGFueTtcbiAgZmlsdGVyZWREYXRhID0gW107XG4gIGZvcm1Hcm91cDogRm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7fSk7XG4gIGRhdGVSYW5nZUZvcm1Db250cm9sOiBGb3JtQ29udHJvbDtcbiAgdG9EYXRlRm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xuICBzZWFyY2hGb3JtQ29udHJvbDogRm9ybUNvbnRyb2w7XG5cbiAgZnJvbURhdGU6IHN0cmluZyB8IERhdGU7XG4gIHRvRGF0ZTogc3RyaW5nIHwgRGF0ZTtcbiAgbWF4OiBUdWlEYXkgPSBuZXcgVHVpRGF5KFxuICAgIG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSxcbiAgICBuZXcgRGF0ZSgpLmdldE1vbnRoKCksXG4gICAgbmV3IERhdGUoKS5nZXREYXRlKClcbiAgKTtcbiAgbWF4TGVuZ3RoOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGdvb2dsZU1hcHNTZXJ2aWNlOiBHb29nbGVNYXBzU2VydmljZSxcbiAgICBwdWJsaWMgb3BlblN0cmVldE1hcHNTZXJ2aWNlOiBPcGVuU3RyZWV0TWFwc1NlcnZpY2UsXG4gICAgcHVibGljIGFnZW50U2VydmljZTogQWdlbnRTZXJ2aWNlXG4gICkge31cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldERhdGVSYW5nZSgpO1xuICB9XG5cbiAgc2V0RGF0ZVJhbmdlKCkge1xuICAgIGNvbnN0IHNlYXJjaERhdGVTdGFydCA9IHRoaXMuY29uZmlnLmRhc2hib2FyZD8uc2VhcmNoRGF0ZVN0YXJ0ID8/IHtcbiAgICAgIGRheTogMCxcbiAgICAgIG1vbnRoOiAwLFxuICAgICAgeWVhcjogMFxuICAgIH07XG4gICAgY29uc3QgY3VycmVudERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IG5ldyBEYXRlKFxuICAgICAgY3VycmVudERhdGUuZ2V0RnVsbFllYXIoKSAtIHNlYXJjaERhdGVTdGFydD8ueWVhciA/PyAwLFxuICAgICAgY3VycmVudERhdGUuZ2V0TW9udGgoKSAtIHNlYXJjaERhdGVTdGFydD8ubW9udGggPz8gMCxcbiAgICAgIGN1cnJlbnREYXRlLmdldERhdGUoKSAtIHNlYXJjaERhdGVTdGFydD8uZGF5ID8/IDBcbiAgICApO1xuXG4gICAgdGhpcy5mcm9tRGF0ZSA9IHRoaXMuZ2V0RGF0ZShzdGFydERhdGUpO1xuICAgIHRoaXMudG9EYXRlID0gdGhpcy5nZXREYXRlKG51bGwpO1xuXG4gICAgdGhpcy5kYXRlUmFuZ2VGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCh7XG4gICAgICB2YWx1ZTogbmV3IFR1aURheVJhbmdlKFxuICAgICAgICBuZXcgVHVpRGF5KFxuICAgICAgICAgIHN0YXJ0RGF0ZS5nZXRGdWxsWWVhcigpLFxuICAgICAgICAgIHN0YXJ0RGF0ZS5nZXRNb250aCgpLFxuICAgICAgICAgIHN0YXJ0RGF0ZS5nZXREYXRlKClcbiAgICAgICAgKSxcbiAgICAgICAgdGhpcy5tYXhcbiAgICAgICksXG4gICAgICBkaXNhYmxlZDogZmFsc2VcbiAgICB9KTtcbiAgICB0aGlzLmZvcm1Hcm91cC5hZGRDb250cm9sKCdkYXRlUmFuZ2UnLCB0aGlzLmRhdGVSYW5nZUZvcm1Db250cm9sKTtcblxuICAgIHRoaXMuc2VhcmNoRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJycpO1xuICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2woJ3NlYXJjaCcsIHRoaXMuc2VhcmNoRm9ybUNvbnRyb2wpO1xuICB9XG5cbiAgYXN5bmMgc2V0VXBNYXBzKCkge1xuICAgIGlmICh0aGlzLmNvbmZpZy5kYXNoYm9hcmQuaXNTaG93TWFwcykge1xuICAgICAgaWYgKHRoaXMuY29uZmlnLmRhc2hib2FyZD8ubWFwVHlwZSA9PSAnb3Blbi1zdHJlZXQnKSB7XG4gICAgICAgIGF3YWl0IHRoaXMub3BlblN0cmVldE1hcHNTZXJ2aWNlLmluaXRpYWxpemVNYXAoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHRoaXMuZ29vZ2xlTWFwc1NlcnZpY2UuaW5pdGlhbGl6ZU1hcCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHNldEN1c3RvbWVyc0xpc3QoKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmRhc2hib2FyZC5pc1Nob3dNYXBzKSB7XG4gICAgICB0aGlzLmZpbHRlcmVkRGF0YSA9IGF3YWl0IHRoaXMucGxvdE1hcmtlcnModGhpcy5jdXN0b21lcnMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZpbHRlcmVkRGF0YSA9IHRoaXMuY3VzdG9tZXJzO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1heExlbmd0aCA9IHRoaXMuY29uZmlnLmRhc2hib2FyZD8uc2VhcmNoRGF0ZVJhbmdlID8/IHRoaXMubWF4TGVuZ3RoO1xuICAgIHNldFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgdGhpcy5zZXRVcE1hcHMoKTtcbiAgICAgIGF3YWl0IHRoaXMuc2V0Q3VzdG9tZXJzTGlzdCgpO1xuICAgIH0sIDEwMDApO1xuICB9XG5cbiAgYXN5bmMgbmdPbkNoYW5nZXMoKSB7XG4gICAgYXdhaXQgdGhpcy5zZXRDdXN0b21lcnNMaXN0KCk7XG4gIH1cblxuICBoYW5kbGVPbkNsaWNrTmV4dChlKSB7XG4gICAgdGhpcy5uZXh0U3RlcC5lbWl0KGUpO1xuICB9XG5cbiAgZ2V0RGF0ZShkKSB7XG4gICAgY29uc3QgZGF0ZSA9IGQgPyBuZXcgRGF0ZShkKSA6IG5ldyBEYXRlKCk7XG4gICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcblxuICAgIGxldCBtb250aDogbnVtYmVyIHwgc3RyaW5nID0gZGF0ZS5nZXRNb250aCgpICsgMTtcbiAgICBsZXQgZGF5OiBudW1iZXIgfCBzdHJpbmcgPSBkYXRlLmdldERhdGUoKTtcbiAgICBpZiAobW9udGggPCAxMCkgbW9udGggPSAnMCcgKyBtb250aDtcbiAgICBpZiAoZGF5IDwgMTApIGRheSA9ICcwJyArIGRheTtcblxuICAgIGNvbnN0IHRvZGF5ID0gYCR7eWVhcn0tJHttb250aH0tJHtkYXl9YDtcbiAgICByZXR1cm4gdG9kYXk7XG4gIH1cblxuICBhc3luYyBwbG90TWFya2VycyhjdXN0b21lcnMpIHtcbiAgICBpZiAoIXRoaXMuY29uZmlnLmRhc2hib2FyZD8uaXNQbG90Q29tcGxldGVkVGFza01hcmtlcnMpIHtcbiAgICAgIGN1c3RvbWVycyA9IGN1c3RvbWVycy5maWx0ZXIoKGN1c3RvbWVyKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFnZW50U2VydmljZS5jYW5QbG90TWFya2VycyhjdXN0b21lci5zZXNzaW9uX3N0YXR1cyk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jb25maWcuZGFzaGJvYXJkPy5tYXBUeXBlID09ICdvcGVuLXN0cmVldCcpIHtcbiAgICAgIGN1c3RvbWVycyA9IGF3YWl0IHRoaXMub3BlblN0cmVldE1hcHNTZXJ2aWNlLnBsb3REaXJlY3Rpb25zRm9yQWxsVGFza3MoXG4gICAgICAgIGN1c3RvbWVyc1xuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3VzdG9tZXJzID0gYXdhaXQgdGhpcy5nb29nbGVNYXBzU2VydmljZS5wbG90RGlyZWN0aW9uc0ZvckFsbFRhc2tzKFxuICAgICAgICBjdXN0b21lcnNcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGN1c3RvbWVycztcbiAgfVxuXG4gIGdldFR1aURhdGUoZXZlbnQpIHtcbiAgICBsZXQgeWVhciA9IGV2ZW50LnllYXI7XG4gICAgbGV0IG1vbnRoID0gZXZlbnQubW9udGggKyAxO1xuICAgIGxldCBkYXRlID0gZXZlbnQuZGF5O1xuICAgIG1vbnRoID0gbW9udGggPCAxMCA/ICcwJyArIG1vbnRoIDogbW9udGg7XG4gICAgZGF0ZSA9IGRhdGUgPCAxMCA/ICcwJyArIGRhdGUgOiBkYXRlO1xuICAgIHJldHVybiBgJHt5ZWFyfS0ke21vbnRofS0ke2RhdGV9YDtcbiAgfVxuXG4gIG9uRGF0ZVJhbmdlQ2hhbmdlKGV2ZW50KSB7XG4gICAgdGhpcy5mcm9tRGF0ZSA9IHRoaXMuZ2V0VHVpRGF0ZShldmVudC52YWx1ZS5mcm9tKTtcbiAgICB0aGlzLnRvRGF0ZSA9IHRoaXMuZ2V0VHVpRGF0ZShldmVudC52YWx1ZS50byk7XG4gICAgdGhpcy5oYW5kbGVPbkZpbHRlclRhc2tMaXN0KHtcbiAgICAgIGZyb21fZGF0ZTogdGhpcy5mcm9tRGF0ZSxcbiAgICAgIHRvX2RhdGU6IHRoaXMudG9EYXRlXG4gICAgfSk7XG4gIH1cblxuICBvblNlYXJjaEZpbHRlcihldmVudCkge1xuICAgIHRoaXMuc2VhcmNoVGV4dCA9IGV2ZW50LnZhbHVlO1xuICB9XG5cbiAgaGFuZGxlT25DbGlja1JlbW92ZVRhc2sodGFzaykge1xuICAgIHRoaXMucmVtb3ZlVGFzay5lbWl0KHRhc2spO1xuICB9XG5cbiAgaGFuZGxlT25GaWx0ZXJUYXNrTGlzdChmaWx0ZXIpIHtcbiAgICB0aGlzLmZpbHRlclRhc2tMaXN0LmVtaXQoZmlsdGVyKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImN1c3RvbWVyLWxpc3Qtd3JhcHBlclwiPlxuICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItbGlzdC1maWx0ZXJcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgIDxrd2lrdWktaW5wdXQtZGF0ZS1yYW5nZVxuICAgICAgKm5nSWY9XCJjb25maWc/LmRhc2hib2FyZD8uaXNBbGxvd0RhdGVGaWx0ZXJcIlxuICAgICAgW2xhYmVsXT1cIidEYXRlIFJhbmdlJ1wiXG4gICAgICBbaWRdPVwiJ2RhdGVSYW5nZSdcIlxuICAgICAgW3NpemVdPVwiJ20nXCJcbiAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgIFttYXhMZW5ndGhdPVwibWF4TGVuZ3RoXCJcbiAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiJ2RhdGVSYW5nZSdcIlxuICAgICAgW2Zvcm1Db250cm9sXT1cImRhdGVSYW5nZUZvcm1Db250cm9sXCJcbiAgICAgIChnZXRLZXlWYWx1ZSk9XCJvbkRhdGVSYW5nZUNoYW5nZSgkZXZlbnQpXCJcbiAgICA+PC9rd2lrdWktaW5wdXQtZGF0ZS1yYW5nZT5cbiAgICA8a3dpa3VpLWlucHV0XG4gICAgICAqbmdJZj1cImNvbmZpZz8uZGFzaGJvYXJkPy5pc0FsbG93U2VhcmNoRmlsdGVyXCJcbiAgICAgIFtsYWJlbF09XCInU2VhcmNoJ1wiXG4gICAgICBbaWRdPVwiJ3NlYXJjaCdcIlxuICAgICAgaWNvbj1cInR1aUljb25TZWFyY2hcIlxuICAgICAgc2l6ZT1cIm1cIlxuICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2ggQW55IFRhc2tcIlxuICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCInc2VhcmNoJ1wiXG4gICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoRm9ybUNvbnRyb2xcIlxuICAgICAgKGdldEtleVZhbHVlKT1cIm9uU2VhcmNoRmlsdGVyKCRldmVudClcIlxuICAgID48L2t3aWt1aS1pbnB1dD5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRhc2stbGlzdFwiPlxuICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQgaXRlbVNpemU9XCIxXCIgY2xhc3M9XCJjdXN0b21lci10YXNrLWxpc3Qtc2Nyb2xsXCI+XG4gICAgICA8ZGl2XG4gICAgICAgICpjZGtWaXJ0dWFsRm9yPVwiXG4gICAgICAgICAgbGV0IGN1c3RvbWVyIG9mIGZpbHRlcmVkRGF0YSB8IGZpbHRlcjogc2VhcmNoVGV4dDtcbiAgICAgICAgICBpbmRleCBhcyBpbmRleFxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8Y3VzdG9tZXItdGlsZVxuICAgICAgICAgIGNsYXNzPVwiZXhhbXBsZS1pdGVtXCJcbiAgICAgICAgICBbY3VzdG9tZXJdPVwiY3VzdG9tZXJcIlxuICAgICAgICAgIFtjb25maWddPVwiY29uZmlnXCJcbiAgICAgICAgICBbaW5kZXhdPVwiaW5kZXhcIlxuICAgICAgICAgIChuZXh0U3RlcCk9XCJoYW5kbGVPbkNsaWNrTmV4dCgkZXZlbnQpXCJcbiAgICAgICAgICAocmVtb3ZlVGFzayk9XCJoYW5kbGVPbkNsaWNrUmVtb3ZlVGFzaygkZXZlbnQpXCJcbiAgICAgICAgPjwvY3VzdG9tZXItdGlsZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItbGlzdC1lbXB0eVwiICpuZ0lmPVwiZmlsdGVyZWREYXRhLmxlbmd0aCA9PT0gMFwiPlxuICAgIHt7Y29uZmlnPy5kYXNoYm9hcmQ/LmVtcHR5VGFza0xpc3RNZXNzYWdlID8/ICcwIFRhc2tzIGZvciB0aGUgZ2l2ZW4gRGF0ZS4nfX1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -33,32 +33,22 @@ export class CustomerTileComponent {
|
|
|
33
33
|
(_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.dashboard) === null || _b === void 0 ? void 0 : _b.viewTaskDetails) !== null && _c !== void 0 ? _c : this.viewTaskDetails;
|
|
34
34
|
}
|
|
35
35
|
openDetails() {
|
|
36
|
-
var _a, _b;
|
|
37
|
-
|
|
38
|
-
this.
|
|
36
|
+
var _a, _b, _c, _d;
|
|
37
|
+
const isDifferentTaskSelected = ((_a = this.agentService.currentTaskDetails) === null || _a === void 0 ? void 0 : _a.session_id) !==
|
|
38
|
+
((_b = this.customer) === null || _b === void 0 ? void 0 : _b.session_id);
|
|
39
|
+
if (isDifferentTaskSelected) {
|
|
40
|
+
this.agentService.currentTaskDetails = this.customer;
|
|
39
41
|
}
|
|
40
42
|
else {
|
|
41
|
-
this.
|
|
43
|
+
this.agentService.currentTaskDetails = undefined;
|
|
42
44
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
this.agentService.isShowTaskDetails = undefined;
|
|
51
|
-
this.googleMapsService.plotDirectionsForSelectedTask(null);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
plotOpenStreetMapsDirection() {
|
|
55
|
-
if (this.agentService.isShowTaskDetails !== this.index) {
|
|
56
|
-
this.agentService.isShowTaskDetails = this.index;
|
|
57
|
-
this.openStreetMapsService.plotDirectionsForSelectedTask(this.index);
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
this.agentService.isShowTaskDetails = undefined;
|
|
61
|
-
this.openStreetMapsService.plotDirectionsForSelectedTask(null);
|
|
45
|
+
if (this.agentService.showMapview) {
|
|
46
|
+
if (((_d = (_c = this.agentService.config) === null || _c === void 0 ? void 0 : _c.dashboard) === null || _d === void 0 ? void 0 : _d.mapType) == 'google-maps') {
|
|
47
|
+
this.googleMapsService.plotDirectionsForSelectedTask(this.agentService.currentTaskDetails);
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.openStreetMapsService.plotDirectionsForSelectedTask(this.agentService.currentTaskDetails);
|
|
51
|
+
}
|
|
62
52
|
}
|
|
63
53
|
}
|
|
64
54
|
goToMaps(location) {
|
|
@@ -72,7 +62,7 @@ export class CustomerTileComponent {
|
|
|
72
62
|
}
|
|
73
63
|
}
|
|
74
64
|
/** @nocollapse */ CustomerTileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomerTileComponent, deps: [{ token: i1.GoogleMapsService }, { token: i2.OpenStreetMapsService }, { token: i3.AgentService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
75
|
-
/** @nocollapse */ CustomerTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomerTileComponent, selector: "customer-tile", inputs: { customer: "customer", index: "index", config: "config" }, outputs: { nextStep: "nextStep", removeTask: "removeTask" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, ngImport: i0, template: "<div\n [ngClass]=\"\n
|
|
65
|
+
/** @nocollapse */ CustomerTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomerTileComponent, selector: "customer-tile", inputs: { customer: "customer", index: "index", config: "config" }, outputs: { nextStep: "nextStep", removeTask: "removeTask" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, ngImport: i0, template: "<div\n [ngClass]=\"\n customer?.session_id == agentService.currentTaskDetails?.session_id\n ? 'customer-tile-wrapper customer-tile-active'\n : 'customer-tile-wrapper'\n \"\n>\n <div class=\"customer-tile-primary-container\">\n <div class=\"customer-tile-primary-container-data\">\n <div class=\"customer-tile-primary-container-userid\">\n <kwikui-label-value-pair\n [data]=\"customer\"\n [field]=\"config?.dashboard?.taskIdentifier ?? {value:'$.user_id', type: 'string'} \"\n ></kwikui-label-value-pair>\n </div>\n <status-pill\n *ngIf=\"config?.dashboard?.isShowTaskStatus\"\n [status]=\"customer.session_status\"\n ></status-pill>\n </div>\n <kwikui-button\n *ngIf=\"!agentService.isMobileView && !agentService.showMapview\"\n [icon]=\"\n agentService.currentTaskDetails?.session_id == customer?.session_id\n ? 'tuiIconChevronLeftLarge'\n : 'tuiIconChevronRightLarge'\n \"\n [shape]=\"'rounded'\"\n appearance=\"icon\"\n size=\"s\"\n (onClick)=\"openDetails()\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"agentService.isMobileView || agentService.showMapview\"\n [icon]=\"\n agentService.currentTaskDetails?.session_id == customer?.session_id\n ? 'tuiIconChevronUpLarge'\n : 'tuiIconChevronDownLarge'\n \"\n [shape]=\"'rounded'\"\n appearance=\"icon\"\n size=\"s\"\n (onClick)=\"openDetails()\"\n ></kwikui-button>\n </div>\n <div\n *ngIf=\"\n customer?.session_id == agentService.currentTaskDetails?.session_id &&\n (agentService.isMobileView || agentService.showMapview)\n \"\n [ngClass]=\"\n customer?.session_id == agentService.currentTaskDetails?.session_id &&\n (agentService.isMobileView || agentService.showMapview)\n ? 'customer-tile-secondary-container'\n : 'data-collasped'\n \"\n >\n <div class=\"customer-tile-secondary-container-data\">\n <div\n *ngFor=\"let taskData of viewTaskDetails\"\n class=\"customer-tile-secondary-container-custom-details\"\n >\n <kwikui-label-value-pair\n [field]=\"taskData\"\n [data]=\"customer\"\n ></kwikui-label-value-pair>\n </div>\n <!-- <div\n *ngIf=\"\n agentService.config?.dashboard?.maps?.sho &&\n agentService.config?.dashboard?.isShowDistanceAndTime &&\n openStreetMapsService.getSelectedTaskDistanceAndTime()\n \"\n class=\"customer-tile-secondary-container-custom-details\"\n >\n Distance: {{ openStreetMapsService.getSelectedTaskDistanceAndTime()?.distance }} |\n Time: {{ openStreetMapsService.getSelectedTaskDistanceAndTime()?.time }}\n </div> -->\n </div>\n <div class=\"customer-tile-secondary-container-actions\">\n <div class=\"customer-tile-secondary-container-task-buttons\">\n <kwikui-button\n *ngIf=\"config.dashboard?.isAllowRemoveTask\"\n [icon]=\"'tuiIconTrash2'\"\n [shape]=\"'rounded'\"\n appearance=\"icon\"\n size=\"s\"\n (onClick)=\"handleOnClickRemoveTask(customer)\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"config.dashboard?.isShowCopyLink\"\n icon=\"tuiIconCopy\"\n [shape]=\"'rounded'\"\n appearance=\"icon\"\n size=\"s\"\n (onClick)=\"\n handleOnClickNext({\n customer: customer,\n stepType: 'SHARE_JOURNEY_LINK'\n })\n \"\n ></kwikui-button>\n </div>\n <div class=\"customer-tile-secondary-container-journey-buttons\">\n <kwikui-button\n *ngIf=\"config.dashboard?.isShowMaps && customer?.isValidLocation\"\n label=\"Show Directions\"\n appearance=\"flat\"\n size=\"s\"\n styles=\"font-size:0.7rem;\"\n (onClick)=\"goToMaps(customer.googleMapsUrl)\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"\n config.dashboard?.isAllowStartJourney &&\n agentService.canStartJourney(customer.session_status)\n \"\n label=\"Start Journey\"\n appearance=\"primary\"\n size=\"s\"\n styles=\"font-size:0.7rem;\"\n (onClick)=\"\n handleOnClickNext({ customer: customer, stepType: 'START_JOURNEY' })\n \"\n ></kwikui-button>\n </div>\n </div>\n </div>\n</div>\n", styles: [".customer-tile-wrapper{display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:stretch;flex:1;overflow:auto;grid-gap:.5rem;gap:.5rem;padding:1rem;border-bottom:.5px solid #ddd}.customer-tile-wrapper .customer-tile-primary-container{display:flex;grid-gap:.5rem;gap:.5rem;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;width:100%;height:100%}.customer-tile-wrapper .customer-tile-primary-container .customer-tile-primary-container-data{padding-left:.2rem;grid-gap:.6rem;gap:.6rem;display:flex;flex-direction:row;flex-wrap:wrap;align-content:stretch;justify-content:space-evenly;align-items:center}.customer-tile-wrapper .customer-tile-primary-container .customer-tile-primary-container-data .customer-tile-primary-container-userid{font-weight:500;font-size:1.1rem;line-height:1rem}.customer-tile-wrapper .customer-tile-secondary-container{width:100%;height:100%;display:flex;flex-direction:column;overflow:auto;grid-gap:.5rem;gap:.5rem}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-data{padding:.4rem .2rem;display:flex;flex-direction:column;font-size:.7rem;grid-gap:.3rem;gap:.3rem}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-data .customer-tile-secondary-container-custom-details{width:100%;height:100%;line-height:.9rem;word-wrap:break-word}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-actions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-actions .customer-tile-secondary-container-task-buttons{display:flex;flex-direction:row;align-items:center;justify-content:flex-start}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-actions .customer-tile-secondary-container-journey-buttons{padding-right:.2rem;display:flex;flex-direction:row;grid-gap:.2rem;gap:.2rem;align-items:center;justify-content:flex-end}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-actions .customer-tile-secondary-container-journey-buttons .customer-share-link{font-size:.7rem}.customer-tile-wrapper .data-collasped{display:none}.customer-tile-active{background-color:#dcedfd}\n"], components: [{ type: i4.KwikUILabelValuePairComponent, selector: "kwikui-label-value-pair", inputs: ["field", "data"] }, { type: i5.StatusPillComponent, selector: "status-pill", inputs: ["status"] }, { type: i4.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["appearance", "class", "disabled", "icon", "iconRight", "id", "label", "shape", "showLoader", "size", "styles", "type"], outputs: ["onClick"] }], directives: [{ type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
76
66
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomerTileComponent, decorators: [{
|
|
77
67
|
type: Component,
|
|
78
68
|
args: [{
|
|
@@ -94,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
94
84
|
}], removeTask: [{
|
|
95
85
|
type: Output
|
|
96
86
|
}] } });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItdGlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b21lci10aWxlL2N1c3RvbWVyLXRpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWFnZW50LWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tZXItdGlsZS9jdXN0b21lci10aWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVQLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVl2QixNQUFNLE9BQU8scUJBQXFCO0lBNEJoQyxZQUNTLGlCQUFvQyxFQUNwQyxxQkFBNEMsRUFDNUMsWUFBMEIsRUFDekIsV0FBdUI7UUFIeEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ3pCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBckJqQyxhQUFRLEdBQVEsRUFBRSxDQUFDO1FBR25CLFVBQUssR0FBVyxTQUFTLENBQUM7UUFLMUIsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFDOUIsb0JBQWUsR0FBa0IsRUFBRSxDQUFDO1FBR3BDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRzlCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBTzdCLENBQUM7SUEvQkosbUJBQW1CO1FBQ2pCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsV0FBVyxHQUFHLEdBQUcsRUFBRTtZQUNwRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztTQUMxQjthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBMkJELFFBQVE7O1FBQ04sSUFBSSxDQUFDLGVBQWU7WUFDbEIsTUFBQSxNQUFBLE1BQUEsSUFBSSxDQUFDLE1BQU0sMENBQUUsU0FBUywwQ0FBRSxlQUFlLG1DQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDcEUsQ0FBQztJQUVELFdBQVc7O1FBQ1QsSUFBSSxDQUFBLE1BQUEsTUFBQSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sMENBQUUsU0FBUywwQ0FBRSxPQUFPLEtBQUksYUFBYSxFQUFFO1lBQ2pFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1NBQzlCO2FBQU07WUFDTCxJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztTQUNwQztJQUNILENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGlCQUFpQixLQUFLLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ2pELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbEU7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDO1lBQ2hELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFRCwyQkFBMkI7UUFDekIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGlCQUFpQixLQUFLLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ2pELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDdEU7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDO1lBQ2hELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNoRTtJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsUUFBUTtRQUNmLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxRQUFRLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsdUJBQXVCLENBQUMsSUFBSTtRQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDOztzSUE5RVUscUJBQXFCOzBIQUFyQixxQkFBcUIsK1BDckJsQyw2cklBNkhBOzRGRHhHYSxxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFdBQVcsRUFBRSxnQ0FBZ0M7b0JBQzdDLFNBQVMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2lCQUM5QztnTUFHQyxtQkFBbUI7c0JBRGxCLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVV6QyxRQUFRO3NCQURQLEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFPTixRQUFRO3NCQURQLE1BQU07Z0JBSVAsVUFBVTtzQkFEVCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHb29nbGVNYXBzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2dvb2dsZS1tYXBzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWdlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWdlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBPcGVuU3RyZWV0TWFwc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vcGVuLXN0cmVldC1tYXBzLnNlcnZpY2UnO1xuXG5kZWNsYXJlIGNvbnN0IGdvb2dsZTogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdXN0b21lci10aWxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbWVyLXRpbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jdXN0b21lci10aWxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tZXJUaWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG4gIHdpbmRvd1Jlc2l6ZVdhdGNoZXIoKSB7XG4gICAgaWYgKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCA8IDYwMCkge1xuICAgICAgdGhpcy5pc01vYmlsZVZpZXcgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzTW9iaWxlVmlldyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGN1c3RvbWVyOiBhbnkgPSB7fTtcblxuICBASW5wdXQoKVxuICBpbmRleDogbnVtYmVyID0gdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIGNvbmZpZzogYW55O1xuXG4gIGlzTW9iaWxlVmlldzogYm9vbGVhbiA9IGZhbHNlO1xuICB2aWV3VGFza0RldGFpbHM6IEFycmF5PHN0cmluZz4gPSBbXTtcblxuICBAT3V0cHV0KClcbiAgbmV4dFN0ZXAgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpXG4gIHJlbW92ZVRhc2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGdvb2dsZU1hcHNTZXJ2aWNlOiBHb29nbGVNYXBzU2VydmljZSxcbiAgICBwdWJsaWMgb3BlblN0cmVldE1hcHNTZXJ2aWNlOiBPcGVuU3RyZWV0TWFwc1NlcnZpY2UsXG4gICAgcHVibGljIGFnZW50U2VydmljZTogQWdlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWZcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudmlld1Rhc2tEZXRhaWxzID1cbiAgICAgIHRoaXMuY29uZmlnPy5kYXNoYm9hcmQ/LnZpZXdUYXNrRGV0YWlscyA/PyB0aGlzLnZpZXdUYXNrRGV0YWlscztcbiAgfVxuXG4gIG9wZW5EZXRhaWxzKCkge1xuICAgIGlmICh0aGlzLmFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8ubWFwVHlwZSA9PSAnZ29vZ2xlLW1hcHMnKSB7XG4gICAgICB0aGlzLm9wZW5Hb29nbGVNYXBzRGV0YWlscygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBsb3RPcGVuU3RyZWV0TWFwc0RpcmVjdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIG9wZW5Hb29nbGVNYXBzRGV0YWlscygpIHtcbiAgICBpZiAodGhpcy5hZ2VudFNlcnZpY2UuaXNTaG93VGFza0RldGFpbHMgIT09IHRoaXMuaW5kZXgpIHtcbiAgICAgIHRoaXMuYWdlbnRTZXJ2aWNlLmlzU2hvd1Rhc2tEZXRhaWxzID0gdGhpcy5pbmRleDtcbiAgICAgIHRoaXMuZ29vZ2xlTWFwc1NlcnZpY2UucGxvdERpcmVjdGlvbnNGb3JTZWxlY3RlZFRhc2sodGhpcy5pbmRleCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYWdlbnRTZXJ2aWNlLmlzU2hvd1Rhc2tEZXRhaWxzID0gdW5kZWZpbmVkO1xuICAgICAgdGhpcy5nb29nbGVNYXBzU2VydmljZS5wbG90RGlyZWN0aW9uc0ZvclNlbGVjdGVkVGFzayhudWxsKTtcbiAgICB9XG4gIH1cblxuICBwbG90T3BlblN0cmVldE1hcHNEaXJlY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMuYWdlbnRTZXJ2aWNlLmlzU2hvd1Rhc2tEZXRhaWxzICE9PSB0aGlzLmluZGV4KSB7XG4gICAgICB0aGlzLmFnZW50U2VydmljZS5pc1Nob3dUYXNrRGV0YWlscyA9IHRoaXMuaW5kZXg7XG4gICAgICB0aGlzLm9wZW5TdHJlZXRNYXBzU2VydmljZS5wbG90RGlyZWN0aW9uc0ZvclNlbGVjdGVkVGFzayh0aGlzLmluZGV4KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hZ2VudFNlcnZpY2UuaXNTaG93VGFza0RldGFpbHMgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLm9wZW5TdHJlZXRNYXBzU2VydmljZS5wbG90RGlyZWN0aW9uc0ZvclNlbGVjdGVkVGFzayhudWxsKTtcbiAgICB9XG4gIH1cblxuICBnb1RvTWFwcyhsb2NhdGlvbikge1xuICAgIHdpbmRvdy5vcGVuKGAke2xvY2F0aW9ufWAsICdfYmxhbmsnKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tOZXh0KGUpIHtcbiAgICB0aGlzLm5leHRTdGVwLmVtaXQoZSk7XG4gIH1cblxuICBoYW5kbGVPbkNsaWNrUmVtb3ZlVGFzayh0YXNrKSB7XG4gICAgdGhpcy5yZW1vdmVUYXNrLmVtaXQodGFzayk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgW25nQ2xhc3NdPVwiXG4gICAgaW5kZXggPT0gYWdlbnRTZXJ2aWNlLmlzU2hvd1Rhc2tEZXRhaWxzXG4gICAgICA/ICdjdXN0b21lci10aWxlLXdyYXBwZXIgY3VzdG9tZXItdGlsZS1hY3RpdmUnXG4gICAgICA6ICdjdXN0b21lci10aWxlLXdyYXBwZXInXG4gIFwiXG4+XG4gIDxkaXYgY2xhc3M9XCJjdXN0b21lci10aWxlLXByaW1hcnktY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRpbGUtcHJpbWFyeS1jb250YWluZXItZGF0YVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRpbGUtcHJpbWFyeS1jb250YWluZXItdXNlcmlkXCI+XG4gICAgICAgIDxrd2lrdWktbGFiZWwtdmFsdWUtcGFpclxuICAgICAgICAgIFtkYXRhXT1cImN1c3RvbWVyXCJcbiAgICAgICAgICBbZmllbGRdPVwiY29uZmlnPy5kYXNoYm9hcmQ/LnRhc2tJZGVudGlmaWVyID8/IHt2YWx1ZTonJC51c2VyX2lkJywgdHlwZTogJ3N0cmluZyd9IFwiXG4gICAgICAgID48L2t3aWt1aS1sYWJlbC12YWx1ZS1wYWlyPlxuICAgICAgPC9kaXY+XG4gICAgICA8c3RhdHVzLXBpbGxcbiAgICAgICAgKm5nSWY9XCJjb25maWc/LmRhc2hib2FyZD8uaXNTaG93VGFza1N0YXR1c1wiXG4gICAgICAgIFtzdGF0dXNdPVwiY3VzdG9tZXIuc2Vzc2lvbl9zdGF0dXNcIlxuICAgICAgPjwvc3RhdHVzLXBpbGw+XG4gICAgPC9kaXY+XG4gICAgPGt3aWt1aS1idXR0b25cbiAgICAgICpuZ0lmPVwiIWFnZW50U2VydmljZS5pc01vYmlsZVZpZXcgJiYgIWFnZW50U2VydmljZS5zaG93TWFwdmlld1wiXG4gICAgICBbaWNvbl09XCJcbiAgICAgICAgYWdlbnRTZXJ2aWNlLmlzU2hvd1Rhc2tEZXRhaWxzID09IGluZGV4XG4gICAgICAgICAgPyAndHVpSWNvbkNoZXZyb25MZWZ0TGFyZ2UnXG4gICAgICAgICAgOiAndHVpSWNvbkNoZXZyb25SaWdodExhcmdlJ1xuICAgICAgXCJcbiAgICAgIFtzaGFwZV09XCIncm91bmRlZCdcIlxuICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgc2l6ZT1cInNcIlxuICAgICAgKG9uQ2xpY2spPVwib3BlbkRldGFpbHMoKVwiXG4gICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgKm5nSWY9XCJhZ2VudFNlcnZpY2UuaXNNb2JpbGVWaWV3IHx8IGFnZW50U2VydmljZS5zaG93TWFwdmlld1wiXG4gICAgICBbaWNvbl09XCJcbiAgICAgICAgYWdlbnRTZXJ2aWNlLmlzU2hvd1Rhc2tEZXRhaWxzID09IGluZGV4XG4gICAgICAgICAgPyAndHVpSWNvbkNoZXZyb25VcExhcmdlJ1xuICAgICAgICAgIDogJ3R1aUljb25DaGV2cm9uRG93bkxhcmdlJ1xuICAgICAgXCJcbiAgICAgIFtzaGFwZV09XCIncm91bmRlZCdcIlxuICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgc2l6ZT1cInNcIlxuICAgICAgKG9uQ2xpY2spPVwib3BlbkRldGFpbHMoKVwiXG4gICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBbbmdDbGFzc109XCJcbiAgICAgIGluZGV4ID09IGFnZW50U2VydmljZS5pc1Nob3dUYXNrRGV0YWlscyAmJlxuICAgICAgKGFnZW50U2VydmljZS5pc01vYmlsZVZpZXcgfHwgYWdlbnRTZXJ2aWNlLnNob3dNYXB2aWV3KVxuICAgICAgICA/ICdjdXN0b21lci10aWxlLXNlY29uZGFyeS1jb250YWluZXInXG4gICAgICAgIDogJ2RhdGEtY29sbGFzcGVkJ1xuICAgIFwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItdGlsZS1zZWNvbmRhcnktY29udGFpbmVyLWRhdGFcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nRm9yPVwibGV0IHRhc2tEYXRhIG9mIHZpZXdUYXNrRGV0YWlsc1wiXG4gICAgICAgIGNsYXNzPVwiY3VzdG9tZXItdGlsZS1zZWNvbmRhcnktY29udGFpbmVyLWN1c3RvbS1kZXRhaWxzXCJcbiAgICAgID5cbiAgICAgICAgPGt3aWt1aS1sYWJlbC12YWx1ZS1wYWlyXG4gICAgICAgICAgW2ZpZWxkXT1cInRhc2tEYXRhXCJcbiAgICAgICAgICBbZGF0YV09XCJjdXN0b21lclwiXG4gICAgICAgID48L2t3aWt1aS1sYWJlbC12YWx1ZS1wYWlyPlxuICAgICAgPC9kaXY+XG4gICAgICA8IS0tIDxkaXZcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICBhZ2VudFNlcnZpY2UuY29uZmlnPy5kYXNoYm9hcmQ/Lm1hcHM/LnNobyAmJlxuICAgICAgICAgIGFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8uaXNTaG93RGlzdGFuY2VBbmRUaW1lICYmXG4gICAgICAgICAgb3BlblN0cmVldE1hcHNTZXJ2aWNlLmdldFNlbGVjdGVkVGFza0Rpc3RhbmNlQW5kVGltZSgpXG4gICAgICAgIFwiXG4gICAgICAgIGNsYXNzPVwiY3VzdG9tZXItdGlsZS1zZWNvbmRhcnktY29udGFpbmVyLWN1c3RvbS1kZXRhaWxzXCJcbiAgICAgID5cbiAgICAgICAgRGlzdGFuY2U6IHt7IG9wZW5TdHJlZXRNYXBzU2VydmljZS5nZXRTZWxlY3RlZFRhc2tEaXN0YW5jZUFuZFRpbWUoKT8uZGlzdGFuY2UgfX0gfFxuICAgICAgICBUaW1lOiB7eyBvcGVuU3RyZWV0TWFwc1NlcnZpY2UuZ2V0U2VsZWN0ZWRUYXNrRGlzdGFuY2VBbmRUaW1lKCk/LnRpbWUgfX1cbiAgICAgIDwvZGl2PiAtLT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItdGlsZS1zZWNvbmRhcnktY29udGFpbmVyLWFjdGlvbnNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b21lci10aWxlLXNlY29uZGFyeS1jb250YWluZXItdGFzay1idXR0b25zXCI+XG4gICAgICAgIDxrd2lrdWktYnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCJjb25maWcuZGFzaGJvYXJkPy5pc0FsbG93UmVtb3ZlVGFza1wiXG4gICAgICAgICAgW2ljb25dPVwiJ3R1aUljb25UcmFzaDInXCJcbiAgICAgICAgICBbc2hhcGVdPVwiJ3JvdW5kZWQnXCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZU9uQ2xpY2tSZW1vdmVUYXNrKGN1c3RvbWVyKVwiXG4gICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgIDxrd2lrdWktYnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCJjb25maWcuZGFzaGJvYXJkPy5pc1Nob3dDb3B5TGlua1wiXG4gICAgICAgICAgaWNvbj1cInR1aUljb25Db3B5XCJcbiAgICAgICAgICBbc2hhcGVdPVwiJ3JvdW5kZWQnXCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgIChvbkNsaWNrKT1cIlxuICAgICAgICAgICAgaGFuZGxlT25DbGlja05leHQoe1xuICAgICAgICAgICAgICBjdXN0b21lcjogY3VzdG9tZXIsXG4gICAgICAgICAgICAgIHN0ZXBUeXBlOiAnU0hBUkVfSk9VUk5FWV9MSU5LJ1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICBcIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItdGlsZS1zZWNvbmRhcnktY29udGFpbmVyLWpvdXJuZXktYnV0dG9uc1wiPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiY29uZmlnLmRhc2hib2FyZD8uaXNTaG93TWFwcyAmJiBjdXN0b21lcj8uaXNWYWxpZExvY2F0aW9uXCJcbiAgICAgICAgICBsYWJlbD1cIlNob3cgRGlyZWN0aW9uc1wiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cImZsYXRcIlxuICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICBzdHlsZXM9XCJmb250LXNpemU6MC43cmVtO1wiXG4gICAgICAgICAgKG9uQ2xpY2spPVwiZ29Ub01hcHMoY3VzdG9tZXIuZ29vZ2xlTWFwc1VybClcIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBjb25maWcuZGFzaGJvYXJkPy5pc0FsbG93U3RhcnRKb3VybmV5ICYmXG4gICAgICAgICAgICBhZ2VudFNlcnZpY2UuY2FuU3RhcnRKb3VybmV5KGN1c3RvbWVyLnNlc3Npb25fc3RhdHVzKVxuICAgICAgICAgIFwiXG4gICAgICAgICAgbGFiZWw9XCJTdGFydCBKb3VybmV5XCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwicHJpbWFyeVwiXG4gICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgIHN0eWxlcz1cImZvbnQtc2l6ZTowLjdyZW07XCJcbiAgICAgICAgICAob25DbGljayk9XCJcbiAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2tOZXh0KHsgY3VzdG9tZXI6IGN1c3RvbWVyLCBzdGVwVHlwZTogJ1NUQVJUX0pPVVJORVknIH0pXG4gICAgICAgICAgXCJcbiAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItdGlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b21lci10aWxlL2N1c3RvbWVyLXRpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWFnZW50LWRhc2hib2FyZC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tZXItdGlsZS9jdXN0b21lci10aWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVQLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVl2QixNQUFNLE9BQU8scUJBQXFCO0lBNEJoQyxZQUNTLGlCQUFvQyxFQUNwQyxxQkFBNEMsRUFDNUMsWUFBMEIsRUFDekIsV0FBdUI7UUFIeEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ3pCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBckJqQyxhQUFRLEdBQVEsRUFBRSxDQUFDO1FBR25CLFVBQUssR0FBVyxTQUFTLENBQUM7UUFLMUIsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFDOUIsb0JBQWUsR0FBa0IsRUFBRSxDQUFDO1FBR3BDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRzlCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBTzdCLENBQUM7SUEvQkosbUJBQW1CO1FBQ2pCLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsV0FBVyxHQUFHLEdBQUcsRUFBRTtZQUNwRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztTQUMxQjthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBMkJELFFBQVE7O1FBQ04sSUFBSSxDQUFDLGVBQWU7WUFDbEIsTUFBQSxNQUFBLE1BQUEsSUFBSSxDQUFDLE1BQU0sMENBQUUsU0FBUywwQ0FBRSxlQUFlLG1DQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDcEUsQ0FBQztJQUVELFdBQVc7O1FBQ1QsTUFBTSx1QkFBdUIsR0FDM0IsQ0FBQSxNQUFBLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLDBDQUFFLFVBQVU7YUFDaEQsTUFBQSxJQUFJLENBQUMsUUFBUSwwQ0FBRSxVQUFVLENBQUEsQ0FBQztRQUU1QixJQUFJLHVCQUF1QixFQUFFO1lBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztTQUN0RDthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsR0FBRyxTQUFTLENBQUM7U0FDbEQ7UUFFRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFO1lBQ2pDLElBQUksQ0FBQSxNQUFBLE1BQUEsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLDBDQUFFLFNBQVMsMENBQUUsT0FBTyxLQUFJLGFBQWEsRUFBRTtnQkFDakUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsQ0FBQzthQUM1RjtpQkFBTTtnQkFDTCxJQUFJLENBQUMscUJBQXFCLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO2FBQ2hHO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQVE7UUFDZixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGlCQUFpQixDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELHVCQUF1QixDQUFDLElBQUk7UUFDMUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7c0lBdEVVLHFCQUFxQjswSEFBckIscUJBQXFCLCtQQ3JCbEMsZzlJQWlJQTs0RkQ1R2EscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixXQUFXLEVBQUUsZ0NBQWdDO29CQUM3QyxTQUFTLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztpQkFDOUM7Z01BR0MsbUJBQW1CO3NCQURsQixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFVekMsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixNQUFNO3NCQURMLEtBQUs7Z0JBT04sUUFBUTtzQkFEUCxNQUFNO2dCQUlQLFVBQVU7c0JBRFQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR29vZ2xlTWFwc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9nb29nbGUtbWFwcy5zZXJ2aWNlJztcbmltcG9ydCB7IEFnZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FnZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgT3BlblN0cmVldE1hcHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvb3Blbi1zdHJlZXQtbWFwcy5zZXJ2aWNlJztcblxuZGVjbGFyZSBjb25zdCBnb29nbGU6IGFueTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3VzdG9tZXItdGlsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jdXN0b21lci10aWxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3VzdG9tZXItdGlsZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEN1c3RvbWVyVGlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICB3aW5kb3dSZXNpemVXYXRjaGVyKCkge1xuICAgIGlmICh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggPCA2MDApIHtcbiAgICAgIHRoaXMuaXNNb2JpbGVWaWV3ID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pc01vYmlsZVZpZXcgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBjdXN0b21lcjogYW55ID0ge307XG5cbiAgQElucHV0KClcbiAgaW5kZXg6IG51bWJlciA9IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBjb25maWc6IGFueTtcblxuICBpc01vYmlsZVZpZXc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgdmlld1Rhc2tEZXRhaWxzOiBBcnJheTxzdHJpbmc+ID0gW107XG5cbiAgQE91dHB1dCgpXG4gIG5leHRTdGVwID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICByZW1vdmVUYXNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBnb29nbGVNYXBzU2VydmljZTogR29vZ2xlTWFwc1NlcnZpY2UsXG4gICAgcHVibGljIG9wZW5TdHJlZXRNYXBzU2VydmljZTogT3BlblN0cmVldE1hcHNTZXJ2aWNlLFxuICAgIHB1YmxpYyBhZ2VudFNlcnZpY2U6IEFnZW50U2VydmljZSxcbiAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXdUYXNrRGV0YWlscyA9XG4gICAgICB0aGlzLmNvbmZpZz8uZGFzaGJvYXJkPy52aWV3VGFza0RldGFpbHMgPz8gdGhpcy52aWV3VGFza0RldGFpbHM7XG4gIH1cblxuICBvcGVuRGV0YWlscygpIHtcbiAgICBjb25zdCBpc0RpZmZlcmVudFRhc2tTZWxlY3RlZCA9XG4gICAgICB0aGlzLmFnZW50U2VydmljZS5jdXJyZW50VGFza0RldGFpbHM/LnNlc3Npb25faWQgIT09XG4gICAgICB0aGlzLmN1c3RvbWVyPy5zZXNzaW9uX2lkO1xuXG4gICAgaWYgKGlzRGlmZmVyZW50VGFza1NlbGVjdGVkKSB7XG4gICAgICB0aGlzLmFnZW50U2VydmljZS5jdXJyZW50VGFza0RldGFpbHMgPSB0aGlzLmN1c3RvbWVyO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFnZW50U2VydmljZS5jdXJyZW50VGFza0RldGFpbHMgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuYWdlbnRTZXJ2aWNlLnNob3dNYXB2aWV3KSB7XG4gICAgICBpZiAodGhpcy5hZ2VudFNlcnZpY2UuY29uZmlnPy5kYXNoYm9hcmQ/Lm1hcFR5cGUgPT0gJ2dvb2dsZS1tYXBzJykge1xuICAgICAgICB0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLnBsb3REaXJlY3Rpb25zRm9yU2VsZWN0ZWRUYXNrKHRoaXMuYWdlbnRTZXJ2aWNlLmN1cnJlbnRUYXNrRGV0YWlscyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm9wZW5TdHJlZXRNYXBzU2VydmljZS5wbG90RGlyZWN0aW9uc0ZvclNlbGVjdGVkVGFzayh0aGlzLmFnZW50U2VydmljZS5jdXJyZW50VGFza0RldGFpbHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdvVG9NYXBzKGxvY2F0aW9uKSB7XG4gICAgd2luZG93Lm9wZW4oYCR7bG9jYXRpb259YCwgJ19ibGFuaycpO1xuICB9XG5cbiAgaGFuZGxlT25DbGlja05leHQoZSkge1xuICAgIHRoaXMubmV4dFN0ZXAuZW1pdChlKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tSZW1vdmVUYXNrKHRhc2spIHtcbiAgICB0aGlzLnJlbW92ZVRhc2suZW1pdCh0YXNrKTtcbiAgfVxufVxuIiwiPGRpdlxuICBbbmdDbGFzc109XCJcbiAgICBjdXN0b21lcj8uc2Vzc2lvbl9pZCA9PSBhZ2VudFNlcnZpY2UuY3VycmVudFRhc2tEZXRhaWxzPy5zZXNzaW9uX2lkXG4gICAgICA/ICdjdXN0b21lci10aWxlLXdyYXBwZXIgY3VzdG9tZXItdGlsZS1hY3RpdmUnXG4gICAgICA6ICdjdXN0b21lci10aWxlLXdyYXBwZXInXG4gIFwiXG4+XG4gIDxkaXYgY2xhc3M9XCJjdXN0b21lci10aWxlLXByaW1hcnktY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRpbGUtcHJpbWFyeS1jb250YWluZXItZGF0YVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRpbGUtcHJpbWFyeS1jb250YWluZXItdXNlcmlkXCI+XG4gICAgICAgIDxrd2lrdWktbGFiZWwtdmFsdWUtcGFpclxuICAgICAgICAgIFtkYXRhXT1cImN1c3RvbWVyXCJcbiAgICAgICAgICBbZmllbGRdPVwiY29uZmlnPy5kYXNoYm9hcmQ/LnRhc2tJZGVudGlmaWVyID8/IHt2YWx1ZTonJC51c2VyX2lkJywgdHlwZTogJ3N0cmluZyd9IFwiXG4gICAgICAgID48L2t3aWt1aS1sYWJlbC12YWx1ZS1wYWlyPlxuICAgICAgPC9kaXY+XG4gICAgICA8c3RhdHVzLXBpbGxcbiAgICAgICAgKm5nSWY9XCJjb25maWc/LmRhc2hib2FyZD8uaXNTaG93VGFza1N0YXR1c1wiXG4gICAgICAgIFtzdGF0dXNdPVwiY3VzdG9tZXIuc2Vzc2lvbl9zdGF0dXNcIlxuICAgICAgPjwvc3RhdHVzLXBpbGw+XG4gICAgPC9kaXY+XG4gICAgPGt3aWt1aS1idXR0b25cbiAgICAgICpuZ0lmPVwiIWFnZW50U2VydmljZS5pc01vYmlsZVZpZXcgJiYgIWFnZW50U2VydmljZS5zaG93TWFwdmlld1wiXG4gICAgICBbaWNvbl09XCJcbiAgICAgICAgYWdlbnRTZXJ2aWNlLmN1cnJlbnRUYXNrRGV0YWlscz8uc2Vzc2lvbl9pZCA9PSBjdXN0b21lcj8uc2Vzc2lvbl9pZFxuICAgICAgICAgID8gJ3R1aUljb25DaGV2cm9uTGVmdExhcmdlJ1xuICAgICAgICAgIDogJ3R1aUljb25DaGV2cm9uUmlnaHRMYXJnZSdcbiAgICAgIFwiXG4gICAgICBbc2hhcGVdPVwiJ3JvdW5kZWQnXCJcbiAgICAgIGFwcGVhcmFuY2U9XCJpY29uXCJcbiAgICAgIHNpemU9XCJzXCJcbiAgICAgIChvbkNsaWNrKT1cIm9wZW5EZXRhaWxzKClcIlxuICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgPGt3aWt1aS1idXR0b25cbiAgICAgICpuZ0lmPVwiYWdlbnRTZXJ2aWNlLmlzTW9iaWxlVmlldyB8fCBhZ2VudFNlcnZpY2Uuc2hvd01hcHZpZXdcIlxuICAgICAgW2ljb25dPVwiXG4gICAgICAgIGFnZW50U2VydmljZS5jdXJyZW50VGFza0RldGFpbHM/LnNlc3Npb25faWQgPT0gY3VzdG9tZXI/LnNlc3Npb25faWRcbiAgICAgICAgICA/ICd0dWlJY29uQ2hldnJvblVwTGFyZ2UnXG4gICAgICAgICAgOiAndHVpSWNvbkNoZXZyb25Eb3duTGFyZ2UnXG4gICAgICBcIlxuICAgICAgW3NoYXBlXT1cIidyb3VuZGVkJ1wiXG4gICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICBzaXplPVwic1wiXG4gICAgICAob25DbGljayk9XCJvcGVuRGV0YWlscygpXCJcbiAgICA+PC9rd2lrdWktYnV0dG9uPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgICpuZ0lmPVwiXG4gICAgICBjdXN0b21lcj8uc2Vzc2lvbl9pZCA9PSBhZ2VudFNlcnZpY2UuY3VycmVudFRhc2tEZXRhaWxzPy5zZXNzaW9uX2lkICYmXG4gICAgICAoYWdlbnRTZXJ2aWNlLmlzTW9iaWxlVmlldyB8fCBhZ2VudFNlcnZpY2Uuc2hvd01hcHZpZXcpXG4gICAgXCJcbiAgICBbbmdDbGFzc109XCJcbiAgICAgIGN1c3RvbWVyPy5zZXNzaW9uX2lkID09IGFnZW50U2VydmljZS5jdXJyZW50VGFza0RldGFpbHM/LnNlc3Npb25faWQgJiZcbiAgICAgIChhZ2VudFNlcnZpY2UuaXNNb2JpbGVWaWV3IHx8IGFnZW50U2VydmljZS5zaG93TWFwdmlldylcbiAgICAgICAgPyAnY3VzdG9tZXItdGlsZS1zZWNvbmRhcnktY29udGFpbmVyJ1xuICAgICAgICA6ICdkYXRhLWNvbGxhc3BlZCdcbiAgICBcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRpbGUtc2Vjb25kYXJ5LWNvbnRhaW5lci1kYXRhXCI+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0Zvcj1cImxldCB0YXNrRGF0YSBvZiB2aWV3VGFza0RldGFpbHNcIlxuICAgICAgICBjbGFzcz1cImN1c3RvbWVyLXRpbGUtc2Vjb25kYXJ5LWNvbnRhaW5lci1jdXN0b20tZGV0YWlsc1wiXG4gICAgICA+XG4gICAgICAgIDxrd2lrdWktbGFiZWwtdmFsdWUtcGFpclxuICAgICAgICAgIFtmaWVsZF09XCJ0YXNrRGF0YVwiXG4gICAgICAgICAgW2RhdGFdPVwiY3VzdG9tZXJcIlxuICAgICAgICA+PC9rd2lrdWktbGFiZWwtdmFsdWUtcGFpcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPCEtLSA8ZGl2XG4gICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgYWdlbnRTZXJ2aWNlLmNvbmZpZz8uZGFzaGJvYXJkPy5tYXBzPy5zaG8gJiZcbiAgICAgICAgICBhZ2VudFNlcnZpY2UuY29uZmlnPy5kYXNoYm9hcmQ/LmlzU2hvd0Rpc3RhbmNlQW5kVGltZSAmJlxuICAgICAgICAgIG9wZW5TdHJlZXRNYXBzU2VydmljZS5nZXRTZWxlY3RlZFRhc2tEaXN0YW5jZUFuZFRpbWUoKVxuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImN1c3RvbWVyLXRpbGUtc2Vjb25kYXJ5LWNvbnRhaW5lci1jdXN0b20tZGV0YWlsc1wiXG4gICAgICA+XG4gICAgICAgIERpc3RhbmNlOiB7eyBvcGVuU3RyZWV0TWFwc1NlcnZpY2UuZ2V0U2VsZWN0ZWRUYXNrRGlzdGFuY2VBbmRUaW1lKCk/LmRpc3RhbmNlIH19IHxcbiAgICAgICAgVGltZToge3sgb3BlblN0cmVldE1hcHNTZXJ2aWNlLmdldFNlbGVjdGVkVGFza0Rpc3RhbmNlQW5kVGltZSgpPy50aW1lIH19XG4gICAgICA8L2Rpdj4gLS0+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRpbGUtc2Vjb25kYXJ5LWNvbnRhaW5lci1hY3Rpb25zXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItdGlsZS1zZWNvbmRhcnktY29udGFpbmVyLXRhc2stYnV0dG9uc1wiPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiY29uZmlnLmRhc2hib2FyZD8uaXNBbGxvd1JlbW92ZVRhc2tcIlxuICAgICAgICAgIFtpY29uXT1cIid0dWlJY29uVHJhc2gyJ1wiXG4gICAgICAgICAgW3NoYXBlXT1cIidyb3VuZGVkJ1wiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAob25DbGljayk9XCJoYW5kbGVPbkNsaWNrUmVtb3ZlVGFzayhjdXN0b21lcilcIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiY29uZmlnLmRhc2hib2FyZD8uaXNTaG93Q29weUxpbmtcIlxuICAgICAgICAgIGljb249XCJ0dWlJY29uQ29weVwiXG4gICAgICAgICAgW3NoYXBlXT1cIidyb3VuZGVkJ1wiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cImljb25cIlxuICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAob25DbGljayk9XCJcbiAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2tOZXh0KHtcbiAgICAgICAgICAgICAgY3VzdG9tZXI6IGN1c3RvbWVyLFxuICAgICAgICAgICAgICBzdGVwVHlwZTogJ1NIQVJFX0pPVVJORVlfTElOSydcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXCJcbiAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLXRpbGUtc2Vjb25kYXJ5LWNvbnRhaW5lci1qb3VybmV5LWJ1dHRvbnNcIj5cbiAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAqbmdJZj1cImNvbmZpZy5kYXNoYm9hcmQ/LmlzU2hvd01hcHMgJiYgY3VzdG9tZXI/LmlzVmFsaWRMb2NhdGlvblwiXG4gICAgICAgICAgbGFiZWw9XCJTaG93IERpcmVjdGlvbnNcIlxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJmbGF0XCJcbiAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgc3R5bGVzPVwiZm9udC1zaXplOjAuN3JlbTtcIlxuICAgICAgICAgIChvbkNsaWNrKT1cImdvVG9NYXBzKGN1c3RvbWVyLmdvb2dsZU1hcHNVcmwpXCJcbiAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgY29uZmlnLmRhc2hib2FyZD8uaXNBbGxvd1N0YXJ0Sm91cm5leSAmJlxuICAgICAgICAgICAgYWdlbnRTZXJ2aWNlLmNhblN0YXJ0Sm91cm5leShjdXN0b21lci5zZXNzaW9uX3N0YXR1cylcbiAgICAgICAgICBcIlxuICAgICAgICAgIGxhYmVsPVwiU3RhcnQgSm91cm5leVwiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cInByaW1hcnlcIlxuICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICBzdHlsZXM9XCJmb250LXNpemU6MC43cmVtO1wiXG4gICAgICAgICAgKG9uQ2xpY2spPVwiXG4gICAgICAgICAgICBoYW5kbGVPbkNsaWNrTmV4dCh7IGN1c3RvbWVyOiBjdXN0b21lciwgc3RlcFR5cGU6ICdTVEFSVF9KT1VSTkVZJyB9KVxuICAgICAgICAgIFwiXG4gICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -126,7 +126,7 @@ export class KwikIDAgentDashboardComponent {
|
|
|
126
126
|
handleOnClickViewForms(e) { }
|
|
127
127
|
}
|
|
128
128
|
/** @nocollapse */ KwikIDAgentDashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDAgentDashboardComponent, deps: [{ token: i1.GoogleMapsService }, { token: i2.AgentService }, { token: i3.HttpClient }, { token: i0.ElementRef }, { token: TuiDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
129
|
-
/** @nocollapse */ KwikIDAgentDashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikIDAgentDashboardComponent, selector: "kwikid-agent-dashboard", inputs: { config: "config", taskList: "taskList" }, outputs: { nextStep: "nextStep", addTask: "addTask", removeTask: "removeTask", filterTaskList: "filterTaskList" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, viewQueries: [{ propertyName: "infoWindow", first: true, predicate: MapInfoWindow, descendants: true }, { propertyName: "mapElement", first: true, predicate: ["map"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"kwikid-agent-dashboard\" *ngIf=\"!loading\">\n <div class=\"wrapper\">\n <header>\n <img\n *ngIf=\"\n agentService.config?.clientLogo &&\n agentService.config?.dashboard?.isShowClientLogo\n \"\n [src]=\"agentService.config.clientLogo\"\n class=\"client-logo\"\n />\n <div\n *ngIf=\"\n !agentService.config.clientLogo ||\n !agentService.config?.dashboard?.isShowClientLogo\n \"\n class=\"client-name\"\n >\n <kwikui-button\n [icon]=\"'tuiIconLink'\"\n appearance=\"mono\"\n size=\"m\"\n ></kwikui-button>\n\n {{ agentService.config.clientName }}\n </div>\n <div class=\"actions\">\n <kwikui-button\n *ngIf=\"agentService.config?.dashboard?.isAllowAddTask\"\n class=\"menu-dropdown-buttons\"\n type=\"button\"\n appearance=\"primary\"\n [label]=\"agentService.config?.dashboard?.addTaskButtonLabel ?? 'Add User'\"\n [icon]=\"'tuiIconPlus'\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"s\"\n (onClick)=\"showDialog(template)\"\n ></kwikui-button>\n\n <kwikui-button\n *ngIf=\"!agentService.config?.dashboard?.isAllowAddTask\"\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n [icon]=\"'tuiIconRefreshCwLarge'\"\n size=\"m\"\n type=\"button\"\n (onClick)=\"refresh()\"\n ></kwikui-button>\n <span (tuiActiveZoneChange)=\"onActiveZone($event)\">\n <kwikui-button\n [icon]=\"'tuiIconSettingsLarge'\"\n (onClick)=\"onClick()\"\n appearance=\"mono\"\n size=\"s\"\n [tuiDropdown]=\"dropdownContent\"\n [tuiDropdownManual]=\"open\"\n (tuiObscured)=\"onObscured($event)\"\n ></kwikui-button>\n <ng-template #dropdownContent>\n <div class=\"menu-dropdown\">\n <div class=\"menu-dropdown-header\">\n <div class=\"menu-dropdown-header-agent-name\">\n {{ agentService.config.agentName }}\n </div>\n <div class=\"menu-dropdown-header-agent-id\">\n Agent ID: {{ agentService.config.agentId }}\n </div>\n </div>\n <hr />\n <div\n class=\"menu-dropdown-body\"\n tuiGroup\n [collapsed]=\"true\"\n [rounded]=\"false\"\n [orientation]=\"'vertical'\"\n [size]=\"'m'\"\n >\n <kwikui-button\n *ngIf=\"agentService.config?.dashboard?.isAllowAddTask\"\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n label=\"Refresh\"\n [icon]=\"'tuiIconRefreshCw'\"\n size=\"m\"\n type=\"button\"\n (onClick)=\"refresh()\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"this.config.dashboard.isShowMaps\"\n id=\"\"\n label=\"{{\n agentService.showMapview ? 'Hide Maps' : 'Show Maps'\n }}\"\n styles=\"\"\n class=\"menu-dropdown-buttons\"\n type=\"button\"\n appearance=\"mono\"\n icon=\"{{\n agentService.showMapview ? 'tuiIconEyeOff' : 'tuiIconEye'\n }}\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n styles=\"padding: 0rem !important\"\n (onClick)=\"agentService.toggleMapview()\"\n ></kwikui-button>\n </div>\n <hr />\n <div class=\"menu-dropdown-footer\">\n <kwikui-button\n id=\"\"\n label=\"Logout\"\n styles=\"\"\n class=\"menu-dropdown-buttons\"\n type=\"button\"\n appearance=\"mono\"\n [icon]=\"'tuiIconLogOut'\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n (onClick)=\"handleOnClickNext({ stepType: 'LOGOUT' })\"\n ></kwikui-button>\n </div>\n </div>\n </ng-template>\n </span>\n </div>\n </header>\n\n <div class=\"dashboard-body\">\n <div\n *ngIf=\"mapsLoaded\"\n [class]=\"agentService.showMapview ? 'map' : 'map-hidden'\"\n >\n <google-map\n *ngIf=\"agentService.config?.dashboard?.mapType == 'google-maps'\"\n [options]=\"this.googleMapsService.map\"\n height=\"100%\"\n width=\"100%\"\n >\n <map-marker\n #marker=\"mapMarker\"\n *ngFor=\"\n let markerPosition of this.googleMapsService.allMarkers;\n let index = index\n \"\n [position]=\"markerPosition\"\n [label]=\"{ text: String(index) }\"\n ></map-marker>\n <map-directions-renderer\n *ngIf=\"\n this.googleMapsService.directionsResults$\n | async as directionsResults\n \"\n [directions]=\"directionsResults\"\n [options]=\"this.googleMapsService.directionsRenderOption\"\n ></map-directions-renderer>\n </google-map>\n\n <div\n *ngIf=\"agentService.config?.dashboard?.mapType == 'open-street'\"\n id=\"map\"\n style=\"height: 100%\"\n ></div>\n </div>\n\n <div\n class=\"task-details\"\n *ngIf=\"\n !agentService.isMobileView &&\n agentService.isShowTaskDetails != undefined &&\n !agentService.showMapview\n \"\n >\n <customer-details\n [customer]=\"taskList[agentService.isShowTaskDetails]\"\n [config]=\"config\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n ></customer-details>\n </div>\n\n <div\n class=\"no-task-details\"\n *ngIf=\"\n !agentService.isMobileView &&\n agentService.isShowTaskDetails == undefined &&\n !agentService.showMapview\n \"\n >\n <img src=\"assets/No-Results.jpg\" class=\"no-task-img\" alt=\"No Task\" />\n <div class=\"\">Select a Task to view it's details.</div>\n </div>\n\n <div class=\"customer-list\">\n <customer-list\n [customers]=\"taskList\"\n [config]=\"config\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (filterTaskList)=\"handleOnFilterTaskList($event)\"\n ></customer-list>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"kwikid-agent-dashboard-loader\" *ngIf=\"loading\">\n <span class=\"loader\"></span>\n</div>\n\n<ng-template #template let-observer>\n <div class=\"add-task-header\">\n <h2>{{agentService?.addTaskForm?.title ?? \"Create User\"}}</h2>\n <kwikui-button\n icon=\"tuiIconX\"\n id=\"\"\n styles=\"\"\n type=\"button\"\n appearance=\"mono\"\n [shape]=\"null\"\n size=\"m\"\n (onClick)=\"observer.complete()\"\n ></kwikui-button>\n </div>\n <kwikid-form-view\n [allFormsData]=\"allFormsData\"\n [formConfig]=\"agentService.addTaskForm\"\n [isMobileView]=\"true\"\n (onClickViewForms)=\"this.handleOnClickViewForms($event)\"\n (onClickSaveForm)=\"this.handleOnClickSaveForm($event)\"\n ></kwikid-form-view>\n</ng-template>\n", styles: [".kwikid-agent-dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%;position:relative}.kwikid-agent-dashboard .wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:space-between;align-items:stretch}.kwikid-agent-dashboard .wrapper header{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:.2rem;max-height:4rem;border:1px solid #fafafa;box-shadow:0 2px 10px -6px #000}.kwikid-agent-dashboard .wrapper header .client-logo{height:100%;padding-left:1rem}.kwikid-agent-dashboard .wrapper header .client-name{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600}.kwikid-agent-dashboard .wrapper header .actions{display:flex;flex-direction:row;align-items:center}.kwikid-agent-dashboard .wrapper header .actions>*{margin-right:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body{display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:stretch;flex:1;overflow:auto}.kwikid-agent-dashboard .wrapper .dashboard-body .map{width:100%;height:100%;position:relative;overflow:hidden}.kwikid-agent-dashboard .wrapper .dashboard-body .map-hidden{visibility:collapse}.kwikid-agent-dashboard .wrapper .dashboard-body .customer-list{width:100%;height:100%;background-color:#fafafa;overflow:hidden}@media screen and (min-width: 600px){.kwikid-agent-dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%}.kwikid-agent-dashboard .wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:space-between;align-items:stretch}.kwikid-agent-dashboard .wrapper header{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:.2rem;max-height:4rem;border:1px solid #fafafa;box-shadow:0 2px 10px -6px #000}.kwikid-agent-dashboard .wrapper header .client-name{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600}.kwikid-agent-dashboard .wrapper .dashboard-body{display:flex;flex-direction:row-reverse;align-content:center;justify-content:flex-end;align-items:stretch;padding:1.5rem;grid-gap:1.5rem;gap:1.5rem;overflow:auto;background-color:#fafafa}.kwikid-agent-dashboard .wrapper .dashboard-body .map{width:100%;height:100%;position:relative;overflow:hidden;box-shadow:#0000001a 0 4px 6px -1px,#0000000f 0 2px 4px -1px;border-radius:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body .map-hidden{visibility:collapse}.kwikid-agent-dashboard .wrapper .dashboard-body .task-details{width:100%;height:100%;position:relative;overflow:hidden;box-shadow:#0000001a 0 4px 6px -1px,#0000000f 0 2px 4px -1px;border-radius:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body .no-task-details{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;grid-gap:.5rem;gap:.5rem;overflow:hidden;color:#555}.kwikid-agent-dashboard .wrapper .dashboard-body .no-task-details .no-task-img{height:100px;width:100px}.kwikid-agent-dashboard .wrapper .dashboard-body .customer-list{min-width:300px;max-width:400px;width:100%;height:100%;overflow:hidden;box-shadow:#0000001a 0 4px 6px -1px,#0000000f 0 2px 4px -1px;border-radius:.5rem}}.menu{position:absolute;transition:\"0.15s linear 0s\"}.kwikid-agent-dashboard-loader{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;z-index:100}.kwikid-agent-dashboard-loader .loader{width:48px;height:48px;border-radius:50%;display:inline-block;position:relative;border:3px solid;border-color:#fff #fff transparent;box-sizing:border-box;animation:rotation 1s linear infinite}.kwikid-agent-dashboard-loader .loader:after{content:\"\";box-sizing:border-box;position:absolute;left:0;right:0;top:0;bottom:0;margin:auto;border:3px solid;border-color:transparent var(--tui-primary) var(--tui-primary);width:24px;height:24px;border-radius:50%;animation:rotationBack .5s linear infinite;transform-origin:center center}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotationBack{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.kwikid-agent-dashboard-loader .t-loader{display:none!important}.add-task-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:.5rem 0 1rem 1rem}:host{width:100%;height:100%}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}.menu-dropdown{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;grid-gap:.5rem;gap:.5rem;padding:1rem 1.5rem}.menu-dropdown .menu-dropdown-header{display:flex;flex-direction:column;align-content:flex-start;justify-content:space-between;align-items:flex-start;grid-gap:1rem;gap:1rem}.menu-dropdown .menu-dropdown-header .menu-dropdown-header-agent-name{font-size:1.2rem;font-weight:600}.menu-dropdown .menu-dropdown-header .menu-dropdown-header-agent-id{font-size:.8rem;font-weight:600}.menu-dropdown .menu-dropdown-buttons ::ng-deep .t-wrapper{padding:0!important}\n"], components: [{ type: i4.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["appearance", "class", "disabled", "icon", "iconRight", "id", "label", "shape", "showLoader", "size", "styles", "type"], outputs: ["onClick"] }, { type: i5.GoogleMap, selector: "google-map", inputs: ["height", "width", "center", "zoom", "options", "mapTypeId"], outputs: ["authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { type: i6.CustomerDetailsComponent, selector: "customer-details", inputs: ["customer", "config"], outputs: ["nextStep", "removeTask"] }, { type: i7.CustomerListComponent, selector: "customer-list", inputs: ["customers", "config"], outputs: ["nextStep", "removeTask", "filterTaskList"] }, { type: i8.KwikIDFormViewComponent, selector: "kwikid-form-view", inputs: ["allFormsData", "apiCallResponse", "buttonClickResponse", "formConfig", "formData", "isMobileView", "popupFormCallback", "userConfig"], outputs: ["getLogs", "getUnsavedDataState", "onActionShowPopupForm", "onClickApiCall", "onClickFormFieldButton", "onClickGoBack", "onClickSaveForm", "onClickViewForms"] }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i11.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { type: i11.TuiDropdownDriverDirective, selector: "[tuiDropdown]" }, { type: i11.TuiDropdownPositionDirective, selector: "[tuiDropdown]:not([tuiDropdownCustomPosition]):not([tuiDropdownSided])" }, { type: i11.TuiDropdownManualDirective, selector: "[tuiDropdown][tuiDropdownManual]", inputs: ["tuiDropdownManual"] }, { type: i11.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.MapMarker, selector: "map-marker", inputs: ["title", "position", "label", "clickable", "options", "icon", "visible"], outputs: ["animationChanged", "mapClick", "clickableChanged", "cursorChanged", "mapDblclick", "mapDrag", "mapDragend", "draggableChanged", "mapDragstart", "flatChanged", "iconChanged", "mapMousedown", "mapMouseout", "mapMouseover", "mapMouseup", "positionChanged", "mapRightclick", "shapeChanged", "titleChanged", "visibleChanged", "zindexChanged"], exportAs: ["mapMarker"] }, { type: i5.MapDirectionsRenderer, selector: "map-directions-renderer", inputs: ["directions", "options"], outputs: ["directionsChanged"], exportAs: ["mapDirectionsRenderer"] }], pipes: { "async": i9.AsyncPipe } });
|
|
129
|
+
/** @nocollapse */ KwikIDAgentDashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikIDAgentDashboardComponent, selector: "kwikid-agent-dashboard", inputs: { config: "config", taskList: "taskList" }, outputs: { nextStep: "nextStep", addTask: "addTask", removeTask: "removeTask", filterTaskList: "filterTaskList" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, viewQueries: [{ propertyName: "infoWindow", first: true, predicate: MapInfoWindow, descendants: true }, { propertyName: "mapElement", first: true, predicate: ["map"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"kwikid-agent-dashboard\" *ngIf=\"!loading\">\n <div class=\"wrapper\">\n <header>\n <img\n *ngIf=\"\n agentService.config?.clientLogo &&\n agentService.config?.dashboard?.isShowClientLogo\n \"\n [src]=\"agentService.config.clientLogo\"\n class=\"client-logo\"\n />\n <div\n *ngIf=\"\n !agentService.config.clientLogo ||\n !agentService.config?.dashboard?.isShowClientLogo\n \"\n class=\"client-name\"\n >\n <kwikui-button\n [icon]=\"'tuiIconLink'\"\n appearance=\"mono\"\n size=\"m\"\n ></kwikui-button>\n\n {{ agentService.config.clientName }}\n </div>\n <div class=\"actions\">\n <kwikui-button\n *ngIf=\"agentService.config?.dashboard?.isAllowAddTask\"\n class=\"menu-dropdown-buttons\"\n type=\"button\"\n appearance=\"primary\"\n [label]=\"agentService.config?.dashboard?.addTaskButtonLabel ?? 'Add User'\"\n [icon]=\"'tuiIconPlus'\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"s\"\n (onClick)=\"showDialog(template)\"\n ></kwikui-button>\n\n <kwikui-button\n *ngIf=\"!agentService.config?.dashboard?.isAllowAddTask\"\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n [icon]=\"'tuiIconRefreshCwLarge'\"\n size=\"m\"\n type=\"button\"\n (onClick)=\"refresh()\"\n ></kwikui-button>\n <span (tuiActiveZoneChange)=\"onActiveZone($event)\">\n <kwikui-button\n [icon]=\"'tuiIconSettingsLarge'\"\n (onClick)=\"onClick()\"\n appearance=\"mono\"\n size=\"s\"\n [tuiDropdown]=\"dropdownContent\"\n [tuiDropdownManual]=\"open\"\n (tuiObscured)=\"onObscured($event)\"\n ></kwikui-button>\n <ng-template #dropdownContent>\n <div class=\"menu-dropdown\">\n <div class=\"menu-dropdown-header\">\n <div class=\"menu-dropdown-header-agent-name\">\n {{ agentService.config.agentName }}\n </div>\n <div class=\"menu-dropdown-header-agent-id\">\n Agent ID: {{ agentService.config.agentId }}\n </div>\n </div>\n <hr />\n <div\n class=\"menu-dropdown-body\"\n tuiGroup\n [collapsed]=\"true\"\n [rounded]=\"false\"\n [orientation]=\"'vertical'\"\n [size]=\"'m'\"\n >\n <kwikui-button\n *ngIf=\"agentService.config?.dashboard?.isAllowAddTask\"\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n label=\"Refresh\"\n [icon]=\"'tuiIconRefreshCw'\"\n size=\"m\"\n type=\"button\"\n (onClick)=\"refresh()\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"this.config.dashboard.isShowMaps\"\n id=\"\"\n label=\"{{\n agentService.showMapview ? 'Hide Maps' : 'Show Maps'\n }}\"\n styles=\"\"\n class=\"menu-dropdown-buttons\"\n type=\"button\"\n appearance=\"mono\"\n icon=\"{{\n agentService.showMapview ? 'tuiIconEyeOff' : 'tuiIconEye'\n }}\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n styles=\"padding: 0rem !important\"\n (onClick)=\"agentService.toggleMapview()\"\n ></kwikui-button>\n </div>\n <hr />\n <div class=\"menu-dropdown-footer\">\n <kwikui-button\n id=\"\"\n label=\"Logout\"\n styles=\"\"\n class=\"menu-dropdown-buttons\"\n type=\"button\"\n appearance=\"mono\"\n [icon]=\"'tuiIconLogOut'\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n (onClick)=\"handleOnClickNext({ stepType: 'LOGOUT' })\"\n ></kwikui-button>\n </div>\n </div>\n </ng-template>\n </span>\n </div>\n </header>\n\n <div class=\"dashboard-body\">\n <div\n *ngIf=\"mapsLoaded\"\n [class]=\"agentService.showMapview ? 'map' : 'map-hidden'\"\n >\n <google-map\n *ngIf=\"agentService.config?.dashboard?.mapType == 'google-maps'\"\n [options]=\"this.googleMapsService.map\"\n height=\"100%\"\n width=\"100%\"\n >\n <map-marker\n #marker=\"mapMarker\"\n *ngFor=\"\n let markerPosition of this.googleMapsService.allMarkers;\n let index = index\n \"\n [position]=\"markerPosition\"\n [label]=\"{ text: String(index) }\"\n ></map-marker>\n <map-directions-renderer\n *ngIf=\"\n this.googleMapsService.directionsResults$\n | async as directionsResults\n \"\n [directions]=\"directionsResults\"\n [options]=\"this.googleMapsService.directionsRenderOption\"\n ></map-directions-renderer>\n </google-map>\n\n <div\n *ngIf=\"agentService.config?.dashboard?.mapType == 'open-street'\"\n id=\"map\"\n style=\"height: 100%\"\n ></div>\n </div>\n\n <div\n class=\"task-details\"\n *ngIf=\"\n !agentService.isMobileView &&\n agentService.currentTaskDetails != undefined &&\n !agentService.showMapview\n \"\n >\n <customer-details\n [customer]=\"agentService.currentTaskDetails\"\n [config]=\"config\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n ></customer-details>\n </div>\n\n <div\n class=\"no-task-details\"\n *ngIf=\"\n !agentService.isMobileView &&\n agentService.currentTaskDetails == undefined &&\n !agentService.showMapview\n \"\n >\n <img src=\"assets/No-Results.jpg\" class=\"no-task-img\" alt=\"No Task\" />\n <div class=\"\">Select a Task to view it's details.</div>\n </div>\n\n <div class=\"customer-list\">\n <customer-list\n [customers]=\"taskList\"\n [config]=\"config\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (filterTaskList)=\"handleOnFilterTaskList($event)\"\n ></customer-list>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"kwikid-agent-dashboard-loader\" *ngIf=\"loading\">\n <span class=\"loader\"></span>\n</div>\n\n<ng-template #template let-observer>\n <div class=\"add-task-header\">\n <h2>{{agentService?.addTaskForm?.title ?? \"Create User\"}}</h2>\n <kwikui-button\n icon=\"tuiIconX\"\n id=\"\"\n styles=\"\"\n type=\"button\"\n appearance=\"mono\"\n [shape]=\"null\"\n size=\"m\"\n (onClick)=\"observer.complete()\"\n ></kwikui-button>\n </div>\n <kwikid-form-view\n [allFormsData]=\"allFormsData\"\n [formConfig]=\"agentService.addTaskForm\"\n [isMobileView]=\"true\"\n (onClickViewForms)=\"this.handleOnClickViewForms($event)\"\n (onClickSaveForm)=\"this.handleOnClickSaveForm($event)\"\n ></kwikid-form-view>\n</ng-template>\n", styles: [".kwikid-agent-dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%;position:relative}.kwikid-agent-dashboard .wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:space-between;align-items:stretch}.kwikid-agent-dashboard .wrapper header{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:.2rem;max-height:4rem;border:1px solid #fafafa;box-shadow:0 2px 10px -6px #000}.kwikid-agent-dashboard .wrapper header .client-logo{height:100%;padding-left:1rem}.kwikid-agent-dashboard .wrapper header .client-name{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600}.kwikid-agent-dashboard .wrapper header .actions{display:flex;flex-direction:row;align-items:center}.kwikid-agent-dashboard .wrapper header .actions>*{margin-right:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body{display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:stretch;flex:1;overflow:auto}.kwikid-agent-dashboard .wrapper .dashboard-body .map{width:100%;height:100%;position:relative;overflow:hidden}.kwikid-agent-dashboard .wrapper .dashboard-body .map-hidden{visibility:collapse}.kwikid-agent-dashboard .wrapper .dashboard-body .customer-list{width:100%;height:100%;background-color:#fafafa;overflow:hidden}@media screen and (min-width: 600px){.kwikid-agent-dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%}.kwikid-agent-dashboard .wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:space-between;align-items:stretch}.kwikid-agent-dashboard .wrapper header{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:.2rem;max-height:4rem;border:1px solid #fafafa;box-shadow:0 2px 10px -6px #000}.kwikid-agent-dashboard .wrapper header .client-name{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600}.kwikid-agent-dashboard .wrapper .dashboard-body{display:flex;flex-direction:row-reverse;align-content:center;justify-content:flex-end;align-items:stretch;padding:1.5rem;grid-gap:1.5rem;gap:1.5rem;overflow:auto;background-color:#fafafa}.kwikid-agent-dashboard .wrapper .dashboard-body .map{width:100%;height:100%;position:relative;overflow:hidden;box-shadow:#0000001a 0 4px 6px -1px,#0000000f 0 2px 4px -1px;border-radius:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body .map-hidden{visibility:collapse}.kwikid-agent-dashboard .wrapper .dashboard-body .task-details{width:100%;height:100%;position:relative;overflow:hidden;box-shadow:#0000001a 0 4px 6px -1px,#0000000f 0 2px 4px -1px;border-radius:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body .no-task-details{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;grid-gap:.5rem;gap:.5rem;overflow:hidden;color:#555}.kwikid-agent-dashboard .wrapper .dashboard-body .no-task-details .no-task-img{height:100px;width:100px}.kwikid-agent-dashboard .wrapper .dashboard-body .customer-list{min-width:300px;max-width:400px;width:100%;height:100%;overflow:hidden;box-shadow:#0000001a 0 4px 6px -1px,#0000000f 0 2px 4px -1px;border-radius:.5rem}}.menu{position:absolute;transition:\"0.15s linear 0s\"}.kwikid-agent-dashboard-loader{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;z-index:100}.kwikid-agent-dashboard-loader .loader{width:48px;height:48px;border-radius:50%;display:inline-block;position:relative;border:3px solid;border-color:#fff #fff transparent;box-sizing:border-box;animation:rotation 1s linear infinite}.kwikid-agent-dashboard-loader .loader:after{content:\"\";box-sizing:border-box;position:absolute;left:0;right:0;top:0;bottom:0;margin:auto;border:3px solid;border-color:transparent var(--tui-primary) var(--tui-primary);width:24px;height:24px;border-radius:50%;animation:rotationBack .5s linear infinite;transform-origin:center center}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotationBack{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.kwikid-agent-dashboard-loader .t-loader{display:none!important}.add-task-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:.5rem 0 1rem 1rem}:host{width:100%;height:100%}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}.menu-dropdown{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;grid-gap:.5rem;gap:.5rem;padding:1rem 1.5rem}.menu-dropdown .menu-dropdown-header{display:flex;flex-direction:column;align-content:flex-start;justify-content:space-between;align-items:flex-start;grid-gap:1rem;gap:1rem}.menu-dropdown .menu-dropdown-header .menu-dropdown-header-agent-name{font-size:1.2rem;font-weight:600}.menu-dropdown .menu-dropdown-header .menu-dropdown-header-agent-id{font-size:.8rem;font-weight:600}.menu-dropdown .menu-dropdown-buttons ::ng-deep .t-wrapper{padding:0!important}\n"], components: [{ type: i4.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["appearance", "class", "disabled", "icon", "iconRight", "id", "label", "shape", "showLoader", "size", "styles", "type"], outputs: ["onClick"] }, { type: i5.GoogleMap, selector: "google-map", inputs: ["height", "width", "center", "zoom", "options", "mapTypeId"], outputs: ["authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { type: i6.CustomerDetailsComponent, selector: "customer-details", inputs: ["customer", "config"], outputs: ["nextStep", "removeTask"] }, { type: i7.CustomerListComponent, selector: "customer-list", inputs: ["customers", "config"], outputs: ["nextStep", "removeTask", "filterTaskList"] }, { type: i8.KwikIDFormViewComponent, selector: "kwikid-form-view", inputs: ["allFormsData", "apiCallResponse", "buttonClickResponse", "formConfig", "formData", "isMobileView", "popupFormCallback", "userConfig", "stepConfig"], outputs: ["getLogs", "getUnsavedDataState", "onActionShowPopupForm", "onClickApiCall", "onClickFormFieldButton", "onClickGoBack", "onClickSaveForm", "onClickViewForms"] }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i11.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { type: i11.TuiDropdownDriverDirective, selector: "[tuiDropdown]" }, { type: i11.TuiDropdownPositionDirective, selector: "[tuiDropdown]:not([tuiDropdownCustomPosition]):not([tuiDropdownSided])" }, { type: i11.TuiDropdownManualDirective, selector: "[tuiDropdown][tuiDropdownManual]", inputs: ["tuiDropdownManual"] }, { type: i11.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.MapMarker, selector: "map-marker", inputs: ["title", "position", "label", "clickable", "options", "icon", "visible"], outputs: ["animationChanged", "mapClick", "clickableChanged", "cursorChanged", "mapDblclick", "mapDrag", "mapDragend", "draggableChanged", "mapDragstart", "flatChanged", "iconChanged", "mapMousedown", "mapMouseout", "mapMouseover", "mapMouseup", "positionChanged", "mapRightclick", "shapeChanged", "titleChanged", "visibleChanged", "zindexChanged"], exportAs: ["mapMarker"] }, { type: i5.MapDirectionsRenderer, selector: "map-directions-renderer", inputs: ["directions", "options"], outputs: ["directionsChanged"], exportAs: ["mapDirectionsRenderer"] }], pipes: { "async": i9.AsyncPipe } });
|
|
130
130
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDAgentDashboardComponent, decorators: [{
|
|
131
131
|
type: Component,
|
|
132
132
|
args: [{
|
|
@@ -159,4 +159,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
159
159
|
type: ViewChild,
|
|
160
160
|
args: ['map', { static: true }]
|
|
161
161
|
}] } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3dpa2lkLWFnZW50LWRhc2hib2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIva3dpa2lkLWFnZW50LWRhc2hib2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIva3dpa2lkLWFnZW50LWRhc2hib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFhLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFvQixnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXBFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPdEMsTUFBTSxPQUFPLDZCQUE2QjtJQTBDeEMsWUFDUyxpQkFBb0MsRUFDcEMsWUFBMEIsRUFDMUIsVUFBc0IsRUFDckIsV0FBdUIsRUFDWSxhQUErQjtRQUpuRSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDckIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDWSxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFoQzVFLFdBQU0sR0FBUSxFQUFFLENBQUM7UUFHakIsYUFBUSxHQUFl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LFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQzthQUN2RCxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsY0FBYyxDQUFDLE1BQWlCO1FBQzlCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELHNCQUFzQixDQUFDLENBQUMsSUFBRyxDQUFDOzs4SUF2SmpCLDZCQUE2QixtSUErQzlCLGdCQUFnQjtrSUEvQ2YsNkJBQTZCLDBWQW1DN0IsYUFBYSxrSkM3RDFCLHV2UEEwT0E7NEZEaE5hLDZCQUE2QjtrQkFMekMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxXQUFXLEVBQUUseUNBQXlDO29CQUN0RCxTQUFTLEVBQUUsQ0FBQyx5Q0FBeUMsQ0FBQztpQkFDdkQ7OzBCQWdESSxNQUFNOzJCQUFDLGdCQUFnQjs0Q0E3QzFCLG1CQUFtQjtzQkFEbEIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBY3pDLE1BQU07c0JBREwsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxNQUFNO2dCQUlQLE9BQU87c0JBRE4sTUFBTTtnQkFJUCxVQUFVO3NCQURULE1BQU07Z0JBSVAsY0FBYztzQkFEYixNQUFNO2dCQU1zQyxVQUFVO3NCQUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ1AsVUFBVTtzQkFBN0MsU0FBUzt1QkFBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXBJbmZvV2luZG93LCBNYXBNYXJrZXIgfSBmcm9tICdAYW5ndWxhci9nb29nbGUtbWFwcyc7XG5pbXBvcnQgeyBUdWlEaWFsb2dDb250ZXh0LCBUdWlEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHsgUG9seW1vcnBoZXVzQ29udGVudCB9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQgeyBHb29nbGVNYXBzU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZ29vZ2xlLW1hcHMuc2VydmljZSc7XG5pbXBvcnQgeyBBZ2VudFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2FnZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgaXNOb3RFbXB0eVZhbHVlIH0gZnJvbSAna3dpa2lkLXRvb2xraXQnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna3dpa2lkLWFnZW50LWRhc2hib2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9rd2lraWQtYWdlbnQtZGFzaGJvYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4va3dpa2lkLWFnZW50LWRhc2hib2FyZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEt3aWtJREFnZW50RGFzaGJvYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG4gIHdpbmRvd1Jlc2l6ZVdhdGNoZXIoKSB7XG4gICAgaWYgKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCA8IDYwMCkge1xuICAgICAgdGhpcy5pc01vYmlsZVZpZXcgPSB0cnVlO1xuICAgICAgdGhpcy5hZ2VudFNlcnZpY2UuaXNNb2JpbGVWaWV3ID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pc01vYmlsZVZpZXcgPSBmYWxzZTtcbiAgICAgIHRoaXMuYWdlbnRTZXJ2aWNlLmlzTW9iaWxlVmlldyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIGlzTW9iaWxlVmlldztcblxuICBASW5wdXQoKVxuICBjb25maWc6IGFueSA9IHt9O1xuXG4gIEBJbnB1dCgpXG4gIHRhc2tMaXN0OiBBcnJheTxhbnk+ID0gW107XG5cbiAgQE91dHB1dCgpXG4gIG5leHRTdGVwID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBhZGRUYXNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICByZW1vdmVUYXNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBmaWx0ZXJUYXNrTGlzdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBsb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcbiAgbWFwOiBhbnk7XG5cbiAgQFZpZXdDaGlsZChNYXBJbmZvV2luZG93LCB7IHN0YXRpYzogZmFsc2UgfSkgaW5mb1dpbmRvdzogTWFwSW5mb1dpbmRvdztcbiAgQFZpZXdDaGlsZCgnbWFwJywgeyBzdGF0aWM6IHRydWUgfSkgbWFwRWxlbWVudDogRWxlbWVudFJlZjtcblxuICBtYXBzTG9hZGVkOiBib29sZWFuO1xuXG4gIGNvbnNvbGUgPSBjb25zb2xlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBnb29nbGVNYXBzU2VydmljZTogR29vZ2xlTWFwc1NlcnZpY2UsXG4gICAgcHVibGljIGFnZW50U2VydmljZTogQWdlbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgQEluamVjdChUdWlEaWFsb2dTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZ1NlcnZpY2U6IFR1aURpYWxvZ1NlcnZpY2VcbiAgKSB7fVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYWdlbnRTZXJ2aWNlLmNvbmZpZyA9IHRoaXMuY29uZmlnO1xuICAgIHRoaXMuYWdlbnRTZXJ2aWNlLnNob3dNYXB2aWV3ID0gdGhpcy5jb25maWc/LmRhc2hib2FyZD8uaXNTaG93TWFwcyA/PyBmYWxzZTtcbiAgICB0aGlzLmFnZW50U2VydmljZS5hZGRUYXNrRm9ybSA9XG4gICAgICB0aGlzLmNvbmZpZz8uZGFzaGJvYXJkPy5hZGRUYXNrRm9ybSA/PyB0aGlzLmFnZW50U2VydmljZS5hZGRUYXNrRm9ybTtcblxuICAgIGlmIChcbiAgICAgIHRoaXMuY29uZmlnPy5kYXNoYm9hcmQ/Lm1hcFR5cGUgPT0gJ2dvb2dsZS1tYXBzJyAmJlxuICAgICAgaXNOb3RFbXB0eVZhbHVlKHRoaXMuY29uZmlnPy5kYXNoYm9hcmQ/Lmdvb2dsZU1hcHNBUElLZXkpXG4gICAgKSB7XG4gICAgICB0aGlzLmxvYWRNYXBzKHRoaXMuY29uZmlnPy5kYXNoYm9hcmQ/Lmdvb2dsZU1hcHNBUElLZXkpLnN1YnNjcmliZShcbiAgICAgICAgKGxvYWRlZDogYm9vbGVhbikgPT4ge1xuICAgICAgICAgIHRoaXMubWFwc0xvYWRlZCA9IGxvYWRlZDtcbiAgICAgICAgICBpZiAobG9hZGVkKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnR29vZ2xlIE1hcHMgSmF2YVNjcmlwdCBBUEkgbG9hZGVkIHN1Y2Nlc3NmdWxseS4nKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgLy8gSW5pdGlhbGl6ZSBhbmQgcmVuZGVyIEdvb2dsZSBNYXAgaGVyZVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdHb29nbGUgTWFwcyBKYXZhU2NyaXB0IEFQSSBmYWlsZWQgdG8gbG9hZC4nKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tYXBzTG9hZGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIH1cblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy53aW5kb3dSZXNpemVXYXRjaGVyKCk7XG4gICAgfSwgMTAwMCk7XG4gIH1cblxuICAvLyBMb2FkIEdvb2dsZSBNYXBzXG4gIGxvYWRNYXBzKGFwaUtleSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHVybCA9IGBodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20vbWFwcy9hcGkvanM/a2V5PSR7YXBpS2V5fSZ2PTMuZXhwJmxpYnJhcmllcz1nZW9tZXRyeSxkcmF3aW5nLHBsYWNlc2A7XG4gICAgdGhpcy5nb29nbGVNYXBzU2VydmljZS5hcGlLZXkgPSBhcGlLZXk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50Lmpzb25wKHVybCwgJ2NhbGxiYWNrJykucGlwZShcbiAgICAgIG1hcCgoKSA9PiB0cnVlKSxcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBsb2FkaW5nIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJLicpO1xuICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgaGFuZGxlT25DbGlja05leHQoZSkge1xuICAgIHRoaXMubmV4dFN0ZXAuZW1pdChlKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tBZGRUYXNrKHRhc2spIHtcbiAgICB0aGlzLmFkZFRhc2suZW1pdCh0YXNrKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tSZW1vdmVUYXNrKHRhc2spIHtcbiAgICB0aGlzLnJlbW92ZVRhc2suZW1pdCh0YXNrKTtcbiAgfVxuXG4gIGhhbmRsZU9uRmlsdGVyVGFza0xpc3QoZmlsdGVyKSB7XG4gICAgdGhpcy5maWx0ZXJUYXNrTGlzdC5lbWl0KGZpbHRlcik7XG4gIH1cblxuICByZWZyZXNoKCkge1xuICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcbiAgfVxuXG4gIG9wZW4gPSBmYWxzZTtcblxuICBvbkNsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMub3BlbiA9ICF0aGlzLm9wZW47XG4gIH1cblxuICBhbGxGb3Jtc0RhdGEgPSB7fTtcblxuICBTdHJpbmcgPSBTdHJpbmc7XG5cbiAgb25PYnNjdXJlZChvYnNjdXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChvYnNjdXJlZCkge1xuICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgb25BY3RpdmVab25lKGFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMub3BlbiA9IGFjdGl2ZSAmJiB0aGlzLm9wZW47XG4gIH1cblxuICBzaG93RGlhbG9nKGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpRGlhbG9nQ29udGV4dD4pOiB2b2lkIHtcbiAgICB0aGlzLmRpYWxvZ1NlcnZpY2VcbiAgICAgIC5vcGVuKGNvbnRlbnQsIHsgY2xvc2VhYmxlOiBmYWxzZSwgZGlzbWlzc2libGU6IGZhbHNlIH0pXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBvcGVuSW5mb1dpbmRvdyhtYXJrZXI6IE1hcE1hcmtlcikge1xuICAgIHRoaXMuaW5mb1dpbmRvdy5vcGVuKG1hcmtlcik7XG4gIH1cblxuICBoYW5kbGVPbkNsaWNrU2F2ZUZvcm0oZSkge1xuICAgIHRoaXMuaGFuZGxlT25DbGlja0FkZFRhc2soZS5kYXRhKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tWaWV3Rm9ybXMoZSkge31cbn1cbiIsIjxkaXYgY2xhc3M9XCJrd2lraWQtYWdlbnQtZGFzaGJvYXJkXCIgKm5nSWY9XCIhbG9hZGluZ1wiPlxuICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxuICAgIDxoZWFkZXI+XG4gICAgICA8aW1nXG4gICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgYWdlbnRTZXJ2aWNlLmNvbmZpZz8uY2xpZW50TG9nbyAmJlxuICAgICAgICAgIGFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8uaXNTaG93Q2xpZW50TG9nb1xuICAgICAgICBcIlxuICAgICAgICBbc3JjXT1cImFnZW50U2VydmljZS5jb25maWcuY2xpZW50TG9nb1wiXG4gICAgICAgIGNsYXNzPVwiY2xpZW50LWxvZ29cIlxuICAgICAgLz5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAhYWdlbnRTZXJ2aWNlLmNvbmZpZy5jbGllbnRMb2dvIHx8XG4gICAgICAgICAgIWFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8uaXNTaG93Q2xpZW50TG9nb1xuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImNsaWVudC1uYW1lXCJcbiAgICAgID5cbiAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICBbaWNvbl09XCIndHVpSWNvbkxpbmsnXCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwibW9ub1wiXG4gICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuXG4gICAgICAgIHt7IGFnZW50U2VydmljZS5jb25maWcuY2xpZW50TmFtZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uc1wiPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiYWdlbnRTZXJ2aWNlLmNvbmZpZz8uZGFzaGJvYXJkPy5pc0FsbG93QWRkVGFza1wiXG4gICAgICAgICAgY2xhc3M9XCJtZW51LWRyb3Bkb3duLWJ1dHRvbnNcIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJwcmltYXJ5XCJcbiAgICAgICAgICBbbGFiZWxdPVwiYWdlbnRTZXJ2aWNlLmNvbmZpZz8uZGFzaGJvYXJkPy5hZGRUYXNrQnV0dG9uTGFiZWwgPz8gJ0FkZCBVc2VyJ1wiXG4gICAgICAgICAgW2ljb25dPVwiJ3R1aUljb25QbHVzJ1wiXG4gICAgICAgICAgaWNvblJpZ2h0PVwiXCJcbiAgICAgICAgICBbc2hhcGVdPVwibnVsbFwiXG4gICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgIChvbkNsaWNrKT1cInNob3dEaWFsb2codGVtcGxhdGUpXCJcbiAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cblxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiIWFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8uaXNBbGxvd0FkZFRhc2tcIlxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJtb25vXCJcbiAgICAgICAgICBjbGFzcz1cIm1lbnUtZHJvcGRvd24tYnV0dG9uc1wiXG4gICAgICAgICAgW2ljb25dPVwiJ3R1aUljb25SZWZyZXNoQ3dMYXJnZSdcIlxuICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAob25DbGljayk9XCJyZWZyZXNoKClcIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuICAgICAgICA8c3BhbiAodHVpQWN0aXZlWm9uZUNoYW5nZSk9XCJvbkFjdGl2ZVpvbmUoJGV2ZW50KVwiPlxuICAgICAgICAgIDxrd2lrdWktYnV0dG9uXG4gICAgICAgICAgICBbaWNvbl09XCIndHVpSWNvblNldHRpbmdzTGFyZ2UnXCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cIm9uQ2xpY2soKVwiXG4gICAgICAgICAgICBhcHBlYXJhbmNlPVwibW9ub1wiXG4gICAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgICBbdHVpRHJvcGRvd25dPVwiZHJvcGRvd25Db250ZW50XCJcbiAgICAgICAgICAgIFt0dWlEcm9wZG93bk1hbnVhbF09XCJvcGVuXCJcbiAgICAgICAgICAgICh0dWlPYnNjdXJlZCk9XCJvbk9ic2N1cmVkKCRldmVudClcIlxuICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNkcm9wZG93bkNvbnRlbnQ+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1kcm9wZG93blwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1kcm9wZG93bi1oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1kcm9wZG93bi1oZWFkZXItYWdlbnQtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAge3sgYWdlbnRTZXJ2aWNlLmNvbmZpZy5hZ2VudE5hbWUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1kcm9wZG93bi1oZWFkZXItYWdlbnQtaWRcIj5cbiAgICAgICAgICAgICAgICAgIEFnZW50IElEOiB7eyBhZ2VudFNlcnZpY2UuY29uZmlnLmFnZW50SWQgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxociAvPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51LWRyb3Bkb3duLWJvZHlcIlxuICAgICAgICAgICAgICAgIHR1aUdyb3VwXG4gICAgICAgICAgICAgICAgW2NvbGxhcHNlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBbcm91bmRlZF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgW29yaWVudGF0aW9uXT1cIid2ZXJ0aWNhbCdcIlxuICAgICAgICAgICAgICAgIFtzaXplXT1cIidtJ1wiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhZ2VudFNlcnZpY2UuY29uZmlnPy5kYXNoYm9hcmQ/LmlzQWxsb3dBZGRUYXNrXCJcbiAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJtb25vXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWVudS1kcm9wZG93bi1idXR0b25zXCJcbiAgICAgICAgICAgICAgICAgIGxhYmVsPVwiUmVmcmVzaFwiXG4gICAgICAgICAgICAgICAgICBbaWNvbl09XCIndHVpSWNvblJlZnJlc2hDdydcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAob25DbGljayk9XCJyZWZyZXNoKClcIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwidGhpcy5jb25maWcuZGFzaGJvYXJkLmlzU2hvd01hcHNcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCJcIlxuICAgICAgICAgICAgICAgICAgbGFiZWw9XCJ7e1xuICAgICAgICAgICAgICAgICAgICBhZ2VudFNlcnZpY2Uuc2hvd01hcHZpZXcgPyAnSGlkZSBNYXBzJyA6ICdTaG93IE1hcHMnXG4gICAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgICBzdHlsZXM9XCJcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51LWRyb3Bkb3duLWJ1dHRvbnNcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwibW9ub1wiXG4gICAgICAgICAgICAgICAgICBpY29uPVwie3tcbiAgICAgICAgICAgICAgICAgICAgYWdlbnRTZXJ2aWNlLnNob3dNYXB2aWV3ID8gJ3R1aUljb25FeWVPZmYnIDogJ3R1aUljb25FeWUnXG4gICAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgICBpY29uUmlnaHQ9XCJcIlxuICAgICAgICAgICAgICAgICAgW3NoYXBlXT1cIm51bGxcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgc3R5bGVzPVwicGFkZGluZzogMHJlbSAhaW1wb3J0YW50XCJcbiAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImFnZW50U2VydmljZS50b2dnbGVNYXB2aWV3KClcIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8aHIgLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtZHJvcGRvd24tZm9vdGVyXCI+XG4gICAgICAgICAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAgICAgICAgIGlkPVwiXCJcbiAgICAgICAgICAgICAgICAgIGxhYmVsPVwiTG9nb3V0XCJcbiAgICAgICAgICAgICAgICAgIHN0eWxlcz1cIlwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm1lbnUtZHJvcGRvd24tYnV0dG9uc1wiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJtb25vXCJcbiAgICAgICAgICAgICAgICAgIFtpY29uXT1cIid0dWlJY29uTG9nT3V0J1wiXG4gICAgICAgICAgICAgICAgICBpY29uUmlnaHQ9XCJcIlxuICAgICAgICAgICAgICAgICAgW3NoYXBlXT1cIm51bGxcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlT25DbGlja05leHQoeyBzdGVwVHlwZTogJ0xPR09VVCcgfSlcIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9oZWFkZXI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZGFzaGJvYXJkLWJvZHlcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJtYXBzTG9hZGVkXCJcbiAgICAgICAgW2NsYXNzXT1cImFnZW50U2VydmljZS5zaG93TWFwdmlldyA/ICdtYXAnIDogJ21hcC1oaWRkZW4nXCJcbiAgICAgID5cbiAgICAgICAgPGdvb2dsZS1tYXBcbiAgICAgICAgICAqbmdJZj1cImFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8ubWFwVHlwZSA9PSAnZ29vZ2xlLW1hcHMnXCJcbiAgICAgICAgICBbb3B0aW9uc109XCJ0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLm1hcFwiXG4gICAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXAtbWFya2VyXG4gICAgICAgICAgICAjbWFya2VyPVwibWFwTWFya2VyXCJcbiAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICBsZXQgbWFya2VyUG9zaXRpb24gb2YgdGhpcy5nb29nbGVNYXBzU2VydmljZS5hbGxNYXJrZXJzO1xuICAgICAgICAgICAgICBsZXQgaW5kZXggPSBpbmRleFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIFtwb3NpdGlvbl09XCJtYXJrZXJQb3NpdGlvblwiXG4gICAgICAgICAgICBbbGFiZWxdPVwieyB0ZXh0OiBTdHJpbmcoaW5kZXgpIH1cIlxuICAgICAgICAgID48L21hcC1tYXJrZXI+XG4gICAgICAgICAgPG1hcC1kaXJlY3Rpb25zLXJlbmRlcmVyXG4gICAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgICB0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLmRpcmVjdGlvbnNSZXN1bHRzJFxuICAgICAgICAgICAgICAgIHwgYXN5bmMgYXMgZGlyZWN0aW9uc1Jlc3VsdHNcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBbZGlyZWN0aW9uc109XCJkaXJlY3Rpb25zUmVzdWx0c1wiXG4gICAgICAgICAgICBbb3B0aW9uc109XCJ0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLmRpcmVjdGlvbnNSZW5kZXJPcHRpb25cIlxuICAgICAgICAgID48L21hcC1kaXJlY3Rpb25zLXJlbmRlcmVyPlxuICAgICAgICA8L2dvb2dsZS1tYXA+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICpuZ0lmPVwiYWdlbnRTZXJ2aWNlLmNvbmZpZz8uZGFzaGJvYXJkPy5tYXBUeXBlID09ICdvcGVuLXN0cmVldCdcIlxuICAgICAgICAgIGlkPVwibWFwXCJcbiAgICAgICAgICBzdHlsZT1cImhlaWdodDogMTAwJVwiXG4gICAgICAgID48L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidGFzay1kZXRhaWxzXCJcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAhYWdlbnRTZXJ2aWNlLmlzTW9iaWxlVmlldyAmJlxuICAgICAgICAgIGFnZW50U2VydmljZS5pc1Nob3dUYXNrRGV0YWlscyAhPSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAhYWdlbnRTZXJ2aWNlLnNob3dNYXB2aWV3XG4gICAgICAgIFwiXG4gICAgICA+XG4gICAgICAgIDxjdXN0b21lci1kZXRhaWxzXG4gICAgICAgICAgW2N1c3RvbWVyXT1cInRhc2tMaXN0W2FnZW50U2VydmljZS5pc1Nob3dUYXNrRGV0YWlsc11cIlxuICAgICAgICAgIFtjb25maWddPVwiY29uZmlnXCJcbiAgICAgICAgICAobmV4dFN0ZXApPVwiaGFuZGxlT25DbGlja05leHQoJGV2ZW50KVwiXG4gICAgICAgICAgKHJlbW92ZVRhc2spPVwiaGFuZGxlT25DbGlja1JlbW92ZVRhc2soJGV2ZW50KVwiXG4gICAgICAgID48L2N1c3RvbWVyLWRldGFpbHM+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cIm5vLXRhc2stZGV0YWlsc1wiXG4gICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgIWFnZW50U2VydmljZS5pc01vYmlsZVZpZXcgJiZcbiAgICAgICAgICBhZ2VudFNlcnZpY2UuaXNTaG93VGFza0RldGFpbHMgPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgIWFnZW50U2VydmljZS5zaG93TWFwdmlld1xuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8aW1nIHNyYz1cImFzc2V0cy9Oby1SZXN1bHRzLmpwZ1wiIGNsYXNzPVwibm8tdGFzay1pbWdcIiBhbHQ9XCJObyBUYXNrXCIgLz5cbiAgICAgICAgPGRpdiBjbGFzcz1cIlwiPlNlbGVjdCBhIFRhc2sgdG8gdmlldyBpdCdzIGRldGFpbHMuPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbWVyLWxpc3RcIj5cbiAgICAgICAgPGN1c3RvbWVyLWxpc3RcbiAgICAgICAgICBbY3VzdG9tZXJzXT1cInRhc2tMaXN0XCJcbiAgICAgICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXG4gICAgICAgICAgKG5leHRTdGVwKT1cImhhbmRsZU9uQ2xpY2tOZXh0KCRldmVudClcIlxuICAgICAgICAgIChyZW1vdmVUYXNrKT1cImhhbmRsZU9uQ2xpY2tSZW1vdmVUYXNrKCRldmVudClcIlxuICAgICAgICAgIChmaWx0ZXJUYXNrTGlzdCk9XCJoYW5kbGVPbkZpbHRlclRhc2tMaXN0KCRldmVudClcIlxuICAgICAgICA+PC9jdXN0b21lci1saXN0PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJrd2lraWQtYWdlbnQtZGFzaGJvYXJkLWxvYWRlclwiICpuZ0lmPVwibG9hZGluZ1wiPlxuICA8c3BhbiBjbGFzcz1cImxvYWRlclwiPjwvc3Bhbj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RlbXBsYXRlIGxldC1vYnNlcnZlcj5cbiAgPGRpdiBjbGFzcz1cImFkZC10YXNrLWhlYWRlclwiPlxuICAgIDxoMj57e2FnZW50U2VydmljZT8uYWRkVGFza0Zvcm0/LnRpdGxlID8/IFwiQ3JlYXRlIFVzZXJcIn19PC9oMj5cbiAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgaWNvbj1cInR1aUljb25YXCJcbiAgICAgIGlkPVwiXCJcbiAgICAgIHN0eWxlcz1cIlwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGFwcGVhcmFuY2U9XCJtb25vXCJcbiAgICAgIFtzaGFwZV09XCJudWxsXCJcbiAgICAgIHNpemU9XCJtXCJcbiAgICAgIChvbkNsaWNrKT1cIm9ic2VydmVyLmNvbXBsZXRlKClcIlxuICAgID48L2t3aWt1aS1idXR0b24+XG4gIDwvZGl2PlxuICA8a3dpa2lkLWZvcm0tdmlld1xuICAgIFthbGxGb3Jtc0RhdGFdPVwiYWxsRm9ybXNEYXRhXCJcbiAgICBbZm9ybUNvbmZpZ109XCJhZ2VudFNlcnZpY2UuYWRkVGFza0Zvcm1cIlxuICAgIFtpc01vYmlsZVZpZXddPVwidHJ1ZVwiXG4gICAgKG9uQ2xpY2tWaWV3Rm9ybXMpPVwidGhpcy5oYW5kbGVPbkNsaWNrVmlld0Zvcm1zKCRldmVudClcIlxuICAgIChvbkNsaWNrU2F2ZUZvcm0pPVwidGhpcy5oYW5kbGVPbkNsaWNrU2F2ZUZvcm0oJGV2ZW50KVwiXG4gID48L2t3aWtpZC1mb3JtLXZpZXc+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3dpa2lkLWFnZW50LWRhc2hib2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIva3dpa2lkLWFnZW50LWRhc2hib2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtYWdlbnQtZGFzaGJvYXJkL3NyYy9saWIva3dpa2lkLWFnZW50LWRhc2hib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFhLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFvQixnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXBFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPdEMsTUFBTSxPQUFPLDZCQUE2QjtJQTBDeEMsWUFDUyxpQkFBb0MsRUFDcEMsWUFBMEIsRUFDMUIsVUFBc0IsRUFDckIsV0FBdUIsRUFDWSxhQUErQjtRQUpuRSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDckIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDWSxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFoQzVFLFdBQU0sR0FBUSxFQUFFLENBQUM7UUFHakIsYUFBUSxHQUFl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LFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQzthQUN2RCxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsY0FBYyxDQUFDLE1BQWlCO1FBQzlCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELHNCQUFzQixDQUFDLENBQUMsSUFBRyxDQUFDOzs4SUF2SmpCLDZCQUE2QixtSUErQzlCLGdCQUFnQjtrSUEvQ2YsNkJBQTZCLDBWQW1DN0IsYUFBYSxrSkM3RDFCLGd2UEEwT0E7NEZEaE5hLDZCQUE2QjtrQkFMekMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxXQUFXLEVBQUUseUNBQXlDO29CQUN0RCxTQUFTLEVBQUUsQ0FBQyx5Q0FBeUMsQ0FBQztpQkFDdkQ7OzBCQWdESSxNQUFNOzJCQUFDLGdCQUFnQjs0Q0E3QzFCLG1CQUFtQjtzQkFEbEIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBY3pDLE1BQU07c0JBREwsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxNQUFNO2dCQUlQLE9BQU87c0JBRE4sTUFBTTtnQkFJUCxVQUFVO3NCQURULE1BQU07Z0JBSVAsY0FBYztzQkFEYixNQUFNO2dCQU1zQyxVQUFVO3NCQUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ1AsVUFBVTtzQkFBN0MsU0FBUzt1QkFBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXBJbmZvV2luZG93LCBNYXBNYXJrZXIgfSBmcm9tICdAYW5ndWxhci9nb29nbGUtbWFwcyc7XG5pbXBvcnQgeyBUdWlEaWFsb2dDb250ZXh0LCBUdWlEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHsgUG9seW1vcnBoZXVzQ29udGVudCB9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQgeyBHb29nbGVNYXBzU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZ29vZ2xlLW1hcHMuc2VydmljZSc7XG5pbXBvcnQgeyBBZ2VudFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2FnZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgaXNOb3RFbXB0eVZhbHVlIH0gZnJvbSAna3dpa2lkLXRvb2xraXQnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna3dpa2lkLWFnZW50LWRhc2hib2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9rd2lraWQtYWdlbnQtZGFzaGJvYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4va3dpa2lkLWFnZW50LWRhc2hib2FyZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEt3aWtJREFnZW50RGFzaGJvYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG4gIHdpbmRvd1Jlc2l6ZVdhdGNoZXIoKSB7XG4gICAgaWYgKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCA8IDYwMCkge1xuICAgICAgdGhpcy5pc01vYmlsZVZpZXcgPSB0cnVlO1xuICAgICAgdGhpcy5hZ2VudFNlcnZpY2UuaXNNb2JpbGVWaWV3ID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pc01vYmlsZVZpZXcgPSBmYWxzZTtcbiAgICAgIHRoaXMuYWdlbnRTZXJ2aWNlLmlzTW9iaWxlVmlldyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIGlzTW9iaWxlVmlldztcblxuICBASW5wdXQoKVxuICBjb25maWc6IGFueSA9IHt9O1xuXG4gIEBJbnB1dCgpXG4gIHRhc2tMaXN0OiBBcnJheTxhbnk+ID0gW107XG5cbiAgQE91dHB1dCgpXG4gIG5leHRTdGVwID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBhZGRUYXNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICByZW1vdmVUYXNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBmaWx0ZXJUYXNrTGlzdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBsb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcbiAgbWFwOiBhbnk7XG5cbiAgQFZpZXdDaGlsZChNYXBJbmZvV2luZG93LCB7IHN0YXRpYzogZmFsc2UgfSkgaW5mb1dpbmRvdzogTWFwSW5mb1dpbmRvdztcbiAgQFZpZXdDaGlsZCgnbWFwJywgeyBzdGF0aWM6IHRydWUgfSkgbWFwRWxlbWVudDogRWxlbWVudFJlZjtcblxuICBtYXBzTG9hZGVkOiBib29sZWFuO1xuXG4gIGNvbnNvbGUgPSBjb25zb2xlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBnb29nbGVNYXBzU2VydmljZTogR29vZ2xlTWFwc1NlcnZpY2UsXG4gICAgcHVibGljIGFnZW50U2VydmljZTogQWdlbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgQEluamVjdChUdWlEaWFsb2dTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZ1NlcnZpY2U6IFR1aURpYWxvZ1NlcnZpY2VcbiAgKSB7fVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYWdlbnRTZXJ2aWNlLmNvbmZpZyA9IHRoaXMuY29uZmlnO1xuICAgIHRoaXMuYWdlbnRTZXJ2aWNlLnNob3dNYXB2aWV3ID0gdGhpcy5jb25maWc/LmRhc2hib2FyZD8uaXNTaG93TWFwcyA/PyBmYWxzZTtcbiAgICB0aGlzLmFnZW50U2VydmljZS5hZGRUYXNrRm9ybSA9XG4gICAgICB0aGlzLmNvbmZpZz8uZGFzaGJvYXJkPy5hZGRUYXNrRm9ybSA/PyB0aGlzLmFnZW50U2VydmljZS5hZGRUYXNrRm9ybTtcblxuICAgIGlmIChcbiAgICAgIHRoaXMuY29uZmlnPy5kYXNoYm9hcmQ/Lm1hcFR5cGUgPT0gJ2dvb2dsZS1tYXBzJyAmJlxuICAgICAgaXNOb3RFbXB0eVZhbHVlKHRoaXMuY29uZmlnPy5kYXNoYm9hcmQ/Lmdvb2dsZU1hcHNBUElLZXkpXG4gICAgKSB7XG4gICAgICB0aGlzLmxvYWRNYXBzKHRoaXMuY29uZmlnPy5kYXNoYm9hcmQ/Lmdvb2dsZU1hcHNBUElLZXkpLnN1YnNjcmliZShcbiAgICAgICAgKGxvYWRlZDogYm9vbGVhbikgPT4ge1xuICAgICAgICAgIHRoaXMubWFwc0xvYWRlZCA9IGxvYWRlZDtcbiAgICAgICAgICBpZiAobG9hZGVkKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnR29vZ2xlIE1hcHMgSmF2YVNjcmlwdCBBUEkgbG9hZGVkIHN1Y2Nlc3NmdWxseS4nKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgLy8gSW5pdGlhbGl6ZSBhbmQgcmVuZGVyIEdvb2dsZSBNYXAgaGVyZVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdHb29nbGUgTWFwcyBKYXZhU2NyaXB0IEFQSSBmYWlsZWQgdG8gbG9hZC4nKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tYXBzTG9hZGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIH1cblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy53aW5kb3dSZXNpemVXYXRjaGVyKCk7XG4gICAgfSwgMTAwMCk7XG4gIH1cblxuICAvLyBMb2FkIEdvb2dsZSBNYXBzXG4gIGxvYWRNYXBzKGFwaUtleSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHVybCA9IGBodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20vbWFwcy9hcGkvanM/a2V5PSR7YXBpS2V5fSZ2PTMuZXhwJmxpYnJhcmllcz1nZW9tZXRyeSxkcmF3aW5nLHBsYWNlc2A7XG4gICAgdGhpcy5nb29nbGVNYXBzU2VydmljZS5hcGlLZXkgPSBhcGlLZXk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50Lmpzb25wKHVybCwgJ2NhbGxiYWNrJykucGlwZShcbiAgICAgIG1hcCgoKSA9PiB0cnVlKSxcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBsb2FkaW5nIEdvb2dsZSBNYXBzIEphdmFTY3JpcHQgQVBJLicpO1xuICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgaGFuZGxlT25DbGlja05leHQoZSkge1xuICAgIHRoaXMubmV4dFN0ZXAuZW1pdChlKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tBZGRUYXNrKHRhc2spIHtcbiAgICB0aGlzLmFkZFRhc2suZW1pdCh0YXNrKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tSZW1vdmVUYXNrKHRhc2spIHtcbiAgICB0aGlzLnJlbW92ZVRhc2suZW1pdCh0YXNrKTtcbiAgfVxuXG4gIGhhbmRsZU9uRmlsdGVyVGFza0xpc3QoZmlsdGVyKSB7XG4gICAgdGhpcy5maWx0ZXJUYXNrTGlzdC5lbWl0KGZpbHRlcik7XG4gIH1cblxuICByZWZyZXNoKCkge1xuICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcbiAgfVxuXG4gIG9wZW4gPSBmYWxzZTtcblxuICBvbkNsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMub3BlbiA9ICF0aGlzLm9wZW47XG4gIH1cblxuICBhbGxGb3Jtc0RhdGEgPSB7fTtcblxuICBTdHJpbmcgPSBTdHJpbmc7XG5cbiAgb25PYnNjdXJlZChvYnNjdXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChvYnNjdXJlZCkge1xuICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgb25BY3RpdmVab25lKGFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMub3BlbiA9IGFjdGl2ZSAmJiB0aGlzLm9wZW47XG4gIH1cblxuICBzaG93RGlhbG9nKGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpRGlhbG9nQ29udGV4dD4pOiB2b2lkIHtcbiAgICB0aGlzLmRpYWxvZ1NlcnZpY2VcbiAgICAgIC5vcGVuKGNvbnRlbnQsIHsgY2xvc2VhYmxlOiBmYWxzZSwgZGlzbWlzc2libGU6IGZhbHNlIH0pXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBvcGVuSW5mb1dpbmRvdyhtYXJrZXI6IE1hcE1hcmtlcikge1xuICAgIHRoaXMuaW5mb1dpbmRvdy5vcGVuKG1hcmtlcik7XG4gIH1cblxuICBoYW5kbGVPbkNsaWNrU2F2ZUZvcm0oZSkge1xuICAgIHRoaXMuaGFuZGxlT25DbGlja0FkZFRhc2soZS5kYXRhKTtcbiAgfVxuXG4gIGhhbmRsZU9uQ2xpY2tWaWV3Rm9ybXMoZSkge31cbn1cbiIsIjxkaXYgY2xhc3M9XCJrd2lraWQtYWdlbnQtZGFzaGJvYXJkXCIgKm5nSWY9XCIhbG9hZGluZ1wiPlxuICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxuICAgIDxoZWFkZXI+XG4gICAgICA8aW1nXG4gICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgYWdlbnRTZXJ2aWNlLmNvbmZpZz8uY2xpZW50TG9nbyAmJlxuICAgICAgICAgIGFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8uaXNTaG93Q2xpZW50TG9nb1xuICAgICAgICBcIlxuICAgICAgICBbc3JjXT1cImFnZW50U2VydmljZS5jb25maWcuY2xpZW50TG9nb1wiXG4gICAgICAgIGNsYXNzPVwiY2xpZW50LWxvZ29cIlxuICAgICAgLz5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAhYWdlbnRTZXJ2aWNlLmNvbmZpZy5jbGllbnRMb2dvIHx8XG4gICAgICAgICAgIWFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8uaXNTaG93Q2xpZW50TG9nb1xuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImNsaWVudC1uYW1lXCJcbiAgICAgID5cbiAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICBbaWNvbl09XCIndHVpSWNvbkxpbmsnXCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwibW9ub1wiXG4gICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuXG4gICAgICAgIHt7IGFnZW50U2VydmljZS5jb25maWcuY2xpZW50TmFtZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uc1wiPlxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiYWdlbnRTZXJ2aWNlLmNvbmZpZz8uZGFzaGJvYXJkPy5pc0FsbG93QWRkVGFza1wiXG4gICAgICAgICAgY2xhc3M9XCJtZW51LWRyb3Bkb3duLWJ1dHRvbnNcIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJwcmltYXJ5XCJcbiAgICAgICAgICBbbGFiZWxdPVwiYWdlbnRTZXJ2aWNlLmNvbmZpZz8uZGFzaGJvYXJkPy5hZGRUYXNrQnV0dG9uTGFiZWwgPz8gJ0FkZCBVc2VyJ1wiXG4gICAgICAgICAgW2ljb25dPVwiJ3R1aUljb25QbHVzJ1wiXG4gICAgICAgICAgaWNvblJpZ2h0PVwiXCJcbiAgICAgICAgICBbc2hhcGVdPVwibnVsbFwiXG4gICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgIChvbkNsaWNrKT1cInNob3dEaWFsb2codGVtcGxhdGUpXCJcbiAgICAgICAgPjwva3dpa3VpLWJ1dHRvbj5cblxuICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiIWFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8uaXNBbGxvd0FkZFRhc2tcIlxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJtb25vXCJcbiAgICAgICAgICBjbGFzcz1cIm1lbnUtZHJvcGRvd24tYnV0dG9uc1wiXG4gICAgICAgICAgW2ljb25dPVwiJ3R1aUljb25SZWZyZXNoQ3dMYXJnZSdcIlxuICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAob25DbGljayk9XCJyZWZyZXNoKClcIlxuICAgICAgICA+PC9rd2lrdWktYnV0dG9uPlxuICAgICAgICA8c3BhbiAodHVpQWN0aXZlWm9uZUNoYW5nZSk9XCJvbkFjdGl2ZVpvbmUoJGV2ZW50KVwiPlxuICAgICAgICAgIDxrd2lrdWktYnV0dG9uXG4gICAgICAgICAgICBbaWNvbl09XCIndHVpSWNvblNldHRpbmdzTGFyZ2UnXCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cIm9uQ2xpY2soKVwiXG4gICAgICAgICAgICBhcHBlYXJhbmNlPVwibW9ub1wiXG4gICAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgICBbdHVpRHJvcGRvd25dPVwiZHJvcGRvd25Db250ZW50XCJcbiAgICAgICAgICAgIFt0dWlEcm9wZG93bk1hbnVhbF09XCJvcGVuXCJcbiAgICAgICAgICAgICh0dWlPYnNjdXJlZCk9XCJvbk9ic2N1cmVkKCRldmVudClcIlxuICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNkcm9wZG93bkNvbnRlbnQ+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1kcm9wZG93blwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1kcm9wZG93bi1oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1kcm9wZG93bi1oZWFkZXItYWdlbnQtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAge3sgYWdlbnRTZXJ2aWNlLmNvbmZpZy5hZ2VudE5hbWUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1kcm9wZG93bi1oZWFkZXItYWdlbnQtaWRcIj5cbiAgICAgICAgICAgICAgICAgIEFnZW50IElEOiB7eyBhZ2VudFNlcnZpY2UuY29uZmlnLmFnZW50SWQgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxociAvPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51LWRyb3Bkb3duLWJvZHlcIlxuICAgICAgICAgICAgICAgIHR1aUdyb3VwXG4gICAgICAgICAgICAgICAgW2NvbGxhcHNlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBbcm91bmRlZF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgW29yaWVudGF0aW9uXT1cIid2ZXJ0aWNhbCdcIlxuICAgICAgICAgICAgICAgIFtzaXplXT1cIidtJ1wiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8a3dpa3VpLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJhZ2VudFNlcnZpY2UuY29uZmlnPy5kYXNoYm9hcmQ/LmlzQWxsb3dBZGRUYXNrXCJcbiAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJtb25vXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWVudS1kcm9wZG93bi1idXR0b25zXCJcbiAgICAgICAgICAgICAgICAgIGxhYmVsPVwiUmVmcmVzaFwiXG4gICAgICAgICAgICAgICAgICBbaWNvbl09XCIndHVpSWNvblJlZnJlc2hDdydcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAob25DbGljayk9XCJyZWZyZXNoKClcIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwidGhpcy5jb25maWcuZGFzaGJvYXJkLmlzU2hvd01hcHNcIlxuICAgICAgICAgICAgICAgICAgaWQ9XCJcIlxuICAgICAgICAgICAgICAgICAgbGFiZWw9XCJ7e1xuICAgICAgICAgICAgICAgICAgICBhZ2VudFNlcnZpY2Uuc2hvd01hcHZpZXcgPyAnSGlkZSBNYXBzJyA6ICdTaG93IE1hcHMnXG4gICAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgICBzdHlsZXM9XCJcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51LWRyb3Bkb3duLWJ1dHRvbnNcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwibW9ub1wiXG4gICAgICAgICAgICAgICAgICBpY29uPVwie3tcbiAgICAgICAgICAgICAgICAgICAgYWdlbnRTZXJ2aWNlLnNob3dNYXB2aWV3ID8gJ3R1aUljb25FeWVPZmYnIDogJ3R1aUljb25FeWUnXG4gICAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgICBpY29uUmlnaHQ9XCJcIlxuICAgICAgICAgICAgICAgICAgW3NoYXBlXT1cIm51bGxcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgc3R5bGVzPVwicGFkZGluZzogMHJlbSAhaW1wb3J0YW50XCJcbiAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImFnZW50U2VydmljZS50b2dnbGVNYXB2aWV3KClcIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8aHIgLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtZHJvcGRvd24tZm9vdGVyXCI+XG4gICAgICAgICAgICAgICAgPGt3aWt1aS1idXR0b25cbiAgICAgICAgICAgICAgICAgIGlkPVwiXCJcbiAgICAgICAgICAgICAgICAgIGxhYmVsPVwiTG9nb3V0XCJcbiAgICAgICAgICAgICAgICAgIHN0eWxlcz1cIlwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm1lbnUtZHJvcGRvd24tYnV0dG9uc1wiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJtb25vXCJcbiAgICAgICAgICAgICAgICAgIFtpY29uXT1cIid0dWlJY29uTG9nT3V0J1wiXG4gICAgICAgICAgICAgICAgICBpY29uUmlnaHQ9XCJcIlxuICAgICAgICAgICAgICAgICAgW3NoYXBlXT1cIm51bGxcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlT25DbGlja05leHQoeyBzdGVwVHlwZTogJ0xPR09VVCcgfSlcIlxuICAgICAgICAgICAgICAgID48L2t3aWt1aS1idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9oZWFkZXI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZGFzaGJvYXJkLWJvZHlcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJtYXBzTG9hZGVkXCJcbiAgICAgICAgW2NsYXNzXT1cImFnZW50U2VydmljZS5zaG93TWFwdmlldyA/ICdtYXAnIDogJ21hcC1oaWRkZW4nXCJcbiAgICAgID5cbiAgICAgICAgPGdvb2dsZS1tYXBcbiAgICAgICAgICAqbmdJZj1cImFnZW50U2VydmljZS5jb25maWc/LmRhc2hib2FyZD8ubWFwVHlwZSA9PSAnZ29vZ2xlLW1hcHMnXCJcbiAgICAgICAgICBbb3B0aW9uc109XCJ0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLm1hcFwiXG4gICAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXAtbWFya2VyXG4gICAgICAgICAgICAjbWFya2VyPVwibWFwTWFya2VyXCJcbiAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICBsZXQgbWFya2VyUG9zaXRpb24gb2YgdGhpcy5nb29nbGVNYXBzU2VydmljZS5hbGxNYXJrZXJzO1xuICAgICAgICAgICAgICBsZXQgaW5kZXggPSBpbmRleFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIFtwb3NpdGlvbl09XCJtYXJrZXJQb3NpdGlvblwiXG4gICAgICAgICAgICBbbGFiZWxdPVwieyB0ZXh0OiBTdHJpbmcoaW5kZXgpIH1cIlxuICAgICAgICAgID48L21hcC1tYXJrZXI+XG4gICAgICAgICAgPG1hcC1kaXJlY3Rpb25zLXJlbmRlcmVyXG4gICAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgICB0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLmRpcmVjdGlvbnNSZXN1bHRzJFxuICAgICAgICAgICAgICAgIHwgYXN5bmMgYXMgZGlyZWN0aW9uc1Jlc3VsdHNcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICBbZGlyZWN0aW9uc109XCJkaXJlY3Rpb25zUmVzdWx0c1wiXG4gICAgICAgICAgICBbb3B0aW9uc109XCJ0aGlzLmdvb2dsZU1hcHNTZXJ2aWNlLmRpcmVjdGlvbnNSZW5kZXJPcHRpb25cIlxuICAgICAgICAgID48L21hcC1kaXJlY3Rpb25zLXJlbmRlcmVyPlxuICAgICAgICA8L2dvb2dsZS1tYXA+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICpuZ0lmPVwiYWdlbnRTZXJ2aWNlLmNvbmZpZz8uZGFzaGJvYXJkPy5tYXBUeXBlID09ICdvcGVuLXN0cmVldCdcIlxuICAgICAgICAgIGlkPVwibWFwXCJcbiAgICAgICAgICBzdHlsZT1cImhlaWdodDogMTAwJVwiXG4gICAgICAgID48L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidGFzay1kZXRhaWxzXCJcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAhYWdlbnRTZXJ2aWNlLmlzTW9iaWxlVmlldyAmJlxuICAgICAgICAgIGFnZW50U2VydmljZS5jdXJyZW50VGFza0RldGFpbHMgIT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgIWFnZW50U2VydmljZS5zaG93TWFwdmlld1xuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8Y3VzdG9tZXItZGV0YWlsc1xuICAgICAgICAgIFtjdXN0b21lcl09XCJhZ2VudFNlcnZpY2UuY3VycmVudFRhc2tEZXRhaWxzXCJcbiAgICAgICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXG4gICAgICAgICAgKG5leHRTdGVwKT1cImhhbmRsZU9uQ2xpY2tOZXh0KCRldmVudClcIlxuICAgICAgICAgIChyZW1vdmVUYXNrKT1cImhhbmRsZU9uQ2xpY2tSZW1vdmVUYXNrKCRldmVudClcIlxuICAgICAgICA+PC9jdXN0b21lci1kZXRhaWxzPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJuby10YXNrLWRldGFpbHNcIlxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICFhZ2VudFNlcnZpY2UuaXNNb2JpbGVWaWV3ICYmXG4gICAgICAgICAgYWdlbnRTZXJ2aWNlLmN1cnJlbnRUYXNrRGV0YWlscyA9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAhYWdlbnRTZXJ2aWNlLnNob3dNYXB2aWV3XG4gICAgICAgIFwiXG4gICAgICA+XG4gICAgICAgIDxpbWcgc3JjPVwiYXNzZXRzL05vLVJlc3VsdHMuanBnXCIgY2xhc3M9XCJuby10YXNrLWltZ1wiIGFsdD1cIk5vIFRhc2tcIiAvPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+U2VsZWN0IGEgVGFzayB0byB2aWV3IGl0J3MgZGV0YWlscy48L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tZXItbGlzdFwiPlxuICAgICAgICA8Y3VzdG9tZXItbGlzdFxuICAgICAgICAgIFtjdXN0b21lcnNdPVwidGFza0xpc3RcIlxuICAgICAgICAgIFtjb25maWddPVwiY29uZmlnXCJcbiAgICAgICAgICAobmV4dFN0ZXApPVwiaGFuZGxlT25DbGlja05leHQoJGV2ZW50KVwiXG4gICAgICAgICAgKHJlbW92ZVRhc2spPVwiaGFuZGxlT25DbGlja1JlbW92ZVRhc2soJGV2ZW50KVwiXG4gICAgICAgICAgKGZpbHRlclRhc2tMaXN0KT1cImhhbmRsZU9uRmlsdGVyVGFza0xpc3QoJGV2ZW50KVwiXG4gICAgICAgID48L2N1c3RvbWVyLWxpc3Q+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImt3aWtpZC1hZ2VudC1kYXNoYm9hcmQtbG9hZGVyXCIgKm5nSWY9XCJsb2FkaW5nXCI+XG4gIDxzcGFuIGNsYXNzPVwibG9hZGVyXCI+PC9zcGFuPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGUgbGV0LW9ic2VydmVyPlxuICA8ZGl2IGNsYXNzPVwiYWRkLXRhc2staGVhZGVyXCI+XG4gICAgPGgyPnt7YWdlbnRTZXJ2aWNlPy5hZGRUYXNrRm9ybT8udGl0bGUgPz8gXCJDcmVhdGUgVXNlclwifX08L2gyPlxuICAgIDxrd2lrdWktYnV0dG9uXG4gICAgICBpY29uPVwidHVpSWNvblhcIlxuICAgICAgaWQ9XCJcIlxuICAgICAgc3R5bGVzPVwiXCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgYXBwZWFyYW5jZT1cIm1vbm9cIlxuICAgICAgW3NoYXBlXT1cIm51bGxcIlxuICAgICAgc2l6ZT1cIm1cIlxuICAgICAgKG9uQ2xpY2spPVwib2JzZXJ2ZXIuY29tcGxldGUoKVwiXG4gICAgPjwva3dpa3VpLWJ1dHRvbj5cbiAgPC9kaXY+XG4gIDxrd2lraWQtZm9ybS12aWV3XG4gICAgW2FsbEZvcm1zRGF0YV09XCJhbGxGb3Jtc0RhdGFcIlxuICAgIFtmb3JtQ29uZmlnXT1cImFnZW50U2VydmljZS5hZGRUYXNrRm9ybVwiXG4gICAgW2lzTW9iaWxlVmlld109XCJ0cnVlXCJcbiAgICAob25DbGlja1ZpZXdGb3Jtcyk9XCJ0aGlzLmhhbmRsZU9uQ2xpY2tWaWV3Rm9ybXMoJGV2ZW50KVwiXG4gICAgKG9uQ2xpY2tTYXZlRm9ybSk9XCJ0aGlzLmhhbmRsZU9uQ2xpY2tTYXZlRm9ybSgkZXZlbnQpXCJcbiAgPjwva3dpa2lkLWZvcm0tdmlldz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|