@hmcts/ccd-case-ui-toolkit 7.0.20-exui-1465-rc1 → 7.0.21-case-flags-language-search-validation

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.
Files changed (23) hide show
  1. package/esm2020/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.mjs +34 -23
  2. package/esm2020/lib/shared/components/palette/case-flag/enums/search-language-interpreter-error-message.enum.mjs +2 -1
  3. package/esm2020/lib/shared/domain/case-flag/flag-type.model.mjs +1 -2
  4. package/esm2020/lib/shared/domain/case-flag/index.mjs +2 -1
  5. package/esm2020/lib/shared/domain/case-flag/language-interpreter-list-of-values-type.model.mjs +2 -0
  6. package/esm2020/lib/shared/domain/index.mjs +2 -1
  7. package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs +73 -62
  8. package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  9. package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs +72 -61
  10. package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  11. package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.d.ts +8 -4
  12. package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.d.ts.map +1 -1
  13. package/lib/shared/components/palette/case-flag/enums/search-language-interpreter-error-message.enum.d.ts +1 -0
  14. package/lib/shared/components/palette/case-flag/enums/search-language-interpreter-error-message.enum.d.ts.map +1 -1
  15. package/lib/shared/domain/case-flag/flag-type.model.d.ts +2 -5
  16. package/lib/shared/domain/case-flag/flag-type.model.d.ts.map +1 -1
  17. package/lib/shared/domain/case-flag/index.d.ts +1 -0
  18. package/lib/shared/domain/case-flag/index.d.ts.map +1 -1
  19. package/lib/shared/domain/case-flag/language-interpreter-list-of-values-type.model.d.ts +6 -0
  20. package/lib/shared/domain/case-flag/language-interpreter-list-of-values-type.model.d.ts.map +1 -0
  21. package/lib/shared/domain/index.d.ts +1 -0
  22. package/lib/shared/domain/index.d.ts.map +1 -1
  23. package/package.json +1 -1
@@ -115,20 +115,14 @@ export class SearchLanguageInterpreterComponent {
115
115
  this.rpxTranslationService = rpxTranslationService;
116
116
  this.SearchLanguageInterpreterControlNames = SearchLanguageInterpreterControlNames;
117
117
  this.caseFlagStateEmitter = new EventEmitter();
118
+ this.languageMaxCharLimit = 80;
119
+ this.signLanguageFlagCode = 'RA0042';
118
120
  this.minSearchCharacters = 3;
119
121
  this.searchTerm = '';
120
122
  this.isCheckboxEnabled = false;
123
+ this.searchLanguageInterpreterStep = SearchLanguageInterpreterStep;
121
124
  this.errorMessages = [];
122
- this.languageNotSelectedErrorMessage = '';
123
- this.languageNotEnteredErrorMessage = '';
124
- this.languageCharLimitErrorMessage = '';
125
- this.languageEnteredInBothFieldsErrorMessage = '';
126
125
  this.noResults = false;
127
- this.languageMaxCharLimit = 80;
128
- this.signLanguageFlagCode = 'RA0042';
129
- }
130
- get searchLanguageInterpreterStep() {
131
- return SearchLanguageInterpreterStep;
132
126
  }
133
127
  ngOnInit() {
134
128
  this.searchLanguageInterpreterHint = this.flagType.flagCode === this.signLanguageFlagCode
@@ -139,11 +133,11 @@ export class SearchLanguageInterpreterComponent {
139
133
  this.filteredLanguages$ = this.formGroup.get(SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM).valueChanges.pipe(
140
134
  // Need to check type of input because it changes to object (i.e. Language) when a value is selected from the
141
135
  // autocomplete panel, instead of string when a value is being typed in
142
- map(input => typeof input === 'string' ? input : input.value), map(searchTerm => {
136
+ map((input) => typeof input === 'string' ? input : input.value), map((searchTerm) => {
143
137
  // Update the current search term
144
138
  this.searchTerm = searchTerm;
145
139
  return this.filterLanguages(searchTerm);
146
- }), tap(languages => this.noResults = languages.length === 0));
140
+ }), tap((languages) => this.noResults = languages.length === 0));
147
141
  }
