@hmcts/ccd-case-ui-toolkit 7.0.2-welsh-optional-text-fix → 7.0.2-welsh-optional-text-fix-v1

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.
@@ -143,7 +143,7 @@ export class WriteComplexFieldComponent extends AbstractFieldWriteComponent {
143
143
  }
144
144
  }
145
145
  WriteComplexFieldComponent.ɵfac = function WriteComplexFieldComponent_Factory(t) { return new (t || WriteComplexFieldComponent)(i0.ɵɵdirectiveInject(i1.IsCompoundPipe), i0.ɵɵdirectiveInject(i2.FormValidatorsService)); };
146
- WriteComplexFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WriteComplexFieldComponent, selectors: [["ccd-write-complex-type-field"]], inputs: { caseFields: "caseFields", formGroup: "formGroup", renderLabel: "renderLabel", ignoreMandatory: "ignoreMandatory" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 3, consts: [[1, "form-group", 3, "id"], ["class", "heading-h2", 4, "ngIf"], [3, "ngSwitch", 4, "ngFor", "ngForOf"], [1, "heading-h2"], [3, "ngSwitch"], ["ccdLabelSubstitutorp", "", 3, "caseField", "caseFields", "formGroup", "withLabel", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "parent", "idPrefix", "hidden", "isExpanded", "isInSearchBlock", 4, "ngSwitchCase"], ["ccdLabelSubstitutorp", "", 3, "caseField", "caseFields", "formGroup", "withLabel"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "parent", "idPrefix", "hidden", "isExpanded", "isInSearchBlock"]], template: function WriteComplexFieldComponent_Template(rf, ctx) { if (rf & 1) {
146
+ WriteComplexFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WriteComplexFieldComponent, selectors: [["ccd-write-complex-type-field"]], inputs: { caseFields: "caseFields", formGroup: "formGroup", renderLabel: "renderLabel", ignoreMandatory: "ignoreMandatory" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 3, consts: [[1, "form-group", 3, "id"], ["class", "heading-h2", 4, "ngIf"], [3, "ngSwitch", 4, "ngFor", "ngForOf"], [1, "heading-h2"], [3, "ngSwitch"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "withLabel", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "parent", "idPrefix", "hidden", "isExpanded", "isInSearchBlock", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "withLabel"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "parent", "idPrefix", "hidden", "isExpanded", "isInSearchBlock"]], template: function WriteComplexFieldComponent_Template(rf, ctx) { if (rf & 1) {
147
147
  i0.ɵɵelementStart(0, "div", 0)(1, "fieldset")(2, "legend");
148
148
  i0.ɵɵtemplate(3, WriteComplexFieldComponent_h2_3_Template, 3, 3, "h2", 1);
149
149
  i0.ɵɵelementEnd();
@@ -158,7 +158,7 @@ WriteComplexFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
158
158
  } }, styles: [".complex-panel[_ngcontent-%COMP%]{margin:13px 0;border:1px solid #bfc1c3}.complex-panel[_ngcontent-%COMP%] .complex-panel-title[_ngcontent-%COMP%]{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media (min-width: 641px){.complex-panel[_ngcontent-%COMP%] .complex-panel-title[_ngcontent-%COMP%]{font-size:19px;line-height:1.3157894737}}.complex-panel[_ngcontent-%COMP%] .complex-panel-table[_ngcontent-%COMP%] > tbody[_ngcontent-%COMP%] > tr[_ngcontent-%COMP%] > th[_ngcontent-%COMP%]{vertical-align:top}.complex-panel[_ngcontent-%COMP%] .complex-panel-table[_ngcontent-%COMP%] > tbody[_ngcontent-%COMP%] > tr[_ngcontent-%COMP%]:last-child > th[_ngcontent-%COMP%], .complex-panel[_ngcontent-%COMP%] .complex-panel-table[_ngcontent-%COMP%] > tbody[_ngcontent-%COMP%] > tr[_ngcontent-%COMP%]:last-child > td[_ngcontent-%COMP%]{border-bottom:none}.complex-panel[_ngcontent-%COMP%] .complex-panel-simple-field[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{padding-left:5px;width:295px}.complex-panel[_ngcontent-%COMP%] .complex-panel-compound-field[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:5px}"] });
159
159
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteComplexFieldComponent, [{
160
160
  type: Component,
161
- args: [{ selector: 'ccd-write-complex-type-field', template: "<div class=\"form-group\" [id]=\"id()\">\n <fieldset>\n <legend><h2 *ngIf=\"renderLabel\" class=\"heading-h2\">{{(caseField | ccdFieldLabel)}}</h2></legend>\n <ng-container [ngSwitch]=\"field | ccdIsReadOnly\" *ngFor=\"let field of complexFields\">\n <ccd-field-read *ngSwitchCase=\"true\"\n ccdLabelSubstitutorp\n [caseField]=\"buildField(field)\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [withLabel]=\"true\">\n </ccd-field-read>\n <ccd-field-write *ngSwitchCase=\"false\"\n ccdLabelSubstitutor\n [caseField]=\"field\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [parent]=\"complexGroup\"\n [idPrefix]=\"buildIdPrefix(field)\"\n [hidden]=\"field.hidden\"\n [isExpanded]=\"isExpanded\"\n [isInSearchBlock]=\"isInSearchBlock\">\n </ccd-field-write>\n </ng-container>\n </fieldset>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media (min-width: 641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}\n"] }]
161
+ args: [{ selector: 'ccd-write-complex-type-field', template: "<div class=\"form-group\" [id]=\"id()\">\n <fieldset>\n <legend><h2 *ngIf=\"renderLabel\" class=\"heading-h2\">{{(caseField | ccdFieldLabel)}}</h2></legend>\n <ng-container [ngSwitch]=\"field | ccdIsReadOnly\" *ngFor=\"let field of complexFields\">\n <ccd-field-read *ngSwitchCase=\"true\"\n ccdLabelSubstitutor\n [caseField]=\"buildField(field)\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [withLabel]=\"true\">\n </ccd-field-read>\n <ccd-field-write *ngSwitchCase=\"false\"\n ccdLabelSubstitutor\n [caseField]=\"field\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [parent]=\"complexGroup\"\n [idPrefix]=\"buildIdPrefix(field)\"\n [hidden]=\"field.hidden\"\n [isExpanded]=\"isExpanded\"\n [isInSearchBlock]=\"isInSearchBlock\">\n </ccd-field-write>\n </ng-container>\n </fieldset>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media (min-width: 641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}\n"] }]
162
162
  }], function () { return [{ type: i1.IsCompoundPipe }, { type: i2.FormValidatorsService }]; }, { caseFields: [{
163
163
  type: Input
164
164
  }], formGroup: [{
@@ -168,4 +168,4 @@ WriteComplexFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
168
168
  }], ignoreMandatory: [{
169
169
  type: Input
170
170
  }] }); })();
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUtY29tcGxleC1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jb21wbGV4L3dyaXRlLWNvbXBsZXgtZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY29tcGxleC93cml0ZS1jb21wbGV4LWZpZWxkLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFtQixXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFdkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFM0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7OztJQ1QvQyw2QkFBMkM7SUFBQSxZQUErQjs7SUFBQSxpQkFBSzs7O0lBQXBDLGVBQStCO0lBQS9CLDREQUErQjs7O0lBRWhGLG9DQU1pQjs7OztJ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O2NBTHRDLFNBQVM7MkJBQ0UsOEJBQThCO3FHQU1qQyxVQUFVO2tCQURoQixLQUFLO1lBSUMsU0FBUztrQkFEZixLQUFLO1lBTUMsV0FBVztrQkFEakIsS0FBSztZQUlDLGVBQWU7a0JBRHJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHBsYWluVG9DbGFzc0Zyb21FeGlzdCB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IENvbnN0YW50cyB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbnMvY29uc3RhbnRzJztcbmltcG9ydCB7IENhc2VGaWVsZCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbi9kZWZpbml0aW9uL2Nhc2UtZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgRmllbGRzRmlsdGVyUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGVzL2NvbXBsZXgvZmllbGRzLWZpbHRlci5waXBlJztcbmltcG9ydCB7IEZpZWxkc1V0aWxzIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZmllbGRzL2ZpZWxkcy51dGlscyc7XG5pbXBvcnQgeyBGb3JtVmFsaWRhdG9yc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtL2Zvcm0tdmFsaWRhdG9ycy5zZXJ2aWNlJztcblxuaW1wb3J0IHsgQWJzdHJhY3RGaWVsZFdyaXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1maWVsZC9hYnN0cmFjdC1maWVsZC13cml0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWJzdHJhY3RGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWZpZWxkL2Fic3RyYWN0LWZvcm0tZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IElzQ29tcG91bmRQaXBlIH0gZnJvbSAnLi4vdXRpbHMvaXMtY29tcG91bmQucGlwZSc7XG5cbmNvbnN0IEFERFJFU1NfRklFTERfVFlQRVMgPSBbJ0FkZHJlc3NVSycsICdBZGRyZXNzR2xvYmFsVUsnLCAnQWRkcmVzc0dsb2JhbCddO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2Qtd3JpdGUtY29tcGxleC10eXBlLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dyaXRlLWNvbXBsZXgtZmllbGQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlYWQtY29tcGxleC1maWVsZC10YWJsZS5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgV3JpdGVDb21wbGV4RmllbGRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdEZpZWxkV3JpdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBwdWJsaWMgY2FzZUZpZWxkczogQ2FzZUZpZWxkW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgcHVibGljIGNvbXBsZXhHcm91cDogRm9ybUdyb3VwO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZW5kZXJMYWJlbCA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlnbm9yZU1hbmRhdG9yeSA9IGZhbHNlO1xuXG4gIHB1YmxpYyBjb21wbGV4RmllbGRzOiBDYXNlRmllbGRbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGlzQ29tcG91bmRQaXBlOiBJc0NvbXBvdW5kUGlwZSwgcHJpdmF0ZSByZWFkb25seSBmb3JtVmFsaWRhdG9yc1NlcnZpY2U6IEZvcm1WYWxpZGF0b3JzU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5jb21wbGV4R3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBBcmUgd2UgaW5zaWRlIG9mIGEgY29sbGVjdGlvbj8gSWYgc28sIHRoZSBwYXJlbnQgaXMgdGhlIGNvbXBsZXhHcm91cCB3ZSB3YW50LlxuICAgIGlmICh0aGlzLmlzVG9wTGV2ZWxXaXRoaW5Db2xsZWN0aW9uKCkpIHtcbiAgICAgIHRoaXMuY29tcGxleEdyb3VwID0gdGhpcy5wYXJlbnQgYXMgRm9ybUdyb3VwO1xuICAgICAgRmllbGRzVXRpbHMuYWRkQ2FzZUZpZWxkQW5kQ29tcG9uZW50UmVmZXJlbmNlcyh0aGlzLmNvbXBsZXhHcm91cCwgdGhpcy5jYXNlRmllbGQsIHRoaXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbXBsZXhHcm91cCA9IHRoaXMucmVnaXN0ZXJDb250cm9sKHRoaXMuY29tcGxleEdyb3VwLCB0cnVlKSBhcyBGb3JtR3JvdXA7XG4gICAgfVxuICAgIC8vIEFkZCB2YWxpZGF0b3JzIGZvciB0aGUgY29tcGxleCBmaWVsZC5cbiAgICB0aGlzLmZvcm1WYWxpZGF0b3JzU2VydmljZS5hZGRWYWxpZGF0b3JzKHRoaXMuY2FzZUZpZWxkLCB0aGlzLmNvbXBsZXhHcm91cCk7XG4gICAgdGhpcy5zZXR1cEZpZWxkcygpO1xuICAgIHRoaXMuY29tcGxleEdyb3VwLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoeyBlbWl0RXZlbnQ6IHRydWUgfSk7XG4gIH1cblxuICBwdWJsaWMgYnVpbGRGaWVsZChjYXNlRmllbGQ6IENhc2VGaWVsZCk6IENhc2VGaWVsZCB7XG4gICAgbGV0IGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCA9IHRoaXMuY29tcGxleEdyb3VwLmdldChjYXNlRmllbGQuaWQpO1xuICAgIGlmICghY29udHJvbCkge1xuICAgICAgY29udHJvbCA9IG5ldyBGb3JtQ29udHJvbChjYXNlRmllbGQudmFsdWUpO1xuICAgICAgdGhpcy5jb21wbGV4R3JvdXAuYWRkQ29udHJvbChjYXNlRmllbGQuaWQsIGNvbnRyb2wpO1xuICAgIH1cblxuICAgIC8vIEFkZCB2YWxpZGF0b3JzIGZvciBhZGRyZXNzZXMsIGlmIGFwcHJvcHJpYXRlLlxuICAgIGlmICh0aGlzLmlzQWRkcmVzc1VLKCkpIHtcbiAgICAgIGlmICh0aGlzLmFkZHJlc3NWYWxpZGF0b3JzUmVxdWlyZWQoY2FzZUZpZWxkKSkge1xuICAgICAgICB0aGlzLmZvcm1WYWxpZGF0b3JzU2VydmljZS5hZGRWYWxpZGF0b3JzKGNhc2VGaWVsZCwgY29udHJvbCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEl0J3Mgbm90IGFuIGFkZHJlc3Mgc28gc2V0IGl0IHVwIGFjY29yZGluZyB0byBpdHMgb3duIGRpc3BsYXlfY29udGV4dC5cbiAgICAgIHRoaXMuZm9ybVZhbGlkYXRvcnNTZXJ2aWNlLmFkZFZhbGlkYXRvcnMoY2FzZUZpZWxkLCBjb250cm9sKTtcbiAgICB9XG5cbiAgICAvLyBGb3IgQWRkcmVzcy10eXBlIGZpZWxkcywgZW5zdXJlIHRoYXQgYWxsIHN1Yi1maWVsZHMgaW5oZXJpdCB0aGUgc2FtZSB2YWx1ZSBmb3IgcmV0YWluX2hpZGRlbl92YWx1ZSBhcyB0aGlzXG4gICAgLy8gcGFyZW50OyBhbHRob3VnaCBhZGRyZXNzIGZpZWxkcyB1c2UgdGhlIENvbXBsZXggdHlwZSwgZWFjaCBvZiB0aGVtIGlzIG1lYW50IHRvIGJlIHRyZWF0ZWQgYXMgb25lIGZpZWxkXG4gICAgaWYgKHRoaXMuaXNBZGRyZXNzVUsoKSAmJiB0aGlzLmNhc2VGaWVsZCkge1xuICAgICAgZm9yIChjb25zdCBhZGRyZXNzU3ViRmllbGQgb2YgdGhpcy5jYXNlRmllbGQuZmllbGRfdHlwZS5jb21wbGV4X2ZpZWxkcykge1xuICAgICAgICBhZGRyZXNzU3ViRmllbGQucmV0YWluX2hpZGRlbl92YWx1ZSA9IHRoaXMuY2FzZUZpZWxkLnJldGFpbl9oaWRkZW5fdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgRmllbGRzVXRpbHMuYWRkQ2FzZUZpZWxkQW5kQ29tcG9uZW50UmVmZXJlbmNlcyhjb250cm9sLCBjYXNlRmllbGQsIHRoaXMpO1xuICAgIHJldHVybiBjYXNlRmllbGQ7XG4gIH1cblxuICBwdWJsaWMgYnVpbGRJZFByZWZpeChmaWVsZDogQ2FzZUZpZWxkKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc0NvbXBvdW5kUGlwZS50cmFuc2Zvcm0oZmllbGQpID8gYCR7dGhpcy5pZFByZWZpeH0ke2ZpZWxkLmlkfV9gIDogYCR7dGhpcy5pZFByZWZpeH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRyZXNzVmFsaWRhdG9yc1JlcXVpcmVkKGNhc2VGaWVsZDogQ2FzZUZpZWxkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNTbWFsbEFkZHJlc3NMaW5lMShjYXNlRmllbGQpICYmIHRoaXMuaXNNYW5kYXRvcnkoY2FzZUZpZWxkKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNTbWFsbEFkZHJlc3NMaW5lMShjYXNlRmllbGQ6IENhc2VGaWVsZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBjYXNlRmllbGQuaWQgPT09ICdBZGRyZXNzTGluZTEnICYmIGNhc2VGaWVsZC5maWVsZF90eXBlLmlkID09PSAnVGV4dE1heDE1MCc7XG4gIH1cblxuICBwcml2YXRlIGlzTWFuZGF0b3J5KGNhc2VGaWVsZDogQ2FzZUZpZWxkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChDb25zdGFudHMuTUFOREFUT1JZID09PSBjYXNlRmllbGQuZGlzcGxheV9jb250ZXh0IHx8ICF0aGlzLmlnbm9yZU1hbmRhdG9yeSk7XG4gIH1cblxuICBwcml2YXRlIGlzQWRkcmVzc1VLKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBBRERSRVNTX0ZJRUxEX1RZUEVTLmluZGV4T2YodGhpcy5jYXNlRmllbGQuZmllbGRfdHlwZS5pZCkgPiAtMTtcbiAgfVxuXG4gIHByaXZhdGUgaXNUb3BMZXZlbFdpdGhpbkNvbGxlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMucGFyZW50KSB7XG4gICAgICBjb25zdCBwYXJlbnRDYXNlRmllbGQ6IENhc2VGaWVsZCA9IHRoaXMucGFyZW50WydjYXNlRmllbGQnXTtcbiAgICAgIGlmIChwYXJlbnRDYXNlRmllbGQgJiYgcGFyZW50Q2FzZUZpZWxkLmlkID09PSB0aGlzLmNhc2VGaWVsZC5pZCkge1xuICAgICAgICBjb25zdCBwYXJlbnRDb21wb25lbnQgPSB0aGlzLnBhcmVudFsnY29tcG9uZW50J10gYXMgQWJzdHJhY3RGb3JtRmllbGRDb21wb25lbnQ7XG4gICAgICAgIGlmIChwYXJlbnRDb21wb25lbnQpIHtcbiAgICAgICAgICBjb25zdCBwYXJlbnRDb21wb25lbnRDYXNlRmllbGQgPSBwYXJlbnRDb21wb25lbnQuY2FzZUZpZWxkO1xuICAgICAgICAgIGlmIChwYXJlbnRDb21wb25lbnRDYXNlRmllbGQuZmllbGRfdHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIHBhcmVudENvbXBvbmVudENhc2VGaWVsZC5maWVsZF90eXBlLnR5cGUgPT09ICdDb2xsZWN0aW9uJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cEZpZWxkcygpOiB2b2lkIHtcbiAgICBjb25zdCBmaWVsZHNGaWx0ZXJQaXBlOiBGaWVsZHNGaWx0ZXJQaXBlID0gbmV3IEZpZWxkc0ZpbHRlclBpcGUoKTtcbiAgICB0aGlzLmNvbXBsZXhGaWVsZHMgPSBmaWVsZHNGaWx0ZXJQaXBlLnRyYW5zZm9ybSh0aGlzLmNhc2VGaWVsZCwgdHJ1ZSkubWFwKGZpZWxkID0+IHtcbiAgICAgIGlmIChmaWVsZCAmJiBmaWVsZC5pZCkge1xuICAgICAgICBpZiAoIShmaWVsZCBpbnN0YW5jZW9mIENhc2VGaWVsZCkpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5idWlsZEZpZWxkKHBsYWluVG9DbGFzc0Zyb21FeGlzdChuZXcgQ2FzZUZpZWxkKCksIGZpZWxkKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmJ1aWxkRmllbGQoZmllbGQpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtpZF09XCJpZCgpXCI+XG4gIDxmaWVsZHNldD5cbiAgICA8bGVnZW5kPjxoMiAqbmdJZj1cInJlbmRlckxhYmVsXCIgY2xhc3M9XCJoZWFkaW5nLWgyXCI+e3soY2FzZUZpZWxkIHwgY2NkRmllbGRMYWJlbCl9fTwvaDI+PC9sZWdlbmQ+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiZmllbGQgfCBjY2RJc1JlYWRPbmx5XCIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGNvbXBsZXhGaWVsZHNcIj5cbiAgICAgIDxjY2QtZmllbGQtcmVhZCAqbmdTd2l0Y2hDYXNlPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgY2NkTGFiZWxTdWJzdGl0dXRvcnBcbiAgICAgICAgICAgICAgICAgICAgICBbY2FzZUZpZWxkXT1cImJ1aWxkRmllbGQoZmllbGQpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbY2FzZUZpZWxkc109XCJjYXNlRmllbGRzXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3dpdGhMYWJlbF09XCJ0cnVlXCI+XG4gICAgICA8L2NjZC1maWVsZC1yZWFkPlxuICAgICAgPGNjZC1maWVsZC13cml0ZSAqbmdTd2l0Y2hDYXNlPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICBjY2RMYWJlbFN1YnN0aXR1dG9yXG4gICAgICAgICAgICAgICAgICAgICAgIFtjYXNlRmllbGRdPVwiZmllbGRcIlxuICAgICAgICAgICAgICAgICAgICAgICBbY2FzZUZpZWxkc109XCJjYXNlRmllbGRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuICAgICAgICAgICAgICAgICAgICAgICBbcGFyZW50XT1cImNvbXBsZXhHcm91cFwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtpZFByZWZpeF09XCJidWlsZElkUHJlZml4KGZpZWxkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtoaWRkZW5dPVwiZmllbGQuaGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2lzRXhwYW5kZWRdPVwiaXNFeHBhbmRlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtpc0luU2VhcmNoQmxvY2tdPVwiaXNJblNlYXJjaEJsb2NrXCI+XG4gICAgICA8L2NjZC1maWVsZC13cml0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9maWVsZHNldD5cbjwvZGl2PlxuIl19
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUtY29tcGxleC1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9jb21wbGV4L3dyaXRlLWNvbXBsZXgtZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY29tcGxleC93cml0ZS1jb21wbGV4LWZpZWxkLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFtQixXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFdkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFM0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7OztJQ1QvQyw2QkFBMkM7SUFBQSxZQUErQjs7SUFBQSxpQkFBSzs7O0lBQXBDLGVBQStCO0lBQS9CLDREQUErQjs7O0lBRWhGLG9DQU1pQjs7OztJ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O2NBTHRDLFNBQVM7MkJBQ0UsOEJBQThCO3FHQU1qQyxVQUFVO2tCQURoQixLQUFLO1lBSUMsU0FBUztrQkFEZixLQUFLO1lBTUMsV0FBVztrQkFEakIsS0FBSztZQUlDLGVBQWU7a0JBRHJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHBsYWluVG9DbGFzc0Zyb21FeGlzdCB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IENvbnN0YW50cyB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbnMvY29uc3RhbnRzJztcbmltcG9ydCB7IENhc2VGaWVsZCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbi9kZWZpbml0aW9uL2Nhc2UtZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgRmllbGRzRmlsdGVyUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGVzL2NvbXBsZXgvZmllbGRzLWZpbHRlci5waXBlJztcbmltcG9ydCB7IEZpZWxkc1V0aWxzIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZmllbGRzL2ZpZWxkcy51dGlscyc7XG5pbXBvcnQgeyBGb3JtVmFsaWRhdG9yc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtL2Zvcm0tdmFsaWRhdG9ycy5zZXJ2aWNlJztcblxuaW1wb3J0IHsgQWJzdHJhY3RGaWVsZFdyaXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1maWVsZC9hYnN0cmFjdC1maWVsZC13cml0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWJzdHJhY3RGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWZpZWxkL2Fic3RyYWN0LWZvcm0tZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IElzQ29tcG91bmRQaXBlIH0gZnJvbSAnLi4vdXRpbHMvaXMtY29tcG91bmQucGlwZSc7XG5cbmNvbnN0IEFERFJFU1NfRklFTERfVFlQRVMgPSBbJ0FkZHJlc3NVSycsICdBZGRyZXNzR2xvYmFsVUsnLCAnQWRkcmVzc0dsb2JhbCddO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2Qtd3JpdGUtY29tcGxleC10eXBlLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dyaXRlLWNvbXBsZXgtZmllbGQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlYWQtY29tcGxleC1maWVsZC10YWJsZS5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgV3JpdGVDb21wbGV4RmllbGRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdEZpZWxkV3JpdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBwdWJsaWMgY2FzZUZpZWxkczogQ2FzZUZpZWxkW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgcHVibGljIGNvbXBsZXhHcm91cDogRm9ybUdyb3VwO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZW5kZXJMYWJlbCA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlnbm9yZU1hbmRhdG9yeSA9IGZhbHNlO1xuXG4gIHB1YmxpYyBjb21wbGV4RmllbGRzOiBDYXNlRmllbGRbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGlzQ29tcG91bmRQaXBlOiBJc0NvbXBvdW5kUGlwZSwgcHJpdmF0ZSByZWFkb25seSBmb3JtVmFsaWRhdG9yc1NlcnZpY2U6IEZvcm1WYWxpZGF0b3JzU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5jb21wbGV4R3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBBcmUgd2UgaW5zaWRlIG9mIGEgY29sbGVjdGlvbj8gSWYgc28sIHRoZSBwYXJlbnQgaXMgdGhlIGNvbXBsZXhHcm91cCB3ZSB3YW50LlxuICAgIGlmICh0aGlzLmlzVG9wTGV2ZWxXaXRoaW5Db2xsZWN0aW9uKCkpIHtcbiAgICAgIHRoaXMuY29tcGxleEdyb3VwID0gdGhpcy5wYXJlbnQgYXMgRm9ybUdyb3VwO1xuICAgICAgRmllbGRzVXRpbHMuYWRkQ2FzZUZpZWxkQW5kQ29tcG9uZW50UmVmZXJlbmNlcyh0aGlzLmNvbXBsZXhHcm91cCwgdGhpcy5jYXNlRmllbGQsIHRoaXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbXBsZXhHcm91cCA9IHRoaXMucmVnaXN0ZXJDb250cm9sKHRoaXMuY29tcGxleEdyb3VwLCB0cnVlKSBhcyBGb3JtR3JvdXA7XG4gICAgfVxuICAgIC8vIEFkZCB2YWxpZGF0b3JzIGZvciB0aGUgY29tcGxleCBmaWVsZC5cbiAgICB0aGlzLmZvcm1WYWxpZGF0b3JzU2VydmljZS5hZGRWYWxpZGF0b3JzKHRoaXMuY2FzZUZpZWxkLCB0aGlzLmNvbXBsZXhHcm91cCk7XG4gICAgdGhpcy5zZXR1cEZpZWxkcygpO1xuICAgIHRoaXMuY29tcGxleEdyb3VwLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoeyBlbWl0RXZlbnQ6IHRydWUgfSk7XG4gIH1cblxuICBwdWJsaWMgYnVpbGRGaWVsZChjYXNlRmllbGQ6IENhc2VGaWVsZCk6IENhc2VGaWVsZCB7XG4gICAgbGV0IGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCA9IHRoaXMuY29tcGxleEdyb3VwLmdldChjYXNlRmllbGQuaWQpO1xuICAgIGlmICghY29udHJvbCkge1xuICAgICAgY29udHJvbCA9IG5ldyBGb3JtQ29udHJvbChjYXNlRmllbGQudmFsdWUpO1xuICAgICAgdGhpcy5jb21wbGV4R3JvdXAuYWRkQ29udHJvbChjYXNlRmllbGQuaWQsIGNvbnRyb2wpO1xuICAgIH1cblxuICAgIC8vIEFkZCB2YWxpZGF0b3JzIGZvciBhZGRyZXNzZXMsIGlmIGFwcHJvcHJpYXRlLlxuICAgIGlmICh0aGlzLmlzQWRkcmVzc1VLKCkpIHtcbiAgICAgIGlmICh0aGlzLmFkZHJlc3NWYWxpZGF0b3JzUmVxdWlyZWQoY2FzZUZpZWxkKSkge1xuICAgICAgICB0aGlzLmZvcm1WYWxpZGF0b3JzU2VydmljZS5hZGRWYWxpZGF0b3JzKGNhc2VGaWVsZCwgY29udHJvbCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEl0J3Mgbm90IGFuIGFkZHJlc3Mgc28gc2V0IGl0IHVwIGFjY29yZGluZyB0byBpdHMgb3duIGRpc3BsYXlfY29udGV4dC5cbiAgICAgIHRoaXMuZm9ybVZhbGlkYXRvcnNTZXJ2aWNlLmFkZFZhbGlkYXRvcnMoY2FzZUZpZWxkLCBjb250cm9sKTtcbiAgICB9XG5cbiAgICAvLyBGb3IgQWRkcmVzcy10eXBlIGZpZWxkcywgZW5zdXJlIHRoYXQgYWxsIHN1Yi1maWVsZHMgaW5oZXJpdCB0aGUgc2FtZSB2YWx1ZSBmb3IgcmV0YWluX2hpZGRlbl92YWx1ZSBhcyB0aGlzXG4gICAgLy8gcGFyZW50OyBhbHRob3VnaCBhZGRyZXNzIGZpZWxkcyB1c2UgdGhlIENvbXBsZXggdHlwZSwgZWFjaCBvZiB0aGVtIGlzIG1lYW50IHRvIGJlIHRyZWF0ZWQgYXMgb25lIGZpZWxkXG4gICAgaWYgKHRoaXMuaXNBZGRyZXNzVUsoKSAmJiB0aGlzLmNhc2VGaWVsZCkge1xuICAgICAgZm9yIChjb25zdCBhZGRyZXNzU3ViRmllbGQgb2YgdGhpcy5jYXNlRmllbGQuZmllbGRfdHlwZS5jb21wbGV4X2ZpZWxkcykge1xuICAgICAgICBhZGRyZXNzU3ViRmllbGQucmV0YWluX2hpZGRlbl92YWx1ZSA9IHRoaXMuY2FzZUZpZWxkLnJldGFpbl9oaWRkZW5fdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgRmllbGRzVXRpbHMuYWRkQ2FzZUZpZWxkQW5kQ29tcG9uZW50UmVmZXJlbmNlcyhjb250cm9sLCBjYXNlRmllbGQsIHRoaXMpO1xuICAgIHJldHVybiBjYXNlRmllbGQ7XG4gIH1cblxuICBwdWJsaWMgYnVpbGRJZFByZWZpeChmaWVsZDogQ2FzZUZpZWxkKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc0NvbXBvdW5kUGlwZS50cmFuc2Zvcm0oZmllbGQpID8gYCR7dGhpcy5pZFByZWZpeH0ke2ZpZWxkLmlkfV9gIDogYCR7dGhpcy5pZFByZWZpeH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRyZXNzVmFsaWRhdG9yc1JlcXVpcmVkKGNhc2VGaWVsZDogQ2FzZUZpZWxkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNTbWFsbEFkZHJlc3NMaW5lMShjYXNlRmllbGQpICYmIHRoaXMuaXNNYW5kYXRvcnkoY2FzZUZpZWxkKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNTbWFsbEFkZHJlc3NMaW5lMShjYXNlRmllbGQ6IENhc2VGaWVsZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBjYXNlRmllbGQuaWQgPT09ICdBZGRyZXNzTGluZTEnICYmIGNhc2VGaWVsZC5maWVsZF90eXBlLmlkID09PSAnVGV4dE1heDE1MCc7XG4gIH1cblxuICBwcml2YXRlIGlzTWFuZGF0b3J5KGNhc2VGaWVsZDogQ2FzZUZpZWxkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChDb25zdGFudHMuTUFOREFUT1JZID09PSBjYXNlRmllbGQuZGlzcGxheV9jb250ZXh0IHx8ICF0aGlzLmlnbm9yZU1hbmRhdG9yeSk7XG4gIH1cblxuICBwcml2YXRlIGlzQWRkcmVzc1VLKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBBRERSRVNTX0ZJRUxEX1RZUEVTLmluZGV4T2YodGhpcy5jYXNlRmllbGQuZmllbGRfdHlwZS5pZCkgPiAtMTtcbiAgfVxuXG4gIHByaXZhdGUgaXNUb3BMZXZlbFdpdGhpbkNvbGxlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMucGFyZW50KSB7XG4gICAgICBjb25zdCBwYXJlbnRDYXNlRmllbGQ6IENhc2VGaWVsZCA9IHRoaXMucGFyZW50WydjYXNlRmllbGQnXTtcbiAgICAgIGlmIChwYXJlbnRDYXNlRmllbGQgJiYgcGFyZW50Q2FzZUZpZWxkLmlkID09PSB0aGlzLmNhc2VGaWVsZC5pZCkge1xuICAgICAgICBjb25zdCBwYXJlbnRDb21wb25lbnQgPSB0aGlzLnBhcmVudFsnY29tcG9uZW50J10gYXMgQWJzdHJhY3RGb3JtRmllbGRDb21wb25lbnQ7XG4gICAgICAgIGlmIChwYXJlbnRDb21wb25lbnQpIHtcbiAgICAgICAgICBjb25zdCBwYXJlbnRDb21wb25lbnRDYXNlRmllbGQgPSBwYXJlbnRDb21wb25lbnQuY2FzZUZpZWxkO1xuICAgICAgICAgIGlmIChwYXJlbnRDb21wb25lbnRDYXNlRmllbGQuZmllbGRfdHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIHBhcmVudENvbXBvbmVudENhc2VGaWVsZC5maWVsZF90eXBlLnR5cGUgPT09ICdDb2xsZWN0aW9uJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cEZpZWxkcygpOiB2b2lkIHtcbiAgICBjb25zdCBmaWVsZHNGaWx0ZXJQaXBlOiBGaWVsZHNGaWx0ZXJQaXBlID0gbmV3IEZpZWxkc0ZpbHRlclBpcGUoKTtcbiAgICB0aGlzLmNvbXBsZXhGaWVsZHMgPSBmaWVsZHNGaWx0ZXJQaXBlLnRyYW5zZm9ybSh0aGlzLmNhc2VGaWVsZCwgdHJ1ZSkubWFwKGZpZWxkID0+IHtcbiAgICAgIGlmIChmaWVsZCAmJiBmaWVsZC5pZCkge1xuICAgICAgICBpZiAoIShmaWVsZCBpbnN0YW5jZW9mIENhc2VGaWVsZCkpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5idWlsZEZpZWxkKHBsYWluVG9DbGFzc0Zyb21FeGlzdChuZXcgQ2FzZUZpZWxkKCksIGZpZWxkKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmJ1aWxkRmllbGQoZmllbGQpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtpZF09XCJpZCgpXCI+XG4gIDxmaWVsZHNldD5cbiAgICA8bGVnZW5kPjxoMiAqbmdJZj1cInJlbmRlckxhYmVsXCIgY2xhc3M9XCJoZWFkaW5nLWgyXCI+e3soY2FzZUZpZWxkIHwgY2NkRmllbGRMYWJlbCl9fTwvaDI+PC9sZWdlbmQ+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiZmllbGQgfCBjY2RJc1JlYWRPbmx5XCIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGNvbXBsZXhGaWVsZHNcIj5cbiAgICAgIDxjY2QtZmllbGQtcmVhZCAqbmdTd2l0Y2hDYXNlPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgY2NkTGFiZWxTdWJzdGl0dXRvclxuICAgICAgICAgICAgICAgICAgICAgIFtjYXNlRmllbGRdPVwiYnVpbGRGaWVsZChmaWVsZClcIlxuICAgICAgICAgICAgICAgICAgICAgIFtjYXNlRmllbGRzXT1cImNhc2VGaWVsZHNcIlxuICAgICAgICAgICAgICAgICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCJcbiAgICAgICAgICAgICAgICAgICAgICBbd2l0aExhYmVsXT1cInRydWVcIj5cbiAgICAgIDwvY2NkLWZpZWxkLXJlYWQ+XG4gICAgICA8Y2NkLWZpZWxkLXdyaXRlICpuZ1N3aXRjaENhc2U9XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgIGNjZExhYmVsU3Vic3RpdHV0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgW2Nhc2VGaWVsZF09XCJmaWVsZFwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtjYXNlRmllbGRzXT1cImNhc2VGaWVsZHNcIlxuICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtwYXJlbnRdPVwiY29tcGxleEdyb3VwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2lkUHJlZml4XT1cImJ1aWxkSWRQcmVmaXgoZmllbGQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2hpZGRlbl09XCJmaWVsZC5oaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICBbaXNFeHBhbmRlZF09XCJpc0V4cGFuZGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2lzSW5TZWFyY2hCbG9ja109XCJpc0luU2VhcmNoQmxvY2tcIj5cbiAgICAgIDwvY2NkLWZpZWxkLXdyaXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2ZpZWxkc2V0PlxuPC9kaXY+XG4iXX0=
@@ -13655,7 +13655,7 @@ class WriteComplexFieldComponent extends AbstractFieldWriteComponent {
13655
13655
  }
