@hmcts/ccd-case-ui-toolkit 7.0.41 → 7.0.42-exui-2007-rc1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.mjs +107 -104
- package/esm2022/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.mjs +52 -20
- package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +157 -122
- package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
- package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.d.ts +4 -0
- package/lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -18,25 +18,48 @@ function LinkedCasesFromTableComponent_a_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
18
18
|
i0.ɵɵadvance();
|
|
19
19
|
i0.ɵɵtextInterpolate(ctx_r1.showHideLinkText);
|
|
20
20
|
} }
|
|
21
|
+
function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_a_4_Template(rf, ctx) { if (rf & 1) {
|
|
22
|
+
i0.ɵɵelementStart(0, "a", 20);
|
|
23
|
+
i0.ɵɵtext(1);
|
|
24
|
+
i0.ɵɵelementEnd();
|
|
25
|
+
} if (rf & 2) {
|
|
26
|
+
const case_r3 = i0.ɵɵnextContext(3).$implicit;
|
|
27
|
+
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
28
|
+
i0.ɵɵpropertyInterpolate1("href", "cases/case-details/", case_r3.caseReference, "", i0.ɵɵsanitizeUrl);
|
|
29
|
+
i0.ɵɵadvance();
|
|
30
|
+
i0.ɵɵtextInterpolate(ctx_r1.getCaseReferenceLink(case_r3.caseReference));
|
|
31
|
+
} }
|
|
32
|
+
function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_br_5_Template(rf, ctx) { if (rf & 1) {
|
|
33
|
+
i0.ɵɵelement(0, "br");
|
|
34
|
+
} }
|
|
21
35
|
function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_Template(rf, ctx) { if (rf & 1) {
|
|
22
36
|
i0.ɵɵelementStart(0, "span");
|
|
23
37
|
i0.ɵɵtext(1);
|
|
24
38
|
i0.ɵɵpipe(2, "ccdLinkCasesFromReasonValue");
|
|
25
|
-
i0.ɵɵ
|
|
39
|
+
i0.ɵɵelementStart(3, "span");
|
|
40
|
+
i0.ɵɵtemplate(4, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_a_4_Template, 2, 3, "a", 18);
|
|
41
|
+
i0.ɵɵelementEnd();
|
|
42
|
+
i0.ɵɵtemplate(5, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_br_5_Template, 1, 0, "br", 19);
|
|
26
43
|
i0.ɵɵelementEnd();
|
|
27
44
|
} if (rf & 2) {
|
|
28
|
-
const
|
|
45
|
+
const reason_r4 = ctx.$implicit;
|
|
46
|
+
const isLast_r5 = ctx.last;
|
|
47
|
+
const ctx_r1 = i0.ɵɵnextContext(5);
|
|
48
|
+
i0.ɵɵadvance();
|
|
49
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 3, reason_r4), "");
|
|
50
|
+
i0.ɵɵadvance(3);
|
|
51
|
+
i0.ɵɵproperty("ngIf", ctx_r1.hasLeadCaseOrConsolidated(reason_r4.reasonCode));
|
|
29
52
|
i0.ɵɵadvance();
|
|
30
|
-
i0.ɵɵ
|
|
53
|
+
i0.ɵɵproperty("ngIf", !isLast_r5);
|
|
31
54
|
} }
|
|
32
55
|
function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_Template(rf, ctx) { if (rf & 1) {
|
|
33
56
|
i0.ɵɵelementStart(0, "td", 14);
|
|
34
|
-
i0.ɵɵtemplate(1, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_Template,
|
|
57
|
+
i0.ɵɵtemplate(1, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_Template, 6, 5, "span", 17);
|
|
35
58
|
i0.ɵɵelementEnd();
|
|
36
59
|
} if (rf & 2) {
|
|
37
|
-
const
|
|
60
|
+
const details_r6 = ctx.$implicit;
|
|
38
61
|
i0.ɵɵadvance();
|
|
39
|
-
i0.ɵɵproperty("ngForOf",
|
|
62
|
+
i0.ɵɵproperty("ngForOf", details_r6.reasons);
|
|
40
63
|
} }
|
|
41
64
|
function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_Template(rf, ctx) { if (rf & 1) {
|
|
42
65
|
i0.ɵɵelementStart(0, "tr", 5)(1, "td", 11)(2, "p", 12)(3, "a", 13)(4, "span");
|
|
@@ -57,28 +80,28 @@ function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_Template(rf, ctx) {
|
|
|
57
80
|
i0.ɵɵtemplate(18, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_Template, 2, 1, "td", 16);
|
|
58
81
|
i0.ɵɵelementEnd();
|
|
59
82
|
} if (rf & 2) {
|
|
60
|
-
const
|
|
83
|
+
const case_r3 = ctx.$implicit;
|
|
61
84
|
i0.ɵɵadvance(3);
|
|
62
|
-
i0.ɵɵpropertyInterpolate1("href", "cases/case-details/",
|
|
85
|
+
i0.ɵɵpropertyInterpolate1("href", "cases/case-details/", case_r3.caseReference, "", i0.ɵɵsanitizeUrl);
|
|
63
86
|
i0.ɵɵadvance(2);
|
|
64
|
-
i0.ɵɵtextInterpolate1("",
|
|
87
|
+
i0.ɵɵtextInterpolate1("", case_r3.caseNameHmctsInternal, " ");
|
|
65
88
|
i0.ɵɵadvance(2);
|
|
66
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(8, 10,
|
|
89
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(8, 10, case_r3.caseReference), "");
|
|
67
90
|
i0.ɵɵadvance(3);
|
|
68
|
-
i0.ɵɵproperty("title",
|
|
91
|
+
i0.ɵɵproperty("title", case_r3.ccdCaseTypeDescription);
|
|
69
92
|
i0.ɵɵadvance();
|
|
70
|
-
i0.ɵɵtextInterpolate(
|
|
93
|
+
i0.ɵɵtextInterpolate(case_r3.ccdCaseType);
|
|
71
94
|
i0.ɵɵadvance(3);
|
|
72
|
-
i0.ɵɵtextInterpolate(
|
|
95
|
+
i0.ɵɵtextInterpolate(case_r3.ccdJurisdiction);
|
|
73
96
|
i0.ɵɵadvance(2);
|
|
74
|
-
i0.ɵɵproperty("title",
|
|
97
|
+
i0.ɵɵproperty("title", case_r3.stateDescription);
|
|
75
98
|
i0.ɵɵadvance();
|
|
76
|
-
i0.ɵɵtextInterpolate(
|
|
99
|
+
i0.ɵɵtextInterpolate(case_r3.state);
|
|
77
100
|
i0.ɵɵadvance();
|
|
78
|
-
i0.ɵɵproperty("ngForOf",
|
|
101
|
+
i0.ɵɵproperty("ngForOf", case_r3.linkDetails);
|
|
79
102
|
} }
|
|
80
103
|
function LinkedCasesFromTableComponent_table_1_tbody_13_tr_2_Template(rf, ctx) { if (rf & 1) {
|
|
81
|
-
i0.ɵɵelementStart(0, "tr", 5)(1, "td",
|
|
104
|
+
i0.ɵɵelementStart(0, "tr", 5)(1, "td", 21);
|
|
82
105
|
i0.ɵɵtext(2, " None ");
|
|
83
106
|
i0.ɵɵelementEnd()();
|
|
84
107
|
} }
|
|
@@ -121,6 +144,8 @@ export class LinkedCasesFromTableComponent {
|
|
|
121
144
|
casesService;
|
|
122
145
|
linkedCasesService;
|
|
123
146
|
static CASE_NAME_MISSING_TEXT = 'Case name missing';
|
|
147
|
+
static CASE_CONSOLIDATED_REASON_CODE = 'CLRC015';
|
|
148
|
+
static CASE_PROGRESS_REASON_CODE = 'CLRC016';
|
|
124
149
|
caseField;
|
|
125
150
|
notifyAPIFailure = new EventEmitter(false);
|
|
126
151
|
caseDetails;
|
|
@@ -187,13 +212,20 @@ export class LinkedCasesFromTableComponent {
|
|
|
187
212
|
mapLookupIDToValueFromJurisdictions(fieldName, fieldValue) {
|
|
188
213
|
return this.linkedCasesService.mapLookupIDToValueFromJurisdictions(fieldName, fieldValue);
|
|
189
214
|
}
|
|
215
|
+
getCaseReferenceLink(caseRef) {
|
|
216
|
+
return caseRef.slice(this.caseId.length - 4);
|
|
217
|
+
}
|
|
218
|
+
hasLeadCaseOrConsolidated(reasonCode) {
|
|
219
|
+
return reasonCode === LinkedCasesFromTableComponent.CASE_PROGRESS_REASON_CODE ||
|
|
220
|
+
reasonCode === LinkedCasesFromTableComponent.CASE_CONSOLIDATED_REASON_CODE;
|
|
221
|
+
}
|
|
190
222
|
onClick() {
|
|
191
223
|
this.showHideLinkText = this.showHideLinkText === 'Show'
|
|
192
224
|
? 'Hide'
|
|
193
225
|
: 'Show';
|
|
194
226
|
}
|
|
195
227
|
static ɵfac = function LinkedCasesFromTableComponent_Factory(t) { return new (t || LinkedCasesFromTableComponent)(i0.ɵɵdirectiveInject(i1.ActivatedRoute), i0.ɵɵdirectiveInject(i2.CasesService), i0.ɵɵdirectiveInject(i3.LinkedCasesService)); };
|
|
196
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LinkedCasesFromTableComponent, selectors: [["ccd-linked-cases-from-table"]], inputs: { caseField: "caseField" }, outputs: { notifyAPIFailure: "notifyAPIFailure" }, decls: 2, vars: 2, consts: [["id", "show-hide-link", "class", "govuk-link", "href", "javascript:void(0)", 3, "click", 4, "ngIf"], ["aria-describedby", "table to display cases linked from", 4, "ngIf"], ["id", "show-hide-link", "href", "javascript:void(0)", 1, "govuk-link", 3, "click"], ["aria-describedby", "table to display cases linked from"], [1, "govuk-table__head"], [1, "govuk-table__row"], ["scope", "col", "width", "20%", 1, "govuk-table__header", "case-table-column"], ["class", "govuk-table__body", 4, "ngIf"], [1, "govuk-table__body"], ["class", "govuk-table__row", 4, "ngFor", "ngForOf"], ["class", "govuk-table__row", 4, "ngIf"], [1, "govuk-table__header", "case-table-column", "width-20"], [1, "govuk-body"], ["target", "_blank", "rel", "noopener", 1, "govuk-link", 3, "href"], [1, "case-table-column"], [3, "title"], ["class", "case-table-column", 4, "ngFor", "ngForOf"], [4, "ngFor", "ngForOf"], ["colspan", "5", 1, "govuk-table__cell"]], template: function LinkedCasesFromTableComponent_Template(rf, ctx) { if (rf & 1) {
|
|
228
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LinkedCasesFromTableComponent, selectors: [["ccd-linked-cases-from-table"]], inputs: { caseField: "caseField" }, outputs: { notifyAPIFailure: "notifyAPIFailure" }, decls: 2, vars: 2, consts: [["id", "show-hide-link", "class", "govuk-link", "href", "javascript:void(0)", 3, "click", 4, "ngIf"], ["aria-describedby", "table to display cases linked from", 4, "ngIf"], ["id", "show-hide-link", "href", "javascript:void(0)", 1, "govuk-link", 3, "click"], ["aria-describedby", "table to display cases linked from"], [1, "govuk-table__head"], [1, "govuk-table__row"], ["scope", "col", "width", "20%", 1, "govuk-table__header", "case-table-column"], ["class", "govuk-table__body", 4, "ngIf"], [1, "govuk-table__body"], ["class", "govuk-table__row", 4, "ngFor", "ngForOf"], ["class", "govuk-table__row", 4, "ngIf"], [1, "govuk-table__header", "case-table-column", "width-20"], [1, "govuk-body"], ["target", "_blank", "rel", "noopener", 1, "govuk-link", 3, "href"], [1, "case-table-column"], [3, "title"], ["class", "case-table-column", 4, "ngFor", "ngForOf"], [4, "ngFor", "ngForOf"], ["class", "govuk-!-padding-left-1", 3, "href", 4, "ngIf"], [4, "ngIf"], [1, "govuk-!-padding-left-1", 3, "href"], ["colspan", "5", 1, "govuk-table__cell"]], template: function LinkedCasesFromTableComponent_Template(rf, ctx) { if (rf & 1) {
|
|
197
229
|
i0.ɵɵtemplate(0, LinkedCasesFromTableComponent_a_0_Template, 2, 1, "a", 0)(1, LinkedCasesFromTableComponent_table_1_Template, 14, 1, "table", 1);
|
|
198
230
|
} if (rf & 2) {
|
|
199
231
|
i0.ɵɵproperty("ngIf", !ctx.noLinkedCases && !ctx.isServerError);
|
|
@@ -203,11 +235,11 @@ export class LinkedCasesFromTableComponent {
|
|
|
203
235
|
}
|
|
204
236
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LinkedCasesFromTableComponent, [{
|
|
205
237
|
type: Component,
|
|
206
|
-
args: [{ selector: 'ccd-linked-cases-from-table', template: "<a *ngIf=\"!noLinkedCases && !isServerError\" id=\"show-hide-link\" class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"onClick()\">{{showHideLinkText}}</a>\n<table *ngIf=\"(getLinkedCasesResponse && showHideLinkText === 'Hide') || noLinkedCases\"\n aria-describedby=\"table to display cases linked from\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">Case name and number</th>\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">Case type </th>\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">Service</th>\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">State</th>\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">Reasons for case link</th>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\" *ngIf=\"getLinkedCasesResponse && (!isServerError && !isServerReasonCodeError)\">\n <tr class=\"govuk-table__row\" *ngFor=\"let case of getLinkedCasesResponse\">\n <td class=\"govuk-table__header case-table-column width-20\">\n <p class=\"govuk-body\"><a target=\"_blank\" class=\"govuk-link\" href=\"cases/case-details/{{case.caseReference}}\"\n rel=\"noopener\"><span>{{case.caseNameHmctsInternal}} <br>\n {{case.caseReference | ccdCaseReference}}</span></a></p>\n </td>\n <td class=\"case-table-column\"><span [title]=\"case.ccdCaseTypeDescription\">{{case.ccdCaseType}}</span></td>\n <td class=\"case-table-column\"><span>{{case.ccdJurisdiction}}</span></td>\n <td class=\"case-table-column\"><span [title]=\"case.stateDescription\">{{case.state}}</span></td>\n <td class=\"case-table-column\" *ngFor=\"let details of case.linkDetails\">\n <span *ngFor=\"let reason of details.reasons; let i = index; let isLast = last\">\n {{reason | ccdLinkCasesFromReasonValue}} <br
|
|
238
|
+
args: [{ selector: 'ccd-linked-cases-from-table', template: "<a *ngIf=\"!noLinkedCases && !isServerError\" id=\"show-hide-link\" class=\"govuk-link\" href=\"javascript:void(0)\"\n (click)=\"onClick()\">{{showHideLinkText}}</a>\n<table *ngIf=\"(getLinkedCasesResponse && showHideLinkText === 'Hide') || noLinkedCases\"\n aria-describedby=\"table to display cases linked from\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">Case name and number</th>\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">Case type </th>\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">Service</th>\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">State</th>\n <th scope=\"col\" class=\"govuk-table__header case-table-column\" width=\"20%\">Reasons for case link</th>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\" *ngIf=\"getLinkedCasesResponse && (!isServerError && !isServerReasonCodeError)\">\n <tr class=\"govuk-table__row\" *ngFor=\"let case of getLinkedCasesResponse\">\n <td class=\"govuk-table__header case-table-column width-20\">\n <p class=\"govuk-body\"><a target=\"_blank\" class=\"govuk-link\" href=\"cases/case-details/{{case.caseReference}}\"\n rel=\"noopener\"><span>{{case.caseNameHmctsInternal}} <br>\n {{case.caseReference | ccdCaseReference}}</span></a></p>\n </td>\n <td class=\"case-table-column\"><span [title]=\"case.ccdCaseTypeDescription\">{{case.ccdCaseType}}</span></td>\n <td class=\"case-table-column\"><span>{{case.ccdJurisdiction}}</span></td>\n <td class=\"case-table-column\"><span [title]=\"case.stateDescription\">{{case.state}}</span></td>\n <td class=\"case-table-column\" *ngFor=\"let details of case.linkDetails\">\n <span *ngFor=\"let reason of details.reasons; let i = index; let isLast = last\">\n {{reason | ccdLinkCasesFromReasonValue}}<span><a class=\"govuk-!-padding-left-1\"\n href=\"cases/case-details/{{ case.caseReference }}\"\n *ngIf=\"hasLeadCaseOrConsolidated(reason.reasonCode)\">{{getCaseReferenceLink(case.caseReference)}}</a></span>\n <br *ngIf=\"!isLast\" />\n </span>\n </td>\n </tr>\n <tr class=\"govuk-table__row\" *ngIf=\"noLinkedCases\">\n <td class=\"govuk-table__cell\" colspan=\"5\">\n None\n </td>\n </tr>\n </tbody> \n</table>\n", styles: [".case-table-column{min-width:20%;max-width:20%}.heading-h2{margin-bottom:0}\n"] }]
|
|
207
239
|
}], () => [{ type: i1.ActivatedRoute }, { type: i2.CasesService }, { type: i3.LinkedCasesService }], { caseField: [{
|
|
208
240
|
type: Input
|
|
209
241
|
}], notifyAPIFailure: [{
|
|
210
242
|
type: Output
|
|
211
243
|
}] }); })();
|
|
212
244
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LinkedCasesFromTableComponent, { className: "LinkedCasesFromTableComponent", filePath: "lib/shared/components/palette/linked-cases/components/linked-cases-table/linked-cases-from-table.component.ts", lineNumber: 17 }); })();
|
|
213
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2VkLWNhc2VzLWZyb20tdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL2NvbXBvbmVudHMvbGlua2VkLWNhc2VzLXRhYmxlL2xpbmtlZC1jYXNlcy1mcm9tLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2xpbmtlZC1jYXNlcy9jb21wb25lbnRzL2xpbmtlZC1jYXNlcy10YWJsZS9saW5rZWQtY2FzZXMtZnJvbS10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztJQ1JwRCw0QkFDc0I7SUFBcEIsa0xBQVMsZ0JBQVMsS0FBQztJQUFDLFlBQW9CO0lBQUEsaUJBQUk7OztJQUF4QixjQUFvQjtJQUFwQiw2Q0FBb0I7OztJQXVCbEMsNEJBQStFO0lBQzdFLFlBQXlDOztJQUFBLHFCQUFJO0lBQy9DLGlCQUFPOzs7SUFETCxjQUF5QztJQUF6QyxnRUFBeUM7OztJQUY3Qyw4QkFBdUU7SUFDckUsNkdB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c0Isc0VBRWtDOztZQUhwRCwrREFBc0M7WUFFbEMsY0FBOEU7WUFBOUUseUdBQThFOzs7aUZEY3pFLDZCQUE2QjtjQU56QyxTQUFTOzJCQUNFLDZCQUE2QjsyR0FTaEMsU0FBUztrQkFEZixLQUFLO1lBSUMsZ0JBQWdCO2tCQUR0QixNQUFNOztrRkFOSSw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYXNlVmlldyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBDYXNlRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4vZGVmaW5pdGlvbic7XG5pbXBvcnQgeyBMb3ZSZWZEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy9jb21tb24tZGF0YS1zZXJ2aWNlL2NvbW1vbi1kYXRhLXNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FzZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY2FzZS1lZGl0b3Ivc2VydmljZXMvY2FzZXMuc2VydmljZSc7XG5pbXBvcnQgeyBDYXNlTGlua1Jlc3BvbnNlLCBMaW5rZWRDYXNlc1Jlc3BvbnNlIH0gZnJvbSAnLi4vLi4vZG9tYWluL2xpbmtlZC1jYXNlcy5tb2RlbCc7XG5pbXBvcnQgeyBMaW5rZWRDYXNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1saW5rZWQtY2FzZXMtZnJvbS10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9saW5rZWQtY2FzZXMtZnJvbS10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpbmtlZC1jYXNlcy1mcm9tLXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5cbmV4cG9ydCBjbGFzcyBMaW5rZWRDYXNlc0Zyb21UYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IENBU0VfTkFNRV9NSVNTSU5HX1RFWFQgPSAnQ2FzZSBuYW1lIG1pc3NpbmcnO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjYXNlRmllbGQ6IENhc2VGaWVsZDtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG5vdGlmeUFQSUZhaWx1cmU6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoZmFsc2UpO1xuICBwdWJsaWMgY2FzZURldGFpbHM6IENhc2VWaWV3O1xuICBwdWJsaWMgcGFyZW50VXJsOiBzdHJpbmc7XG4gIHB1YmxpYyBpc0xvYWRlZDogYm9vbGVhbjtcbiAgcHVibGljIGdldExpbmtlZENhc2VzUmVzcG9uc2U6IENhc2VMaW5rUmVzcG9uc2VbXTtcbiAgcHVibGljIGxpbmtlZENhc2VSZWFzb25zOiBMb3ZSZWZEYXRhTW9kZWxbXTtcblxuICBwdWJsaWMgY2FzZUlkOiBzdHJpbmc7XG4gIHB1YmxpYyBzaG93SGlkZUxpbmtUZXh0ID0gJ1Nob3cnO1xuICBwdWJsaWMgbm9MaW5rZWRDYXNlcyA9IHRydWU7XG4gIHB1YmxpYyBpc1NlcnZlckVycm9yID0gZmFsc2U7XG4gIHB1YmxpYyBpc1NlcnZlclJlYXNvbkNvZGVFcnJvciA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FzZXNTZXJ2aWNlOiBDYXNlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaW5rZWRDYXNlc1NlcnZpY2U6IExpbmtlZENhc2VzU2VydmljZSxcbiAgICApIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgbGFiZWxGaWVsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2Nhc2Utdmlld2VyLWxhYmVsJyk7XG4gICAgaWYgKGxhYmVsRmllbGQgJiYgbGFiZWxGaWVsZC5sZW5ndGgpIHtcbiAgICAgIGxhYmVsRmllbGRbMF0ucmVwbGFjZVdpdGgoJycpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZldGNoUGFnZURhdGEoKTtcbiAgICBpZiAodGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmNhc2UpIHtcbiAgICAgIHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VEZXRhaWxzID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmNhc2U7XG4gICAgfVxuICAgIHRoaXMuaXNTZXJ2ZXJSZWFzb25Db2RlRXJyb3IgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5pc1NlcnZlclJlYXNvbkNvZGVFcnJvcjtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaFBhZ2VEYXRhKCkge1xuICAgIHRoaXMuY2FzZUlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhLmNhc2UuY2FzZV9pZDtcbiAgICB0aGlzLmdldExpbmtlZENhc2VzKCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IHJlc3BvbnNlID0+IHtcbiAgICAgICAgdGhpcy5pc1NlcnZlckVycm9yID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZ2V0TGlua2VkQ2FzZXNSZXNwb25zZSA9IHJlc3BvbnNlLmxpbmtlZENhc2VzICYmIHJlc3BvbnNlLmxpbmtlZENhc2VzLm1hcChpdGVtID0+IHtcbiAgICAgICAgICBjb25zdCBtYXBwZWRDYXNldHlwZSA9IHRoaXMubWFwTG9va3VwSURUb1ZhbHVlRnJvbUp1cmlzZGljdGlvbnMoJ0NBU0VfVFlQRScsIGl0ZW0uY2NkQ2FzZVR5cGUpO1xuICAgICAgICAgIGNvbnN0IG1hcHBlZENhc2V0eXBlRGVzY3JpcHRpb24gPSB0aGlzLm1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKCdDQVNFX1RZUEVfREVTQ1JJUFRJT04nLCBpdGVtLmNjZENhc2VUeXBlKTtcbiAgICAgICAgICBjb25zdCBtYXBwZWRDYXNlU3RhdGUgPSB0aGlzLm1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKCdTVEFURScsIGl0ZW0uc3RhdGUpO1xuICAgICAgICAgIGNvbnN0IG1hcHBlZENhc2VTdGF0ZURlc2NyaXB0aW9uID0gdGhpcy5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucygnU1RBVEVfREVTQ1JJUFRJT04nLCBpdGVtLnN0YXRlKTtcbiAgICAgICAgICBjb25zdCBtYXBwZWRDYXNlU2VydmljZSA9IHRoaXMubWFwTG9va3VwSURUb1ZhbHVlRnJvbUp1cmlzZGljdGlvbnMoJ0pVUklTRElDVElPTicsIGl0ZW0uY2NkSnVyaXNkaWN0aW9uKTtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgIGNjZENhc2VUeXBlOiBtYXBwZWRDYXNldHlwZSxcbiAgICAgICAgICAgIGNjZENhc2VUeXBlRGVzY3JpcHRpb246IG1hcHBlZENhc2V0eXBlRGVzY3JpcHRpb24sXG4gICAgICAgICAgICBjY2RKdXJpc2RpY3Rpb246IG1hcHBlZENhc2VTZXJ2aWNlLFxuICAgICAgICAgICAgc3RhdGU6IG1hcHBlZENhc2VTdGF0ZSxcbiAgICAgICAgICAgIHN0YXRlRGVzY3JpcHRpb246IG1hcHBlZENhc2VTdGF0ZURlc2NyaXB0aW9uLFxuICAgICAgICAgICAgY2FzZU5hbWVIbWN0c0ludGVybmFsOiBpdGVtLmNhc2VOYW1lSG1jdHNJbnRlcm5hbCB8fCBMaW5rZWRDYXNlc0Zyb21UYWJsZUNvbXBvbmVudC5DQVNFX05BTUVfTUlTU0lOR19URVhULFxuICAgICAgICAgICAgbGlua0RldGFpbHM6IGl0ZW0ubGlua0RldGFpbHNcbiAgICAgICAgICB9IGFzIENhc2VMaW5rUmVzcG9uc2U7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLm5vTGlua2VkQ2FzZXMgPSAhcmVzcG9uc2UubGlua2VkQ2FzZXMgfHwgIXJlc3BvbnNlLmxpbmtlZENhc2VzLmxlbmd0aDtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICB0aGlzLmlzU2VydmVyRXJyb3IgPSB0cnVlO1xuICAgICAgICB0aGlzLm5vdGlmeUFQSUZhaWx1cmUuZW1pdCh0cnVlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRMaW5rZWRDYXNlcygpOiBPYnNlcnZhYmxlPExpbmtlZENhc2VzUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYXNlc1NlcnZpY2UuZ2V0TGlua2VkQ2FzZXModGhpcy5jYXNlSWQpO1xuICB9XG5cbiAgcHVibGljIG1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKGZpZWxkTmFtZSwgZmllbGRWYWx1ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLm1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKGZpZWxkTmFtZSwgZmllbGRWYWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dIaWRlTGlua1RleHQgPSB0aGlzLnNob3dIaWRlTGlua1RleHQgPT09ICdTaG93J1xuICAgICAgPyAnSGlkZSdcbiAgICAgIDogJ1Nob3cnO1xuICB9XG59XG4iLCI8YSAqbmdJZj1cIiFub0xpbmtlZENhc2VzICYmICFpc1NlcnZlckVycm9yXCIgaWQ9XCJzaG93LWhpZGUtbGlua1wiIGNsYXNzPVwiZ292dWstbGlua1wiIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxuICAoY2xpY2spPVwib25DbGljaygpXCI+e3tzaG93SGlkZUxpbmtUZXh0fX08L2E+XG48dGFibGUgKm5nSWY9XCIoZ2V0TGlua2VkQ2FzZXNSZXNwb25zZSAmJiBzaG93SGlkZUxpbmtUZXh0ID09PSAnSGlkZScpIHx8IG5vTGlua2VkQ2FzZXNcIlxuICBhcmlhLWRlc2NyaWJlZGJ5PVwidGFibGUgdG8gZGlzcGxheSBjYXNlcyBsaW5rZWQgZnJvbVwiPlxuICA8dGhlYWQgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZFwiPlxuICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIj5cbiAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtblwiIHdpZHRoPVwiMjAlXCI+Q2FzZSBuYW1lIGFuZCBudW1iZXI8L3RoPlxuICAgICAgPHRoIHNjb3BlPVwiY29sXCIgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZGVyIGNhc2UtdGFibGUtY29sdW1uXCIgd2lkdGg9XCIyMCVcIj5DYXNlIHR5cGUgPC90aD5cbiAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtblwiIHdpZHRoPVwiMjAlXCI+U2VydmljZTwvdGg+XG4gICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXIgY2FzZS10YWJsZS1jb2x1bW5cIiB3aWR0aD1cIjIwJVwiPlN0YXRlPC90aD5cbiAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtblwiIHdpZHRoPVwiMjAlXCI+UmVhc29ucyBmb3IgY2FzZSBsaW5rPC90aD5cbiAgICA8L3RyPlxuICA8L3RoZWFkPlxuICA8dGJvZHkgY2xhc3M9XCJnb3Z1ay10YWJsZV9fYm9keVwiICpuZ0lmPVwiZ2V0TGlua2VkQ2FzZXNSZXNwb25zZSAmJiAoIWlzU2VydmVyRXJyb3IgJiYgIWlzU2VydmVyUmVhc29uQ29kZUVycm9yKVwiPlxuICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIiAqbmdGb3I9XCJsZXQgY2FzZSBvZiBnZXRMaW5rZWRDYXNlc1Jlc3BvbnNlXCI+XG4gICAgICA8dGQgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZGVyIGNhc2UtdGFibGUtY29sdW1uIHdpZHRoLTIwXCI+XG4gICAgICAgIDxwIGNsYXNzPVwiZ292dWstYm9keVwiPjxhIHRhcmdldD1cIl9ibGFua1wiIGNsYXNzPVwiZ292dWstbGlua1wiIGhyZWY9XCJjYXNlcy9jYXNlLWRldGFpbHMve3tjYXNlLmNhc2VSZWZlcmVuY2V9fVwiXG4gICAgICAgICAgICByZWw9XCJub29wZW5lclwiPjxzcGFuPnt7Y2FzZS5jYXNlTmFtZUhtY3RzSW50ZXJuYWx9fSA8YnI+XG4gICAgICAgICAgICAgIHt7Y2FzZS5jYXNlUmVmZXJlbmNlIHwgY2NkQ2FzZVJlZmVyZW5jZX19PC9zcGFuPjwvYT48L3A+XG4gICAgICA8L3RkPlxuICAgICAgPHRkIGNsYXNzPVwiY2FzZS10YWJsZS1jb2x1bW5cIj48c3BhbiBbdGl0bGVdPVwiY2FzZS5jY2RDYXNlVHlwZURlc2NyaXB0aW9uXCI+e3tjYXNlLmNjZENhc2VUeXBlfX08L3NwYW4+PC90ZD5cbiAgICAgIDx0ZCBjbGFzcz1cImNhc2UtdGFibGUtY29sdW1uXCI+PHNwYW4+e3tjYXNlLmNjZEp1cmlzZGljdGlvbn19PC9zcGFuPjwvdGQ+XG4gICAgICA8dGQgY2xhc3M9XCJjYXNlLXRhYmxlLWNvbHVtblwiPjxzcGFuIFt0aXRsZV09XCJjYXNlLnN0YXRlRGVzY3JpcHRpb25cIj57e2Nhc2Uuc3RhdGV9fTwvc3Bhbj48L3RkPlxuICAgICAgPHRkIGNsYXNzPVwiY2FzZS10YWJsZS1jb2x1bW5cIiAqbmdGb3I9XCJsZXQgZGV0YWlscyBvZiBjYXNlLmxpbmtEZXRhaWxzXCI+XG4gICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCByZWFzb24gb2YgZGV0YWlscy5yZWFzb25zOyBsZXQgaSA9IGluZGV4OyBsZXQgaXNMYXN0ID0gbGFzdFwiPlxuICAgICAgICAgIHt7cmVhc29uIHwgY2NkTGlua0Nhc2VzRnJvbVJlYXNvblZhbHVlfX0gPGJyPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3RkPlxuICAgIDwvdHI+XG4gICAgPHRyIGNsYXNzPVwiZ292dWstdGFibGVfX3Jvd1wiICpuZ0lmPVwibm9MaW5rZWRDYXNlc1wiPlxuICAgICAgPHRkIGNsYXNzPVwiZ292dWstdGFibGVfX2NlbGxcIiBjb2xzcGFuPVwiNVwiPlxuICAgICAgICBOb25lXG4gICAgICA8L3RkPlxuICAgIDwvdHI+XG4gICAgPC90Ym9keT4gIFxuPC90YWJsZT5cbiJdfQ==
|
|
245
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2VkLWNhc2VzLWZyb20tdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL2NvbXBvbmVudHMvbGlua2VkLWNhc2VzLXRhYmxlL2xpbmtlZC1jYXNlcy1mcm9tLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2xpbmtlZC1jYXNlcy9jb21wb25lbnRzL2xpbmtlZC1jYXNlcy10YWJsZS9saW5rZWQtY2FzZXMtZnJvbS10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztJQ1JwRCw0QkFDc0I7SUFBcEIsa0xBQVMsZ0JBQVMsS0FBQztJQUFDLFlBQW9CO0lBQUEsaUJBQUk7OztJQUF4QixjQUFvQjtJQUFwQiw2Q0FBb0I7OztJQXdCYyw2QkFFUztJQUFBLFlBQTRDO0lBQUEsaUJBQUk7Ozs7SUFEckcscUdBQWtEO0lBQ0csY0FBNEM7SUFBNUMsd0VBQTRDOzs7SUFDckcscUJBQXNCOzs7SUFKdEIsNEJB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RUFBRSxVQUFVO1FBQzlELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1DQUFtQyxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRU0sb0JBQW9CLENBQUMsT0FBZTtRQUN6QyxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVNLHlCQUF5QixDQUFDLFVBQWtCO1FBQ2pELE9BQU8sVUFBVSxLQUFLLDZCQUE2QixDQUFDLHlCQUF5QjtZQUMzRSxVQUFVLEtBQUssNkJBQTZCLENBQUMsNkJBQTZCLENBQUM7SUFDL0UsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixLQUFLLE1BQU07WUFDdEQsQ0FBQyxDQUFDLE1BQU07WUFDUixDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2IsQ0FBQzt1RkFoR1UsNkJBQTZCOzZEQUE3Qiw2QkFBNkI7WUNkMUMsQUFGQSwwRUFDc0Isc0VBRWtDOztZQUhwRCwrREFBc0M7WUFFbEMsY0FBOEU7WUFBOUUseUdBQThFOzs7aUZEY3pFLDZCQUE2QjtjQU56QyxTQUFTOzJCQUNFLDZCQUE2QjsyR0FXaEMsU0FBUztrQkFEZixLQUFLO1lBSUMsZ0JBQWdCO2tCQUR0QixNQUFNOztrRkFSSSw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYXNlVmlldyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBDYXNlRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4vZGVmaW5pdGlvbic7XG5pbXBvcnQgeyBMb3ZSZWZEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy9jb21tb24tZGF0YS1zZXJ2aWNlL2NvbW1vbi1kYXRhLXNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FzZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY2FzZS1lZGl0b3Ivc2VydmljZXMvY2FzZXMuc2VydmljZSc7XG5pbXBvcnQgeyBDYXNlTGlua1Jlc3BvbnNlLCBMaW5rZWRDYXNlc1Jlc3BvbnNlIH0gZnJvbSAnLi4vLi4vZG9tYWluL2xpbmtlZC1jYXNlcy5tb2RlbCc7XG5pbXBvcnQgeyBMaW5rZWRDYXNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1saW5rZWQtY2FzZXMtZnJvbS10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9saW5rZWQtY2FzZXMtZnJvbS10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpbmtlZC1jYXNlcy1mcm9tLXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5cbmV4cG9ydCBjbGFzcyBMaW5rZWRDYXNlc0Zyb21UYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IENBU0VfTkFNRV9NSVNTSU5HX1RFWFQgPSAnQ2FzZSBuYW1lIG1pc3NpbmcnO1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBDQVNFX0NPTlNPTElEQVRFRF9SRUFTT05fQ09ERSA9ICdDTFJDMDE1JztcbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgQ0FTRV9QUk9HUkVTU19SRUFTT05fQ09ERSA9ICdDTFJDMDE2JztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY2FzZUZpZWxkOiBDYXNlRmllbGQ7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBub3RpZnlBUElGYWlsdXJlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKGZhbHNlKTtcbiAgcHVibGljIGNhc2VEZXRhaWxzOiBDYXNlVmlldztcbiAgcHVibGljIHBhcmVudFVybDogc3RyaW5nO1xuICBwdWJsaWMgaXNMb2FkZWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBnZXRMaW5rZWRDYXNlc1Jlc3BvbnNlOiBDYXNlTGlua1Jlc3BvbnNlW107XG4gIHB1YmxpYyBsaW5rZWRDYXNlUmVhc29uczogTG92UmVmRGF0YU1vZGVsW107XG5cbiAgcHVibGljIGNhc2VJZDogc3RyaW5nO1xuICBwdWJsaWMgc2hvd0hpZGVMaW5rVGV4dCA9ICdTaG93JztcbiAgcHVibGljIG5vTGlua2VkQ2FzZXMgPSB0cnVlO1xuICBwdWJsaWMgaXNTZXJ2ZXJFcnJvciA9IGZhbHNlO1xuICBwdWJsaWMgaXNTZXJ2ZXJSZWFzb25Db2RlRXJyb3IgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhc2VzU2VydmljZTogQ2FzZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGlua2VkQ2FzZXNTZXJ2aWNlOiBMaW5rZWRDYXNlc1NlcnZpY2UsXG4gICAgKSB7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGxhYmVsRmllbGQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdjYXNlLXZpZXdlci1sYWJlbCcpO1xuICAgIGlmIChsYWJlbEZpZWxkICYmIGxhYmVsRmllbGQubGVuZ3RoKSB7XG4gICAgICBsYWJlbEZpZWxkWzBdLnJlcGxhY2VXaXRoKCcnKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mZXRjaFBhZ2VEYXRhKCk7XG4gICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlKSB7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRGV0YWlscyA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlO1xuICAgIH1cbiAgICB0aGlzLmlzU2VydmVyUmVhc29uQ29kZUVycm9yID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuaXNTZXJ2ZXJSZWFzb25Db2RlRXJyb3I7XG4gIH1cblxuICBwdWJsaWMgZmV0Y2hQYWdlRGF0YSgpIHtcbiAgICB0aGlzLmNhc2VJZCA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlLmNhc2VfaWQ7XG4gICAgdGhpcy5nZXRMaW5rZWRDYXNlcygpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiByZXNwb25zZSA9PiB7XG4gICAgICAgIHRoaXMuaXNTZXJ2ZXJFcnJvciA9IGZhbHNlO1xuICAgICAgICB0aGlzLmdldExpbmtlZENhc2VzUmVzcG9uc2UgPSByZXNwb25zZS5saW5rZWRDYXNlcyAmJiByZXNwb25zZS5saW5rZWRDYXNlcy5tYXAoaXRlbSA9PiB7XG4gICAgICAgICAgY29uc3QgbWFwcGVkQ2FzZXR5cGUgPSB0aGlzLm1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKCdDQVNFX1RZUEUnLCBpdGVtLmNjZENhc2VUeXBlKTtcbiAgICAgICAgICBjb25zdCBtYXBwZWRDYXNldHlwZURlc2NyaXB0aW9uID0gdGhpcy5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucygnQ0FTRV9UWVBFX0RFU0NSSVBUSU9OJywgaXRlbS5jY2RDYXNlVHlwZSk7XG4gICAgICAgICAgY29uc3QgbWFwcGVkQ2FzZVN0YXRlID0gdGhpcy5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucygnU1RBVEUnLCBpdGVtLnN0YXRlKTtcbiAgICAgICAgICBjb25zdCBtYXBwZWRDYXNlU3RhdGVEZXNjcmlwdGlvbiA9IHRoaXMubWFwTG9va3VwSURUb1ZhbHVlRnJvbUp1cmlzZGljdGlvbnMoJ1NUQVRFX0RFU0NSSVBUSU9OJywgaXRlbS5zdGF0ZSk7XG4gICAgICAgICAgY29uc3QgbWFwcGVkQ2FzZVNlcnZpY2UgPSB0aGlzLm1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKCdKVVJJU0RJQ1RJT04nLCBpdGVtLmNjZEp1cmlzZGljdGlvbik7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICBjY2RDYXNlVHlwZTogbWFwcGVkQ2FzZXR5cGUsXG4gICAgICAgICAgICBjY2RDYXNlVHlwZURlc2NyaXB0aW9uOiBtYXBwZWRDYXNldHlwZURlc2NyaXB0aW9uLFxuICAgICAgICAgICAgY2NkSnVyaXNkaWN0aW9uOiBtYXBwZWRDYXNlU2VydmljZSxcbiAgICAgICAgICAgIHN0YXRlOiBtYXBwZWRDYXNlU3RhdGUsXG4gICAgICAgICAgICBzdGF0ZURlc2NyaXB0aW9uOiBtYXBwZWRDYXNlU3RhdGVEZXNjcmlwdGlvbixcbiAgICAgICAgICAgIGNhc2VOYW1lSG1jdHNJbnRlcm5hbDogaXRlbS5jYXNlTmFtZUhtY3RzSW50ZXJuYWwgfHwgTGlua2VkQ2FzZXNGcm9tVGFibGVDb21wb25lbnQuQ0FTRV9OQU1FX01JU1NJTkdfVEVYVCxcbiAgICAgICAgICAgIGxpbmtEZXRhaWxzOiBpdGVtLmxpbmtEZXRhaWxzXG4gICAgICAgICAgfSBhcyBDYXNlTGlua1Jlc3BvbnNlO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5ub0xpbmtlZENhc2VzID0gIXJlc3BvbnNlLmxpbmtlZENhc2VzIHx8ICFyZXNwb25zZS5saW5rZWRDYXNlcy5sZW5ndGg7XG4gICAgICB9LFxuICAgICAgZXJyb3I6ICgpID0+IHtcbiAgICAgICAgdGhpcy5pc1NlcnZlckVycm9yID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5ub3RpZnlBUElGYWlsdXJlLmVtaXQodHJ1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGlua2VkQ2FzZXMoKTogT2JzZXJ2YWJsZTxMaW5rZWRDYXNlc1Jlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FzZXNTZXJ2aWNlLmdldExpbmtlZENhc2VzKHRoaXMuY2FzZUlkKTtcbiAgfVxuXG4gIHB1YmxpYyBtYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucyhmaWVsZE5hbWUsIGZpZWxkVmFsdWUpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucyhmaWVsZE5hbWUsIGZpZWxkVmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldENhc2VSZWZlcmVuY2VMaW5rKGNhc2VSZWY6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNhc2VSZWYuc2xpY2UodGhpcy5jYXNlSWQubGVuZ3RoIC0gNCk7XG4gIH1cblxuICBwdWJsaWMgaGFzTGVhZENhc2VPckNvbnNvbGlkYXRlZChyZWFzb25Db2RlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gcmVhc29uQ29kZSA9PT0gTGlua2VkQ2FzZXNGcm9tVGFibGVDb21wb25lbnQuQ0FTRV9QUk9HUkVTU19SRUFTT05fQ09ERSB8fFxuICAgICAgcmVhc29uQ29kZSA9PT0gTGlua2VkQ2FzZXNGcm9tVGFibGVDb21wb25lbnQuQ0FTRV9DT05TT0xJREFURURfUkVBU09OX0NPREU7XG4gIH1cblxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dIaWRlTGlua1RleHQgPSB0aGlzLnNob3dIaWRlTGlua1RleHQgPT09ICdTaG93J1xuICAgICAgPyAnSGlkZSdcbiAgICAgIDogJ1Nob3cnO1xuICB9XG59XG4iLCI8YSAqbmdJZj1cIiFub0xpbmtlZENhc2VzICYmICFpc1NlcnZlckVycm9yXCIgaWQ9XCJzaG93LWhpZGUtbGlua1wiIGNsYXNzPVwiZ292dWstbGlua1wiIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxuICAoY2xpY2spPVwib25DbGljaygpXCI+e3tzaG93SGlkZUxpbmtUZXh0fX08L2E+XG48dGFibGUgKm5nSWY9XCIoZ2V0TGlua2VkQ2FzZXNSZXNwb25zZSAmJiBzaG93SGlkZUxpbmtUZXh0ID09PSAnSGlkZScpIHx8IG5vTGlua2VkQ2FzZXNcIlxuICBhcmlhLWRlc2NyaWJlZGJ5PVwidGFibGUgdG8gZGlzcGxheSBjYXNlcyBsaW5rZWQgZnJvbVwiPlxuICA8dGhlYWQgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZFwiPlxuICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIj5cbiAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtblwiIHdpZHRoPVwiMjAlXCI+Q2FzZSBuYW1lIGFuZCBudW1iZXI8L3RoPlxuICAgICAgPHRoIHNjb3BlPVwiY29sXCIgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZGVyIGNhc2UtdGFibGUtY29sdW1uXCIgd2lkdGg9XCIyMCVcIj5DYXNlIHR5cGUgPC90aD5cbiAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtblwiIHdpZHRoPVwiMjAlXCI+U2VydmljZTwvdGg+XG4gICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXIgY2FzZS10YWJsZS1jb2x1bW5cIiB3aWR0aD1cIjIwJVwiPlN0YXRlPC90aD5cbiAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtblwiIHdpZHRoPVwiMjAlXCI+UmVhc29ucyBmb3IgY2FzZSBsaW5rPC90aD5cbiAgICA8L3RyPlxuICA8L3RoZWFkPlxuICA8dGJvZHkgY2xhc3M9XCJnb3Z1ay10YWJsZV9fYm9keVwiICpuZ0lmPVwiZ2V0TGlua2VkQ2FzZXNSZXNwb25zZSAmJiAoIWlzU2VydmVyRXJyb3IgJiYgIWlzU2VydmVyUmVhc29uQ29kZUVycm9yKVwiPlxuICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIiAqbmdGb3I9XCJsZXQgY2FzZSBvZiBnZXRMaW5rZWRDYXNlc1Jlc3BvbnNlXCI+XG4gICAgICA8dGQgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZGVyIGNhc2UtdGFibGUtY29sdW1uIHdpZHRoLTIwXCI+XG4gICAgICAgIDxwIGNsYXNzPVwiZ292dWstYm9keVwiPjxhIHRhcmdldD1cIl9ibGFua1wiIGNsYXNzPVwiZ292dWstbGlua1wiIGhyZWY9XCJjYXNlcy9jYXNlLWRldGFpbHMve3tjYXNlLmNhc2VSZWZlcmVuY2V9fVwiXG4gICAgICAgICAgICByZWw9XCJub29wZW5lclwiPjxzcGFuPnt7Y2FzZS5jYXNlTmFtZUhtY3RzSW50ZXJuYWx9fSA8YnI+XG4gICAgICAgICAgICAgIHt7Y2FzZS5jYXNlUmVmZXJlbmNlIHwgY2NkQ2FzZVJlZmVyZW5jZX19PC9zcGFuPjwvYT48L3A+XG4gICAgICA8L3RkPlxuICAgICAgPHRkIGNsYXNzPVwiY2FzZS10YWJsZS1jb2x1bW5cIj48c3BhbiBbdGl0bGVdPVwiY2FzZS5jY2RDYXNlVHlwZURlc2NyaXB0aW9uXCI+e3tjYXNlLmNjZENhc2VUeXBlfX08L3NwYW4+PC90ZD5cbiAgICAgIDx0ZCBjbGFzcz1cImNhc2UtdGFibGUtY29sdW1uXCI+PHNwYW4+e3tjYXNlLmNjZEp1cmlzZGljdGlvbn19PC9zcGFuPjwvdGQ+XG4gICAgICA8dGQgY2xhc3M9XCJjYXNlLXRhYmxlLWNvbHVtblwiPjxzcGFuIFt0aXRsZV09XCJjYXNlLnN0YXRlRGVzY3JpcHRpb25cIj57e2Nhc2Uuc3RhdGV9fTwvc3Bhbj48L3RkPlxuICAgICAgPHRkIGNsYXNzPVwiY2FzZS10YWJsZS1jb2x1bW5cIiAqbmdGb3I9XCJsZXQgZGV0YWlscyBvZiBjYXNlLmxpbmtEZXRhaWxzXCI+XG4gICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCByZWFzb24gb2YgZGV0YWlscy5yZWFzb25zOyBsZXQgaSA9IGluZGV4OyBsZXQgaXNMYXN0ID0gbGFzdFwiPlxuICAgICAgICAgIHt7cmVhc29uIHwgY2NkTGlua0Nhc2VzRnJvbVJlYXNvblZhbHVlfX08c3Bhbj48YSBjbGFzcz1cImdvdnVrLSEtcGFkZGluZy1sZWZ0LTFcIlxuICAgICAgICAgICAgaHJlZj1cImNhc2VzL2Nhc2UtZGV0YWlscy97eyBjYXNlLmNhc2VSZWZlcmVuY2UgfX1cIlxuICAgICAgICAgICAgKm5nSWY9XCJoYXNMZWFkQ2FzZU9yQ29uc29saWRhdGVkKHJlYXNvbi5yZWFzb25Db2RlKVwiPnt7Z2V0Q2FzZVJlZmVyZW5jZUxpbmsoY2FzZS5jYXNlUmVmZXJlbmNlKX19PC9hPjwvc3Bhbj5cbiAgICAgICAgPGJyICpuZ0lmPVwiIWlzTGFzdFwiIC8+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvdGQ+XG4gICAgPC90cj5cbiAgICA8dHIgY2xhc3M9XCJnb3Z1ay10YWJsZV9fcm93XCIgKm5nSWY9XCJub0xpbmtlZENhc2VzXCI+XG4gICAgICA8dGQgY2xhc3M9XCJnb3Z1ay10YWJsZV9fY2VsbFwiIGNvbHNwYW49XCI1XCI+XG4gICAgICAgIE5vbmVcbiAgICAgIDwvdGQ+XG4gICAgPC90cj5cbiAgICA8L3Rib2R5PiAgXG48L3RhYmxlPlxuIl19
|