@hmcts/ccd-case-ui-toolkit 7.0.39-callback-event-errors-rework → 7.0.39-case-consolidated-link

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.
@@ -18,20 +18,43 @@ function LinkedCasesFromTableComponent_a_0_Template(rf, ctx) { if (rf & 1) {
18
18
  i0.ɵɵadvance(1);
19
19
  i0.ɵɵtextInterpolate(ctx_r0.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_r7 = i0.ɵɵnextContext(3).$implicit;
27
+ const ctx_r14 = i0.ɵɵnextContext(3);
28
+ i0.ɵɵpropertyInterpolate1("href", "cases/case-details/", case_r7.caseReference, "", i0.ɵɵsanitizeUrl);
29
+ i0.ɵɵadvance(1);
30
+ i0.ɵɵtextInterpolate(ctx_r14.getCaseReferenceLink(case_r7.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.ɵɵelement(3, "br");
39
+ i0.ɵɵelementStart(3, "span");
40
+ i0.ɵɵtemplate(4, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_a_4_Template, 2, 2, "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
45
  const reason_r11 = ctx.$implicit;
46
+ const isLast_r13 = ctx.last;
47
+ const ctx_r10 = i0.ɵɵnextContext(5);
48
+ i0.ɵɵadvance(1);
49
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 3, reason_r11), "");
50
+ i0.ɵɵadvance(3);
51
+ i0.ɵɵproperty("ngIf", ctx_r10.hasLeadCaseOrConsolidated(reason_r11.reasonCode));
29
52
  i0.ɵɵadvance(1);
30
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, reason_r11), " ");
53
+ i0.ɵɵproperty("ngIf", !isLast_r13);
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, 4, 3, "span", 17);
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
60
  const details_r9 = ctx.$implicit;
@@ -78,7 +101,7 @@ function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_Template(rf, ctx) {
78
101
  i0.ɵɵproperty("ngForOf", case_r7.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", 18);
104
+ i0.ɵɵelementStart(0, "tr", 5)(1, "td", 21);
82
105
  i0.ɵɵtext(2, " None ");
83
106
  i0.ɵɵelementEnd()();
84
107
  } }
@@ -177,6 +200,13 @@ export class LinkedCasesFromTableComponent {
177
200
  mapLookupIDToValueFromJurisdictions(fieldName, fieldValue) {
178
201
  return this.linkedCasesService.mapLookupIDToValueFromJurisdictions(fieldName, fieldValue);
179
202
  }
203
+ getCaseReferenceLink(caseRef) {
204
+ return caseRef.slice(this.caseId.length - 4);
205
+ }
206
+ hasLeadCaseOrConsolidated(reasonCode) {
207
+ return reasonCode === LinkedCasesFromTableComponent.CASE_PROGRESS_REASON_CODE ||
208
+ reasonCode === LinkedCasesFromTableComponent.CASE_CONSOLIDATED_REASON_CODE;
209
+ }
180
210
  onClick() {
181
211
  this.showHideLinkText = this.showHideLinkText === 'Show'
182
212
  ? 'Hide'
@@ -184,8 +214,10 @@ export class LinkedCasesFromTableComponent {
184
214
  }
185
215
  }
186
216
  LinkedCasesFromTableComponent.CASE_NAME_MISSING_TEXT = 'Case name missing';
217
+ LinkedCasesFromTableComponent.CASE_CONSOLIDATED_REASON_CODE = 'CLRC015';
218
+ LinkedCasesFromTableComponent.CASE_PROGRESS_REASON_CODE = 'CLRC016';
187
219
  LinkedCasesFromTableComponent.ɵfac = function LinkedCasesFromTableComponent_Factory(t) { return new (t || LinkedCasesFromTableComponent)(i0.ɵɵdirectiveInject(i1.ActivatedRoute), i0.ɵɵdirectiveInject(i2.CasesService), i0.ɵɵdirectiveInject(i3.LinkedCasesService)); };
188
- LinkedCasesFromTableComponent.ɵ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) {
220
+ LinkedCasesFromTableComponent.ɵ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) {
189
221
  i0.ɵɵtemplate(0, LinkedCasesFromTableComponent_a_0_Template, 2, 1, "a", 0);
190
222
  i0.ɵɵtemplate(1, LinkedCasesFromTableComponent_table_1_Template, 14, 1, "table", 1);
191
223
  } if (rf & 2) {
@@ -195,10 +227,10 @@ LinkedCasesFromTableComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ typ
195
227
  } }, styles: [".case-table-column[_ngcontent-%COMP%]{min-width:20%;max-width:20%}.heading-h2[_ngcontent-%COMP%]{margin-bottom:0}"] });
196
228
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LinkedCasesFromTableComponent, [{
197
229
  type: Component,
198
- 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>\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"] }]
230
+ 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"] }]
199
231
  }], function () { return [{ type: i1.ActivatedRoute }, { type: i2.CasesService }, { type: i3.LinkedCasesService }]; }, { caseField: [{
200
232
  type: Input
201
233
  }], notifyAPIFailure: [{
202
234
  type: Output
203
235
  }] }); })();
