@hmcts/rpx-xui-common-lib 1.4.31-date-component-validation-fixes → 1.5.2-judge-selection

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 (24) hide show
  1. package/bundles/hmcts-rpx-xui-common-lib.umd.js +52 -8
  2. package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +1 -1
  3. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +1 -1
  4. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
  5. package/esm2015/lib/components/find-person/find-person.component.js +15 -3
  6. package/esm2015/lib/components/generic-filter/generic-filter.component.js +2 -2
  7. package/esm2015/lib/components/search-location/search-location.component.js +22 -4
  8. package/esm2015/lib/models/search-options.model.js +3 -1
  9. package/esm2015/lib/services/find-person/find-person.service.js +26 -4
  10. package/esm5/lib/components/find-person/find-person.component.js +15 -3
  11. package/esm5/lib/components/generic-filter/generic-filter.component.js +2 -2
  12. package/esm5/lib/components/search-location/search-location.component.js +25 -4
  13. package/esm5/lib/models/search-options.model.js +3 -1
  14. package/esm5/lib/services/find-person/find-person.service.js +26 -4
  15. package/fesm2015/hmcts-rpx-xui-common-lib.js +50 -8
  16. package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
  17. package/fesm5/hmcts-rpx-xui-common-lib.js +53 -8
  18. package/fesm5/hmcts-rpx-xui-common-lib.js.map +1 -1
  19. package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
  20. package/lib/components/find-person/find-person.component.d.ts +3 -0
  21. package/lib/components/search-location/search-location.component.d.ts +3 -1
  22. package/lib/models/search-options.model.d.ts +1 -0
  23. package/lib/services/find-person/find-person.service.d.ts +1 -0
  24. package/package.json +1 -1