148
142
  onNext() {
149
143
  // Validate language interpreter entry
@@ -165,20 +159,35 @@ export class SearchLanguageInterpreterComponent {
165
159
  displayLanguage(language) {
166
160
  return language ? language.value : undefined;
167
161
  }
162
+ selectedOption(event) {
163
+ this.selectedLanguage = event.option.value;
164
+ }
168
165
  validateLanguageEntry() {
169
166
  this.languageNotSelectedErrorMessage = null;
170
167
  this.languageNotEnteredErrorMessage = null;
171
168
  this.languageCharLimitErrorMessage = null;
172
169
  this.languageEnteredInBothFieldsErrorMessage = null;
173
170
  this.errorMessages = [];
171
+ const languageSearchTermValue = this.formGroup.get(SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM).value;
174
172
  // Checkbox not enabled means the user has opted to search for and select the language
175
- if (!this.isCheckboxEnabled && !this.formGroup.get(SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM).value) {
176
- this.languageNotSelectedErrorMessage = SearchLanguageInterpreterErrorMessage.LANGUAGE_NOT_ENTERED;
177
- this.errorMessages.push({
178
- title: '',
179
- description: SearchLanguageInterpreterErrorMessage.LANGUAGE_NOT_ENTERED,
180
- fieldId: SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM
181
- });
173
+ if (!this.isCheckboxEnabled) {
174
+ // User searched for a language but not selected a language from the list of options
175
+ if (this.selectedLanguage === undefined && typeof (languageSearchTermValue) !== 'object') {
176
+ this.languageNotSelectedErrorMessage = SearchLanguageInterpreterErrorMessage.LANGUAGE_NOT_SELECTED;
177
+ this.errorMessages.push({
178
+ title: '',
179
+ description: SearchLanguageInterpreterErrorMessage.LANGUAGE_NOT_SELECTED,
180
+ fieldId: SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM
181
+ });
182
+ }
183
+ else if (!languageSearchTermValue) {
184
+ this.languageNotSelectedErrorMessage = SearchLanguageInterpreterErrorMessage.LANGUAGE_NOT_ENTERED;
185
+ this.errorMessages.push({
186
+ title: '',
187
+ description: SearchLanguageInterpreterErrorMessage.LANGUAGE_NOT_ENTERED,
188
+ fieldId: SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM
189
+ });
190
+ }
182
191
  }
183
192
  // Checkbox enabled means the user has opted to enter the language manually
184
193
  if (this.isCheckboxEnabled) {
@@ -198,7 +207,7 @@ export class SearchLanguageInterpreterComponent {
198
207
  fieldId: SearchLanguageInterpreterControlNames.MANUAL_LANGUAGE_ENTRY
199
208
  });
200
209
  }
201
- else if (this.formGroup.get(SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM).value) {
210
+ else if (languageSearchTermValue) {
202
211
  // Language entry is permitted in only one field at a time
203
212
  this.languageEnteredInBothFieldsErrorMessage = SearchLanguageInterpreterErrorMessage.LANGUAGE_ENTERED_IN_BOTH_FIELDS;
204
213
  this.errorMessages.push({
@@ -210,11 +219,12 @@ export class SearchLanguageInterpreterComponent {
210
219
  }
211
220
  }
212
221
  filterLanguages(searchTerm) {
222
+ this.selectedLanguage = undefined;
213
223
  if (searchTerm.length < this.minSearchCharacters) {
214
224
  return [];
215
225
  }
216
226
  return this.flagType.listOfValues
217
- ? this.flagType.listOfValues.filter(language =>
227
+ ? this.flagType.listOfValues.filter((language) =>
218
228
  // If a language has both English and Welsh values, match only on the value appropriate for the page language,
219
229
  // i.e. if RpxTranslationService.language is 'cy' then match on the value_cy property only. This is to prevent
220
230
  // cross-matches, where a user enters a search term in English and sees the corresponding Welsh value (because
@@ -229,7 +239,7 @@ export class SearchLanguageInterpreterComponent {
229
239
  }
230
240
  }
231
241
  SearchLanguageInterpreterComponent.ɵfac = function SearchLanguageInterpreterComponent_Factory(t) { return new (t || SearchLanguageInterpreterComponent)(i0.ɵɵdirectiveInject(i1.RpxTranslationService)); };
232
- SearchLanguageInterpreterComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SearchLanguageInterpreterComponent, selectors: [["ccd-search-language-interpreter"]], inputs: { formGroup: "formGroup", flagType: "flagType" }, outputs: { caseFlagStateEmitter: "caseFlagStateEmitter" }, decls: 29, vars: 28, consts: [[3, "formGroup"], [1, "govuk-form-group", 3, "ngClass"], [1, "govuk-label-wrapper"], [1, "govuk-label", "govuk-label--m", 3, "for"], ["id", "language-search-box-hint", 1, "govuk-hint"], [1, "auto-complete-container"], ["id", "language-not-selected-error-message", "class", "govuk-error-message", 4, "ngIf"], ["id", "language-entered-in-both-fields-error-message", "class", "govuk-error-message", 4, "ngIf"], ["aria-label", "Language search box", "matInput", "", "type", "text", 1, "govuk-input", "search-language__input", 3, "formControlName", "matAutocomplete"], ["autoActiveFirstOption", "", 1, "mat-autocomplete-panel-extend", 3, "displayWith"], ["autoSearchLanguage", "matAutocomplete"], [3, "value", 4, "ngFor", "ngForOf"], ["disabled", "", 4, "ngIf"], ["data-module", "govuk-checkboxes", 1, "govuk-checkboxes", "govuk-checkboxes--small", "govuk-checkboxes--conditional"], [1, "govuk-radios__item"], ["id", "enter-language-manually", "name", "enter-language-manually", "type", "checkbox", 1, "govuk-checkboxes__input", 3, "change"], ["for", "enter-language-manually", 1, "govuk-label", "govuk-checkboxes__label"], ["class", "govuk-radios__conditional", 4, "ngIf"], [1, "govuk-button-group"], ["type", "button", 1, "button", "button-primary", 3, "click"], ["id", "language-not-selected-error-message", 1, "govuk-error-message"], [1, "govuk-visually-hidden"], ["id", "language-entered-in-both-fields-error-message", 1, "govuk-error-message"], [3, "value"], ["disabled", ""], [1, "govuk-radios__conditional"], ["for", "manual-language-entry", 1, "govuk-label"], ["id", "language-not-entered-error-message", "class", "govuk-error-message", 4, "ngIf"], ["id", "language-char-limit-error-message", "class", "govuk-error-message", 4, "ngIf"], ["id", "manual-language-entry", "type", "text", 1, "govuk-input", "govuk-input--width-20", 3, "name", "formControlName"], ["id", "language-not-entered-error-message", 1, "govuk-error-message"], ["id", "language-char-limit-error-message", 1, "govuk-error-message"]], template: function SearchLanguageInterpreterComponent_Template(rf, ctx) { if (rf & 1) {
242
+ SearchLanguageInterpreterComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SearchLanguageInterpreterComponent, selectors: [["ccd-search-language-interpreter"]], inputs: { formGroup: "formGroup", flagType: "flagType" }, outputs: { caseFlagStateEmitter: "caseFlagStateEmitter" }, decls: 29, vars: 28, consts: [[3, "formGroup"], [1, "govuk-form-group", 3, "ngClass"], [1, "govuk-label-wrapper"], [1, "govuk-label", "govuk-label--m", 3, "for"], ["id", "language-search-box-hint", 1, "govuk-hint"], [1, "auto-complete-container"], ["id", "language-not-selected-error-message", "class", "govuk-error-message", 4, "ngIf"], ["id", "language-entered-in-both-fields-error-message", "class", "govuk-error-message", 4, "ngIf"], ["aria-label", "Language search box", "matInput", "", "type", "text", 1, "govuk-input", "search-language__input", 3, "formControlName", "matAutocomplete"], ["autoActiveFirstOption", "", 1, "mat-autocomplete-panel-extend", 3, "displayWith", "optionSelected"], ["autoSearchLanguage", "matAutocomplete"], [3, "value", 4, "ngFor", "ngForOf"], ["disabled", "", 4, "ngIf"], ["data-module", "govuk-checkboxes", 1, "govuk-checkboxes", "govuk-checkboxes--small", "govuk-checkboxes--conditional"], [1, "govuk-radios__item"], ["id", "enter-language-manually", "name", "enter-language-manually", "type", "checkbox", 1, "govuk-checkboxes__input", 3, "change"], ["for", "enter-language-manually", 1, "govuk-label", "govuk-checkboxes__label"], ["class", "govuk-radios__conditional", 4, "ngIf"], [1, "govuk-button-group"], ["type", "button", 1, "button", "button-primary", 3, "click"], ["id", "language-not-selected-error-message", 1, "govuk-error-message"], [1, "govuk-visually-hidden"], ["id", "language-entered-in-both-fields-error-message", 1, "govuk-error-message"], [3, "value"], ["disabled", ""], [1, "govuk-radios__conditional"], ["for", "manual-language-entry", 1, "govuk-label"], ["id", "language-not-entered-error-message", "class", "govuk-error-message", 4, "ngIf"], ["id", "language-char-limit-error-message", "class", "govuk-error-message", 4, "ngIf"], ["id", "manual-language-entry", "type", "text", 1, "govuk-input", "govuk-input--width-20", 3, "name", "formControlName"], ["id", "language-not-entered-error-message", 1, "govuk-error-message"], ["id", "language-char-limit-error-message", 1, "govuk-error-message"]], template: function SearchLanguageInterpreterComponent_Template(rf, ctx) { if (rf & 1) {
233
243
  i0.ɵɵelementContainerStart(0, 0);
234
244
  i0.ɵɵelementStart(1, "div", 1)(2, "h1", 2)(3, "label", 3);
235
245
  i0.ɵɵtext(4);
@@ -244,6 +254,7 @@ SearchLanguageInterpreterComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent(
244
254
  i0.ɵɵtemplate(11, SearchLanguageInterpreterComponent_div_11_Template, 6, 6, "div", 7);
245
255
  i0.ɵɵelement(12, "input", 8);
246
256
  i0.ɵɵelementStart(13, "mat-autocomplete", 9, 10);
257
+ i0.ɵɵlistener("optionSelected", function SearchLanguageInterpreterComponent_Template_mat_autocomplete_optionSelected_13_listener($event) { return ctx.selectedOption($event); });
247
258
  i0.ɵɵtemplate(15, SearchLanguageInterpreterComponent_mat_option_15_Template, 3, 4, "mat-option", 11);
248
259
  i0.ɵɵpipe(16, "async");
249
260
  i0.ɵɵtemplate(17, SearchLanguageInterpreterComponent_mat_option_17_Template, 3, 3, "mat-option", 12);
@@ -295,7 +306,7 @@ SearchLanguageInterpreterComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent(
295
306
  } }, styles: [".autocomplete__input--show-all-values[_ngcontent-%COMP%]{padding:5px 34px 5px 5px;cursor:pointer}.autocomplete__dropdown-arrow-down[_ngcontent-%COMP%]{z-index:-1;display:inline-block;position:absolute;right:8px;width:24px;height:24px;top:10px}.autocomplete__menu[_ngcontent-%COMP%]{background-color:#fff;border:2px solid #0b0c0c;border-top:0;color:#0b0c0c;margin:0;max-height:342px;overflow-x:hidden;padding:0;width:100%;width:calc(100% - 4px)}.autocomplete__menu--visible[_ngcontent-%COMP%]{display:block}.autocomplete__menu--hidden[_ngcontent-%COMP%]{display:none}.autocomplete__menu--overlay[_ngcontent-%COMP%]{box-shadow:#00000042 0 2px 6px;left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline[_ngcontent-%COMP%]{position:relative}.autocomplete__option[_ngcontent-%COMP%]{border-bottom:solid #b1b4b6;border-width:1px 0;cursor:pointer;display:block;position:relative}.autocomplete__option[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{pointer-events:none}.autocomplete__option[_ngcontent-%COMP%]:first-of-type{border-top-width:0}.autocomplete__option[_ngcontent-%COMP%]:last-of-type{border-bottom-width:0}.autocomplete__option--odd[_ngcontent-%COMP%]{background-color:#fafafa}.autocomplete__option--focused[_ngcontent-%COMP%], .autocomplete__option[_ngcontent-%COMP%]:hover{background-color:#1d70b8;border-color:#1d70b8;color:#fff;outline:0}.autocomplete__option--no-results[_ngcontent-%COMP%]{background-color:#fafafa;color:#646b6f;cursor:not-allowed}.autocomplete__hint[_ngcontent-%COMP%], .autocomplete__input[_ngcontent-%COMP%], .autocomplete__option[_ngcontent-%COMP%]{font-size:13px;line-height:1.25}.autocomplete__hint[_ngcontent-%COMP%], .autocomplete__option[_ngcontent-%COMP%]{padding:5px}@media (min-width: 641px){.autocomplete__hint[_ngcontent-%COMP%], .autocomplete__input[_ngcontent-%COMP%], .autocomplete__option[_ngcontent-%COMP%]{font-size:13px;line-height:1.31579}}.div-action[_ngcontent-%COMP%]{display:inline-block}.add-location[_ngcontent-%COMP%]{display:inline}.remove-location-button[_ngcontent-%COMP%]{margin:5px}.hide-autocomplete[_ngcontent-%COMP%]{display:none}.auto-complete-container[_ngcontent-%COMP%]{min-width:550px;display:inline-block;margin-right:4px}.autocomplete__input[_ngcontent-%COMP%]{line-height:24px;font-size:19px}.hidden[_ngcontent-%COMP%]{display:none}.search-language__input[_ngcontent-%COMP%]{position:relative;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36' width='40' height='40'%3E%3Cpath d='M25.7 24.8L21.9 21c.7-1 1.1-2.2 1.1-3.5 0-3.6-2.9-6.5-6.5-6.5S10 13.9 10 17.5s2.9 6.5 6.5 6.5c1.6 0 3-.6 4.1-1.5l3.7 3.7 1.4-1.4zM12 17.5c0-2.5 2-4.5 4.5-4.5s4.5 2 4.5 4.5-2 4.5-4.5 4.5-4.5-2-4.5-4.5z' fill='%23505a5f'%3E%3C/path%3E%3C/svg%3E\");background-repeat:no-repeat;background-position:center left -2px;background-size:40px 40px;padding-left:35px}"] });
296
307
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchLanguageInterpreterComponent, [{
297
308
  type: Component,
298
- args: [{ selector: 'ccd-search-language-interpreter', template: "<ng-container [formGroup]=\"formGroup\">\n <div class=\"govuk-form-group\" [ngClass]=\"{'form-group-error': languageNotSelectedErrorMessage || languageEnteredInBothFieldsErrorMessage}\">\n <h1 class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m\" [for]=\"SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM\">\n {{flagType | flagFieldDisplay:'name'}}\n </label>\n </h1>\n <div id=\"language-search-box-hint\" class=\"govuk-hint\">\n {{searchLanguageInterpreterHint | rpxTranslate}}\n </div>\n <div class=\"auto-complete-container\">\n <div id=\"language-not-selected-error-message\" class=\"govuk-error-message\"\n *ngIf=\"languageNotSelectedErrorMessage\">\n <span class=\"govuk-visually-hidden\">{{'Error:' | rpxTranslate}}</span> {{languageNotSelectedErrorMessage | rpxTranslate}}\n </div>\n <div id=\"language-entered-in-both-fields-error-message\" class=\"govuk-error-message\"\n *ngIf=\"languageEnteredInBothFieldsErrorMessage\">\n <span class=\"govuk-visually-hidden\">{{'Error:' | rpxTranslate}}</span> {{languageEnteredInBothFieldsErrorMessage | rpxTranslate}}\n </div>\n <input aria-label=\"Language search box\" matInput [formControlName]=\"SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM\" [matAutocomplete]=\"autoSearchLanguage\"\n class=\"govuk-input search-language__input\" type=\"text\">\n <mat-autocomplete class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #autoSearchLanguage=\"matAutocomplete\"\n [displayWith]=\"displayLanguage\">\n <mat-option *ngFor=\"let language of filteredLanguages$ | async\" [value]=\"language\">\n {{language | languageInterpreterDisplay}}\n </mat-option>\n <mat-option *ngIf=\"noResults && searchTerm && searchTerm.length >= minSearchCharacters\" disabled>{{'No results found' | rpxTranslate}}</mat-option>\n </mat-autocomplete>\n </div>\n <div class=\"govuk-checkboxes govuk-checkboxes--small govuk-checkboxes--conditional\" data-module=\"govuk-checkboxes\">\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-checkboxes__input\" id=\"enter-language-manually\" name=\"enter-language-manually\" type=\"checkbox\"\n (change)=\"onEnterLanguageManually($event)\">\n <label class=\"govuk-label govuk-checkboxes__label\" for=\"enter-language-manually\">\n {{searchLanguageInterpreterStep.CHECKBOX_LABEL | rpxTranslate}}\n </label>\n </div>\n <div class=\"govuk-radios__conditional\" *ngIf=\"isCheckboxEnabled\">\n <div class=\"govuk-form-group\" [ngClass]=\"{'form-group-error': languageNotEnteredErrorMessage || languageCharLimitErrorMessage }\">\n <label class=\"govuk-label\" for=\"manual-language-entry\">{{searchLanguageInterpreterStep.INPUT_LABEL | rpxTranslate}}</label>\n <div id=\"language-not-entered-error-message\" class=\"govuk-error-message\"\n *ngIf=\"languageNotEnteredErrorMessage\">\n <span class=\"govuk-visually-hidden\">{{'Error:' | rpxTranslate}}</span> {{languageNotEnteredErrorMessage | rpxTranslate}}\n </div>\n <div id=\"language-char-limit-error-message\" class=\"govuk-error-message\"\n *ngIf=\"languageCharLimitErrorMessage\">\n <span class=\"govuk-visually-hidden\">{{'Error:' | rpxTranslate}}</span> {{languageCharLimitErrorMessage | rpxTranslate}}\n </div>\n <input class=\"govuk-input govuk-input--width-20\" id=\"manual-language-entry\" [name]=\"SearchLanguageInterpreterControlNames.MANUAL_LANGUAGE_ENTRY\" type=\"text\"\n [formControlName]=\"SearchLanguageInterpreterControlNames.MANUAL_LANGUAGE_ENTRY\">\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n\n<div class=\"govuk-button-group\">\n <button class=\"button button-primary\" type=\"button\" (click)=\"onNext()\">{{'Next' | rpxTranslate}}</button>\n</div>\n", styles: [".autocomplete__input--show-all-values{padding:5px 34px 5px 5px;cursor:pointer}.autocomplete__dropdown-arrow-down{z-index:-1;display:inline-block;position:absolute;right:8px;width:24px;height:24px;top:10px}.autocomplete__menu{background-color:#fff;border:2px solid #0b0c0c;border-top:0;color:#0b0c0c;margin:0;max-height:342px;overflow-x:hidden;padding:0;width:100%;width:calc(100% - 4px)}.autocomplete__menu--visible{display:block}.autocomplete__menu--hidden{display:none}.autocomplete__menu--overlay{box-shadow:#00000042 0 2px 6px;left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline{position:relative}.autocomplete__option{border-bottom:solid #b1b4b6;border-width:1px 0;cursor:pointer;display:block;position:relative}.autocomplete__option>*{pointer-events:none}.autocomplete__option:first-of-type{border-top-width:0}.autocomplete__option:last-of-type{border-bottom-width:0}.autocomplete__option--odd{background-color:#fafafa}.autocomplete__option--focused,.autocomplete__option:hover{background-color:#1d70b8;border-color:#1d70b8;color:#fff;outline:0}.autocomplete__option--no-results{background-color:#fafafa;color:#646b6f;cursor:not-allowed}.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:13px;line-height:1.25}.autocomplete__hint,.autocomplete__option{padding:5px}@media (min-width: 641px){.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:13px;line-height:1.31579}}.div-action{display:inline-block}.add-location{display:inline}.remove-location-button{margin:5px}.hide-autocomplete{display:none}.auto-complete-container{min-width:550px;display:inline-block;margin-right:4px}.autocomplete__input{line-height:24px;font-size:19px}.hidden{display:none}.search-language__input{position:relative;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36' width='40' height='40'%3E%3Cpath d='M25.7 24.8L21.9 21c.7-1 1.1-2.2 1.1-3.5 0-3.6-2.9-6.5-6.5-6.5S10 13.9 10 17.5s2.9 6.5 6.5 6.5c1.6 0 3-.6 4.1-1.5l3.7 3.7 1.4-1.4zM12 17.5c0-2.5 2-4.5 4.5-4.5s4.5 2 4.5 4.5-2 4.5-4.5 4.5-4.5-2-4.5-4.5z' fill='%23505a5f'%3E%3C/path%3E%3C/svg%3E\");background-repeat:no-repeat;background-position:center left -2px;background-size:40px 40px;padding-left:35px}\n"] }]
309
+ args: [{ selector: 'ccd-search-language-interpreter', template: "<ng-container [formGroup]=\"formGroup\">\n <div class=\"govuk-form-group\" [ngClass]=\"{'form-group-error': languageNotSelectedErrorMessage || languageEnteredInBothFieldsErrorMessage}\">\n <h1 class=\"govuk-label-wrapper\">\n <label class=\"govuk-label govuk-label--m\" [for]=\"SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM\">\n {{flagType | flagFieldDisplay:'name'}}\n </label>\n </h1>\n <div id=\"language-search-box-hint\" class=\"govuk-hint\">\n {{searchLanguageInterpreterHint | rpxTranslate}}\n </div>\n <div class=\"auto-complete-container\">\n <div id=\"language-not-selected-error-message\" class=\"govuk-error-message\"\n *ngIf=\"languageNotSelectedErrorMessage\">\n <span class=\"govuk-visually-hidden\">{{'Error:' | rpxTranslate}}</span> {{languageNotSelectedErrorMessage | rpxTranslate}}\n </div>\n <div id=\"language-entered-in-both-fields-error-message\" class=\"govuk-error-message\"\n *ngIf=\"languageEnteredInBothFieldsErrorMessage\">\n <span class=\"govuk-visually-hidden\">{{'Error:' | rpxTranslate}}</span> {{languageEnteredInBothFieldsErrorMessage | rpxTranslate}}\n </div>\n <input aria-label=\"Language search box\" matInput [formControlName]=\"SearchLanguageInterpreterControlNames.LANGUAGE_SEARCH_TERM\" [matAutocomplete]=\"autoSearchLanguage\"\n class=\"govuk-input search-language__input\" type=\"text\">\n <mat-autocomplete (optionSelected)=\"selectedOption($event)\" class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #autoSearchLanguage=\"matAutocomplete\"\n [displayWith]=\"displayLanguage\">\n <mat-option *ngFor=\"let language of filteredLanguages$ | async\" [value]=\"language\">\n {{language | languageInterpreterDisplay}}\n </mat-option>\n <mat-option *ngIf=\"noResults && searchTerm && searchTerm.length >= minSearchCharacters\" disabled>{{'No results found' | rpxTranslate}}</mat-option>\n </mat-autocomplete>\n </div>\n <div class=\"govuk-checkboxes govuk-checkboxes--small govuk-checkboxes--conditional\" data-module=\"govuk-checkboxes\">\n <div class=\"govuk-radios__item\">\n <input class=\"govuk-checkboxes__input\" id=\"enter-language-manually\" name=\"enter-language-manually\" type=\"checkbox\"\n (change)=\"onEnterLanguageManually($event)\">\n <label class=\"govuk-label govuk-checkboxes__label\" for=\"enter-language-manually\">\n {{searchLanguageInterpreterStep.CHECKBOX_LABEL | rpxTranslate}}\n </label>\n </div>\n <div class=\"govuk-radios__conditional\" *ngIf=\"isCheckboxEnabled\">\n <div class=\"govuk-form-group\" [ngClass]=\"{'form-group-error': languageNotEnteredErrorMessage || languageCharLimitErrorMessage }\">\n <label class=\"govuk-label\" for=\"manual-language-entry\">{{searchLanguageInterpreterStep.INPUT_LABEL | rpxTranslate}}</label>\n <div id=\"language-not-entered-error-message\" class=\"govuk-error-message\"\n *ngIf=\"languageNotEnteredErrorMessage\">\n <span class=\"govuk-visually-hidden\">{{'Error:' | rpxTranslate}}</span> {{languageNotEnteredErrorMessage | rpxTranslate}}\n </div>\n <div id=\"language-char-limit-error-message\" class=\"govuk-error-message\"\n *ngIf=\"languageCharLimitErrorMessage\">\n <span class=\"govuk-visually-hidden\">{{'Error:' | rpxTranslate}}</span> {{languageCharLimitErrorMessage | rpxTranslate}}\n </div>\n <input class=\"govuk-input govuk-input--width-20\" id=\"manual-language-entry\" [name]=\"SearchLanguageInterpreterControlNames.MANUAL_LANGUAGE_ENTRY\" type=\"text\"\n [formControlName]=\"SearchLanguageInterpreterControlNames.MANUAL_LANGUAGE_ENTRY\">\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n\n<div class=\"govuk-button-group\">\n <button class=\"button button-primary\" type=\"button\" (click)=\"onNext()\">{{'Next' | rpxTranslate}}</button>\n</div>\n", styles: [".autocomplete__input--show-all-values{padding:5px 34px 5px 5px;cursor:pointer}.autocomplete__dropdown-arrow-down{z-index:-1;display:inline-block;position:absolute;right:8px;width:24px;height:24px;top:10px}.autocomplete__menu{background-color:#fff;border:2px solid #0b0c0c;border-top:0;color:#0b0c0c;margin:0;max-height:342px;overflow-x:hidden;padding:0;width:100%;width:calc(100% - 4px)}.autocomplete__menu--visible{display:block}.autocomplete__menu--hidden{display:none}.autocomplete__menu--overlay{box-shadow:#00000042 0 2px 6px;left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline{position:relative}.autocomplete__option{border-bottom:solid #b1b4b6;border-width:1px 0;cursor:pointer;display:block;position:relative}.autocomplete__option>*{pointer-events:none}.autocomplete__option:first-of-type{border-top-width:0}.autocomplete__option:last-of-type{border-bottom-width:0}.autocomplete__option--odd{background-color:#fafafa}.autocomplete__option--focused,.autocomplete__option:hover{background-color:#1d70b8;border-color:#1d70b8;color:#fff;outline:0}.autocomplete__option--no-results{background-color:#fafafa;color:#646b6f;cursor:not-allowed}.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:13px;line-height:1.25}.autocomplete__hint,.autocomplete__option{padding:5px}@media (min-width: 641px){.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:13px;line-height:1.31579}}.div-action{display:inline-block}.add-location{display:inline}.remove-location-button{margin:5px}.hide-autocomplete{display:none}.auto-complete-container{min-width:550px;display:inline-block;margin-right:4px}.autocomplete__input{line-height:24px;font-size:19px}.hidden{display:none}.search-language__input{position:relative;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36' width='40' height='40'%3E%3Cpath d='M25.7 24.8L21.9 21c.7-1 1.1-2.2 1.1-3.5 0-3.6-2.9-6.5-6.5-6.5S10 13.9 10 17.5s2.9 6.5 6.5 6.5c1.6 0 3-.6 4.1-1.5l3.7 3.7 1.4-1.4zM12 17.5c0-2.5 2-4.5 4.5-4.5s4.5 2 4.5 4.5-2 4.5-4.5 4.5-4.5-2-4.5-4.5z' fill='%23505a5f'%3E%3C/path%3E%3C/svg%3E\");background-repeat:no-repeat;background-position:center left -2px;background-size:40px 40px;padding-left:35px}\n"] }]
299
310
  }], function () { return [{ type: i1.RpxTranslationService }]; }, { formGroup: [{
300
311
  type: Input
301
312
  }], flagType: [{
@@ -303,4 +314,4 @@ SearchLanguageInterpreterComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent(
303
314
  }], caseFlagStateEmitter: [{
304
315
  type: Output
305
316
  }] }); })();
306
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2Nhc2UtZmxhZy9jb21wb25lbnRzL3NlYXJjaC1sYW5ndWFnZS1pbnRlcnByZXRlci9zZWFyY2gtbGFuZ3VhZ2UtaW50ZXJwcmV0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY2FzZS1mbGFnL2NvbXBvbmVudHMvc2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyL3NlYXJjaC1sYW5ndWFnZS1pbnRlcnByZXRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFNUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFDQUFxQyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7O0lDRW5HLCtCQUMwQyxlQUFBO0lBQ0osWUFBMkI7O0lBQUEs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QUVWLDBCQUFlO1FBRWYsZ0NBQWdDLGtCQUFBO1FBQ3NCLGdIQUFTLFlBQVEsSUFBQztRQUFDLGFBQXlCOztRQUFBLGlCQUFTLEVBQUE7OztRQXpEN0YseUNBQXVCO1FBQ0wsZUFBNEc7UUFBNUcseUlBQTRHO1FBRTVGLGVBQWtFO1FBQWxFLG9GQUFrRTtRQUMxRyxlQUNGO1FBREUsNEVBQ0Y7UUFHQSxlQUNGO1FBREUseUZBQ0Y7UUFHSyxlQUFxQztRQUFyQywwREFBcUM7UUFJckMsZUFBNkM7UUFBN0Msa0VBQTZDO1FBR0MsZUFBOEU7UUFBOUUsZ0dBQThFLHdCQUFBO1FBRzdILGVBQStCO1FBQS9CLGlEQUErQjtRQUNFLGVBQTZCO1FBQTdCLHdFQUE2QjtRQUdqRCxlQUF5RTtRQUF6RSwwR0FBeUU7UUFRcEYsZUFDRjtRQURFLHlHQUNGO1FBRXNDLGVBQXVCO1FBQXZCLDRDQUF1QjtRQW9CSSxlQUF5QjtRQUF6QixvREFBeUI7O3VGRHpDckYsa0NBQWtDO2NBTDlDLFNBQVM7MkJBQ0UsaUNBQWlDO3dFQVdwQyxTQUFTO2tCQURmLEtBQUs7WUFJQyxRQUFRO2tCQURkLEtBQUs7WUFJQyxvQkFBb0I7a0JBRDFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUnB4VHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAncnB4LXh1aS10cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEVycm9yTWVzc2FnZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBGbGFnVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RvbWFpbi9jYXNlLWZsYWcnO1xuaW1wb3J0IHsgQ2FzZUZsYWdTdGF0ZSwgTGFuZ3VhZ2UgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQ2FzZUZsYWdGaWVsZFN0YXRlLCBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlLCBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyU3RlcCB9IGZyb20gJy4uLy4uL2VudW1zJztcbmltcG9ydCB7IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMgfSBmcm9tICcuL3NlYXJjaC1sYW5ndWFnZS1pbnRlcnByZXRlci1jb250cm9sLW5hbWVzLmVudW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2Qtc2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1sYW5ndWFnZS1pbnRlcnByZXRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC1sYW5ndWFnZS1pbnRlcnByZXRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgZ2V0IHNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJTdGVwKCk6IHR5cGVvZiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyU3RlcCB7XG4gICAgcmV0dXJuIFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJTdGVwO1xuICB9XG4gIHB1YmxpYyByZWFkb25seSBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzID0gU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGZsYWdUeXBlOiBGbGFnVHlwZTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNhc2VGbGFnU3RhdGVFbWl0dGVyOiBFdmVudEVtaXR0ZXI8Q2FzZUZsYWdTdGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPENhc2VGbGFnU3RhdGU+KCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IG1pblNlYXJjaENoYXJhY3RlcnMgPSAzO1xuICBwdWJsaWMgZmlsdGVyZWRMYW5ndWFnZXMkOiBPYnNlcnZhYmxlPExhbmd1YWdlW10+O1xuICBwdWJsaWMgc2VhcmNoVGVybSA9ICcnO1xuICBwdWJsaWMgaXNDaGVja2JveEVuYWJsZWQgPSBmYWxzZTtcbiAgcHVibGljIHNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJIaW50OiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyU3RlcDtcbiAgcHVibGljIGVycm9yTWVzc2FnZXM6IEVycm9yTWVzc2FnZVtdID0gW107XG4gIHB1YmxpYyBsYW5ndWFnZU5vdFNlbGVjdGVkRXJyb3JNZXNzYWdlID0gJyc7XG4gIHB1YmxpYyBsYW5ndWFnZU5vdEVudGVyZWRFcnJvck1lc3NhZ2UgPSAnJztcbiAgcHVibGljIGxhbmd1YWdlQ2hhckxpbWl0RXJyb3JNZXNzYWdlID0gJyc7XG4gIHB1YmxpYyBsYW5ndWFnZUVudGVyZWRJbkJvdGhGaWVsZHNFcnJvck1lc3NhZ2UgPSAnJztcbiAgcHVibGljIG5vUmVzdWx0cyA9IGZhbHNlO1xuICBwcml2YXRlIHJlYWRvbmx5IGxhbmd1YWdlTWF4Q2hhckxpbWl0ID0gODA7XG4gIHByaXZhdGUgcmVhZG9ubHkgc2lnbkxhbmd1YWdlRmxhZ0NvZGUgPSAnUkEwMDQyJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJweFRyYW5zbGF0aW9uU2VydmljZTogUnB4VHJhbnNsYXRpb25TZXJ2aWNlKSB7IH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hMYW5ndWFnZUludGVycHJldGVySGludCA9IHRoaXMuZmxhZ1R5cGUuZmxhZ0NvZGUgPT09IHRoaXMuc2lnbkxhbmd1YWdlRmxhZ0NvZGVcbiAgICAgID8gU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlclN0ZXAuU0lHTl9ISU5UX1RFWFRcbiAgICAgIDogU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlclN0ZXAuSElOVF9URVhUO1xuICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2woU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5MQU5HVUFHRV9TRUFSQ0hfVEVSTSwgbmV3IEZvcm1Db250cm9sKCkpO1xuICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2woU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5NQU5VQUxfTEFOR1VBR0VfRU5UUlksIG5ldyBGb3JtQ29udHJvbCgpKTtcbiAgICB0aGlzLmZpbHRlcmVkTGFuZ3VhZ2VzJCA9IHRoaXMuZm9ybUdyb3VwLmdldChTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLkxBTkdVQUdFX1NFQVJDSF9URVJNKS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgIC8vIE5lZWQgdG8gY2hlY2sgdHlwZSBvZiBpbnB1dCBiZWNhdXNlIGl0IGNoYW5nZXMgdG8gb2JqZWN0IChpLmUuIExhbmd1YWdlKSB3aGVuIGEgdmFsdWUgaXMgc2VsZWN0ZWQgZnJvbSB0aGVcbiAgICAgIC8vIGF1dG9jb21wbGV0ZSBwYW5lbCwgaW5zdGVhZCBvZiBzdHJpbmcgd2hlbiBhIHZhbHVlIGlzIGJlaW5nIHR5cGVkIGluXG4gICAgICBtYXAoaW5wdXQgPT4gdHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJyA/IGlucHV0IDogaW5wdXQudmFsdWUpLFxuICAgICAgbWFwKHNlYXJjaFRlcm0gPT4ge1xuICAgICAgICAvLyBVcGRhdGUgdGhlIGN1cnJlbnQgc2VhcmNoIHRlcm1cbiAgICAgICAgdGhpcy5zZWFyY2hUZXJtID0gc2VhcmNoVGVybTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyTGFuZ3VhZ2VzKHNlYXJjaFRlcm0pO1xuICAgICAgfSksXG4gICAgICB0YXAobGFuZ3VhZ2VzID0+IHRoaXMubm9SZXN1bHRzID0gbGFuZ3VhZ2VzLmxlbmd0aCA9PT0gMClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG9uTmV4dCgpOiB2b2lkIHtcbiAgICAvLyBWYWxpZGF0ZSBsYW5ndWFnZSBpbnRlcnByZXRlciBlbnRyeVxuICAgIHRoaXMudmFsaWRhdGVMYW5ndWFnZUVudHJ5KCk7XG4gICAgLy8gUmV0dXJuIGNhc2UgZmxhZyBmaWVsZCBzdGF0ZSBhbmQgZXJyb3IgbWVzc2FnZXMgdG8gdGhlIHBhcmVudFxuICAgIHRoaXMuY2FzZUZsYWdTdGF0ZUVtaXR0ZXIuZW1pdCh7XG4gICAgICBjdXJyZW50Q2FzZUZsYWdGaWVsZFN0YXRlOiBDYXNlRmxhZ0ZpZWxkU3RhdGUuRkxBR19MQU5HVUFHRV9JTlRFUlBSRVRFUixcbiAgICAgIGVycm9yTWVzc2FnZXM6IHRoaXMuZXJyb3JNZXNzYWdlc1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uRW50ZXJMYW5ndWFnZU1hbnVhbGx5KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuaXNDaGVja2JveEVuYWJsZWQgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmNoZWNrZWQ7XG5cbiAgICAvLyBJZiB0aGUgY2hlY2tib3ggaXMgZGlzYWJsZWQsIGkuZS4gdW5jaGVja2VkLCB0aGVuIGNsZWFyIHRoZSBtYW51YWwgbGFuZ3VhZ2UgZW50cnkgRm9ybUNvbnRyb2wgb2YgYW55IHZhbHVlIHRvXG4gICAgLy8gcHJldmVudCBpdCBiZWluZyByZXRhaW5lZCBldmVuIHdoZW4gdGhlIGZpZWxkIGl0c2VsZiBpcyBoaWRkZW5cbiAgICBpZiAoIXRoaXMuaXNDaGVja2JveEVuYWJsZWQpIHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmdldChTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLk1BTlVBTF9MQU5HVUFHRV9FTlRSWSkuc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGRpc3BsYXlMYW5ndWFnZShsYW5ndWFnZT86IExhbmd1YWdlKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gbGFuZ3VhZ2UgPyBsYW5ndWFnZS52YWx1ZSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVMYW5ndWFnZUVudHJ5KCk6IHZvaWQge1xuICAgIHRoaXMubGFuZ3VhZ2VOb3RTZWxlY3RlZEVycm9yTWVzc2FnZSA9IG51bGw7XG4gICAgdGhpcy5sYW5ndWFnZU5vdEVudGVyZWRFcnJvck1lc3NhZ2UgPSBudWxsO1xuICAgIHRoaXMubGFuZ3VhZ2VDaGFyTGltaXRFcnJvck1lc3NhZ2UgPSBudWxsO1xuICAgIHRoaXMubGFuZ3VhZ2VFbnRlcmVkSW5Cb3RoRmllbGRzRXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBbXTtcbiAgICAvLyBDaGVja2JveCBub3QgZW5hYmxlZCBtZWFucyB0aGUgdXNlciBoYXMgb3B0ZWQgdG8gc2VhcmNoIGZvciBhbmQgc2VsZWN0IHRoZSBsYW5ndWFnZVxuICAgIGlmICghdGhpcy5pc0NoZWNrYm94RW5hYmxlZCAmJiAhdGhpcy5mb3JtR3JvdXAuZ2V0KFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTEFOR1VBR0VfU0VBUkNIX1RFUk0pLnZhbHVlKSB7XG4gICAgICB0aGlzLmxhbmd1YWdlTm90U2VsZWN0ZWRFcnJvck1lc3NhZ2UgPSBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlLkxBTkdVQUdFX05PVF9FTlRFUkVEO1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICB0aXRsZTogJycsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlLkxBTkdVQUdFX05PVF9FTlRFUkVELFxuICAgICAgICBmaWVsZElkOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLkxBTkdVQUdFX1NFQVJDSF9URVJNXG4gICAgICB9KTtcbiAgICB9XG4gICAgLy8gQ2hlY2tib3ggZW5hYmxlZCBtZWFucyB0aGUgdXNlciBoYXMgb3B0ZWQgdG8gZW50ZXIgdGhlIGxhbmd1YWdlIG1hbnVhbGx5XG4gICAgaWYgKHRoaXMuaXNDaGVja2JveEVuYWJsZWQpIHtcbiAgICAgIGlmICghdGhpcy5mb3JtR3JvdXAuZ2V0KFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTUFOVUFMX0xBTkdVQUdFX0VOVFJZKS52YWx1ZSkge1xuICAgICAgICB0aGlzLmxhbmd1YWdlTm90RW50ZXJlZEVycm9yTWVzc2FnZSA9IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJFcnJvck1lc3NhZ2UuTEFOR1VBR0VfTk9UX0VOVEVSRUQ7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgICB0aXRsZTogJycsXG4gICAgICAgICAgZGVzY3JpcHRpb246IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJFcnJvck1lc3NhZ2UuTEFOR1VBR0VfTk9UX0VOVEVSRUQsXG4gICAgICAgICAgZmllbGRJZDogU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5NQU5VQUxfTEFOR1VBR0VfRU5UUllcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuZm9ybUdyb3VwLmdldChTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLk1BTlVBTF9MQU5HVUFHRV9FTlRSWSkudmFsdWUubGVuZ3RoID4gdGhpcy5sYW5ndWFnZU1heENoYXJMaW1pdCkge1xuICAgICAgICB0aGlzLmxhbmd1YWdlQ2hhckxpbWl0RXJyb3JNZXNzYWdlID0gU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckVycm9yTWVzc2FnZS5MQU5HVUFHRV9DSEFSX0xJTUlUX0VYQ0VFREVEO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMucHVzaCh7XG4gICAgICAgICAgdGl0bGU6ICcnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlLkxBTkdVQUdFX0NIQVJfTElNSVRfRVhDRUVERUQsXG4gICAgICAgICAgZmllbGRJZDogU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5NQU5VQUxfTEFOR1VBR0VfRU5UUllcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuZm9ybUdyb3VwLmdldChTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLkxBTkdVQUdFX1NFQVJDSF9URVJNKS52YWx1ZSkge1xuICAgICAgICAvLyBMYW5ndWFnZSBlbnRyeSBpcyBwZXJtaXR0ZWQgaW4gb25seSBvbmUgZmllbGQgYXQgYSB0aW1lXG4gICAgICAgIHRoaXMubGFuZ3VhZ2VFbnRlcmVkSW5Cb3RoRmllbGRzRXJyb3JNZXNzYWdlID0gU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckVycm9yTWVzc2FnZS5MQU5HVUFHRV9FTlRFUkVEX0lOX0JPVEhfRklFTERTO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMucHVzaCh7XG4gICAgICAgICAgdGl0bGU6ICcnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlLkxBTkdVQUdFX0VOVEVSRURfSU5fQk9USF9GSUVMRFMsXG4gICAgICAgICAgZmllbGRJZDogU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5MQU5HVUFHRV9TRUFSQ0hfVEVSTVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZpbHRlckxhbmd1YWdlcyhzZWFyY2hUZXJtOiBzdHJpbmcpOiBMYW5ndWFnZVtdIHtcbiAgICBpZiAoc2VhcmNoVGVybS5sZW5ndGggPCB0aGlzLm1pblNlYXJjaENoYXJhY3RlcnMpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5mbGFnVHlwZS5saXN0T2ZWYWx1ZXNcbiAgICAgID8gdGhpcy5mbGFnVHlwZS5saXN0T2ZWYWx1ZXMuZmlsdGVyKGxhbmd1YWdlID0+XG4gICAgICAgIC8vIElmIGEgbGFuZ3VhZ2UgaGFzIGJvdGggRW5nbGlzaCBhbmQgV2Vsc2ggdmFsdWVzLCBtYXRjaCBvbmx5IG9uIHRoZSB2YWx1ZSBhcHByb3ByaWF0ZSBmb3IgdGhlIHBhZ2UgbGFuZ3VhZ2UsXG4gICAgICAgIC8vIGkuZS4gaWYgUnB4VHJhbnNsYXRpb25TZXJ2aWNlLmxhbmd1YWdlIGlzICdjeScgdGhlbiBtYXRjaCBvbiB0aGUgdmFsdWVfY3kgcHJvcGVydHkgb25seS4gVGhpcyBpcyB0byBwcmV2ZW50XG4gICAgICAgIC8vIGNyb3NzLW1hdGNoZXMsIHdoZXJlIGEgdXNlciBlbnRlcnMgYSBzZWFyY2ggdGVybSBpbiBFbmdsaXNoIGFuZCBzZWVzIHRoZSBjb3JyZXNwb25kaW5nIFdlbHNoIHZhbHVlIChiZWNhdXNlXG4gICAgICAgIC8vIHRoZSBwYWdlIGxhbmd1YWdlIGlzIFdlbHNoKSBhbmQgdmljZSB2ZXJzYVxuICAgICAgICB0aGlzLnJweFRyYW5zbGF0aW9uU2VydmljZS5sYW5ndWFnZSA9PT0gJ2N5JyAmJiBsYW5ndWFnZS52YWx1ZSAmJiBsYW5ndWFnZS52YWx1ZV9jeSAmJlxuICAgICAgICBsYW5ndWFnZS52YWx1ZV9jeS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSwgMCkgfHxcbiAgICAgICAgdGhpcy5ycHhUcmFuc2xhdGlvblNlcnZpY2UubGFuZ3VhZ2UgIT09ICdjeScgJiYgbGFuZ3VhZ2UudmFsdWUgJiYgbGFuZ3VhZ2UudmFsdWVfY3kgJiZcbiAgICAgICAgbGFuZ3VhZ2UudmFsdWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hUZXJtLnRvTG93ZXJDYXNlKCksIDApIHx8XG4gICAgICAgICFsYW5ndWFnZS52YWx1ZV9jeSAmJiBsYW5ndWFnZS52YWx1ZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSwgMCkgfHxcbiAgICAgICAgIWxhbmd1YWdlLnZhbHVlICYmIGxhbmd1YWdlLnZhbHVlX2N5LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVGVybS50b0xvd2VyQ2FzZSgpLCAwKSlcbiAgICAgIDogW107XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIiBbbmdDbGFzc109XCJ7J2Zvcm0tZ3JvdXAtZXJyb3InOiBsYW5ndWFnZU5vdFNlbGVjdGVkRXJyb3JNZXNzYWdlIHx8IGxhbmd1YWdlRW50ZXJlZEluQm90aEZpZWxkc0Vycm9yTWVzc2FnZX1cIj5cbiAgICA8aDEgY2xhc3M9XCJnb3Z1ay1sYWJlbC13cmFwcGVyXCI+XG4gICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1sYWJlbC0tbVwiIFtmb3JdPVwiU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5MQU5HVUFHRV9TRUFSQ0hfVEVSTVwiPlxuICAgICAgICB7e2ZsYWdUeXBlIHwgZmxhZ0ZpZWxkRGlzcGxheTonbmFtZSd9fVxuICAgICAgPC9sYWJlbD5cbiAgICA8L2gxPlxuICAgIDxkaXYgaWQ9XCJsYW5ndWFnZS1zZWFyY2gtYm94LWhpbnRcIiBjbGFzcz1cImdvdnVrLWhpbnRcIj5cbiAgICAgIHt7c2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckhpbnQgfCBycHhUcmFuc2xhdGV9fVxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJhdXRvLWNvbXBsZXRlLWNvbnRhaW5lclwiPlxuICAgICAgPGRpdiBpZD1cImxhbmd1YWdlLW5vdC1zZWxlY3RlZC1lcnJvci1tZXNzYWdlXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgKm5nSWY9XCJsYW5ndWFnZU5vdFNlbGVjdGVkRXJyb3JNZXNzYWdlXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3snRXJyb3I6JyB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPiB7e2xhbmd1YWdlTm90U2VsZWN0ZWRFcnJvck1lc3NhZ2UgfCBycHhUcmFuc2xhdGV9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGlkPVwibGFuZ3VhZ2UtZW50ZXJlZC1pbi1ib3RoLWZpZWxkcy1lcnJvci1tZXNzYWdlXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgKm5nSWY9XCJsYW5ndWFnZUVudGVyZWRJbkJvdGhGaWVsZHNFcnJvck1lc3NhZ2VcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eydFcnJvcjonIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+IHt7bGFuZ3VhZ2VFbnRlcmVkSW5Cb3RoRmllbGRzRXJyb3JNZXNzYWdlIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGlucHV0IGFyaWEtbGFiZWw9XCJMYW5ndWFnZSBzZWFyY2ggYm94XCIgbWF0SW5wdXQgW2Zvcm1Db250cm9sTmFtZV09XCJTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLkxBTkdVQUdFX1NFQVJDSF9URVJNXCIgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvU2VhcmNoTGFuZ3VhZ2VcIlxuICAgICAgICBjbGFzcz1cImdvdnVrLWlucHV0IHNlYXJjaC1sYW5ndWFnZV9faW5wdXRcIiB0eXBlPVwidGV4dFwiPlxuICAgICAgPG1hdC1hdXRvY29tcGxldGUgY2xhc3M9XCJtYXQtYXV0b2NvbXBsZXRlLXBhbmVsLWV4dGVuZFwiIGF1dG9BY3RpdmVGaXJzdE9wdGlvbiAjYXV0b1NlYXJjaExhbmd1YWdlPVwibWF0QXV0b2NvbXBsZXRlXCJcbiAgICAgICAgW2Rpc3BsYXlXaXRoXT1cImRpc3BsYXlMYW5ndWFnZVwiPlxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgbGFuZ3VhZ2Ugb2YgZmlsdGVyZWRMYW5ndWFnZXMkIHwgYXN5bmNcIiBbdmFsdWVdPVwibGFuZ3VhZ2VcIj5cbiAgICAgICAgICB7e2xhbmd1YWdlIHwgbGFuZ3VhZ2VJbnRlcnByZXRlckRpc3BsYXl9fVxuICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwibm9SZXN1bHRzICYmIHNlYXJjaFRlcm0gJiYgc2VhcmNoVGVybS5sZW5ndGggPj0gbWluU2VhcmNoQ2hhcmFjdGVyc1wiIGRpc2FibGVkPnt7J05vIHJlc3VsdHMgZm91bmQnIHwgcnB4VHJhbnNsYXRlfX08L21hdC1vcHRpb24+XG4gICAgICA8L21hdC1hdXRvY29tcGxldGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXMgZ292dWstY2hlY2tib3hlcy0tc21hbGwgZ292dWstY2hlY2tib3hlcy0tY29uZGl0aW9uYWxcIiBkYXRhLW1vZHVsZT1cImdvdnVrLWNoZWNrYm94ZXNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2l0ZW1cIj5cbiAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faW5wdXRcIiBpZD1cImVudGVyLWxhbmd1YWdlLW1hbnVhbGx5XCIgbmFtZT1cImVudGVyLWxhbmd1YWdlLW1hbnVhbGx5XCIgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAoY2hhbmdlKT1cIm9uRW50ZXJMYW5ndWFnZU1hbnVhbGx5KCRldmVudClcIj5cbiAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstY2hlY2tib3hlc19fbGFiZWxcIiBmb3I9XCJlbnRlci1sYW5ndWFnZS1tYW51YWxseVwiPlxuICAgICAgICAgIHt7c2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlclN0ZXAuQ0hFQ0tCT1hfTEFCRUwgfCBycHhUcmFuc2xhdGV9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcmFkaW9zX19jb25kaXRpb25hbFwiICpuZ0lmPVwiaXNDaGVja2JveEVuYWJsZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIiBbbmdDbGFzc109XCJ7J2Zvcm0tZ3JvdXAtZXJyb3InOiBsYW5ndWFnZU5vdEVudGVyZWRFcnJvck1lc3NhZ2UgfHwgbGFuZ3VhZ2VDaGFyTGltaXRFcnJvck1lc3NhZ2UgfVwiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsXCIgZm9yPVwibWFudWFsLWxhbmd1YWdlLWVudHJ5XCI+e3tzZWFyY2hMYW5ndWFnZUludGVycHJldGVyU3RlcC5JTlBVVF9MQUJFTCB8IHJweFRyYW5zbGF0ZX19PC9sYWJlbD5cbiAgICAgICAgICA8ZGl2IGlkPVwibGFuZ3VhZ2Utbm90LWVudGVyZWQtZXJyb3ItbWVzc2FnZVwiIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiXG4gICAgICAgICAgICAqbmdJZj1cImxhbmd1YWdlTm90RW50ZXJlZEVycm9yTWVzc2FnZVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eydFcnJvcjonIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+IHt7bGFuZ3VhZ2VOb3RFbnRlcmVkRXJyb3JNZXNzYWdlIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGlkPVwibGFuZ3VhZ2UtY2hhci1saW1pdC1lcnJvci1tZXNzYWdlXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgICAgICpuZ0lmPVwibGFuZ3VhZ2VDaGFyTGltaXRFcnJvck1lc3NhZ2VcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3snRXJyb3I6JyB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPiB7e2xhbmd1YWdlQ2hhckxpbWl0RXJyb3JNZXNzYWdlIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1pbnB1dCBnb3Z1ay1pbnB1dC0td2lkdGgtMjBcIiBpZD1cIm1hbnVhbC1sYW5ndWFnZS1lbnRyeVwiIFtuYW1lXT1cIlNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTUFOVUFMX0xBTkdVQUdFX0VOVFJZXCIgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLk1BTlVBTF9MQU5HVUFHRV9FTlRSWVwiPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG48ZGl2IGNsYXNzPVwiZ292dWstYnV0dG9uLWdyb3VwXCI+XG4gIDxidXR0b24gY2xhc3M9XCJidXR0b24gYnV0dG9uLXByaW1hcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uTmV4dCgpXCI+e3snTmV4dCcgfCBycHhUcmFuc2xhdGV9fTwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
317
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2Nhc2UtZmxhZy9jb21wb25lbnRzL3NlYXJjaC1sYW5ndWFnZS1pbnRlcnByZXRlci9zZWFyY2gtbGFuZ3VhZ2UtaW50ZXJwcmV0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvY2FzZS1mbGFnL2NvbXBvbmVudHMvc2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyL3NlYXJjaC1sYW5ndWFnZS1pbnRlcnByZXRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFNUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsUUFBUSxFQUF1QyxNQUFNLGlDQUFpQyxDQUFDO0FBRWhHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxxQ0FBcUMsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2SCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7OztJQ0FuRywrQkFDMEMsZUFBQTtJQUNKLFlBQTJCOztJQUFB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RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBNYXRPcHRpb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IFJweFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ3JweC14dWktdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgRmxhZ1R5cGUsIExhbmd1YWdlSW50ZXJwcmV0ZXJMaXN0T2ZWYWx1ZXNUeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluL2Nhc2UtZmxhZyc7XG5pbXBvcnQgeyBDYXNlRmxhZ1N0YXRlLCBMYW5ndWFnZSB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBDYXNlRmxhZ0ZpZWxkU3RhdGUsIFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJFcnJvck1lc3NhZ2UsIFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJTdGVwIH0gZnJvbSAnLi4vLi4vZW51bXMnO1xuaW1wb3J0IHsgU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcyB9IGZyb20gJy4vc2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyLWNvbnRyb2wtbmFtZXMuZW51bSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1zZWFyY2gtbGFuZ3VhZ2UtaW50ZXJwcmV0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyByZWFkb25seSBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzID0gU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGZsYWdUeXBlOiBGbGFnVHlwZTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNhc2VGbGFnU3RhdGVFbWl0dGVyOiBFdmVudEVtaXR0ZXI8Q2FzZUZsYWdTdGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPENhc2VGbGFnU3RhdGU+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBsYW5ndWFnZU1heENoYXJMaW1pdCA9IDgwO1xuICBwcml2YXRlIHJlYWRvbmx5IHNpZ25MYW5ndWFnZUZsYWdDb2RlID0gJ1JBMDA0Mic7XG5cbiAgcHVibGljIHJlYWRvbmx5IG1pblNlYXJjaENoYXJhY3RlcnMgPSAzO1xuICBwdWJsaWMgZmlsdGVyZWRMYW5ndWFnZXMkOiBPYnNlcnZhYmxlPExhbmd1YWdlW10+O1xuICBwdWJsaWMgc2VhcmNoVGVybSA9ICcnO1xuICBwdWJsaWMgaXNDaGVja2JveEVuYWJsZWQgPSBmYWxzZTtcbiAgcHVibGljIHNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJTdGVwID0gU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlclN0ZXA7XG4gIHB1YmxpYyBzZWFyY2hMYW5ndWFnZUludGVycHJldGVySGludDogc3RyaW5nO1xuICBwdWJsaWMgc2VsZWN0ZWRMYW5ndWFnZTogTWF0T3B0aW9uO1xuICBwdWJsaWMgZXJyb3JNZXNzYWdlczogRXJyb3JNZXNzYWdlW10gPSBbXTtcbiAgcHVibGljIGxhbmd1YWdlTm90U2VsZWN0ZWRFcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgcHVibGljIGxhbmd1YWdlTm90RW50ZXJlZEVycm9yTWVzc2FnZTogc3RyaW5nO1xuICBwdWJsaWMgbGFuZ3VhZ2VDaGFyTGltaXRFcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgcHVibGljIGxhbmd1YWdlRW50ZXJlZEluQm90aEZpZWxkc0Vycm9yTWVzc2FnZTogc3RyaW5nO1xuICBwdWJsaWMgbm9SZXN1bHRzID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBycHhUcmFuc2xhdGlvblNlcnZpY2U6IFJweFRyYW5zbGF0aW9uU2VydmljZSkgeyB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckhpbnQgPSB0aGlzLmZsYWdUeXBlLmZsYWdDb2RlID09PSB0aGlzLnNpZ25MYW5ndWFnZUZsYWdDb2RlXG4gICAgICA/IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJTdGVwLlNJR05fSElOVF9URVhUXG4gICAgICA6IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJTdGVwLkhJTlRfVEVYVDtcbiAgICB0aGlzLmZvcm1Hcm91cC5hZGRDb250cm9sKFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTEFOR1VBR0VfU0VBUkNIX1RFUk0sIG5ldyBGb3JtQ29udHJvbCgpKTtcbiAgICB0aGlzLmZvcm1Hcm91cC5hZGRDb250cm9sKFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTUFOVUFMX0xBTkdVQUdFX0VOVFJZLCBuZXcgRm9ybUNvbnRyb2woKSk7XG4gICAgdGhpcy5maWx0ZXJlZExhbmd1YWdlcyQgPSB0aGlzLmZvcm1Hcm91cC5nZXQoU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5MQU5HVUFHRV9TRUFSQ0hfVEVSTSkudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAvLyBOZWVkIHRvIGNoZWNrIHR5cGUgb2YgaW5wdXQgYmVjYXVzZSBpdCBjaGFuZ2VzIHRvIG9iamVjdCAoaS5lLiBMYW5ndWFnZSkgd2hlbiBhIHZhbHVlIGlzIHNlbGVjdGVkIGZyb20gdGhlXG4gICAgICAvLyBhdXRvY29tcGxldGUgcGFuZWwsIGluc3RlYWQgb2Ygc3RyaW5nIHdoZW4gYSB2YWx1ZSBpcyBiZWluZyB0eXBlZCBpblxuICAgICAgbWFwKChpbnB1dCkgPT4gdHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJyA/IGlucHV0IDogaW5wdXQudmFsdWUpLFxuICAgICAgbWFwKChzZWFyY2hUZXJtKSA9PiB7XG4gICAgICAgIC8vIFVwZGF0ZSB0aGUgY3VycmVudCBzZWFyY2ggdGVybVxuICAgICAgICB0aGlzLnNlYXJjaFRlcm0gPSBzZWFyY2hUZXJtO1xuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJMYW5ndWFnZXMoc2VhcmNoVGVybSk7XG4gICAgICB9KSxcbiAgICAgIHRhcCgobGFuZ3VhZ2VzKSA9PiB0aGlzLm5vUmVzdWx0cyA9IGxhbmd1YWdlcy5sZW5ndGggPT09IDApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvbk5leHQoKTogdm9pZCB7XG4gICAgLy8gVmFsaWRhdGUgbGFuZ3VhZ2UgaW50ZXJwcmV0ZXIgZW50cnlcbiAgICB0aGlzLnZhbGlkYXRlTGFuZ3VhZ2VFbnRyeSgpO1xuICAgIC8vIFJldHVybiBjYXNlIGZsYWcgZmllbGQgc3RhdGUgYW5kIGVycm9yIG1lc3NhZ2VzIHRvIHRoZSBwYXJlbnRcbiAgICB0aGlzLmNhc2VGbGFnU3RhdGVFbWl0dGVyLmVtaXQoe1xuICAgICAgY3VycmVudENhc2VGbGFnRmllbGRTdGF0ZTogQ2FzZUZsYWdGaWVsZFN0YXRlLkZMQUdfTEFOR1VBR0VfSU5URVJQUkVURVIsXG4gICAgICBlcnJvck1lc3NhZ2VzOiB0aGlzLmVycm9yTWVzc2FnZXNcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVudGVyTGFuZ3VhZ2VNYW51YWxseShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmlzQ2hlY2tib3hFbmFibGVkID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS5jaGVja2VkO1xuXG4gICAgLy8gSWYgdGhlIGNoZWNrYm94IGlzIGRpc2FibGVkLCBpLmUuIHVuY2hlY2tlZCwgdGhlbiBjbGVhciB0aGUgbWFudWFsIGxhbmd1YWdlIGVudHJ5IEZvcm1Db250cm9sIG9mIGFueSB2YWx1ZSB0b1xuICAgIC8vIHByZXZlbnQgaXQgYmVpbmcgcmV0YWluZWQgZXZlbiB3aGVuIHRoZSBmaWVsZCBpdHNlbGYgaXMgaGlkZGVuXG4gICAgaWYgKCF0aGlzLmlzQ2hlY2tib3hFbmFibGVkKSB7XG4gICAgICB0aGlzLmZvcm1Hcm91cC5nZXQoU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5NQU5VQUxfTEFOR1VBR0VfRU5UUlkpLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBkaXNwbGF5TGFuZ3VhZ2UobGFuZ3VhZ2U/OiBMYW5ndWFnZSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIGxhbmd1YWdlID8gbGFuZ3VhZ2UudmFsdWUgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0ZWRPcHRpb24oZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpIHtcbiAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2UgPSBldmVudC5vcHRpb24udmFsdWU7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlTGFuZ3VhZ2VFbnRyeSgpOiB2b2lkIHtcbiAgICB0aGlzLmxhbmd1YWdlTm90U2VsZWN0ZWRFcnJvck1lc3NhZ2UgPSBudWxsO1xuICAgIHRoaXMubGFuZ3VhZ2VOb3RFbnRlcmVkRXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgICB0aGlzLmxhbmd1YWdlQ2hhckxpbWl0RXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgICB0aGlzLmxhbmd1YWdlRW50ZXJlZEluQm90aEZpZWxkc0Vycm9yTWVzc2FnZSA9IG51bGw7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2VzID0gW107XG4gICAgY29uc3QgbGFuZ3VhZ2VTZWFyY2hUZXJtVmFsdWUgPSB0aGlzLmZvcm1Hcm91cC5nZXQoU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5MQU5HVUFHRV9TRUFSQ0hfVEVSTSkudmFsdWU7XG4gICAgLy8gQ2hlY2tib3ggbm90IGVuYWJsZWQgbWVhbnMgdGhlIHVzZXIgaGFzIG9wdGVkIHRvIHNlYXJjaCBmb3IgYW5kIHNlbGVjdCB0aGUgbGFuZ3VhZ2VcbiAgICBpZiAoIXRoaXMuaXNDaGVja2JveEVuYWJsZWQpIHtcbiAgICAgIC8vIFVzZXIgc2VhcmNoZWQgZm9yIGEgbGFuZ3VhZ2UgYnV0IG5vdCBzZWxlY3RlZCBhIGxhbmd1YWdlIGZyb20gdGhlIGxpc3Qgb2Ygb3B0aW9uc1xuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZSA9PT0gdW5kZWZpbmVkICYmIHR5cGVvZihsYW5ndWFnZVNlYXJjaFRlcm1WYWx1ZSkgIT09ICdvYmplY3QnKSB7XG4gICAgICAgIHRoaXMubGFuZ3VhZ2VOb3RTZWxlY3RlZEVycm9yTWVzc2FnZSA9IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJFcnJvck1lc3NhZ2UuTEFOR1VBR0VfTk9UX1NFTEVDVEVEO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMucHVzaCh7XG4gICAgICAgICAgdGl0bGU6ICcnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlLkxBTkdVQUdFX05PVF9TRUxFQ1RFRCxcbiAgICAgICAgICBmaWVsZElkOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLkxBTkdVQUdFX1NFQVJDSF9URVJNXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmICghbGFuZ3VhZ2VTZWFyY2hUZXJtVmFsdWUpIHtcbiAgICAgICAgdGhpcy5sYW5ndWFnZU5vdFNlbGVjdGVkRXJyb3JNZXNzYWdlID0gU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckVycm9yTWVzc2FnZS5MQU5HVUFHRV9OT1RfRU5URVJFRDtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIHRpdGxlOiAnJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckVycm9yTWVzc2FnZS5MQU5HVUFHRV9OT1RfRU5URVJFRCxcbiAgICAgICAgICBmaWVsZElkOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLkxBTkdVQUdFX1NFQVJDSF9URVJNXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBDaGVja2JveCBlbmFibGVkIG1lYW5zIHRoZSB1c2VyIGhhcyBvcHRlZCB0byBlbnRlciB0aGUgbGFuZ3VhZ2UgbWFudWFsbHlcbiAgICBpZiAodGhpcy5pc0NoZWNrYm94RW5hYmxlZCkge1xuICAgICAgaWYgKCF0aGlzLmZvcm1Hcm91cC5nZXQoU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5NQU5VQUxfTEFOR1VBR0VfRU5UUlkpLnZhbHVlKSB7XG4gICAgICAgIHRoaXMubGFuZ3VhZ2VOb3RFbnRlcmVkRXJyb3JNZXNzYWdlID0gU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckVycm9yTWVzc2FnZS5MQU5HVUFHRV9OT1RfRU5URVJFRDtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIHRpdGxlOiAnJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckVycm9yTWVzc2FnZS5MQU5HVUFHRV9OT1RfRU5URVJFRCxcbiAgICAgICAgICBmaWVsZElkOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLk1BTlVBTF9MQU5HVUFHRV9FTlRSWVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5mb3JtR3JvdXAuZ2V0KFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTUFOVUFMX0xBTkdVQUdFX0VOVFJZKS52YWx1ZS5sZW5ndGggPiB0aGlzLmxhbmd1YWdlTWF4Q2hhckxpbWl0KSB7XG4gICAgICAgIHRoaXMubGFuZ3VhZ2VDaGFyTGltaXRFcnJvck1lc3NhZ2UgPSBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlLkxBTkdVQUdFX0NIQVJfTElNSVRfRVhDRUVERUQ7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgICB0aXRsZTogJycsXG4gICAgICAgICAgZGVzY3JpcHRpb246IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJFcnJvck1lc3NhZ2UuTEFOR1VBR0VfQ0hBUl9MSU1JVF9FWENFRURFRCxcbiAgICAgICAgICBmaWVsZElkOiBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLk1BTlVBTF9MQU5HVUFHRV9FTlRSWVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAobGFuZ3VhZ2VTZWFyY2hUZXJtVmFsdWUpIHtcbiAgICAgICAgLy8gTGFuZ3VhZ2UgZW50cnkgaXMgcGVybWl0dGVkIGluIG9ubHkgb25lIGZpZWxkIGF0IGEgdGltZVxuICAgICAgICB0aGlzLmxhbmd1YWdlRW50ZXJlZEluQm90aEZpZWxkc0Vycm9yTWVzc2FnZSA9IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJFcnJvck1lc3NhZ2UuTEFOR1VBR0VfRU5URVJFRF9JTl9CT1RIX0ZJRUxEUztcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIHRpdGxlOiAnJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckVycm9yTWVzc2FnZS5MQU5HVUFHRV9FTlRFUkVEX0lOX0JPVEhfRklFTERTLFxuICAgICAgICAgIGZpZWxkSWQ6IFNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTEFOR1VBR0VfU0VBUkNIX1RFUk1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmaWx0ZXJMYW5ndWFnZXMoc2VhcmNoVGVybTogc3RyaW5nKTogTGFuZ3VhZ2VbXSB7XG4gICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlID0gdW5kZWZpbmVkO1xuICAgIGlmIChzZWFyY2hUZXJtLmxlbmd0aCA8IHRoaXMubWluU2VhcmNoQ2hhcmFjdGVycykge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmZsYWdUeXBlLmxpc3RPZlZhbHVlc1xuICAgICAgPyB0aGlzLmZsYWdUeXBlLmxpc3RPZlZhbHVlcy5maWx0ZXIoKGxhbmd1YWdlKSA9PlxuICAgICAgICAvLyBJZiBhIGxhbmd1YWdlIGhhcyBib3RoIEVuZ2xpc2ggYW5kIFdlbHNoIHZhbHVlcywgbWF0Y2ggb25seSBvbiB0aGUgdmFsdWUgYXBwcm9wcmlhdGUgZm9yIHRoZSBwYWdlIGxhbmd1YWdlLFxuICAgICAgICAvLyBpLmUuIGlmIFJweFRyYW5zbGF0aW9uU2VydmljZS5sYW5ndWFnZSBpcyAnY3knIHRoZW4gbWF0Y2ggb24gdGhlIHZhbHVlX2N5IHByb3BlcnR5IG9ubHkuIFRoaXMgaXMgdG8gcHJldmVudFxuICAgICAgICAvLyBjcm9zcy1tYXRjaGVzLCB3aGVyZSBhIHVzZXIgZW50ZXJzIGEgc2VhcmNoIHRlcm0gaW4gRW5nbGlzaCBhbmQgc2VlcyB0aGUgY29ycmVzcG9uZGluZyBXZWxzaCB2YWx1ZSAoYmVjYXVzZVxuICAgICAgICAvLyB0aGUgcGFnZSBsYW5ndWFnZSBpcyBXZWxzaCkgYW5kIHZpY2UgdmVyc2FcbiAgICAgICAgdGhpcy5ycHhUcmFuc2xhdGlvblNlcnZpY2UubGFuZ3VhZ2UgPT09ICdjeScgJiYgbGFuZ3VhZ2UudmFsdWUgJiYgbGFuZ3VhZ2UudmFsdWVfY3kgJiZcbiAgICAgICAgbGFuZ3VhZ2UudmFsdWVfY3kudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hUZXJtLnRvTG93ZXJDYXNlKCksIDApIHx8XG4gICAgICAgIHRoaXMucnB4VHJhbnNsYXRpb25TZXJ2aWNlLmxhbmd1YWdlICE9PSAnY3knICYmIGxhbmd1YWdlLnZhbHVlICYmIGxhbmd1YWdlLnZhbHVlX2N5ICYmXG4gICAgICAgIGxhbmd1YWdlLnZhbHVlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVGVybS50b0xvd2VyQ2FzZSgpLCAwKSB8fFxuICAgICAgICAhbGFuZ3VhZ2UudmFsdWVfY3kgJiYgbGFuZ3VhZ2UudmFsdWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hUZXJtLnRvTG93ZXJDYXNlKCksIDApIHx8XG4gICAgICAgICFsYW5ndWFnZS52YWx1ZSAmJiBsYW5ndWFnZS52YWx1ZV9jeS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSwgMCkpXG4gICAgICA6IFtdO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCIgW25nQ2xhc3NdPVwieydmb3JtLWdyb3VwLWVycm9yJzogbGFuZ3VhZ2VOb3RTZWxlY3RlZEVycm9yTWVzc2FnZSB8fCBsYW5ndWFnZUVudGVyZWRJbkJvdGhGaWVsZHNFcnJvck1lc3NhZ2V9XCI+XG4gICAgPGgxIGNsYXNzPVwiZ292dWstbGFiZWwtd3JhcHBlclwiPlxuICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstbGFiZWwtLW1cIiBbZm9yXT1cIlNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTEFOR1VBR0VfU0VBUkNIX1RFUk1cIj5cbiAgICAgICAge3tmbGFnVHlwZSB8IGZsYWdGaWVsZERpc3BsYXk6J25hbWUnfX1cbiAgICAgIDwvbGFiZWw+XG4gICAgPC9oMT5cbiAgICA8ZGl2IGlkPVwibGFuZ3VhZ2Utc2VhcmNoLWJveC1oaW50XCIgY2xhc3M9XCJnb3Z1ay1oaW50XCI+XG4gICAgICB7e3NlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJIaW50IHwgcnB4VHJhbnNsYXRlfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXV0by1jb21wbGV0ZS1jb250YWluZXJcIj5cbiAgICAgIDxkaXYgaWQ9XCJsYW5ndWFnZS1ub3Qtc2VsZWN0ZWQtZXJyb3ItbWVzc2FnZVwiIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiXG4gICAgICAgICpuZ0lmPVwibGFuZ3VhZ2VOb3RTZWxlY3RlZEVycm9yTWVzc2FnZVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPnt7J0Vycm9yOicgfCBycHhUcmFuc2xhdGV9fTwvc3Bhbj4ge3tsYW5ndWFnZU5vdFNlbGVjdGVkRXJyb3JNZXNzYWdlIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBpZD1cImxhbmd1YWdlLWVudGVyZWQtaW4tYm90aC1maWVsZHMtZXJyb3ItbWVzc2FnZVwiIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiXG4gICAgICAgICpuZ0lmPVwibGFuZ3VhZ2VFbnRlcmVkSW5Cb3RoRmllbGRzRXJyb3JNZXNzYWdlXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3snRXJyb3I6JyB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPiB7e2xhbmd1YWdlRW50ZXJlZEluQm90aEZpZWxkc0Vycm9yTWVzc2FnZSB8IHJweFRyYW5zbGF0ZX19XG4gICAgICA8L2Rpdj5cbiAgICAgIDxpbnB1dCBhcmlhLWxhYmVsPVwiTGFuZ3VhZ2Ugc2VhcmNoIGJveFwiIG1hdElucHV0IFtmb3JtQ29udHJvbE5hbWVdPVwiU2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlckNvbnRyb2xOYW1lcy5MQU5HVUFHRV9TRUFSQ0hfVEVSTVwiIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1NlYXJjaExhbmd1YWdlXCJcbiAgICAgICAgY2xhc3M9XCJnb3Z1ay1pbnB1dCBzZWFyY2gtbGFuZ3VhZ2VfX2lucHV0XCIgdHlwZT1cInRleHRcIj5cbiAgICAgIDxtYXQtYXV0b2NvbXBsZXRlIChvcHRpb25TZWxlY3RlZCk9XCJzZWxlY3RlZE9wdGlvbigkZXZlbnQpXCIgY2xhc3M9XCJtYXQtYXV0b2NvbXBsZXRlLXBhbmVsLWV4dGVuZFwiIGF1dG9BY3RpdmVGaXJzdE9wdGlvbiAjYXV0b1NlYXJjaExhbmd1YWdlPVwibWF0QXV0b2NvbXBsZXRlXCJcbiAgICAgICAgW2Rpc3BsYXlXaXRoXT1cImRpc3BsYXlMYW5ndWFnZVwiPlxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgbGFuZ3VhZ2Ugb2YgZmlsdGVyZWRMYW5ndWFnZXMkIHwgYXN5bmNcIiBbdmFsdWVdPVwibGFuZ3VhZ2VcIj5cbiAgICAgICAgICB7e2xhbmd1YWdlIHwgbGFuZ3VhZ2VJbnRlcnByZXRlckRpc3BsYXl9fVxuICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwibm9SZXN1bHRzICYmIHNlYXJjaFRlcm0gJiYgc2VhcmNoVGVybS5sZW5ndGggPj0gbWluU2VhcmNoQ2hhcmFjdGVyc1wiIGRpc2FibGVkPnt7J05vIHJlc3VsdHMgZm91bmQnIHwgcnB4VHJhbnNsYXRlfX08L21hdC1vcHRpb24+XG4gICAgICA8L21hdC1hdXRvY29tcGxldGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXMgZ292dWstY2hlY2tib3hlcy0tc21hbGwgZ292dWstY2hlY2tib3hlcy0tY29uZGl0aW9uYWxcIiBkYXRhLW1vZHVsZT1cImdvdnVrLWNoZWNrYm94ZXNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1yYWRpb3NfX2l0ZW1cIj5cbiAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faW5wdXRcIiBpZD1cImVudGVyLWxhbmd1YWdlLW1hbnVhbGx5XCIgbmFtZT1cImVudGVyLWxhbmd1YWdlLW1hbnVhbGx5XCIgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAoY2hhbmdlKT1cIm9uRW50ZXJMYW5ndWFnZU1hbnVhbGx5KCRldmVudClcIj5cbiAgICAgICAgPGxhYmVsIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstY2hlY2tib3hlc19fbGFiZWxcIiBmb3I9XCJlbnRlci1sYW5ndWFnZS1tYW51YWxseVwiPlxuICAgICAgICAgIHt7c2VhcmNoTGFuZ3VhZ2VJbnRlcnByZXRlclN0ZXAuQ0hFQ0tCT1hfTEFCRUwgfCBycHhUcmFuc2xhdGV9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ292dWstcmFkaW9zX19jb25kaXRpb25hbFwiICpuZ0lmPVwiaXNDaGVja2JveEVuYWJsZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIiBbbmdDbGFzc109XCJ7J2Zvcm0tZ3JvdXAtZXJyb3InOiBsYW5ndWFnZU5vdEVudGVyZWRFcnJvck1lc3NhZ2UgfHwgbGFuZ3VhZ2VDaGFyTGltaXRFcnJvck1lc3NhZ2UgfVwiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsXCIgZm9yPVwibWFudWFsLWxhbmd1YWdlLWVudHJ5XCI+e3tzZWFyY2hMYW5ndWFnZUludGVycHJldGVyU3RlcC5JTlBVVF9MQUJFTCB8IHJweFRyYW5zbGF0ZX19PC9sYWJlbD5cbiAgICAgICAgICA8ZGl2IGlkPVwibGFuZ3VhZ2Utbm90LWVudGVyZWQtZXJyb3ItbWVzc2FnZVwiIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiXG4gICAgICAgICAgICAqbmdJZj1cImxhbmd1YWdlTm90RW50ZXJlZEVycm9yTWVzc2FnZVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj57eydFcnJvcjonIHwgcnB4VHJhbnNsYXRlfX08L3NwYW4+IHt7bGFuZ3VhZ2VOb3RFbnRlcmVkRXJyb3JNZXNzYWdlIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGlkPVwibGFuZ3VhZ2UtY2hhci1saW1pdC1lcnJvci1tZXNzYWdlXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCJcbiAgICAgICAgICAgICpuZ0lmPVwibGFuZ3VhZ2VDaGFyTGltaXRFcnJvck1lc3NhZ2VcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3snRXJyb3I6JyB8IHJweFRyYW5zbGF0ZX19PC9zcGFuPiB7e2xhbmd1YWdlQ2hhckxpbWl0RXJyb3JNZXNzYWdlIHwgcnB4VHJhbnNsYXRlfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1pbnB1dCBnb3Z1ay1pbnB1dC0td2lkdGgtMjBcIiBpZD1cIm1hbnVhbC1sYW5ndWFnZS1lbnRyeVwiIFtuYW1lXT1cIlNlYXJjaExhbmd1YWdlSW50ZXJwcmV0ZXJDb250cm9sTmFtZXMuTUFOVUFMX0xBTkdVQUdFX0VOVFJZXCIgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJTZWFyY2hMYW5ndWFnZUludGVycHJldGVyQ29udHJvbE5hbWVzLk1BTlVBTF9MQU5HVUFHRV9FTlRSWVwiPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG48ZGl2IGNsYXNzPVwiZ292dWstYnV0dG9uLWdyb3VwXCI+XG4gIDxidXR0b24gY2xhc3M9XCJidXR0b24gYnV0dG9uLXByaW1hcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uTmV4dCgpXCI+e3snTmV4dCcgfCBycHhUcmFuc2xhdGV9fTwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -1,7 +1,8 @@
1
1
  export var SearchLanguageInterpreterErrorMessage;
2
2
  (function (SearchLanguageInterpreterErrorMessage) {
3
3
  SearchLanguageInterpreterErrorMessage["LANGUAGE_NOT_ENTERED"] = "Enter the language that will need to be interpreted";
4
+ SearchLanguageInterpreterErrorMessage["LANGUAGE_NOT_SELECTED"] = "Select a language from the search list";
4
5
  SearchLanguageInterpreterErrorMessage["LANGUAGE_CHAR_LIMIT_EXCEEDED"] = "You can enter up to 80 characters for the required language";
5
6
  SearchLanguageInterpreterErrorMessage["LANGUAGE_ENTERED_IN_BOTH_FIELDS"] = "The language can only be entered in one of the fields";
6
7
  })(SearchLanguageInterpreterErrorMessage || (SearchLanguageInterpreterErrorMessage = {}));
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyLWVycm9yLW1lc3NhZ2UuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2Nhc2UtZmxhZy9lbnVtcy9zZWFyY2gtbGFuZ3VhZ2UtaW50ZXJwcmV0ZXItZXJyb3ItbWVzc2FnZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLHFDQUlYO0FBSkQsV0FBWSxxQ0FBcUM7SUFDL0MscUhBQTRFLENBQUE7SUFDNUUscUlBQTRGLENBQUE7SUFDNUYsa0lBQXlGLENBQUE7QUFDM0YsQ0FBQyxFQUpXLHFDQUFxQyxLQUFyQyxxQ0FBcUMsUUFJaEQiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlIHtcbiAgTEFOR1VBR0VfTk9UX0VOVEVSRUQgPSAnRW50ZXIgdGhlIGxhbmd1YWdlIHRoYXQgd2lsbCBuZWVkIHRvIGJlIGludGVycHJldGVkJyxcbiAgTEFOR1VBR0VfQ0hBUl9MSU1JVF9FWENFRURFRCA9ICdZb3UgY2FuIGVudGVyIHVwIHRvIDgwIGNoYXJhY3RlcnMgZm9yIHRoZSByZXF1aXJlZCBsYW5ndWFnZScsXG4gIExBTkdVQUdFX0VOVEVSRURfSU5fQk9USF9GSUVMRFMgPSAnVGhlIGxhbmd1YWdlIGNhbiBvbmx5IGJlIGVudGVyZWQgaW4gb25lIG9mIHRoZSBmaWVsZHMnXG59XG4iXX0=
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWxhbmd1YWdlLWludGVycHJldGVyLWVycm9yLW1lc3NhZ2UuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2Nhc2UtZmxhZy9lbnVtcy9zZWFyY2gtbGFuZ3VhZ2UtaW50ZXJwcmV0ZXItZXJyb3ItbWVzc2FnZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLHFDQUtYO0FBTEQsV0FBWSxxQ0FBcUM7SUFDL0MscUhBQTRFLENBQUE7SUFDNUUseUdBQWdFLENBQUE7SUFDaEUscUlBQTRGLENBQUE7SUFDNUYsa0lBQXlGLENBQUE7QUFDM0YsQ0FBQyxFQUxXLHFDQUFxQyxLQUFyQyxxQ0FBcUMsUUFLaEQiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTZWFyY2hMYW5ndWFnZUludGVycHJldGVyRXJyb3JNZXNzYWdlIHtcbiAgTEFOR1VBR0VfTk9UX0VOVEVSRUQgPSAnRW50ZXIgdGhlIGxhbmd1YWdlIHRoYXQgd2lsbCBuZWVkIHRvIGJlIGludGVycHJldGVkJyxcbiAgTEFOR1VBR0VfTk9UX1NFTEVDVEVEID0gJ1NlbGVjdCBhIGxhbmd1YWdlIGZyb20gdGhlIHNlYXJjaCBsaXN0JyxcbiAgTEFOR1VBR0VfQ0hBUl9MSU1JVF9FWENFRURFRCA9ICdZb3UgY2FuIGVudGVyIHVwIHRvIDgwIGNoYXJhY3RlcnMgZm9yIHRoZSByZXF1aXJlZCBsYW5ndWFnZScsXG4gIExBTkdVQUdFX0VOVEVSRURfSU5fQk9USF9GSUVMRFMgPSAnVGhlIGxhbmd1YWdlIGNhbiBvbmx5IGJlIGVudGVyZWQgaW4gb25lIG9mIHRoZSBmaWVsZHMnXG59XG4iXX0=
@@ -1,4 +1,3 @@
1
- // tslint:disable:variable-name
2
1
  /**
3
2
  * DTO to provide typing of the response from the Reference Data Common API for Case Flags data.
4
3
  *
@@ -25,4 +24,4 @@ export class FlagType {
25
24
  return [false, []];
26
25
  }
27
26
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhZy10eXBlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9kb21haW4vY2FzZS1mbGFnL2ZsYWctdHlwZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFDL0I7Ozs7O0dBS0c7QUFDSCxNQUFNLE9BQU8sUUFBUTtJQUFyQjtRQVlTLHVCQUFrQixHQUFHLENBQUMsQ0FBQztRQUN2QixpQkFBWSxHQUFxRCxFQUFFLENBQUM7SUFnQjdFLENBQUM7SUFkUSxNQUFNLENBQUMsMEJBQTBCLENBQUMsVUFBb0IsRUFBRSxLQUFpQixFQUFFLE9BQW1CLEVBQUU7UUFDckcsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7WUFDeEIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLFVBQVUsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzlGLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDckI7WUFDRCxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFO2dCQUMzQixNQUFNLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQzlHLElBQUksTUFBTSxFQUFFO29CQUNWLE9BQU8sQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7aUJBQzVCO2FBQ0Y7U0FDRjtRQUNELE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDckIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGU6dmFyaWFibGUtbmFtZVxuLyoqXG4gKiBEVE8gdG8gcHJvdmlkZSB0eXBpbmcgb2YgdGhlIHJlc3BvbnNlIGZyb20gdGhlIFJlZmVyZW5jZSBEYXRhIENvbW1vbiBBUEkgZm9yIENhc2UgRmxhZ3MgZGF0YS5cbiAqXG4gKiBAc2VlIHtAbGluayBodHRwczovL3Rvb2xzLmhtY3RzLm5ldC9jb25mbHVlbmNlL3BhZ2VzL3ZpZXdwYWdlLmFjdGlvbj9wYWdlSWQ9MTU5Nzc0MTEyMSNDYXNlRmxhZ3NITERWZXJzaW9uMi4wLU91dHB1dH1cbiAqIGZvciBmdWxsIGRldGFpbHNcbiAqL1xuZXhwb3J0IGNsYXNzIEZsYWdUeXBlIHtcbiAgcHVibGljIG5hbWU6IHN0cmluZztcbiAgcHVibGljIG5hbWVfY3k6IHN0cmluZztcbiAgcHVibGljIGhlYXJpbmdSZWxldmFudDogYm9vbGVhbjtcbiAgcHVibGljIGZsYWdDb21tZW50OiBib29sZWFuO1xuICBwdWJsaWMgZGVmYXVsdFN0YXR1czogc3RyaW5nO1xuICBwdWJsaWMgZXh0ZXJuYWxseUF2YWlsYWJsZTogYm9vbGVhbjtcbiAgcHVibGljIGZsYWdDb2RlOiBzdHJpbmc7XG4gIHB1YmxpYyBpc1BhcmVudDogYm9vbGVhbjtcbiAgLy8gTm90ZTogcHJvcGVydHkgaXMgZGVsaWJlcmF0ZWx5IHNwZWx0IFwiUGF0aFwiIGFuZCBub3QgXCJwYXRoXCIgYmVjYXVzZSB0aGUgUmVmZXJlbmNlIERhdGEgQ29tbW9uIEFQSSByZXR1cm5zIHRoZSBmb3JtZXJcbiAgcHVibGljIFBhdGg6IHN0cmluZ1tdO1xuICBwdWJsaWMgY2hpbGRGbGFnczogRmxhZ1R5cGVbXTtcbiAgcHVibGljIGxpc3RPZlZhbHVlc0xlbmd0aCA9IDA7XG4gIHB1YmxpYyBsaXN0T2ZWYWx1ZXM6IHtrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZywgdmFsdWVfY3k6IHN0cmluZ31bXSA9IFtdO1xuXG4gIHB1YmxpYyBzdGF0aWMgc2VhcmNoUGF0aEJ5RmxhZ1R5cGVPYmplY3Qoc2luZ2xlRmxhZzogRmxhZ1R5cGUsIGZsYWdzOiBGbGFnVHlwZVtdLCBwYXRoOiBGbGFnVHlwZVtdID0gW10pOiBbRmxhZ1R5cGUgfCBmYWxzZSwgRmxhZ1R5cGVbXV0ge1xuICAgIGZvciAoY29uc3QgZmxhZyBvZiBmbGFncykge1xuICAgICAgaWYgKGZsYWcuZmxhZ0NvZGUgPT09IHNpbmdsZUZsYWcuZmxhZ0NvZGUgJiYgZmxhZy5QYXRoLmpvaW4oJywnKSA9PT0gc2luZ2xlRmxhZy5QYXRoLmpvaW4oJywnKSkge1xuICAgICAgICByZXR1cm4gW2ZsYWcsIHBhdGhdO1xuICAgICAgfVxuICAgICAgaWYgKGZsYWcuY2hpbGRGbGFncz8ubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IFtyZXN1bHQsIGNoaWxkUGF0aF0gPSBGbGFnVHlwZS5zZWFyY2hQYXRoQnlGbGFnVHlwZU9iamVjdChzaW5nbGVGbGFnLCBmbGFnLmNoaWxkRmxhZ3MsIFsuLi5wYXRoLCBmbGFnXSk7XG4gICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICByZXR1cm4gW3Jlc3VsdCwgY2hpbGRQYXRoXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gW2ZhbHNlLCBbXV07XG4gIH1cbn1cbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhZy10eXBlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9kb21haW4vY2FzZS1mbGFnL2ZsYWctdHlwZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxRQUFRO0lBQXJCO1FBWVMsdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLGlCQUFZLEdBQTBDLEVBQUUsQ0FBQztJQWdCbEUsQ0FBQztJQWRRLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxVQUFvQixFQUFFLEtBQWlCLEVBQUUsT0FBbUIsRUFBRTtRQUNyRyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtZQUN4QixJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDOUYsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQzthQUNyQjtZQUNELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUU7Z0JBQzNCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsUUFBUSxDQUFDLDBCQUEwQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDOUcsSUFBSSxNQUFNLEVBQUU7b0JBQ1YsT0FBTyxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztpQkFDNUI7YUFDRjtTQUNGO1FBQ0QsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYW5ndWFnZUludGVycHJldGVyTGlzdE9mVmFsdWVzVHlwZSB9IGZyb20gJy4vbGFuZ3VhZ2UtaW50ZXJwcmV0ZXItbGlzdC1vZi12YWx1ZXMtdHlwZS5tb2RlbCc7XG5cbi8qKlxuICogRFRPIHRvIHByb3ZpZGUgdHlwaW5nIG9mIHRoZSByZXNwb25zZSBmcm9tIHRoZSBSZWZlcmVuY2UgRGF0YSBDb21tb24gQVBJIGZvciBDYXNlIEZsYWdzIGRhdGEuXG4gKlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly90b29scy5obWN0cy5uZXQvY29uZmx1ZW5jZS9wYWdlcy92aWV3cGFnZS5hY3Rpb24/cGFnZUlkPTE1OTc3NDExMjEjQ2FzZUZsYWdzSExEVmVyc2lvbjIuMC1PdXRwdXR9XG4gKiBmb3IgZnVsbCBkZXRhaWxzXG4gKi9cbmV4cG9ydCBjbGFzcyBGbGFnVHlwZSB7XG4gIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBuYW1lX2N5OiBzdHJpbmc7XG4gIHB1YmxpYyBoZWFyaW5nUmVsZXZhbnQ6IGJvb2xlYW47XG4gIHB1YmxpYyBmbGFnQ29tbWVudDogYm9vbGVhbjtcbiAgcHVibGljIGRlZmF1bHRTdGF0dXM6IHN0cmluZztcbiAgcHVibGljIGV4dGVybmFsbHlBdmFpbGFibGU6IGJvb2xlYW47XG4gIHB1YmxpYyBmbGFnQ29kZTogc3RyaW5nO1xuICBwdWJsaWMgaXNQYXJlbnQ6IGJvb2xlYW47XG4gIC8vIE5vdGU6IHByb3BlcnR5IGlzIGRlbGliZXJhdGVseSBzcGVsdCBcIlBhdGhcIiBhbmQgbm90IFwicGF0aFwiIGJlY2F1c2UgdGhlIFJlZmVyZW5jZSBEYXRhIENvbW1vbiBBUEkgcmV0dXJucyB0aGUgZm9ybWVyXG4gIHB1YmxpYyBQYXRoOiBzdHJpbmdbXTtcbiAgcHVibGljIGNoaWxkRmxhZ3M6IEZsYWdUeXBlW107XG4gIHB1YmxpYyBsaXN0T2ZWYWx1ZXNMZW5ndGggPSAwO1xuICBwdWJsaWMgbGlzdE9mVmFsdWVzOiBMYW5ndWFnZUludGVycHJldGVyTGlzdE9mVmFsdWVzVHlwZVtdID0gW107XG5cbiAgcHVibGljIHN0YXRpYyBzZWFyY2hQYXRoQnlGbGFnVHlwZU9iamVjdChzaW5nbGVGbGFnOiBGbGFnVHlwZSwgZmxhZ3M6IEZsYWdUeXBlW10sIHBhdGg6IEZsYWdUeXBlW10gPSBbXSk6IFtGbGFnVHlwZSB8IGZhbHNlLCBGbGFnVHlwZVtdXSB7XG4gICAgZm9yIChjb25zdCBmbGFnIG9mIGZsYWdzKSB7XG4gICAgICBpZiAoZmxhZy5mbGFnQ29kZSA9PT0gc2luZ2xlRmxhZy5mbGFnQ29kZSAmJiBmbGFnLlBhdGguam9pbignLCcpID09PSBzaW5nbGVGbGFnLlBhdGguam9pbignLCcpKSB7XG4gICAgICAgIHJldHVybiBbZmxhZywgcGF0aF07XG4gICAgICB9XG4gICAgICBpZiAoZmxhZy5jaGlsZEZsYWdzPy5sZW5ndGgpIHtcbiAgICAgICAgY29uc3QgW3Jlc3VsdCwgY2hpbGRQYXRoXSA9IEZsYWdUeXBlLnNlYXJjaFBhdGhCeUZsYWdUeXBlT2JqZWN0KHNpbmdsZUZsYWcsIGZsYWcuY2hpbGRGbGFncywgWy4uLnBhdGgsIGZsYWddKTtcbiAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgIHJldHVybiBbcmVzdWx0LCBjaGlsZFBhdGhdO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBbZmFsc2UsIFtdXTtcbiAgfVxufVxuIl19
@@ -1,3 +1,4 @@
1
1
  export * from './flag-type.model';
2
2
  export * from './hmcts-service-detail.model';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2RvbWFpbi9jYXNlLWZsYWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mbGFnLXR5cGUubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9obWN0cy1zZXJ2aWNlLWRldGFpbC5tb2RlbCc7XG4iXX0=
3
+ export * from './language-interpreter-list-of-values-type.model';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2RvbWFpbi9jYXNlLWZsYWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsa0RBQWtELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZsYWctdHlwZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2htY3RzLXNlcnZpY2UtZGV0YWlsLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGFuZ3VhZ2UtaW50ZXJwcmV0ZXItbGlzdC1vZi12YWx1ZXMtdHlwZS5tb2RlbCc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UtaW50ZXJwcmV0ZXItbGlzdC1vZi12YWx1ZXMtdHlwZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvZG9tYWluL2Nhc2UtZmxhZy9sYW5ndWFnZS1pbnRlcnByZXRlci1saXN0LW9mLXZhbHVlcy10eXBlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIExhbmd1YWdlSW50ZXJwcmV0ZXJMaXN0T2ZWYWx1ZXNUeXBlIHtcbiAga2V5OiBzdHJpbmcsXG4gIHZhbHVlOiBzdHJpbmcsXG4gIHZhbHVlX2N5OiBzdHJpbmdcbn1cbiJdfQ==
@@ -4,6 +4,7 @@ export * from './alert';
4
4
  export * from './case-details.model';
5
5
  export * from './case-edit';
6
6
  export * from './case-event-data.model';
7
+ export * from './case-flag';
7
8
  export * from './case-view';
8
9
  export * from './definition';
9
10
  export * from './document';
@@ -21,4 +22,4 @@ export * from './search/sorting/sort-parameters';
21
22
  export * from './sort-order.enum';
22
23
  export * from './work-allocation';
23
24
  export * from './workbasket';
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY3Rpdml0eSc7XG5leHBvcnQgKiBmcm9tICcuL2FkZHJlc3Nlcyc7XG5leHBvcnQgKiBmcm9tICcuL2FsZXJ0JztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1kZXRhaWxzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1lZGl0JztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1ldmVudC1kYXRhLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS12aWV3JztcbmV4cG9ydCAqIGZyb20gJy4vZGVmaW5pdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZHJhZnQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lcnJvci1tZXNzYWdlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vaHR0cCc7XG5leHBvcnQgKiBmcm9tICcuL29yZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vb3JnYW5pc2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGlvbi1tZXRhZGF0YS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3ByZWRpY2F0ZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3Byb2ZpbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gvc29ydGluZy9zZWFyY2gtcmVzdWx0LXZpZXctaXRlbS1jb21wYXJhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoL3NvcnRpbmcvc29ydC1wYXJhbWV0ZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vc29ydC1vcmRlci5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vd29yay1hbGxvY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vd29ya2Jhc2tldCc7XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY3Rpdml0eSc7XG5leHBvcnQgKiBmcm9tICcuL2FkZHJlc3Nlcyc7XG5leHBvcnQgKiBmcm9tICcuL2FsZXJ0JztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1kZXRhaWxzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1lZGl0JztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1ldmVudC1kYXRhLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1mbGFnJztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS12aWV3JztcbmV4cG9ydCAqIGZyb20gJy4vZGVmaW5pdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2RvY3VtZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZHJhZnQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lcnJvci1tZXNzYWdlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vaHR0cCc7XG5leHBvcnQgKiBmcm9tICcuL29yZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vb3JnYW5pc2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGlvbi1tZXRhZGF0YS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3ByZWRpY2F0ZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3Byb2ZpbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gvc29ydGluZy9zZWFyY2gtcmVzdWx0LXZpZXctaXRlbS1jb21wYXJhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoL3NvcnRpbmcvc29ydC1wYXJhbWV0ZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vc29ydC1vcmRlci5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vd29yay1hbGxvY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vd29ya2Jhc2tldCc7XG4iXX0=