204
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2VkLWNhc2VzLWZyb20tdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL2NvbXBvbmVudHMvbGlua2VkLWNhc2VzLXRhYmxlL2xpbmtlZC1jYXNlcy1mcm9tLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2xpbmtlZC1jYXNlcy9jb21wb25lbnRzL2xpbmtlZC1jYXNlcy10YWJsZS9saW5rZWQtY2FzZXMtZnJvbS10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztJQ1JwRCw0QkFDc0I7SUFBcEIsbUtBQVMsZUFBQSxnQkFBUyxDQUFBLElBQUM7SUFBQyxZQUFvQjtJQUFBLGlCQUFJOzs7SUFBeEIsZUFBb0I7SUFBcEIsNkNBQW9COzs7SUF1QmxDLDRCQUErRTtJQUM3RSxZQUF5Qzs7SUFBQSxxQkFBSTtJQUMvQyxpQkFBTzs7O0lBREwsZUFBeUM7SUFBekMsaUVBQXlDOzs7SUFGN0MsOEJBQXVFO0lBQ3JFLDZHQUVPO0lBQ1QsaUJBQUs7OztJQUhzQixlQUFvQjtJQUFwQiw0Q0FBb0I7OztJQVZqRCw2QkFBeUUsYUFBQSxZQUFBLFlBQUEsV0FBQTtJQUc1QyxZQUErQjtJQUFBLHFCQUFJO0lBQ3RELFlBQXlDOztJQUFBLGlCQUFPLEVBQUEsRUFBQSxFQUFBO0lBRXhELDhCQUE4QixnQkFBQTtJQUE0QyxhQUFvQjtJQUFBLGlCQUFPLEVBQUE7SUFDckcsK0JBQThCLFlBQUE7SUFBTSxhQUF3QjtJQUFBLGlCQUFPLEVBQUE7SUFDbkUsK0JBQThCLGdCQUFBO0lBQXNDLGFBQWM7SUFBQSxpQkFBTyxFQUFBO0lBQ3pGLHFHQUlLO0lBQ1AsaUJBQUs7OztJQVoyRCxlQUFnRDtJQUFoRCxxR0FBZ0Q7SUFDbkYsZUFBK0I7SUFBL0IsNkRBQStCO0lBQ2xELGVBQXlDO0lBQXpDLDJFQUF5QztJQUViLGVBQXFDO0lBQXJDLHNEQUFxQztJQUFDLGVBQW9CO0lBQXBCLHlDQUFvQjtJQUMxRCxlQUF3QjtJQUF4Qiw2Q0FBd0I7SUFDeEIsZUFBK0I7SUFBL0IsZ0RBQStCO0lBQUMsZUFBYztJQUFkLG1DQUFjO0lBQ2hDLGVBQW1CO0lBQW5CLDZDQUFtQjs7O0lBTXZFLDZCQUFtRCxhQUFBO0lBRS9DLHNCQUNGO0lBQUEsaUJBQUssRUFBQTs7O0lBbkJULGdDQUFnSDtJQUM5RywrRkFjSztJQUNMLDhGQUlLO0lBQ0wsaUJBQVE7OztJQXBCc0MsZUFBeUI7SUFBekIsdURBQXlCO0lBZXpDLGVBQW1CO0lBQW5CLDJDQUFtQjs7O0lBM0JyRCxnQ0FDd0QsZUFBQSxZQUFBLFlBQUE7SUFHd0Isb0NBQW9CO0lBQUEsaUJBQUs7SUFDbkcsNkJBQTBFO0lBQUEsMEJBQVU7SUFBQSxpQkFBSztJQUN6Riw2QkFBMEU7SUFBQSx1QkFBTztJQUFBLGlCQUFLO0lBQ3RGLDZCQUEwRTtJQUFBLHNCQUFLO0lBQUEsaUJBQUs7SUFDcEYsOEJBQTBFO0lBQUEsc0NBQXFCO0lBQUEsaUJBQUssRUFBQSxFQUFBO0lBR3hHLDRGQXFCVTtJQUNaLGlCQUFROzs7SUF0QjRCLGdCQUE0RTtJQUE1RSxrSEFBNEU7O0FER2hILE1BQU0sT0FBTyw2QkFBNkI7SUFvQnhDLFlBQ21CLEtBQXFCLEVBQ3JCLFlBQTBCLEVBQzFCLGtCQUFzQztRQUZ0QyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBaEJsRCxxQkFBZ0IsR0FBMEIsSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFRbEUscUJBQWdCLEdBQUcsTUFBTSxDQUFDO1FBQzFCLGtCQUFhLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLDRCQUF1QixHQUFHLEtBQUssQ0FBQztJQU92QyxDQUFDO0lBRU0sZUFBZTtRQUNwQixNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsc0JBQXNCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN4RSxJQUFJLFVBQVUsSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFO1lBQ25DLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDakMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ3JFO1FBQ0QsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FBQztJQUNqRixDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3BELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLENBQUM7WUFDOUIsSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFO2dCQUNmLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO2dCQUMzQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsUUFBUSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDcEYsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLG1DQUFtQyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQy9GLE1BQU0seUJBQXlCLEdBQUcsSUFBSSxDQUFDLG1DQUFtQyxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDdEgsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLG1DQUFtQyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3RGLE1BQU0sMEJBQTBCLEdBQUcsSUFBSSxDQUFDLG1DQUFtQyxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDN0csTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsbUNBQW1DLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztvQkFDekcsT0FBTzt3QkFDTCxHQUFHLElBQUk7d0JBQ1AsV0FBVyxFQUFFLGNBQWM7d0JBQzNCLHNCQUFzQixFQUFFLHlCQUF5Qjt3QkFDakQsZUFBZSxFQUFFLGlCQUFpQjt3QkFDbEMsS0FBSyxFQUFFLGVBQWU7d0JBQ3RCLGdCQUFnQixFQUFFLDBCQUEwQjt3QkFDNUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixJQUFJLDZCQUE2QixDQUFDLHNCQUFzQjt3QkFDekcsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO3FCQUNWLENBQUM7Z0JBQ3hCLENBQUMsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxRQUFRLENBQUMsV0FBVyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7WUFDN0UsQ0FBQztZQUNELEtBQUssRUFBRSxHQUFHLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkMsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTSxtQ0FBbUMsQ0FBQyxTQUFTLEVBQUUsVUFBVTtRQUM5RCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxtQ0FBbUMsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixLQUFLLE1BQU07WUFDdEQsQ0FBQyxDQUFDLE1BQU07WUFDUixDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2IsQ0FBQzs7QUFwRnVCLG9EQUFzQixHQUFHLG1CQUFtQixDQUFDOzBHQUQxRCw2QkFBNkI7Z0ZBQTdCLDZCQUE2QjtRQ2hCMUMsMEVBQzhDO1FBQzlDLG1GQWlDUTs7UUFuQ0osK0RBQXNDO1FBRWxDLGVBQThFO1FBQTlFLHlHQUE4RTs7dUZEY3pFLDZCQUE2QjtjQU56QyxTQUFTOzJCQUNFLDZCQUE2Qjs2SEFTaEMsU0FBUztrQkFEZixLQUFLO1lBSUMsZ0JBQWdCO2tCQUR0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2FzZVZpZXcgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQ2FzZUZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluL2RlZmluaXRpb24nO1xuaW1wb3J0IHsgTG92UmVmRGF0YU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvY29tbW9uLWRhdGEtc2VydmljZS9jb21tb24tZGF0YS1zZXJ2aWNlJztcbmltcG9ydCB7IENhc2VzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Nhc2UtZWRpdG9yL3NlcnZpY2VzL2Nhc2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FzZUxpbmtSZXNwb25zZSwgTGlua2VkQ2FzZXNSZXNwb25zZSB9IGZyb20gJy4uLy4uL2RvbWFpbi9saW5rZWQtY2FzZXMubW9kZWwnO1xuaW1wb3J0IHsgTGlua2VkQ2FzZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtbGlua2VkLWNhc2VzLWZyb20tdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlua2VkLWNhc2VzLWZyb20tdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9saW5rZWQtY2FzZXMtZnJvbS10YWJsZS5jb21wb25lbnQuc2NzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgTGlua2VkQ2FzZXNGcm9tVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBDQVNFX05BTUVfTUlTU0lOR19URVhUID0gJ0Nhc2UgbmFtZSBtaXNzaW5nJztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY2FzZUZpZWxkOiBDYXNlRmllbGQ7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBub3RpZnlBUElGYWlsdXJlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKGZhbHNlKTtcbiAgcHVibGljIGNhc2VEZXRhaWxzOiBDYXNlVmlldztcbiAgcHVibGljIHBhcmVudFVybDogc3RyaW5nO1xuICBwdWJsaWMgaXNMb2FkZWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBnZXRMaW5rZWRDYXNlc1Jlc3BvbnNlOiBDYXNlTGlua1Jlc3BvbnNlW107XG4gIHB1YmxpYyBsaW5rZWRDYXNlUmVhc29uczogTG92UmVmRGF0YU1vZGVsW107XG5cbiAgcHVibGljIGNhc2VJZDogc3RyaW5nO1xuICBwdWJsaWMgc2hvd0hpZGVMaW5rVGV4dCA9ICdTaG93JztcbiAgcHVibGljIG5vTGlua2VkQ2FzZXMgPSB0cnVlO1xuICBwdWJsaWMgaXNTZXJ2ZXJFcnJvciA9IGZhbHNlO1xuICBwdWJsaWMgaXNTZXJ2ZXJSZWFzb25Db2RlRXJyb3IgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhc2VzU2VydmljZTogQ2FzZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGlua2VkQ2FzZXNTZXJ2aWNlOiBMaW5rZWRDYXNlc1NlcnZpY2UsXG4gICAgKSB7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGxhYmVsRmllbGQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdjYXNlLXZpZXdlci1sYWJlbCcpO1xuICAgIGlmIChsYWJlbEZpZWxkICYmIGxhYmVsRmllbGQubGVuZ3RoKSB7XG4gICAgICBsYWJlbEZpZWxkWzBdLnJlcGxhY2VXaXRoKCcnKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mZXRjaFBhZ2VEYXRhKCk7XG4gICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlKSB7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRGV0YWlscyA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlO1xuICAgIH1cbiAgICB0aGlzLmlzU2VydmVyUmVhc29uQ29kZUVycm9yID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuaXNTZXJ2ZXJSZWFzb25Db2RlRXJyb3I7XG4gIH1cblxuICBwdWJsaWMgZmV0Y2hQYWdlRGF0YSgpIHtcbiAgICB0aGlzLmNhc2VJZCA9IHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5jYXNlLmNhc2VfaWQ7XG4gICAgdGhpcy5nZXRMaW5rZWRDYXNlcygpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiByZXNwb25zZSA9PiB7XG4gICAgICAgIHRoaXMuaXNTZXJ2ZXJFcnJvciA9IGZhbHNlO1xuICAgICAgICB0aGlzLmdldExpbmtlZENhc2VzUmVzcG9uc2UgPSByZXNwb25zZS5saW5rZWRDYXNlcyAmJiByZXNwb25zZS5saW5rZWRDYXNlcy5tYXAoaXRlbSA9PiB7XG4gICAgICAgICAgY29uc3QgbWFwcGVkQ2FzZXR5cGUgPSB0aGlzLm1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKCdDQVNFX1RZUEUnLCBpdGVtLmNjZENhc2VUeXBlKTtcbiAgICAgICAgICBjb25zdCBtYXBwZWRDYXNldHlwZURlc2NyaXB0aW9uID0gdGhpcy5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucygnQ0FTRV9UWVBFX0RFU0NSSVBUSU9OJywgaXRlbS5jY2RDYXNlVHlwZSk7XG4gICAgICAgICAgY29uc3QgbWFwcGVkQ2FzZVN0YXRlID0gdGhpcy5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucygnU1RBVEUnLCBpdGVtLnN0YXRlKTtcbiAgICAgICAgICBjb25zdCBtYXBwZWRDYXNlU3RhdGVEZXNjcmlwdGlvbiA9IHRoaXMubWFwTG9va3VwSURUb1ZhbHVlRnJvbUp1cmlzZGljdGlvbnMoJ1NUQVRFX0RFU0NSSVBUSU9OJywgaXRlbS5zdGF0ZSk7XG4gICAgICAgICAgY29uc3QgbWFwcGVkQ2FzZVNlcnZpY2UgPSB0aGlzLm1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKCdKVVJJU0RJQ1RJT04nLCBpdGVtLmNjZEp1cmlzZGljdGlvbik7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICBjY2RDYXNlVHlwZTogbWFwcGVkQ2FzZXR5cGUsXG4gICAgICAgICAgICBjY2RDYXNlVHlwZURlc2NyaXB0aW9uOiBtYXBwZWRDYXNldHlwZURlc2NyaXB0aW9uLFxuICAgICAgICAgICAgY2NkSnVyaXNkaWN0aW9uOiBtYXBwZWRDYXNlU2VydmljZSxcbiAgICAgICAgICAgIHN0YXRlOiBtYXBwZWRDYXNlU3RhdGUsXG4gICAgICAgICAgICBzdGF0ZURlc2NyaXB0aW9uOiBtYXBwZWRDYXNlU3RhdGVEZXNjcmlwdGlvbixcbiAgICAgICAgICAgIGNhc2VOYW1lSG1jdHNJbnRlcm5hbDogaXRlbS5jYXNlTmFtZUhtY3RzSW50ZXJuYWwgfHwgTGlua2VkQ2FzZXNGcm9tVGFibGVDb21wb25lbnQuQ0FTRV9OQU1FX01JU1NJTkdfVEVYVCxcbiAgICAgICAgICAgIGxpbmtEZXRhaWxzOiBpdGVtLmxpbmtEZXRhaWxzXG4gICAgICAgICAgfSBhcyBDYXNlTGlua1Jlc3BvbnNlO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5ub0xpbmtlZENhc2VzID0gIXJlc3BvbnNlLmxpbmtlZENhc2VzIHx8ICFyZXNwb25zZS5saW5rZWRDYXNlcy5sZW5ndGg7XG4gICAgICB9LFxuICAgICAgZXJyb3I6ICgpID0+IHtcbiAgICAgICAgdGhpcy5pc1NlcnZlckVycm9yID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5ub3RpZnlBUElGYWlsdXJlLmVtaXQodHJ1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGlua2VkQ2FzZXMoKTogT2JzZXJ2YWJsZTxMaW5rZWRDYXNlc1Jlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FzZXNTZXJ2aWNlLmdldExpbmtlZENhc2VzKHRoaXMuY2FzZUlkKTtcbiAgfVxuXG4gIHB1YmxpYyBtYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucyhmaWVsZE5hbWUsIGZpZWxkVmFsdWUpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucyhmaWVsZE5hbWUsIGZpZWxkVmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5zaG93SGlkZUxpbmtUZXh0ID0gdGhpcy5zaG93SGlkZUxpbmtUZXh0ID09PSAnU2hvdydcbiAgICAgID8gJ0hpZGUnXG4gICAgICA6ICdTaG93JztcbiAgfVxufVxuIiwiPGEgKm5nSWY9XCIhbm9MaW5rZWRDYXNlcyAmJiAhaXNTZXJ2ZXJFcnJvclwiIGlkPVwic2hvdy1oaWRlLWxpbmtcIiBjbGFzcz1cImdvdnVrLWxpbmtcIiBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2soKVwiPnt7c2hvd0hpZGVMaW5rVGV4dH19PC9hPlxuPHRhYmxlICpuZ0lmPVwiKGdldExpbmtlZENhc2VzUmVzcG9uc2UgJiYgc2hvd0hpZGVMaW5rVGV4dCA9PT0gJ0hpZGUnKSB8fCBub0xpbmtlZENhc2VzXCJcbiAgYXJpYS1kZXNjcmliZWRieT1cInRhYmxlIHRvIGRpc3BsYXkgY2FzZXMgbGlua2VkIGZyb21cIj5cbiAgPHRoZWFkIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRcIj5cbiAgICA8dHIgY2xhc3M9XCJnb3Z1ay10YWJsZV9fcm93XCI+XG4gICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXIgY2FzZS10YWJsZS1jb2x1bW5cIiB3aWR0aD1cIjIwJVwiPkNhc2UgbmFtZSBhbmQgbnVtYmVyPC90aD5cbiAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtblwiIHdpZHRoPVwiMjAlXCI+Q2FzZSB0eXBlIDwvdGg+XG4gICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXIgY2FzZS10YWJsZS1jb2x1bW5cIiB3aWR0aD1cIjIwJVwiPlNlcnZpY2U8L3RoPlxuICAgICAgPHRoIHNjb3BlPVwiY29sXCIgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZGVyIGNhc2UtdGFibGUtY29sdW1uXCIgd2lkdGg9XCIyMCVcIj5TdGF0ZTwvdGg+XG4gICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXIgY2FzZS10YWJsZS1jb2x1bW5cIiB3aWR0aD1cIjIwJVwiPlJlYXNvbnMgZm9yIGNhc2UgbGluazwvdGg+XG4gICAgPC90cj5cbiAgPC90aGVhZD5cbiAgPHRib2R5IGNsYXNzPVwiZ292dWstdGFibGVfX2JvZHlcIiAqbmdJZj1cImdldExpbmtlZENhc2VzUmVzcG9uc2UgJiYgKCFpc1NlcnZlckVycm9yICYmICFpc1NlcnZlclJlYXNvbkNvZGVFcnJvcilcIj5cbiAgICA8dHIgY2xhc3M9XCJnb3Z1ay10YWJsZV9fcm93XCIgKm5nRm9yPVwibGV0IGNhc2Ugb2YgZ2V0TGlua2VkQ2FzZXNSZXNwb25zZVwiPlxuICAgICAgPHRkIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtbiB3aWR0aC0yMFwiPlxuICAgICAgICA8cCBjbGFzcz1cImdvdnVrLWJvZHlcIj48YSB0YXJnZXQ9XCJfYmxhbmtcIiBjbGFzcz1cImdvdnVrLWxpbmtcIiBocmVmPVwiY2FzZXMvY2FzZS1kZXRhaWxzL3t7Y2FzZS5jYXNlUmVmZXJlbmNlfX1cIlxuICAgICAgICAgICAgcmVsPVwibm9vcGVuZXJcIj48c3Bhbj57e2Nhc2UuY2FzZU5hbWVIbWN0c0ludGVybmFsfX0gPGJyPlxuICAgICAgICAgICAgICB7e2Nhc2UuY2FzZVJlZmVyZW5jZSB8IGNjZENhc2VSZWZlcmVuY2V9fTwvc3Bhbj48L2E+PC9wPlxuICAgICAgPC90ZD5cbiAgICAgIDx0ZCBjbGFzcz1cImNhc2UtdGFibGUtY29sdW1uXCI+PHNwYW4gW3RpdGxlXT1cImNhc2UuY2NkQ2FzZVR5cGVEZXNjcmlwdGlvblwiPnt7Y2FzZS5jY2RDYXNlVHlwZX19PC9zcGFuPjwvdGQ+XG4gICAgICA8dGQgY2xhc3M9XCJjYXNlLXRhYmxlLWNvbHVtblwiPjxzcGFuPnt7Y2FzZS5jY2RKdXJpc2RpY3Rpb259fTwvc3Bhbj48L3RkPlxuICAgICAgPHRkIGNsYXNzPVwiY2FzZS10YWJsZS1jb2x1bW5cIj48c3BhbiBbdGl0bGVdPVwiY2FzZS5zdGF0ZURlc2NyaXB0aW9uXCI+e3tjYXNlLnN0YXRlfX08L3NwYW4+PC90ZD5cbiAgICAgIDx0ZCBjbGFzcz1cImNhc2UtdGFibGUtY29sdW1uXCIgKm5nRm9yPVwibGV0IGRldGFpbHMgb2YgY2FzZS5saW5rRGV0YWlsc1wiPlxuICAgICAgICA8c3BhbiAqbmdGb3I9XCJsZXQgcmVhc29uIG9mIGRldGFpbHMucmVhc29uczsgbGV0IGkgPSBpbmRleDsgbGV0IGlzTGFzdCA9IGxhc3RcIj5cbiAgICAgICAgICB7e3JlYXNvbiB8IGNjZExpbmtDYXNlc0Zyb21SZWFzb25WYWx1ZX19IDxicj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIiAqbmdJZj1cIm5vTGlua2VkQ2FzZXNcIj5cbiAgICAgIDx0ZCBjbGFzcz1cImdvdnVrLXRhYmxlX19jZWxsXCIgY29sc3Bhbj1cIjVcIj5cbiAgICAgICAgTm9uZVxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICAgIDwvdGJvZHk+ICBcbjwvdGFibGU+XG4iXX0=
236
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2VkLWNhc2VzLWZyb20tdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL2NvbXBvbmVudHMvbGlua2VkLWNhc2VzLXRhYmxlL2xpbmtlZC1jYXNlcy1mcm9tLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2xpbmtlZC1jYXNlcy9jb21wb25lbnRzL2xpbmtlZC1jYXNlcy10YWJsZS9saW5rZWQtY2FzZXMtZnJvbS10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztJQ1JwRCw0QkFDc0I7SUFBcEIsbUtBQVMsZUFBQSxnQkFBUyxDQUFBLElBQUM7SUFBQyxZQUFvQjtJQUFBLGlCQUFJOzs7SUFBeEIsZUFBb0I7SUFBcEIsNkNBQW9COzs7SUF3QmMsNkJBRVM7SUFBQSxZQUE0QztJQUFBLGlCQUFJOzs7O0lBRHJHLHFHQUFrRDtJQUNHLGVBQTRDO0lBQTVDLHlFQUE0Qzs7O0lBQ3JHLHFCQUFzQjs7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O1lBQ3RELENBQUMsQ0FBQyxNQUFNO1lBQ1IsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNiLENBQUM7O0FBL0Z1QixvREFBc0IsR0FBRyxtQkFBbUIsQ0FBQztBQUM3QywyREFBNkIsR0FBRyxTQUFTLENBQUM7QUFDMUMsdURBQXlCLEdBQUcsU0FBUyxDQUFDOzBHQUhuRCw2QkFBNkI7Z0ZBQTdCLDZCQUE2QjtRQ2hCMUMsMEVBQzhDO1FBQzlDLG1GQW9DUTs7UUF0Q0osK0RBQXNDO1FBRWxDLGVBQThFO1FBQTlFLHlHQUE4RTs7dUZEY3pFLDZCQUE2QjtjQU56QyxTQUFTOzJCQUNFLDZCQUE2Qjs2SEFXaEMsU0FBUztrQkFEZixLQUFLO1lBSUMsZ0JBQWdCO2tCQUR0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2FzZVZpZXcgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQ2FzZUZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluL2RlZmluaXRpb24nO1xuaW1wb3J0IHsgTG92UmVmRGF0YU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvY29tbW9uLWRhdGEtc2VydmljZS9jb21tb24tZGF0YS1zZXJ2aWNlJztcbmltcG9ydCB7IENhc2VzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Nhc2UtZWRpdG9yL3NlcnZpY2VzL2Nhc2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FzZUxpbmtSZXNwb25zZSwgTGlua2VkQ2FzZXNSZXNwb25zZSB9IGZyb20gJy4uLy4uL2RvbWFpbi9saW5rZWQtY2FzZXMubW9kZWwnO1xuaW1wb3J0IHsgTGlua2VkQ2FzZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtbGlua2VkLWNhc2VzLWZyb20tdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlua2VkLWNhc2VzLWZyb20tdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9saW5rZWQtY2FzZXMtZnJvbS10YWJsZS5jb21wb25lbnQuc2NzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgTGlua2VkQ2FzZXNGcm9tVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBDQVNFX05BTUVfTUlTU0lOR19URVhUID0gJ0Nhc2UgbmFtZSBtaXNzaW5nJztcbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgQ0FTRV9DT05TT0xJREFURURfUkVBU09OX0NPREUgPSAnQ0xSQzAxNSc7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IENBU0VfUFJPR1JFU1NfUkVBU09OX0NPREUgPSAnQ0xSQzAxNic7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNhc2VGaWVsZDogQ2FzZUZpZWxkO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgbm90aWZ5QVBJRmFpbHVyZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcihmYWxzZSk7XG4gIHB1YmxpYyBjYXNlRGV0YWlsczogQ2FzZVZpZXc7XG4gIHB1YmxpYyBwYXJlbnRVcmw6IHN0cmluZztcbiAgcHVibGljIGlzTG9hZGVkOiBib29sZWFuO1xuICBwdWJsaWMgZ2V0TGlua2VkQ2FzZXNSZXNwb25zZTogQ2FzZUxpbmtSZXNwb25zZVtdO1xuICBwdWJsaWMgbGlua2VkQ2FzZVJlYXNvbnM6IExvdlJlZkRhdGFNb2RlbFtdO1xuXG4gIHB1YmxpYyBjYXNlSWQ6IHN0cmluZztcbiAgcHVibGljIHNob3dIaWRlTGlua1RleHQgPSAnU2hvdyc7XG4gIHB1YmxpYyBub0xpbmtlZENhc2VzID0gdHJ1ZTtcbiAgcHVibGljIGlzU2VydmVyRXJyb3IgPSBmYWxzZTtcbiAgcHVibGljIGlzU2VydmVyUmVhc29uQ29kZUVycm9yID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNlc1NlcnZpY2U6IENhc2VzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpbmtlZENhc2VzU2VydmljZTogTGlua2VkQ2FzZXNTZXJ2aWNlLFxuICAgICkge1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBsYWJlbEZpZWxkID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnY2FzZS12aWV3ZXItbGFiZWwnKTtcbiAgICBpZiAobGFiZWxGaWVsZCAmJiBsYWJlbEZpZWxkLmxlbmd0aCkge1xuICAgICAgbGFiZWxGaWVsZFswXS5yZXBsYWNlV2l0aCgnJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZmV0Y2hQYWdlRGF0YSgpO1xuICAgIGlmICh0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuY2FzZSkge1xuICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZURldGFpbHMgPSB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuY2FzZTtcbiAgICB9XG4gICAgdGhpcy5pc1NlcnZlclJlYXNvbkNvZGVFcnJvciA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmlzU2VydmVyUmVhc29uQ29kZUVycm9yO1xuICB9XG5cbiAgcHVibGljIGZldGNoUGFnZURhdGEoKSB7XG4gICAgdGhpcy5jYXNlSWQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEuY2FzZS5jYXNlX2lkO1xuICAgIHRoaXMuZ2V0TGlua2VkQ2FzZXMoKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogcmVzcG9uc2UgPT4ge1xuICAgICAgICB0aGlzLmlzU2VydmVyRXJyb3IgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5nZXRMaW5rZWRDYXNlc1Jlc3BvbnNlID0gcmVzcG9uc2UubGlua2VkQ2FzZXMgJiYgcmVzcG9uc2UubGlua2VkQ2FzZXMubWFwKGl0ZW0gPT4ge1xuICAgICAgICAgIGNvbnN0IG1hcHBlZENhc2V0eXBlID0gdGhpcy5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucygnQ0FTRV9UWVBFJywgaXRlbS5jY2RDYXNlVHlwZSk7XG4gICAgICAgICAgY29uc3QgbWFwcGVkQ2FzZXR5cGVEZXNjcmlwdGlvbiA9IHRoaXMubWFwTG9va3VwSURUb1ZhbHVlRnJvbUp1cmlzZGljdGlvbnMoJ0NBU0VfVFlQRV9ERVNDUklQVElPTicsIGl0ZW0uY2NkQ2FzZVR5cGUpO1xuICAgICAgICAgIGNvbnN0IG1hcHBlZENhc2VTdGF0ZSA9IHRoaXMubWFwTG9va3VwSURUb1ZhbHVlRnJvbUp1cmlzZGljdGlvbnMoJ1NUQVRFJywgaXRlbS5zdGF0ZSk7XG4gICAgICAgICAgY29uc3QgbWFwcGVkQ2FzZVN0YXRlRGVzY3JpcHRpb24gPSB0aGlzLm1hcExvb2t1cElEVG9WYWx1ZUZyb21KdXJpc2RpY3Rpb25zKCdTVEFURV9ERVNDUklQVElPTicsIGl0ZW0uc3RhdGUpO1xuICAgICAgICAgIGNvbnN0IG1hcHBlZENhc2VTZXJ2aWNlID0gdGhpcy5tYXBMb29rdXBJRFRvVmFsdWVGcm9tSnVyaXNkaWN0aW9ucygnSlVSSVNESUNUSU9OJywgaXRlbS5jY2RKdXJpc2RpY3Rpb24pO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgY2NkQ2FzZVR5cGU6IG1hcHBlZENhc2V0eXBlLFxuICAgICAgICAgICAgY2NkQ2FzZVR5cGVEZXNjcmlwdGlvbjogbWFwcGVkQ2FzZXR5cGVEZXNjcmlwdGlvbixcbiAgICAgICAgICAgIGNjZEp1cmlzZGljdGlvbjogbWFwcGVkQ2FzZVNlcnZpY2UsXG4gICAgICAgICAgICBzdGF0ZTogbWFwcGVkQ2FzZVN0YXRlLFxuICAgICAgICAgICAgc3RhdGVEZXNjcmlwdGlvbjogbWFwcGVkQ2FzZVN0YXRlRGVzY3JpcHRpb24sXG4gICAgICAgICAgICBjYXNlTmFtZUhtY3RzSW50ZXJuYWw6IGl0ZW0uY2FzZU5hbWVIbWN0c0ludGVybmFsIHx8IExpbmtlZENhc2VzRnJvbVRhYmxlQ29tcG9uZW50LkNBU0VfTkFNRV9NSVNTSU5HX1RFWFQsXG4gICAgICAgICAgICBsaW5rRGV0YWlsczogaXRlbS5saW5rRGV0YWlsc1xuICAgICAgICAgIH0gYXMgQ2FzZUxpbmtSZXNwb25zZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMubm9MaW5rZWRDYXNlcyA9ICFyZXNwb25zZS5saW5rZWRDYXNlcyB8fCAhcmVzcG9uc2UubGlua2VkQ2FzZXMubGVuZ3RoO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNTZXJ2ZXJFcnJvciA9IHRydWU7XG4gICAgICAgIHRoaXMubm90aWZ5QVBJRmFpbHVyZS5lbWl0KHRydWUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldExpbmtlZENhc2VzKCk6IE9ic2VydmFibGU8TGlua2VkQ2FzZXNSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhc2VzU2VydmljZS5nZXRMaW5rZWRDYXNlcyh0aGlzLmNhc2VJZCk7XG4gIH1cblxuICBwdWJsaWMgbWFwTG9va3VwSURUb1ZhbHVlRnJvbUp1cmlzZGljdGlvbnMoZmllbGROYW1lLCBmaWVsZFZhbHVlKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubWFwTG9va3VwSURUb1ZhbHVlRnJvbUp1cmlzZGljdGlvbnMoZmllbGROYW1lLCBmaWVsZFZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDYXNlUmVmZXJlbmNlTGluayhjYXNlUmVmOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBjYXNlUmVmLnNsaWNlKHRoaXMuY2FzZUlkLmxlbmd0aCAtIDQpO1xuICB9XG5cbiAgcHVibGljIGhhc0xlYWRDYXNlT3JDb25zb2xpZGF0ZWQocmVhc29uQ29kZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHJlYXNvbkNvZGUgPT09IExpbmtlZENhc2VzRnJvbVRhYmxlQ29tcG9uZW50LkNBU0VfUFJPR1JFU1NfUkVBU09OX0NPREUgfHxcbiAgICAgIHJlYXNvbkNvZGUgPT09IExpbmtlZENhc2VzRnJvbVRhYmxlQ29tcG9uZW50LkNBU0VfQ09OU09MSURBVEVEX1JFQVNPTl9DT0RFO1xuICB9XG5cbiAgcHVibGljIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5zaG93SGlkZUxpbmtUZXh0ID0gdGhpcy5zaG93SGlkZUxpbmtUZXh0ID09PSAnU2hvdydcbiAgICAgID8gJ0hpZGUnXG4gICAgICA6ICdTaG93JztcbiAgfVxufVxuIiwiPGEgKm5nSWY9XCIhbm9MaW5rZWRDYXNlcyAmJiAhaXNTZXJ2ZXJFcnJvclwiIGlkPVwic2hvdy1oaWRlLWxpbmtcIiBjbGFzcz1cImdvdnVrLWxpbmtcIiBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2soKVwiPnt7c2hvd0hpZGVMaW5rVGV4dH19PC9hPlxuPHRhYmxlICpuZ0lmPVwiKGdldExpbmtlZENhc2VzUmVzcG9uc2UgJiYgc2hvd0hpZGVMaW5rVGV4dCA9PT0gJ0hpZGUnKSB8fCBub0xpbmtlZENhc2VzXCJcbiAgYXJpYS1kZXNjcmliZWRieT1cInRhYmxlIHRvIGRpc3BsYXkgY2FzZXMgbGlua2VkIGZyb21cIj5cbiAgPHRoZWFkIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRcIj5cbiAgICA8dHIgY2xhc3M9XCJnb3Z1ay10YWJsZV9fcm93XCI+XG4gICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXIgY2FzZS10YWJsZS1jb2x1bW5cIiB3aWR0aD1cIjIwJVwiPkNhc2UgbmFtZSBhbmQgbnVtYmVyPC90aD5cbiAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtblwiIHdpZHRoPVwiMjAlXCI+Q2FzZSB0eXBlIDwvdGg+XG4gICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXIgY2FzZS10YWJsZS1jb2x1bW5cIiB3aWR0aD1cIjIwJVwiPlNlcnZpY2U8L3RoPlxuICAgICAgPHRoIHNjb3BlPVwiY29sXCIgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZGVyIGNhc2UtdGFibGUtY29sdW1uXCIgd2lkdGg9XCIyMCVcIj5TdGF0ZTwvdGg+XG4gICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXIgY2FzZS10YWJsZS1jb2x1bW5cIiB3aWR0aD1cIjIwJVwiPlJlYXNvbnMgZm9yIGNhc2UgbGluazwvdGg+XG4gICAgPC90cj5cbiAgPC90aGVhZD5cbiAgPHRib2R5IGNsYXNzPVwiZ292dWstdGFibGVfX2JvZHlcIiAqbmdJZj1cImdldExpbmtlZENhc2VzUmVzcG9uc2UgJiYgKCFpc1NlcnZlckVycm9yICYmICFpc1NlcnZlclJlYXNvbkNvZGVFcnJvcilcIj5cbiAgICA8dHIgY2xhc3M9XCJnb3Z1ay10YWJsZV9fcm93XCIgKm5nRm9yPVwibGV0IGNhc2Ugb2YgZ2V0TGlua2VkQ2FzZXNSZXNwb25zZVwiPlxuICAgICAgPHRkIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlciBjYXNlLXRhYmxlLWNvbHVtbiB3aWR0aC0yMFwiPlxuICAgICAgICA8cCBjbGFzcz1cImdvdnVrLWJvZHlcIj48YSB0YXJnZXQ9XCJfYmxhbmtcIiBjbGFzcz1cImdvdnVrLWxpbmtcIiBocmVmPVwiY2FzZXMvY2FzZS1kZXRhaWxzL3t7Y2FzZS5jYXNlUmVmZXJlbmNlfX1cIlxuICAgICAgICAgICAgcmVsPVwibm9vcGVuZXJcIj48c3Bhbj57e2Nhc2UuY2FzZU5hbWVIbWN0c0ludGVybmFsfX0gPGJyPlxuICAgICAgICAgICAgICB7e2Nhc2UuY2FzZVJlZmVyZW5jZSB8IGNjZENhc2VSZWZlcmVuY2V9fTwvc3Bhbj48L2E+PC9wPlxuICAgICAgPC90ZD5cbiAgICAgIDx0ZCBjbGFzcz1cImNhc2UtdGFibGUtY29sdW1uXCI+PHNwYW4gW3RpdGxlXT1cImNhc2UuY2NkQ2FzZVR5cGVEZXNjcmlwdGlvblwiPnt7Y2FzZS5jY2RDYXNlVHlwZX19PC9zcGFuPjwvdGQ+XG4gICAgICA8dGQgY2xhc3M9XCJjYXNlLXRhYmxlLWNvbHVtblwiPjxzcGFuPnt7Y2FzZS5jY2RKdXJpc2RpY3Rpb259fTwvc3Bhbj48L3RkPlxuICAgICAgPHRkIGNsYXNzPVwiY2FzZS10YWJsZS1jb2x1bW5cIj48c3BhbiBbdGl0bGVdPVwiY2FzZS5zdGF0ZURlc2NyaXB0aW9uXCI+e3tjYXNlLnN0YXRlfX08L3NwYW4+PC90ZD5cbiAgICAgIDx0ZCBjbGFzcz1cImNhc2UtdGFibGUtY29sdW1uXCIgKm5nRm9yPVwibGV0IGRldGFpbHMgb2YgY2FzZS5saW5rRGV0YWlsc1wiPlxuICAgICAgICA8c3BhbiAqbmdGb3I9XCJsZXQgcmVhc29uIG9mIGRldGFpbHMucmVhc29uczsgbGV0IGkgPSBpbmRleDsgbGV0IGlzTGFzdCA9IGxhc3RcIj5cbiAgICAgICAgICB7e3JlYXNvbiB8IGNjZExpbmtDYXNlc0Zyb21SZWFzb25WYWx1ZX19PHNwYW4+PGEgY2xhc3M9XCJnb3Z1ay0hLXBhZGRpbmctbGVmdC0xXCJcbiAgICAgICAgICAgIGhyZWY9XCJjYXNlcy9jYXNlLWRldGFpbHMve3sgY2FzZS5jYXNlUmVmZXJlbmNlIH19XCJcbiAgICAgICAgICAgICpuZ0lmPVwiaGFzTGVhZENhc2VPckNvbnNvbGlkYXRlZChyZWFzb24ucmVhc29uQ29kZSlcIj57e2dldENhc2VSZWZlcmVuY2VMaW5rKGNhc2UuY2FzZVJlZmVyZW5jZSl9fTwvYT48L3NwYW4+XG4gICAgICAgIDxiciAqbmdJZj1cIiFpc0xhc3RcIiAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3RkPlxuICAgIDwvdHI+XG4gICAgPHRyIGNsYXNzPVwiZ292dWstdGFibGVfX3Jvd1wiICpuZ0lmPVwibm9MaW5rZWRDYXNlc1wiPlxuICAgICAgPHRkIGNsYXNzPVwiZ292dWstdGFibGVfX2NlbGxcIiBjb2xzcGFuPVwiNVwiPlxuICAgICAgICBOb25lXG4gICAgICA8L3RkPlxuICAgIDwvdHI+XG4gICAgPC90Ym9keT4gIFxuPC90YWJsZT5cbiJdfQ==
@@ -17048,24 +17048,52 @@ function LinkedCasesFromTableComponent_a_0_Template(rf, ctx) {
17048
17048
  i0.ɵɵtextInterpolate(ctx_r0.showHideLinkText);
17049
17049
  }