@@ -1493,7 +1493,7 @@
1493
1493
  GenericFilterComponent.decorators = [
1494
1494
  { type: i0.Component, args: [{
1495
1495
  selector: 'xuilib-generic-filter',
1496
- template: "<form [formGroup]=\"form\" (ngSubmit)=\"applyFilter(form)\">\n <div class=\"contain-classes\" *ngFor=\"let field of config.fields\">\n <hr *ngIf=\"field.lineBreakBefore\" class=\"govuk-section-break govuk-section-break--visible elevated-break\">\n <div class=\"govuk-form-group xui-generic-filter\"\n [hidden]=\"hidden(field, form)\"\n [ngClass]=\"{'form-group-error': submitted && (form.get(field.name).errors?.minLength || form.get(field.name).errors?.maxLength)}\">\n <h3 *ngIf=\"field.title\" class=\"govuk-heading-s\">{{field.title}}</h3>\n <p class=\"govuk-body\" *ngIf=\"field.subTitle\">{{field.subTitle}}</p>\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\" *ngIf=\"field.displayMinSelectedError && submitted && form.get(field.name).errors?.minLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.minSelectedError}}\n </span>\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\" *ngIf=\"field.displayMaxSelectedError && submitted && form.get(field.name).errors?.maxLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.maxSelectedError}}\n </span>\n <div class=\"govuk-body\" [ngSwitch]=\"field.type\">\n <ng-container *ngSwitchCase=\"'select'\">\n <select class=\"govuk-select\" (change)=\"selectChanged(field, form)\" [attr.disabled]=\"disabled(field, form)\" [name]=\"'select_' + field.name\" [id]=\"'select_' + field.name\" [formControlName]=\"field.name\">\n <option disabled selected hidden value=\"\">{{field.disabledText}}</option>\n <option class=\"govuk-radios__item\" *ngFor=\"let item of field.options\" [value]=\"item.key\">{{item.label}}</option>\n </select>\n </ng-container>\n <ng-container *ngSwitchCase=\"'checkbox'\">\n <div class=\"govuk-checkboxes govuk-checkboxes--small\" [formGroupName]=\"field.name\" [attr.field]=\"field.name\" [id]=\"'checkbox_' + field.name\">\n <div *ngFor=\"let item of field.options; let i = index\" class=\"govuk-checkboxes__item\">\n <input type=\"checkbox\" class=\"govuk-checkboxes__input\"\n [attr.disabled]=\"disabled(field, form)\"\n [formControlName]=\"i\"\n (change)=\"toggleSelectAll($event, form, item, field)\"\n [value]=\"item.key\" [id]=\"'checkbox_' + item.key\"\n [name]=\"'checkbox_' + item.key\"\n />\n <label\n [for]=\"'checkbox_' + item.key\"\n class=\"govuk-label govuk-checkboxes__label\"\n [ngClass]=\"{'govuk-!-font-weight-bold': item.selectAll}\"\n >{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'radio'\">\n <div class=\"govuk-radios\">\n <div *ngFor=\"let item of field.options\" class=\"govuk-radios__item\">\n <input type=\"radio\"\n [formControlName]=\"field.name\"\n [id]=\"'radio_' + item.key\"\n [attr.disabled]=\"disabled(field, form)\"\n [checked]=\"item.key === form.get(field.name).value\"\n class=\"govuk-radios__input\"\n [value]=\"item.key\"\n (change)=\"radiosChanged(field)\"\n />\n <label [for]=\"'radio_' + item.key\" class=\"govuk-label govuk-radios__label\">{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-person'\">\n <xuilib-find-person subTitle=\"\" (personSelected)=\"updatePersonControls($event, field)\"\n [submitted]=\"submitted\"\n [disabled]=\"disabled(field, form)\"\n [domain]=\"field.domain\"\n [findPersonGroup]=\"form\"\n [selectedPerson]=\"form.get(field.name)?.value?.email\"\n ></xuilib-find-person>\n </ng-container>\n </div>\n </div>\n </div>\n <hr class=\"govuk-section-break govuk-section-break--m govuk-section-break--visible\"/>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full\">\n <button\n class=\"govuk-button govuk-!-margin-right-1 govuk-!-margin-bottom-0\"\n type=\"submit\"\n id=\"applyFilter\"\n [disabled]=\"config.enableDisabledButton && form.invalid\"\n >{{config.applyButtonText || 'Apply'}}</button>\n <button\n class=\"govuk-button govuk-button--secondary govuk-!-margin-bottom-0\"\n type=\"button\"\n id=\"cancelFilter\"\n (click)=\"cancelFilter()\">{{ config.cancelButtonText || 'Cancel'}}</button>\n </div>\n </div>\n</form>\n",
1496
+ template: "<form [formGroup]=\"form\" (ngSubmit)=\"applyFilter(form)\">\n <div class=\"contain-classes\" *ngFor=\"let field of config.fields\">\n <hr *ngIf=\"field.lineBreakBefore\" class=\"govuk-section-break govuk-section-break--visible elevated-break\">\n <div class=\"govuk-form-group xui-generic-filter\"\n [hidden]=\"hidden(field, form)\"\n [ngClass]=\"{'form-group-error': submitted && (form.get(field.name).errors?.minLength || form.get(field.name).errors?.maxLength)}\">\n <h3 *ngIf=\"field.title\" class=\"govuk-heading-s\">{{field.title}}</h3>\n <p class=\"govuk-body\" *ngIf=\"field.subTitle\">{{field.subTitle}}</p>\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\" *ngIf=\"field.displayMinSelectedError && submitted && form.get(field.name).errors?.minLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.minSelectedError}}\n </span>\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\" *ngIf=\"field.displayMaxSelectedError && submitted && form.get(field.name).errors?.maxLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.maxSelectedError}}\n </span>\n <div class=\"govuk-body\" [ngSwitch]=\"field.type\">\n <ng-container *ngSwitchCase=\"'select'\">\n <select class=\"govuk-select\" (change)=\"selectChanged(field, form)\" [attr.disabled]=\"disabled(field, form)\" [name]=\"'select_' + field.name\" [id]=\"'select_' + field.name\" [formControlName]=\"field.name\">\n <option disabled selected hidden value=\"\">{{field.disabledText}}</option>\n <option class=\"govuk-radios__item\" *ngFor=\"let item of field.options\" [value]=\"item.key\">{{item.label}}</option>\n </select>\n </ng-container>\n <ng-container *ngSwitchCase=\"'checkbox'\">\n <div class=\"govuk-checkboxes govuk-checkboxes--small\" [formGroupName]=\"field.name\" [attr.field]=\"field.name\" [id]=\"'checkbox_' + field.name\">\n <div *ngFor=\"let item of field.options; let i = index\" class=\"govuk-checkboxes__item\">\n <input type=\"checkbox\" class=\"govuk-checkboxes__input\"\n [attr.disabled]=\"disabled(field, form)\"\n [formControlName]=\"i\"\n (change)=\"toggleSelectAll($event, form, item, field)\"\n [value]=\"item.key\" [id]=\"'checkbox_' + item.key\"\n [name]=\"'checkbox_' + item.key\"\n />\n <label\n [for]=\"'checkbox_' + item.key\"\n class=\"govuk-label govuk-checkboxes__label\"\n [ngClass]=\"{'govuk-!-font-weight-bold': item.selectAll}\"\n >{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'radio'\">\n <div class=\"govuk-radios\">\n <div *ngFor=\"let item of field.options\" class=\"govuk-radios__item\">\n <input type=\"radio\"\n [formControlName]=\"field.name\"\n [id]=\"'radio_' + item.key\"\n [attr.disabled]=\"disabled(field, form)\"\n [checked]=\"item.key === form.get(field.name).value\"\n class=\"govuk-radios__input\"\n [value]=\"item.key\"\n (change)=\"radiosChanged(field)\"\n />\n <label [for]=\"'radio_' + item.key\" class=\"govuk-label govuk-radios__label\">{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-person'\">\n <xuilib-find-person subTitle=\"\" (personSelected)=\"updatePersonControls($event, field)\"\n [submitted]=\"submitted\"\n [disabled]=\"disabled(field, form)\"\n [domain]=\"field.domain\"\n [findPersonGroup]=\"form\"\n [selectedPerson]=\"form.get(field.name)?.value?.email\"\n [userIncluded]=\"false\"\n ></xuilib-find-person>\n </ng-container>\n </div>\n </div>\n </div>\n <hr class=\"govuk-section-break govuk-section-break--m govuk-section-break--visible\"/>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full\">\n <button\n class=\"govuk-button govuk-!-margin-right-1 govuk-!-margin-bottom-0\"\n type=\"submit\"\n id=\"applyFilter\"\n [disabled]=\"config.enableDisabledButton && form.invalid\"\n >{{config.applyButtonText || 'Apply'}}</button>\n <button\n class=\"govuk-button govuk-button--secondary govuk-!-margin-bottom-0\"\n type=\"button\"\n id=\"cancelFilter\"\n (click)=\"cancelFilter()\">{{ config.cancelButtonText || 'Cancel'}}</button>\n </div>\n </div>\n</form>\n",
1497
1497
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
1498
1498
  encapsulation: i0.ViewEncapsulation.None,
1499
1499
  styles: [".contain-classes .elevated-break{position:relative;top:-10px}.contain-classes .xui-generic-filter .select-all{margin-bottom:10px}.contain-classes .xui-generic-filter .govuk-checkboxes{display:flex;flex-wrap:wrap}.contain-classes .xui-generic-filter .govuk-checkboxes>div{flex-grow:1;flex-shrink:0}"]
@@ -3644,6 +3644,7 @@
3644
3644
  this.serviceIds = '';
3645
3645
  this.submitted = true;
3646
3646
  this.showAutocomplete = false;
3647
+ this.locationChanged = new i0.EventEmitter();
3647
3648
  this.minSearchCharacters = 3;
3648
3649
  this.keyUpSubject$ = new rxjs.Subject();
3649
3650
  this.findLocationFormGroup = fb.group({
@@ -3671,6 +3672,15 @@
3671
3672
  * @return {?}
3672
3673
  */function (searchValue) { return _this.search(( /** @type {?} */(searchValue))); }));
3673
3674
  };
3675
+ /**
3676
+ * @return {?}
3677
+ */
3678
+ SearchLocationComponent.prototype.onKeyDown = /**
3679
+ * @return {?}
3680
+ */
3681
+ function () {
3682
+ this.locationChanged.emit();
3683
+ };
3674
3684
  /**
3675
3685
  * @param {?} event
3676
3686
  * @return {?}
@@ -3743,6 +3753,12 @@
3743
3753
  * @return {?}
3744
3754
  */function (locations) {
3745
3755
  _this.locations$ = rxjs.of(locations);
3756
+ if (locations.length === 1 && term === locations[0].court_name) {
3757
+ _this.findLocationFormGroup.controls.locationSelectedFormControl.setValue(locations[0]);
3758
+ _this.locations$ = rxjs.of([]);
3759
+ _this.locationChanged.emit(locations[0]);
3760
+ _this.showAutocomplete = false;
3761
+ }
3746
3762
  }));
3747
3763
  };
