@hmcts/rpx-xui-common-lib 1.7.45 → 1.7.47-filter-service-fix

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 (38) hide show
  1. package/bundles/hmcts-rpx-xui-common-lib.umd.js +73 -14
  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/hmcts-rpx-xui-common-lib.js +3 -2
  6. package/esm2015/lib/components/find-location/find-location.component.js +2 -2
  7. package/esm2015/lib/components/generic-filter/generic-filter.component.js +25 -8
  8. package/esm2015/lib/components/search-location/search-location.component.js +2 -2
  9. package/esm2015/lib/exui-common-lib.module.js +10 -3
  10. package/esm2015/lib/models/filter.model.js +21 -1
  11. package/esm2015/lib/pipes/capitalize.pipe.js +21 -0
  12. package/esm2015/lib/services/filter/filter.service.js +13 -5
  13. package/esm2015/lib/services/find-person/find-person.service.js +3 -3
  14. package/esm2015/lib/services/storage/session-storage/session-storage.service.js +55 -0
  15. package/esm5/hmcts-rpx-xui-common-lib.js +3 -2
  16. package/esm5/lib/components/find-location/find-location.component.js +2 -2
  17. package/esm5/lib/components/generic-filter/generic-filter.component.js +24 -7
  18. package/esm5/lib/components/search-location/search-location.component.js +2 -2
  19. package/esm5/lib/exui-common-lib.module.js +8 -3
  20. package/esm5/lib/models/filter.model.js +21 -1
  21. package/esm5/lib/pipes/capitalize.pipe.js +29 -0
  22. package/esm5/lib/services/filter/filter.service.js +17 -5
  23. package/esm5/lib/services/find-person/find-person.service.js +3 -3
  24. package/esm5/lib/services/{session-storage → storage/session-storage}/session-storage.service.js +2 -2
  25. package/fesm2015/hmcts-rpx-xui-common-lib.js +68 -17
  26. package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
  27. package/fesm5/hmcts-rpx-xui-common-lib.js +76 -16
  28. package/fesm5/hmcts-rpx-xui-common-lib.js.map +1 -1
  29. package/hmcts-rpx-xui-common-lib.d.ts +2 -1
  30. package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
  31. package/lib/components/search-location/search-location.component.d.ts +1 -1
  32. package/lib/models/filter.model.d.ts +11 -6
  33. package/lib/pipes/capitalize.pipe.d.ts +4 -0
  34. package/lib/services/filter/filter.service.d.ts +1 -0
  35. package/lib/services/find-person/find-person.service.d.ts +1 -1
  36. package/lib/services/{session-storage → storage/session-storage}/session-storage.service.d.ts +0 -0
  37. package/package.json +1 -1
  38. package/esm2015/lib/services/session-storage/session-storage.service.js +0 -55
@@ -709,10 +709,10 @@
709
709
  return this.filterSettings[id];
710
710
  }
711
711
  if (sessionStorage.getItem(id)) {
712
- return JSON.parse(window.sessionStorage.getItem(id));
712
+ return JSON.parse(sessionStorage.getItem(id));
713
713
  }
714
714
  if (localStorage.getItem(id)) {
715
- return JSON.parse(window.localStorage.getItem(id));
715
+ return JSON.parse(localStorage.getItem(id));
716
716
  }
717
717
  return null;
718
718
  };
@@ -730,6 +730,18 @@
730
730
  }
731
731
  return this.streams[id].asObservable();
732
732
  };
733
+ /**
734
+ * @param {?} id
735
+ * @return {?}
736
+ */
737
+ FilterService.prototype.clearSessionAndLocalPersistance = /**
738
+ * @param {?} id
739
+ * @return {?}
740
+ */
741
+ function (id) {
742
+ sessionStorage.removeItem(id);
743
+ localStorage.removeItem(id);
744
+ };
733
745
  /**
734
746
  * @private
735
747
  * @param {?} setting
@@ -741,7 +753,7 @@
741
753
  * @return {?}
742
754
  */
743
755
  function (setting) {
744
- window.localStorage.setItem(setting.id, JSON.stringify(setting));
756
+ localStorage.setItem(setting.id, JSON.stringify(setting));
745
757
  };
746
758
  /**
747
759
  * @private
@@ -754,7 +766,7 @@
754
766
  * @return {?}
755
767
  */
756
768
  function (setting) {
757
- window.sessionStorage.setItem(setting.id, JSON.stringify(setting));
769
+ sessionStorage.setItem(setting.id, JSON.stringify(setting));
758
770
  };