13656
13656
  }
13657
13657
  WriteComplexFieldComponent.ɵfac = function WriteComplexFieldComponent_Factory(t) { return new (t || WriteComplexFieldComponent)(i0.ɵɵdirectiveInject(IsCompoundPipe), i0.ɵɵdirectiveInject(FormValidatorsService)); };
13658
- WriteComplexFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WriteComplexFieldComponent, selectors: [["ccd-write-complex-type-field"]], inputs: { caseFields: "caseFields", formGroup: "formGroup", renderLabel: "renderLabel", ignoreMandatory: "ignoreMandatory" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 3, consts: [[1, "form-group", 3, "id"], ["class", "heading-h2", 4, "ngIf"], [3, "ngSwitch", 4, "ngFor", "ngForOf"], [1, "heading-h2"], [3, "ngSwitch"], ["ccdLabelSubstitutorp", "", 3, "caseField", "caseFields", "formGroup", "withLabel", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "parent", "idPrefix", "hidden", "isExpanded", "isInSearchBlock", 4, "ngSwitchCase"], ["ccdLabelSubstitutorp", "", 3, "caseField", "caseFields", "formGroup", "withLabel"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "parent", "idPrefix", "hidden", "isExpanded", "isInSearchBlock"]], template: function WriteComplexFieldComponent_Template(rf, ctx) {
13658
+ WriteComplexFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WriteComplexFieldComponent, selectors: [["ccd-write-complex-type-field"]], inputs: { caseFields: "caseFields", formGroup: "formGroup", renderLabel: "renderLabel", ignoreMandatory: "ignoreMandatory" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 3, consts: [[1, "form-group", 3, "id"], ["class", "heading-h2", 4, "ngIf"], [3, "ngSwitch", 4, "ngFor", "ngForOf"], [1, "heading-h2"], [3, "ngSwitch"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "withLabel", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "parent", "idPrefix", "hidden", "isExpanded", "isInSearchBlock", 4, "ngSwitchCase"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "withLabel"], ["ccdLabelSubstitutor", "", 3, "caseField", "caseFields", "formGroup", "parent", "idPrefix", "hidden", "isExpanded", "isInSearchBlock"]], template: function WriteComplexFieldComponent_Template(rf, ctx) {
13659
13659
  if (rf & 1) {
13660
13660
  i0.ɵɵelementStart(0, "div", 0)(1, "fieldset")(2, "legend");
13661
13661
  i0.ɵɵtemplate(3, WriteComplexFieldComponent_h2_3_Template, 3, 3, "h2", 1);
@@ -13674,7 +13674,7 @@ WriteComplexFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
13674
13674
  (function () {
13675
13675
  (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WriteComplexFieldComponent, [{
13676
13676
  type: Component,
13677
- args: [{ selector: 'ccd-write-complex-type-field', template: "<div class=\"form-group\" [id]=\"id()\">\n <fieldset>\n <legend><h2 *ngIf=\"renderLabel\" class=\"heading-h2\">{{(caseField | ccdFieldLabel)}}</h2></legend>\n <ng-container [ngSwitch]=\"field | ccdIsReadOnly\" *ngFor=\"let field of complexFields\">\n <ccd-field-read *ngSwitchCase=\"true\"\n ccdLabelSubstitutorp\n [caseField]=\"buildField(field)\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [withLabel]=\"true\">\n </ccd-field-read>\n <ccd-field-write *ngSwitchCase=\"false\"\n ccdLabelSubstitutor\n [caseField]=\"field\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [parent]=\"complexGroup\"\n [idPrefix]=\"buildIdPrefix(field)\"\n [hidden]=\"field.hidden\"\n [isExpanded]=\"isExpanded\"\n [isInSearchBlock]=\"isInSearchBlock\">\n </ccd-field-write>\n </ng-container>\n </fieldset>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media (min-width: 641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}\n"] }]
13677
+ args: [{ selector: 'ccd-write-complex-type-field', template: "<div class=\"form-group\" [id]=\"id()\">\n <fieldset>\n <legend><h2 *ngIf=\"renderLabel\" class=\"heading-h2\">{{(caseField | ccdFieldLabel)}}</h2></legend>\n <ng-container [ngSwitch]=\"field | ccdIsReadOnly\" *ngFor=\"let field of complexFields\">\n <ccd-field-read *ngSwitchCase=\"true\"\n ccdLabelSubstitutor\n [caseField]=\"buildField(field)\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [withLabel]=\"true\">\n </ccd-field-read>\n <ccd-field-write *ngSwitchCase=\"false\"\n ccdLabelSubstitutor\n [caseField]=\"field\"\n [caseFields]=\"caseFields\"\n [formGroup]=\"formGroup\"\n [parent]=\"complexGroup\"\n [idPrefix]=\"buildIdPrefix(field)\"\n [hidden]=\"field.hidden\"\n [isExpanded]=\"isExpanded\"\n [isInSearchBlock]=\"isInSearchBlock\">\n </ccd-field-write>\n </ng-container>\n </fieldset>\n</div>\n", styles: [".complex-panel{margin:13px 0;border:1px solid #bfc1c3}.complex-panel .complex-panel-title{background-color:#dee0e2;padding:5px 5px 2px;border-bottom:1px solid #bfc1c3;display:block;color:#0b0c0c;font-family:nta,Arial,sans-serif;font-weight:700;text-transform:none;font-size:16px;line-height:1.25}@media (min-width: 641px){.complex-panel .complex-panel-title{font-size:19px;line-height:1.3157894737}}.complex-panel .complex-panel-table>tbody>tr>th{vertical-align:top}.complex-panel .complex-panel-table>tbody>tr:last-child>th,.complex-panel .complex-panel-table>tbody>tr:last-child>td{border-bottom:none}.complex-panel .complex-panel-simple-field th{padding-left:5px;width:295px}.complex-panel .complex-panel-compound-field td{padding:5px}\n"] }]
13678
13678
  }], function () { return [{ type: IsCompoundPipe }, { type: FormValidatorsService }]; }, { caseFields: [{
13679
13679
  type: Input
13680
13680
  }], formGroup: [{