3748
3764
  /**
@@ -3755,6 +3771,7 @@
3755
3771
  */
3756
3772
  function (selection) {
3757
3773
  this.findLocationFormGroup.controls.locationSelectedFormControl.setValue(selection);
3774
+ this.locationChanged.emit(selection);
3758
3775
  };
3759
3776
  /**
3760
3777
  * @param {?} currentValue
@@ -3809,7 +3826,7 @@
3809
3826
  SearchLocationComponent.decorators = [
3810
3827
  { type: i0.Component, args: [{
3811
3828
  selector: 'exui-search-location',
3812
- template: "<div class=\"auto-complete-container\">\n <div class=\"autocomplete__wrapper\"> \n <input \n [formControl]=\"findLocationFormGroup.controls.findLocationFormControl\"\n [matAutocomplete]=\"auto\"\n (keyup)=\"onKeyUp($event)\"\n aria-expanded=\"false\" \n aria-owns=\"input-selected-location__listbox\" \n aria-autocomplete=\"both\" \n autocomplete=\"off\" \n class=\"autocomplete__input autocomplete__input--default search-box\"\n [attr.disabled]=\"!disabled ? null: disabled\"\n [value]=\"getControlCourtNameValue()\"\n #inputSelectedLocation>\n <mat-autocomplete class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #auto=\"matAutocomplete\">\n <mat-option *ngFor=\"let location of locationSource$ | async\"\n [value]=\"getDisplayName(location)\"\n (onSelectionChange)=\"onSelectionChange(location)\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete}\">\n {{ getDisplayName(location) }}\n </mat-option>\n <mat-option *ngIf=\"!(locationSource$ | async)?.length && showAutocomplete\">{{ 'No results found' }}</mat-option>\n </mat-autocomplete>\n </div>\n</div>\n",
3829
+ template: "<div class=\"auto-complete-container\">\n <div class=\"autocomplete__wrapper\">\n <input\n [formControl]=\"findLocationFormGroup.controls.findLocationFormControl\"\n [matAutocomplete]=\"auto\"\n (keydown)=\"onKeyDown()\"\n (keyup)=\"onKeyUp($event)\"\n aria-expanded=\"false\"\n aria-owns=\"input-selected-location__listbox\"\n aria-autocomplete=\"both\"\n autocomplete=\"off\"\n class=\"autocomplete__input autocomplete__input--default search-box\"\n [attr.disabled]=\"!disabled ? null: disabled\"\n [value]=\"getControlCourtNameValue()\"\n #inputSelectedLocation>\n <mat-autocomplete class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #auto=\"matAutocomplete\">\n <mat-option *ngFor=\"let location of locationSource$ | async\"\n [value]=\"getDisplayName(location)\"\n (onSelectionChange)=\"onSelectionChange(location)\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete}\">\n {{ getDisplayName(location) }}\n </mat-option>\n <mat-option *ngIf=\"!(locationSource$ | async)?.length && showAutocomplete\">{{ 'No results found' }}</mat-option>\n </mat-autocomplete>\n </div>\n</div>",
3813
3830
  styles: [".autocomplete__input{-webkit-appearance:none;border:2px solid #0b0c0c;border-radius:0;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;margin-bottom:0;width:100%;background-color:transparent;position:relative}.autocomplete__hint{color:#b1b4b6;position:absolute}.autocomplete__input--default{padding:5px}.autocomplete__input--focused{outline:#fd0 solid 3px;outline-offset:0;box-shadow:inset 0 0 0 2px}.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:rgba(0,0,0,.256863) 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}"]
3814
3831
  }] }
3815
3832
  ];
@@ -3828,7 +3845,9 @@
3828
3845
  serviceIds: [{ type: i0.Input }],
3829
3846
  submitted: [{ type: i0.Input }],
3830
3847
  autoCompleteInputBox: [{ type: i0.ViewChild, args: ['inputSelectedLocation', { read: i0.ElementRef },] }],
3831
- locations$: [{ type: i0.Input }]
3848
+ showAutocomplete: [{ type: i0.Input }],
3849
+ locations$: [{ type: i0.Input }],
3850
+ locationChanged: [{ type: i0.Output }]
3832
3851
  };
3833
3852
  return SearchLocationComponent;
3834
3853
  }());
@@ -4239,7 +4258,14 @@
4239
4258
  * @return {?}
4240
4259
  */