17050
17050
  }
17051
+ function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_a_4_Template(rf, ctx) {
17052
+ if (rf & 1) {
17053
+ i0.ɵɵelementStart(0, "a", 20);
17054
+ i0.ɵɵtext(1);
17055
+ i0.ɵɵelementEnd();
17056
+ }
17057
+ if (rf & 2) {
17058
+ const case_r7 = i0.ɵɵnextContext(3).$implicit;
17059
+ const ctx_r14 = i0.ɵɵnextContext(3);
17060
+ i0.ɵɵpropertyInterpolate1("href", "cases/case-details/", case_r7.caseReference, "", i0.ɵɵsanitizeUrl);
17061
+ i0.ɵɵadvance(1);
17062
+ i0.ɵɵtextInterpolate(ctx_r14.getCaseReferenceLink(case_r7.caseReference));
17063
+ }
17064
+ }
17065
+ function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_br_5_Template(rf, ctx) {
17066
+ if (rf & 1) {
17067
+ i0.ɵɵelement(0, "br");
17068
+ }
17069
+ }
17051
17070
  function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_Template(rf, ctx) {
17052
17071
  if (rf & 1) {
17053
17072
  i0.ɵɵelementStart(0, "span");
17054
17073
  i0.ɵɵtext(1);
17055
17074
  i0.ɵɵpipe(2, "ccdLinkCasesFromReasonValue");
17056
- i0.ɵɵelement(3, "br");
17075
+ i0.ɵɵelementStart(3, "span");
17076
+ i0.ɵɵtemplate(4, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_a_4_Template, 2, 2, "a", 18);
17077
+ i0.ɵɵelementEnd();
17078
+ i0.ɵɵtemplate(5, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_br_5_Template, 1, 0, "br", 19);
17057
17079
  i0.ɵɵelementEnd();
17058
17080
  }
17059
17081
  if (rf & 2) {
17060
17082
  const reason_r11 = ctx.$implicit;
17083
+ const isLast_r13 = ctx.last;
17084
+ const ctx_r10 = i0.ɵɵnextContext(5);
17085
+ i0.ɵɵadvance(1);
17086
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 3, reason_r11), "");
17087
+ i0.ɵɵadvance(3);
17088
+ i0.ɵɵproperty("ngIf", ctx_r10.hasLeadCaseOrConsolidated(reason_r11.reasonCode));
17061
17089
  i0.ɵɵadvance(1);