759
771
  /**
760
772
  * @private
@@ -917,10 +929,10 @@
917
929
  function (field) {
918
930
  /** @type {?} */
919
931
  var validators = [];
920
- if (field && field.minSelected) {
932
+ if (field && field.minSelected > 0) {
921
933
  validators.push(minSelectedValidator(field.minSelected));
922
934
  }
923
- if (field && field.maxSelected) {
935
+ if (field && field.maxSelected > 0) {
924
936
  validators.push(maxSelectedValidator(field.maxSelected));
925
937
  }
926
938
  return validators;
@@ -1417,6 +1429,9 @@
1417
1429
  if (field.type === 'text-input') {
1418
1430
  validators.push(forms.Validators.minLength(field.minSelected));
1419
1431
  }
1432
+ if (field.type === 'email-input') {
1433
+ validators.push(forms.Validators.email);
1434
+ }
1420
1435
  }
1421
1436
  /** @type {?} */
1422
1437
  var defaultValue = null;
@@ -1448,7 +1463,7 @@
1448
1463
  });
1449
1464
  this_1.form.addControl(field.name, formGroup);
1450
1465
  }
1451
- else {
1466
+ else if (field.type !== 'group-title') {
1452
1467
  /** @type {?} */
1453
1468
  var control = new forms.FormControl(defaultValue, validators);
1454
1469
  this_1.form.addControl(field.name, control);
@@ -1643,7 +1658,7 @@
1643
1658
  var field = _c.value;
1644
1659
  /** @type {?} */
1645
1660
  var formGroup = form.get(field.name);
1646
- if (formGroup && formGroup.errors && formGroup.errors.minlength) {
1661
+ if (formGroup && formGroup.errors && (formGroup.errors.minlength || formGroup.errors.required)) {
1647
1662
  errors.push({ name: field.name, error: field.minSelectedError });
1648
1663
  }
1649
1664
  if (formGroup && formGroup.errors && formGroup.errors.maxLength) {
@@ -1664,6 +1679,18 @@
1664
1679
  throw e_8.error;
1665
1680
  }
1666
1681
  }
1682
+ // remove duplicates
1683
+ errors = errors.filter(( /**
1684
+ * @param {?} filterError
1685
+ * @param {?} i
1686
+ * @param {?} arr
1687
+ * @return {?}
1688
+ */function (filterError, i, arr) {
1689
+ return errors.indexOf(arr.find(( /**
1690
+ * @param {?} item
1691
+ * @return {?}
1692
+ */function (item) { return item.name === filterError.name; }))) === i;
1693
+ }));
1667
1694
  if (errors.length) {
1668
1695
  this.filterService.givenErrors.next(errors);
1669
1696
  }
@@ -1671,10 +1698,10 @@
1671
1698
  GenericFilterComponent.decorators = [
1672
1699
  { type: i0.Component, args: [{
1673
1700
  selector: 'xuilib-generic-filter',
1674
- 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 [id]=\"field.name\"\n [ngClass]=\"{'form-group-error': submitted && ((form.get(field.name).errors?.minlength || form.get(field.name).errors?.required) || 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 || form.get(field.name).errors?.required)\">\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)=\"fieldChanged(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=\"'checkbox-large'\">\n <div class=\"govuk-checkboxes\" [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)=\"fieldChanged(field, form)\"\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 (personFieldChanged)=\"inputChanged(field)\"\n [submitted]=\"submitted\"\n [disabled]=\"disabled(field, form)\"\n [domain]=\"form.get(field.domainField)?.value\"\n [findPersonGroup]=\"form\"\n [selectedPerson]=\"form.get(field.name)?.value?.email\"\n [userIncluded]=\"false\"\n ></xuilib-find-person>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-location'\">\n <xuilib-find-location (locationFieldChanged)=\"inputChanged(field)\"\n [form]=\"form\"\n [fields]=\"config.fields\"\n [locationTitle]=\"field.locationTitle\"\n [enableAddLocationButton]=\"field.enableAddButton\"\n [disabled]=\"disabled(field, form)\"\n [disableInputField]=\"field.disable\"\n [selectedLocations]=\"form.get(field.name)?.value\"\n [submitted]=\"submitted\"\n [services]=\"form.get(field.findLocationField)?.value\"\n [field]=\"field\"\n ></xuilib-find-location>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-service'\">\n <xuilib-find-service (serviceFieldChanged)=\"inputChanged(field)\"\n [form]=\"form\"\n [fields]=\"config.fields\"\n [title]=\"field.title\"\n [enableAddServiceButton]=\"field.enableAddButton\"\n [disabled]=\"disabled(field, form)\"\n [disableInputField]=\"field.disable\"\n [selectedServices]=\"form.get(field.name)?.value\"\n [field]=\"field\"\n ></xuilib-find-service>\n </ng-container>\n <ng-container *ngSwitchCase=\"'text-input'\">\n <input class=\"govuk-input\" type=\"text\"\n [formControlName]=\"field.name\"\n [id]=\"field.name\"\n [attr.disabled]=\"disabled(field, form)\"\n (change)=\"fieldChanged(field, form)\"\n />\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 *ngIf=\"config.showCancelFilterButton\"\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",
1701
+ 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 elevated-break\">\n <ng-container [ngSwitch]=\"field.type\">\n <ng-container *ngSwitchCase=\"'group-title'\">\n <div [class]=\"field.titleClasses ? field.titleClasses: 'govuk-label govuk-label--m govuk-!-margin-bottom-4'\">\n {{ field.name | capitalize }}\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <div class=\"govuk-form-group xui-generic-filter\"\n [hidden]=\"hidden(field, form)\"\n [id]=\"field.name\"\n [ngClass]=\"{'form-group-error': submitted && ((form.get(field.name).errors?.minlength || form.get(field.name).errors?.required) || form.get(field.name).errors?.maxLength || form.get(field.name).errors?.email)}\">\n\n <div *ngIf=\"field.title\" class=\"xui-generic-filter__field-title\">\n <h3 [class]=\"field.titleClasses ? field.titleClasses : 'govuk-heading-s'\" style=\"margin-bottom: 0!important\">\n {{field.title | capitalize}}\n </h3>\n\n <div *ngIf=\"field?.minSelected === 0\" class=\"govuk-!-margin-left-2\">(optional)</div>\n </div>\n\n <p class=\"govuk-body\" *ngIf=\"field.subTitle\">{{field.subTitle}}</p>\n\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\"\n *ngIf=\"field.displayMinSelectedError && submitted && (form.get(field.name).errors?.minlength || form.get(field.name).errors?.required)\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.minSelectedError}}\n </span>\n\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\"\n *ngIf=\"field.displayMaxSelectedError && submitted && form.get(field.name).errors?.maxLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.maxSelectedError}}\n </span>\n\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\"\n *ngIf=\"field.emailError && submitted && form.get(field.name).errors?.email\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.emailError}}\n </span>\n\n <div class=\"govuk-body\" [class.govuk-body--maxWidth480px]=\"field.maxWidth480px\" [ngSwitch]=\"field.type\">\n <ng-container *ngSwitchCase=\"'select'\">\n <select class=\"govuk-select\" (change)=\"fieldChanged(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=\"'checkbox-large'\">\n <div class=\"govuk-checkboxes\" [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)=\"fieldChanged(field, form)\"\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 (personFieldChanged)=\"inputChanged(field)\"\n [submitted]=\"submitted\"\n [disabled]=\"disabled(field, form)\"\n [domain]=\"form.get(field.domainField)?.value\"\n [findPersonGroup]=\"form\"\n [selectedPerson]=\"form.get(field.name)?.value?.email\"\n [userIncluded]=\"false\"\n ></xuilib-find-person>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-location'\">\n <xuilib-find-location (locationFieldChanged)=\"inputChanged(field)\"\n [form]=\"form\"\n [fields]=\"config.fields\"\n [locationTitle]=\"field.locationTitle\"\n [enableAddLocationButton]=\"field.enableAddButton\"\n [disabled]=\"disabled(field, form)\"\n [disableInputField]=\"field.disable\"\n [selectedLocations]=\"form.get(field.name)?.value\"\n [submitted]=\"submitted\"\n [services]=\"form.get(field.findLocationField)?.value\"\n [field]=\"field\"\n ></xuilib-find-location>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-service'\">\n <xuilib-find-service (serviceFieldChanged)=\"inputChanged(field)\"\n [form]=\"form\"\n [fields]=\"config.fields\"\n [title]=\"field.title\"\n [enableAddServiceButton]=\"field.enableAddButton\"\n [disabled]=\"disabled(field, form)\"\n [disableInputField]=\"field.disable\"\n [selectedServices]=\"form.get(field.name)?.value\"\n [field]=\"field\"\n ></xuilib-find-service>\n </ng-container>\n <ng-container *ngSwitchCase=\"'text-input'\">\n <input class=\"govuk-input\" type=\"text\"\n [formControlName]=\"field.name\"\n [id]=\"field.name\"\n [attr.disabled]=\"disabled(field, form)\"\n (change)=\"fieldChanged(field, form)\"\n />\n </ng-container>\n <ng-container *ngSwitchCase=\"'email-input'\">\n <input class=\"govuk-input\" type=\"email\"\n [formControlName]=\"field.name\"\n [id]=\"field.name\"\n [attr.disabled]=\"disabled(field, form)\"\n (change)=\"fieldChanged(field, form)\"\n />\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n </div>\n <hr class=\"govuk-section-break govuk-section-break--m\"/>\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 *ngIf=\"config.showCancelFilterButton\"\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",
1675
1702
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
1676
1703
  encapsulation: i0.ViewEncapsulation.None,
1677
- styles: [".contain-classes .elevated-break{margin-bottom:20px}@media (min-width:40.0625em){.contain-classes .elevated-break{margin-bottom:30px}}.contain-classes .xui-generic-filter .select-all{margin-bottom:10px}.contain-classes .xui-generic-filter .govuk-checkboxes{display:flex;flex-direction:column;flex-wrap:wrap}.contain-classes .xui-generic-filter .govuk-checkboxes>div{flex-grow:1;flex-shrink:0}.contain-classes .govuk-select{width:100%}"]
1704
+ styles: [".contain-classes .elevated-break{margin-bottom:20px}@media (min-width:40.0625em){.contain-classes .elevated-break{margin-bottom:30px}}.contain-classes .govuk-body--maxWidth480px{max-width:480px}.contain-classes .xui-generic-filter .select-all{margin-bottom:10px}.contain-classes .xui-generic-filter .govuk-checkboxes{display:flex;flex-direction:column;flex-wrap:wrap}.contain-classes .xui-generic-filter .govuk-checkboxes>div{flex-grow:1;flex-shrink:0}.contain-classes .xui-generic-filter__field-title{display:flex;align-items:center;margin-bottom:10px}.contain-classes .govuk-select{width:100%}"]
1678
1705
  }] }
1679
1706
  ];
1680
1707
  /** @nocollapse */
@@ -3940,7 +3967,7 @@
3940
3967
 
3941
3968
  /**
3942
3969
  * @fileoverview added by tsickle
3943
- * Generated from: lib/services/session-storage/session-storage.service.ts
3970
+ * Generated from: lib/services/storage/session-storage/session-storage.service.ts
3944
3971
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
3945
3972
  */
3946
3973
  var SessionStorageService = /** @class */ (function () {
@@ -4506,7 +4533,7 @@
4506
4533
  FindLocationComponent.decorators = [
4507
4534
  { type: i0.Component, args: [{
4508
4535
  selector: 'xuilib-find-location',
4509
- template: "<div class=\"location-picker-custom\">\n <div class=\"search-location\">\n <div>\n <label id=\"input-selected-location-label\" *ngIf=\"locationTitle\">{{locationTitle}}</label>\n </div>\n\n <div class=\"search-location__input-container\">\n <exui-search-location class=\"search-location__input\"\n [locations]=\"locations\"\n [selectedLocations]=\"selectedLocations\"\n [singleMode]=\"field.maxSelected === 1\"\n [bookingCheck]=\"field.bookingCheckType\"\n [delay]=\"300\"\n [disabled]=\"disabled\"\n [serviceIds]=\"serviceIds\"\n (locationInputChanged)=\"onInputChanged($event)\"\n (locationSelected)=\"onLocationSelected($event)\"\n (searchLocationChanged)=\"onSearchInputChanged()\"\n [locationType]=\"'case-management'\"></exui-search-location>\n <a href=\"javascript:void(0)\" (click)=\"addLocation()\" class=\"govuk-button govuk-button--secondary govuk-!-margin-bottom-0\" data-module=\"govuk-button\" *ngIf=\"enableAddLocationButton\">\n Add\n </a>\n </div>\n </div>\n <ul class=\"hmcts-filter-tags selection-container\" *ngIf=\"field.maxSelected != 1\">\n <li class=\"location-selection\" *ngFor=\"let selection of selectedLocations\">\n <a class=\"hmcts-filter__tag\" (click)=\"removeLocation(selection)\" href=\"javascript:void(0)\">\n {{ selection.site_name }}\n </a>\n </li>\n </ul>\n</div>\n",
4536
+ template: "<div class=\"location-picker-custom\">\n <div class=\"search-location\">\n <div>\n <label id=\"input-selected-location-label\" *ngIf=\"locationTitle\">{{locationTitle}}</label>\n </div>\n\n <div class=\"search-location__input-container\">\n <exui-search-location class=\"search-location__input\"\n [locations]=\"locations\"\n [selectedLocations]=\"selectedLocations\"\n [singleMode]=\"field.maxSelected === 1\"\n [bookingCheck]=\"field.bookingCheckType\"\n [delay]=\"300\"\n [disabled]=\"disabled\"\n [serviceIds]=\"serviceIds\"\n (locationInputChanged)=\"onInputChanged($event)\"\n (locationSelected)=\"onLocationSelected($event)\"\n (searchLocationChanged)=\"onSearchInputChanged()\"\n [locationType]=\"'case-management'\"></exui-search-location>\n <a href=\"javascript:void(0)\" (click)=\"addLocation()\"\n class=\"govuk-button govuk-button--secondary govuk-!-margin-bottom-0\" data-module=\"govuk-button\"\n *ngIf=\"enableAddLocationButton\">\n Add\n </a>\n </div>\n </div>\n <ul class=\"hmcts-filter-tags selection-container\" *ngIf=\"field.maxSelected != 1\">\n <li class=\"location-selection\" *ngFor=\"let selection of selectedLocations\">\n <a class=\"hmcts-filter__tag\" (click)=\"removeLocation(selection)\" href=\"javascript:void(0)\">\n {{ selection.site_name }}\n </a>\n </li>\n </ul>\n</div>\n",
4510
4537
  styles: [".search-location__input-container{display:flex}.search-location .auto-complete-container{min-width:unset;width:calc(100% - 4px)}.search-location__input{flex:1 0 auto}.search-location .govuk-button--secondary{background-color:#ddd}"]
4511
4538
  }] }
4512
4539
  ];
@@ -6905,6 +6932,33 @@
6905
6932
  return RemoveHostDirective;
6906
6933
  }());
6907
6934
 
6935
+ /**
6936
+ * @fileoverview added by tsickle
6937
+ * Generated from: lib/pipes/capitalize.pipe.ts
6938
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
6939
+ */
6940
+ var CapitalizePipe = /** @class */ (function () {
6941
+ function CapitalizePipe() {
6942
+ }
6943
+ /**
6944
+ * @param {?} value
6945
+ * @return {?}
6946
+ */
6947
+ CapitalizePipe.prototype.transform = /**
6948
+ * @param {?} value
6949
+ * @return {?}
6950
+ */
6951
+ function (value) {
6952
+ /** @type {?} */
6953
+ var lowerCaseString = value.toLowerCase();
6954
+ return lowerCaseString.charAt(0).toUpperCase() + lowerCaseString.slice(1);
6955
+ };
6956
+ CapitalizePipe.decorators = [
6957
+ { type: i0.Pipe, args: [{ name: 'capitalize' },] }
6958
+ ];
6959
+ return CapitalizePipe;
6960
+ }());
6961
+
6908
6962
  /**
6909
6963
  * @fileoverview added by tsickle
6910
6964
  * Generated from: lib/exui-common-lib.module.ts
@@ -6974,13 +7028,17 @@
6974
7028
  GovUkFileUploadComponent,
6975
7029
  RemoveHostDirective
6976
7030
  ];
7031
+ /** @type {?} */
7032
+ var pipes = [
7033
+ CapitalizePipe
7034
+ ];
6977
7035
  var ɵ0 = windowProvider;
6978
7036
  var ExuiCommonLibModule = /** @class */ (function () {
6979
7037
  function ExuiCommonLibModule() {
6980
7038
  }
6981
7039
  ExuiCommonLibModule.decorators = [
6982
7040
  { type: i0.NgModule, args: [{
6983
- declarations: __spread(COMMON_COMPONENTS, GOV_UI_COMPONENTS),
7041
+ declarations: __spread(COMMON_COMPONENTS, GOV_UI_COMPONENTS, pipes),
6984
7042
  imports: [
6985
7043
  i4.CommonModule,
6986
7044
  forms.FormsModule,
@@ -6996,7 +7054,7 @@
6996
7054
  ],
6997
7055
  exports: __spread(COMMON_COMPONENTS, GOV_UI_COMPONENTS, [
6998
7056
  ngxPagination.PaginatePipe
6999
- ])
7057
+ ], pipes)
7000
7058
  },] }
7001
7059
  ];
7002
7060
  return ExuiCommonLibModule;
@@ -8126,6 +8184,7 @@
8126
8184
  exports.ɵbv = HmctsPrimaryNavigationComponent;
8127
8185
  exports.ɵbu = HmctsSubNavigationComponent;
8128
8186
  exports.ɵcn = RemoveHostDirective;
8187
+ exports.ɵco = CapitalizePipe;
8129
8188
  exports.ɵr = CaseSharingStateService;
8130
8189
  exports.ɵbg = CookieService;
8131
8190
  exports.ɵh = FeatureToggleService;