4241
4260
  function (searchOptions) {
4242
- return this.http.post('/workallocation2/findPerson', { searchOptions: searchOptions });
4261
+ /** @type {?} */
4262
+ var userInfoStr = this.sessionStorageService.getItem('userDetails');
4263
+ if (userInfoStr && !searchOptions.userIncluded) {
4264
+ /** @type {?} */
4265
+ var userInfo = JSON.parse(userInfoStr);
4266
+ this.userId = userInfo.id ? userInfo.id : userInfo.uid;
4267
+ }
4268
+ return this.http.post('/workallocation2/findPerson', { searchOptions: searchOptions, userId: this.userId });
4243
4269
  };
4244
4270
  /**
4245
4271
  * @param {?} searchOptions
@@ -4251,6 +4277,13 @@
4251
4277
  */
4252
4278
  function (searchOptions) {
4253
4279
  var _this = this;
4280
+ /** @type {?} */
4281
+ var userInfoStr = this.sessionStorageService.getItem('userDetails');
4282
+ if (userInfoStr) {
4283
+ /** @type {?} */
4284
+ var userInfo = JSON.parse(userInfoStr);
4285
+ this.userId = userInfo.id ? userInfo.id : userInfo.uid;
4286
+ }
4254
4287
  if (!this.sessionStorageService.getItem(FindAPersonService.caseworkersKey)) {
4255
4288
  this.http.get('/workallocation2/caseworker').pipe(operators.tap(( /**
4256
4289
  * @param {?} caseworkerList
@@ -4268,10 +4301,15 @@
4268
4301
  var people = caseworkers ? this.mapCaseworkers(caseworkers, roleCategory) : [];
4269
4302
  /** @type {?} */
4270
4303
  var searchTerm = searchOptions && searchOptions.searchTerm ? searchOptions.searchTerm.toLowerCase() : '';
4271
- return rxjs.of(people.filter(( /**
4304
+ /** @type {?} */
4305
+ var finalPeopleList = people.filter(( /**
4306
+ * @param {?} person
4307
+ * @return {?}
4308
+ */function (person) { return person && person.name && person.name.toLowerCase().includes(searchTerm); }));
4309
+ return searchOptions.userIncluded ? rxjs.of(finalPeopleList) : rxjs.of(finalPeopleList.filter(( /**
4272
4310
  * @param {?} person
4273
4311
  * @return {?}
4274
- */function (person) { return person && person.name && person.name.toLowerCase().includes(searchTerm); })));
4312
+ */function (person) { return person && person.id !== _this.userId; })));
4275
4313
  };
4276
4314
  /**
4277
4315
  * @param {?} caseworkers
@@ -4334,6 +4372,9 @@
4334
4372
  this.domain = PersonRole.ALL;
4335
4373
  this.submitted = true;
4336
4374
  this.disabled = null;
4375
+ this.userIncluded = false;
4376
+ this.placeholderContent = '';
4377
+ this.isNoResultsShown = false;
4337
4378
  this.showAutocomplete = false;
4338
4379
  this.findPersonControl = new forms.FormControl();
4339
4380
  this.minSearchCharacters = 2;
@@ -4448,7 +4489,7 @@
4448
4489
  FindPersonComponent.decorators = [
4449
4490
  { type: i0.Component, args: [{
4450
4491
  selector: 'xuilib-find-person',
4451
- template: "<h1 class=\"govuk-heading-l\" *ngIf=\"title && title.length\">\n <span class=\"govuk-caption-l\">{{title}}</span>\n {{boldTitle}}\n</h1>\n<div class=\"govuk-form-group\" [formGroup]=\"findPersonGroup\"\n [ngClass]=\"{'form-group-error': !findPersonGroup.valid && submitted}\">\n <fieldset class=\"govuk-fieldset\" aria-describedby=\"sub-title-hint\">\n <div id=\"sub-title-hint\" class=\"govuk-hint\" *ngIf=\"subTitle && subTitle.length\">\n {{subTitle}}\n </div>\n <span id=\"validation-error\" class=\"govuk-error-message\" *ngIf=\"findPersonGroup && findPersonGroup.errors\">\n <span class=\"govuk-visually-hidden\">Error:</span>You must select a name\n </span>\n <input id=\"inputSelectPerson\" type=\"text\" aria-label=\"select a person\" matInput\n formControlName=\"findPersonControl\"\n [matAutocomplete]=\"auto\"\n class=\"govuk-input govuk-!-width-one-third\"\n (ngModelChange)=\"updatedVal($event)\"\n [attr.disabled]=\"disabled\"\n [value]=\"selectedPerson\">\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\">\n <mat-option *ngFor=\"let option of filteredOptions | async\"\n [value]=\"getDisplayName(option)\"\n (onSelectionChange)=\"onSelectionChange(option)\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete}\">\n {{getDisplayName(option)}}\n </mat-option>\n </mat-autocomplete>\n </fieldset>\n</div>\n",
4492
+ template: "<h1 class=\"govuk-heading-l\" *ngIf=\"title && title.length\">\n <span class=\"govuk-caption-l\">{{title}}</span>\n {{boldTitle}}\n</h1>\n<div class=\"govuk-form-group\" [formGroup]=\"findPersonGroup\"\n [ngClass]=\"{'form-group-error': !findPersonGroup.valid && submitted}\">\n <fieldset class=\"govuk-fieldset\" aria-describedby=\"sub-title-hint\">\n <div id=\"sub-title-hint\" class=\"govuk-hint\" *ngIf=\"subTitle && subTitle.length\">\n {{subTitle}}\n </div>\n <span id=\"validation-error\" class=\"govuk-error-message\" *ngIf=\"findPersonGroup && findPersonGroup.errors\">\n <span class=\"govuk-visually-hidden\">Error:</span>You must select a name\n </span>\n <input id=\"inputSelectPerson\" type=\"text\" aria-label=\"select a person\" matInput\n formControlName=\"findPersonControl\"\n [matAutocomplete]=\"auto\"\n class=\"govuk-input govuk-!-width-one-third\"\n (ngModelChange)=\"updatedVal($event)\"\n [placeholder]=\"placeholderContent\"\n [attr.disabled]=\"disabled\"\n [value]=\"selectedPerson\">\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\">\n <mat-option *ngFor=\"let option of filteredOptions | async\"\n [value]=\"getDisplayName(option)\"\n (onSelectionChange)=\"onSelectionChange(option)\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete}\">\n {{getDisplayName(option)}}\n </mat-option>\n <mat-option *ngIf=\"isNoResultsShown && !(filteredOptions | async)?.length && showAutocomplete\">{{ 'No results found' }}</mat-option>\n </mat-autocomplete>\n </fieldset>\n</div>\n",
4452
4493
  styles: [".mat-option:hover{background:#2596be}.hide-autocomplete{display:none}"]
4453
4494
  }] }
4454
4495
  ];
@@ -4467,7 +4508,10 @@
4467
4508
  findPersonGroup: [{ type: i0.Input }],
4468
4509
  selectedPerson: [{ type: i0.Input }],
4469
4510
  submitted: [{ type: i0.Input }],
4470
- disabled: [{ type: i0.Input }]
4511
+ disabled: [{ type: i0.Input }],
4512
+ userIncluded: [{ type: i0.Input }],
4513
+ placeholderContent: [{ type: i0.Input }],
4514
+ isNoResultsShown: [{ type: i0.Input }]
4471
4515
  };
4472
4516
  return FindPersonComponent;
4473
4517
  }());