17062
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, reason_r11), " ");
17090
+ i0.ɵɵproperty("ngIf", !isLast_r13);
17063
17091
  }
17064
17092
  }
17065
17093
  function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_Template(rf, ctx) {
17066
17094
  if (rf & 1) {
17067
17095
  i0.ɵɵelementStart(0, "td", 14);
17068
- i0.ɵɵtemplate(1, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_Template, 4, 3, "span", 17);
17096
+ i0.ɵɵtemplate(1, LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_td_18_span_1_Template, 6, 5, "span", 17);
17069
17097
  i0.ɵɵelementEnd();
17070
17098
  }
17071
17099
  if (rf & 2) {
@@ -17118,7 +17146,7 @@ function LinkedCasesFromTableComponent_table_1_tbody_13_tr_1_Template(rf, ctx) {
17118
17146
  }
17119
17147
  function LinkedCasesFromTableComponent_table_1_tbody_13_tr_2_Template(rf, ctx) {
17120
17148
  if (rf & 1) {
17121
- i0.ɵɵelementStart(0, "tr", 5)(1, "td", 18);
17149
+ i0.ɵɵelementStart(0, "tr", 5)(1, "td", 21);
17122
17150
  i0.ɵɵtext(2, " None ");
17123
17151
  i0.ɵɵelementEnd()();
17124
17152
  }
@@ -17215,6 +17243,13 @@ class LinkedCasesFromTableComponent {
17215
17243
  mapLookupIDToValueFromJurisdictions(fieldName, fieldValue) {
17216
17244
  return this.linkedCasesService.mapLookupIDToValueFromJurisdictions(fieldName, fieldValue);
17217
17245
  }
17246
+ getCaseReferenceLink(caseRef) {
17247
+ return caseRef.slice(this.caseId.length - 4);
17248
+ }
17249
+ hasLeadCaseOrConsolidated(reasonCode) {
17250
+ return reasonCode === LinkedCasesFromTableComponent.CASE_PROGRESS_REASON_CODE ||
17251
+ reasonCode === LinkedCasesFromTableComponent.CASE_CONSOLIDATED_REASON_CODE;
17252
+ }
17218
17253
  onClick() {
17219
17254
  this.showHideLinkText = this.showHideLinkText === 'Show'
17220
17255
  ? 'Hide'
@@ -17222,8 +17257,10 @@ class LinkedCasesFromTableComponent {
17222
17257
  }
17223
17258
  }
17224
17259
  LinkedCasesFromTableComponent.CASE_NAME_MISSING_TEXT = 'Case name missing';
17260
+ LinkedCasesFromTableComponent.CASE_CONSOLIDATED_REASON_CODE = 'CLRC015';
17261
+ LinkedCasesFromTableComponent.CASE_PROGRESS_REASON_CODE = 'CLRC016';
17225
17262
  LinkedCasesFromTableComponent.ɵfac = function LinkedCasesFromTableComponent_Factory(t) { return new (t || LinkedCasesFromTableComponent)(i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(CasesService), i0.ɵɵdirectiveInject(LinkedCasesService)); };
17226
- LinkedCasesFromTableComponent.ɵ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) {
17263
+ LinkedCasesFromTableComponent.ɵ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) {
17227
17264
  if (rf & 1) {
17228
17265
  i0.ɵɵtemplate(0, LinkedCasesFromTableComponent_a_0_Template, 2, 1, "a", 0);
17229
17266
  i0.ɵɵtemplate(1, LinkedCasesFromTableComponent_table_1_Template, 14, 1, "table", 1);
@@ -17237,7 +17274,7 @@ LinkedCasesFromTableComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ typ
17237
17274
  (function () {
17238
17275
  (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LinkedCasesFromTableComponent, [{
17239
17276
  type: Component,
17240
- 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>\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"] }]
17277
+ 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"] }]
17241
17278
  }], function () { return [{ type: i1$1.ActivatedRoute }, { type: CasesService }, { type: LinkedCasesService }]; }, { caseField: [{
17242
17279
  type: Input
17243
17280
  }], notifyAPIFailure: [{