@hmcts/rpx-xui-common-lib 2.0.7 → 2.0.8-remove-special-characters-allow-space

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.
@@ -2478,11 +2478,12 @@ class SearchLocationComponent {
2478
2478
  this.locationSelected = new EventEmitter();
2479
2479
  this.locationTermSearchInputChanged = new EventEmitter();
2480
2480
  this.searchLocationChanged = new EventEmitter();
2481
- this.searchTermFormControl = new FormControl('');
2481
+ this.searchTermFormControl = new FormControl('', Validators.pattern('/[^a-zA-Z -]/'));
2482
2482
  this.minSearchCharacters = 3;
2483
2483
  this.term = '';
2484
2484
  this.pReset = true;
2485
2485
  this.debounceTimeInput = 300;
2486
+ this.binaryValue = '';
2486
2487
  }
2487
2488
  ngOnInit() {
2488
2489
  const searchInputChanges$ = this.searchTermFormControl.valueChanges
@@ -2550,13 +2551,23 @@ class SearchLocationComponent {
2550
2551
  }
2551
2552
  return locations.filter(location => !selectedLocations.map(selectedLocation => selectedLocation.epimms_id).includes(location.epimms_id) && location[this.propertyNameFilter]);
2552
2553
  }
2554
+ RemoveInvalidString(formInputValue) {
2555
+ const element = formInputValue.target;
2556
+ const newInputValue = element.value;
2557
+ if (/[^a-zA-Z -]/.test(newInputValue)) {
2558
+ element.value = this.binaryValue;
2559
+ }
2560
+ else {
2561
+ this.binaryValue = newInputValue;
2562
+ }
2563
+ }
2553
2564
  }
2554
2565
  SearchLocationComponent.allLocationAPI = `api/locations/getLocations`;
2555
2566
  SearchLocationComponent.ɵfac = function SearchLocationComponent_Factory(t) { return new (t || SearchLocationComponent)(i0.ɵɵdirectiveInject(LocationService), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(RefDataService)); };
2556
- SearchLocationComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SearchLocationComponent, selectors: [["exui-search-location"]], inputs: { form: "form", field: "field", disabled: "disabled", singleMode: "singleMode", locationType: "locationType", serviceIds: "serviceIds", submitted: "submitted", bookingCheck: "bookingCheck", selectedLocations: "selectedLocations", propertyNameFilter: "propertyNameFilter", delay: "delay", reset: "reset" }, outputs: { locationSelected: "locationSelected", locationTermSearchInputChanged: "locationTermSearchInputChanged", searchLocationChanged: "searchLocationChanged" }, decls: 6, vars: 6, consts: [[1, "auto-complete-container"], ["id", "inputLocationSearch", 1, "govuk-input", 3, "formControl", "matAutocomplete", "input"], ["autoActiveFirstOption", "", 1, "mat-autocomplete-panel-extend"], ["autoSearchLocation", "matAutocomplete"], [4, "ngIf"], [3, "onSelectionChange", 4, "ngFor", "ngForOf"], [3, "onSelectionChange"]], template: function SearchLocationComponent_Template(rf, ctx) {
2567
+ SearchLocationComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SearchLocationComponent, selectors: [["exui-search-location"]], inputs: { form: "form", field: "field", disabled: "disabled", singleMode: "singleMode", locationType: "locationType", serviceIds: "serviceIds", submitted: "submitted", bookingCheck: "bookingCheck", selectedLocations: "selectedLocations", propertyNameFilter: "propertyNameFilter", delay: "delay", reset: "reset" }, outputs: { locationSelected: "locationSelected", locationTermSearchInputChanged: "locationTermSearchInputChanged", searchLocationChanged: "searchLocationChanged" }, decls: 6, vars: 6, consts: [[1, "auto-complete-container"], ["id", "inputLocationSearch", 1, "govuk-input", 3, "formControl", "matAutocomplete", "keyup", "input"], ["autoActiveFirstOption", "", 1, "mat-autocomplete-panel-extend"], ["autoSearchLocation", "matAutocomplete"], [4, "ngIf"], [3, "onSelectionChange", 4, "ngFor", "ngForOf"], [3, "onSelectionChange"]], template: function SearchLocationComponent_Template(rf, ctx) {
2557
2568
  if (rf & 1) {
2558
2569
  i0.ɵɵelementStart(0, "div", 0)(1, "input", 1);
2559
- i0.ɵɵlistener("input", function SearchLocationComponent_Template_input_input_1_listener() { return ctx.onInput(); });
2570
+ i0.ɵɵlistener("keyup", function SearchLocationComponent_Template_input_keyup_1_listener($event) { return ctx.RemoveInvalidString($event); })("input", function SearchLocationComponent_Template_input_input_1_listener() { return ctx.onInput(); });
2560
2571
  i0.ɵɵelementEnd();
2561
2572
  i0.ɵɵelementStart(2, "mat-autocomplete", 2, 3);
2562
2573
  i0.ɵɵtemplate(4, SearchLocationComponent_ng_container_4_Template, 2, 1, "ng-container", 4);
@@ -2575,7 +2586,7 @@ SearchLocationComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Sea
2575
2586
  (function () {
2576
2587
  (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchLocationComponent, [{
2577
2588
  type: Component,
2578
- args: [{ selector: 'exui-search-location', template: "<div class=\"auto-complete-container\">\n <input\n id=\"inputLocationSearch\"\n (input)=\"onInput()\"\n [formControl]=\"searchTermFormControl\"\n [matAutocomplete]=\"autoSearchLocation\"\n class=\"govuk-input\"\n [attr.disabled]=\"disabled\">\n <mat-autocomplete class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #autoSearchLocation=\"matAutocomplete\">\n <ng-container *ngIf=\"filteredList$ | async as filteredList\">\n <ng-container *ngIf=\"filteredList && filteredList.length >= 0\">\n <mat-option *ngFor=\"let location of filteredList\" (onSelectionChange)=\"onSelectedLocation(location)\">\n {{ location[propertyNameFilter] }}\n </mat-option>\n <mat-option *ngIf=\"filteredList.length === 0\">{{'No results found' | rpxTranslate}}</mat-option>\n </ng-container>\n </ng-container>\n </mat-autocomplete>\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: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{display:inline-block;margin-right:4px;width:calc(100% - 4px)}.autocomplete__input{line-height:24px;font-size:19px}\n"] }]
2589
+ args: [{ selector: 'exui-search-location', template: "<div class=\"auto-complete-container\">\n <input\n id=\"inputLocationSearch\"\n (keyup)=\"RemoveInvalidString($event)\"\n (input)=\"onInput()\"\n [formControl]=\"searchTermFormControl\"\n [matAutocomplete]=\"autoSearchLocation\"\n class=\"govuk-input\"\n [attr.disabled]=\"disabled\">\n <mat-autocomplete class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #autoSearchLocation=\"matAutocomplete\">\n <ng-container *ngIf=\"filteredList$ | async as filteredList\">\n <ng-container *ngIf=\"filteredList && filteredList.length >= 0\">\n <mat-option *ngFor=\"let location of filteredList\" (onSelectionChange)=\"onSelectedLocation(location)\">\n {{ location[propertyNameFilter] }}\n </mat-option>\n <mat-option *ngIf=\"filteredList.length === 0\">{{'No results found' | rpxTranslate}}</mat-option>\n </ng-container>\n </ng-container>\n </mat-autocomplete>\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: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{display:inline-block;margin-right:4px;width:calc(100% - 4px)}.autocomplete__input{line-height:24px;font-size:19px}\n"] }]
2579
2590
  }], function () { return [{ type: LocationService }, { type: SessionStorageService }, { type: RefDataService }]; }, { form: [{
2580
2591
  type: Input
2581
2592
  }], field: [{
@@ -7293,19 +7304,32 @@ function UserDetailsComponent_table_1_tr_17_div_9_Template(rf, ctx) {
7293
7304
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, "Manage fee accounts"));
7294
7305
  }
7295
7306
  }
7296
- function UserDetailsComponent_table_1_tr_17_a_11_Template(rf, ctx) {
7307
+ function UserDetailsComponent_table_1_tr_17_div_10_Template(rf, ctx) {
7297
7308
  if (rf & 1) {
7298
- i0.ɵɵelementStart(0, "a", 15);
7309
+ i0.ɵɵelementStart(0, "div");
7310
+ i0.ɵɵtext(1);
7311
+ i0.ɵɵpipe(2, "rpxTranslate");
7312
+ i0.ɵɵelementEnd();
7313
+ }
7314
+ if (rf & 2) {
7315
+ const accesstype_r13 = ctx.$implicit;
7316
+ i0.ɵɵadvance(1);
7317
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, accesstype_r13));
7318
+ }
7319
+ }
7320
+ function UserDetailsComponent_table_1_tr_17_a_12_Template(rf, ctx) {
7321
+ if (rf & 1) {
7322
+ i0.ɵɵelementStart(0, "a", 16);
7299
7323
  i0.ɵɵtext(1);
7300
7324
  i0.ɵɵpipe(2, "rpxTranslate");
7301
- i0.ɵɵelementStart(3, "span", 16);
7325
+ i0.ɵɵelementStart(3, "span", 17);
7302
7326
  i0.ɵɵtext(4);
7303
7327
  i0.ɵɵpipe(5, "rpxTranslate");
7304
7328
  i0.ɵɵelementEnd()();
7305
7329
  }
7306
7330
  if (rf & 2) {
7307
- const ctx_r11 = i0.ɵɵnextContext(3);
7308
- i0.ɵɵproperty("routerLink", ctx_r11.editPermissionRouterLink);
7331
+ const ctx_r12 = i0.ɵɵnextContext(3);
7332
+ i0.ɵɵproperty("routerLink", ctx_r12.editPermissionRouterLink);
7309
7333
  i0.ɵɵadvance(1);
7310
7334
  i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(2, 3, "Change"), " ");
7311
7335
  i0.ɵɵadvance(3);
@@ -7324,15 +7348,16 @@ function UserDetailsComponent_table_1_tr_17_Template(rf, ctx) {
7324
7348
  i0.ɵɵtemplate(7, UserDetailsComponent_table_1_tr_17_div_7_Template, 3, 3, "div", 3);
7325
7349
  i0.ɵɵtemplate(8, UserDetailsComponent_table_1_tr_17_div_8_Template, 3, 3, "div", 3);
7326
7350
  i0.ɵɵtemplate(9, UserDetailsComponent_table_1_tr_17_div_9_Template, 3, 3, "div", 3);
7351
+ i0.ɵɵtemplate(10, UserDetailsComponent_table_1_tr_17_div_10_Template, 3, 3, "div", 14);
7327
7352
  i0.ɵɵelementEnd();
7328
- i0.ɵɵelementStart(10, "td", 12);
7329
- i0.ɵɵtemplate(11, UserDetailsComponent_table_1_tr_17_a_11_Template, 6, 7, "a", 14);
7353
+ i0.ɵɵelementStart(11, "td", 12);
7354
+ i0.ɵɵtemplate(12, UserDetailsComponent_table_1_tr_17_a_12_Template, 6, 7, "a", 15);
7330
7355
  i0.ɵɵelementEnd()();
7331
7356
  }
7332
7357
  if (rf & 2) {
7333
7358
  const ctx_r5 = i0.ɵɵnextContext(2);
7334
7359
  i0.ɵɵadvance(2);
7335
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 7, "Permissions"));
7360
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 8, "Permissions"));
7336
7361
  i0.ɵɵadvance(3);
7337
7362
  i0.ɵɵproperty("ngIf", ctx_r5.user.manageOrganisations === "Yes");
7338
7363
  i0.ɵɵadvance(1);
@@ -7343,6 +7368,8 @@ function UserDetailsComponent_table_1_tr_17_Template(rf, ctx) {
7343
7368
  i0.ɵɵproperty("ngIf", ctx_r5.userHasRole("pui-caa"));
7344
7369
  i0.ɵɵadvance(1);
7345
7370
  i0.ɵɵproperty("ngIf", ctx_r5.userHasRole("pui-finance-manager"));
7371
+ i0.ɵɵadvance(1);
7372
+ i0.ɵɵproperty("ngForOf", ctx_r5.enabledAccessTypes);
7346
7373
  i0.ɵɵadvance(2);
7347
7374
  i0.ɵɵproperty("ngIf", ctx_r5.editPermissionRouterLink && ctx_r5.showEditLink);
7348
7375
  }
@@ -7368,7 +7395,7 @@ function UserDetailsComponent_table_1_Template(rf, ctx) {
7368
7395
  i0.ɵɵelementEnd();
7369
7396
  i0.ɵɵelement(16, "td", 12);
7370
7397
  i0.ɵɵelementEnd();
7371
- i0.ɵɵtemplate(17, UserDetailsComponent_table_1_tr_17_Template, 12, 9, "tr", 13);
7398
+ i0.ɵɵtemplate(17, UserDetailsComponent_table_1_tr_17_Template, 13, 10, "tr", 13);
7372
7399
  i0.ɵɵelementEnd()();
7373
7400
  }
7374
7401
  if (rf & 2) {
@@ -7387,9 +7414,9 @@ function UserDetailsComponent_table_1_Template(rf, ctx) {
7387
7414
  }
7388
7415
  function UserDetailsComponent_button_2_Template(rf, ctx) {
7389
7416
  if (rf & 1) {
7390
- const _r13 = i0.ɵɵgetCurrentView();
7391
- i0.ɵɵelementStart(0, "button", 17);
7392
- i0.ɵɵlistener("click", function UserDetailsComponent_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r12 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r12.suspendUser(ctx_r12.user)); });
7417
+ const _r15 = i0.ɵɵgetCurrentView();
7418
+ i0.ɵɵelementStart(0, "button", 18);
7419
+ i0.ɵɵlistener("click", function UserDetailsComponent_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r15); const ctx_r14 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r14.suspendUser(ctx_r14.user)); });
7393
7420
  i0.ɵɵtext(1);
7394
7421
  i0.ɵɵpipe(2, "rpxTranslate");
7395
7422
  i0.ɵɵelementEnd();
@@ -7401,8 +7428,8 @@ function UserDetailsComponent_button_2_Template(rf, ctx) {
7401
7428
  }
7402
7429
  function UserDetailsComponent_div_3_Template(rf, ctx) {
7403
7430
  if (rf & 1) {
7404
- const _r15 = i0.ɵɵgetCurrentView();
7405
- i0.ɵɵelementStart(0, "div")(1, "div", 18)(2, "p");
7431
+ const _r17 = i0.ɵɵgetCurrentView();
7432
+ i0.ɵɵelementStart(0, "div")(1, "div", 19)(2, "p");
7406
7433
  i0.ɵɵtext(3);
7407
7434
  i0.ɵɵpipe(4, "rpxTranslate");
7408
7435
  i0.ɵɵelementEnd();
@@ -7414,8 +7441,8 @@ function UserDetailsComponent_div_3_Template(rf, ctx) {
7414
7441
  i0.ɵɵtext(9);
7415
7442
  i0.ɵɵpipe(10, "rpxTranslate");
7416
7443
  i0.ɵɵelementEnd()();
7417
- i0.ɵɵelementStart(11, "a", 19);
7418
- i0.ɵɵlistener("click", function UserDetailsComponent_div_3_Template_a_click_11_listener() { i0.ɵɵrestoreView(_r15); const ctx_r14 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r14.reinviteClick(ctx_r14.user)); });
7444
+ i0.ɵɵelementStart(11, "a", 20);
7445
+ i0.ɵɵlistener("click", function UserDetailsComponent_div_3_Template_a_click_11_listener() { i0.ɵɵrestoreView(_r17); const ctx_r16 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r16.reinviteClick(ctx_r16.user)); });
7419
7446
  i0.ɵɵtext(12);
7420
7447
  i0.ɵɵpipe(13, "rpxTranslate");
7421
7448
  i0.ɵɵelementEnd()();
@@ -7433,7 +7460,7 @@ function UserDetailsComponent_div_3_Template(rf, ctx) {
7433
7460
  }
7434
7461
  function UserDetailsComponent_p_4_Template(rf, ctx) {
7435
7462
  if (rf & 1) {
7436
- i0.ɵɵelementStart(0, "p", 20)(1, "a", 21);
7463
+ i0.ɵɵelementStart(0, "p", 21)(1, "a", 22);
7437
7464
  i0.ɵɵtext(2);
7438
7465
  i0.ɵɵpipe(3, "rpxTranslate");
7439
7466
  i0.ɵɵelementEnd();
@@ -7453,6 +7480,7 @@ function UserDetailsComponent_p_4_Template(rf, ctx) {
7453
7480
  }
7454
7481
  class UserDetailsComponent {
7455
7482
  constructor() {
7483
+ this.enabledAccessTypes = [];
7456
7484
  this.showEditLink = false;
7457
7485
  this.showHelpLink = false;
7458
7486
  this.suspendUserEvent = new EventEmitter();
@@ -7473,7 +7501,7 @@ class UserDetailsComponent {
7473
7501
  }
7474
7502
  }
7475
7503
  UserDetailsComponent.ɵfac = function UserDetailsComponent_Factory(t) { return new (t || UserDetailsComponent)(); };
7476
- UserDetailsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UserDetailsComponent, selectors: [["xuilib-user-details"]], inputs: { user: "user", editPermissionRouterLink: "editPermissionRouterLink", warningTitle: "warningTitle", showEditLink: "showEditLink", showHelpLink: "showHelpLink", suspendHelpLink: "suspendHelpLink", showSuspendUserButton: "showSuspendUserButton" }, outputs: { suspendUserEvent: "suspendUserEvent", reinvite: "reinvite" }, decls: 5, vars: 5, consts: [["class", "govuk-warning-text", 4, "ngIf"], ["class", "govuk-table", "role", "presentation", 4, "ngIf"], ["class", "govuk-button govuk-button--warning", 3, "click", 4, "ngIf"], [4, "ngIf"], ["class", "govuk-body", 4, "ngIf"], [1, "govuk-warning-text"], [1, "govuk-warning-text__icon"], [1, "govuk-warning-text__text"], ["role", "presentation", 1, "govuk-table"], [1, "govuk-table__body"], [1, "govuk-table__row"], ["scope", "row", 1, "govuk-table__header"], [1, "govuk-table__cell"], ["class", "govuk-table__row", 4, "ngIf"], ["role", "link", 3, "routerLink", 4, "ngIf"], ["role", "link", 3, "routerLink"], [1, "govuk-visually-hidden"], [1, "govuk-button", "govuk-button--warning", 3, "click"], [1, "govuk-inset-text"], ["role", "button", "draggable", "false", "id", "resend-invite-button", 1, "govuk-button", 3, "click"], [1, "govuk-body"], ["target", "_blank", 3, "routerLink"]], template: function UserDetailsComponent_Template(rf, ctx) {
7504
+ UserDetailsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UserDetailsComponent, selectors: [["xuilib-user-details"]], inputs: { user: "user", enabledAccessTypes: "enabledAccessTypes", editPermissionRouterLink: "editPermissionRouterLink", warningTitle: "warningTitle", showEditLink: "showEditLink", showHelpLink: "showHelpLink", suspendHelpLink: "suspendHelpLink", showSuspendUserButton: "showSuspendUserButton" }, outputs: { suspendUserEvent: "suspendUserEvent", reinvite: "reinvite" }, decls: 5, vars: 5, consts: [["class", "govuk-warning-text", 4, "ngIf"], ["class", "govuk-table", "role", "presentation", 4, "ngIf"], ["class", "govuk-button govuk-button--warning", 3, "click", 4, "ngIf"], [4, "ngIf"], ["class", "govuk-body", 4, "ngIf"], [1, "govuk-warning-text"], [1, "govuk-warning-text__icon"], [1, "govuk-warning-text__text"], ["role", "presentation", 1, "govuk-table"], [1, "govuk-table__body"], [1, "govuk-table__row"], ["scope", "row", 1, "govuk-table__header"], [1, "govuk-table__cell"], ["class", "govuk-table__row", 4, "ngIf"], [4, "ngFor", "ngForOf"], ["role", "link", 3, "routerLink", 4, "ngIf"], ["role", "link", 3, "routerLink"], [1, "govuk-visually-hidden"], [1, "govuk-button", "govuk-button--warning", 3, "click"], [1, "govuk-inset-text"], ["role", "button", "draggable", "false", "id", "resend-invite-button", 1, "govuk-button", 3, "click"], [1, "govuk-body"], ["target", "_blank", 3, "routerLink"]], template: function UserDetailsComponent_Template(rf, ctx) {
7477
7505
  if (rf & 1) {
7478
7506
  i0.ɵɵtemplate(0, UserDetailsComponent_div_0_Template, 6, 3, "div", 0);
7479
7507
  i0.ɵɵtemplate(1, UserDetailsComponent_table_1_Template, 18, 11, "table", 1);
@@ -7492,13 +7520,15 @@ UserDetailsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UserDe
7492
7520
  i0.ɵɵadvance(1);
7493
7521
  i0.ɵɵproperty("ngIf", ctx.showHelpLink && ctx.suspendHelpLink);
7494
7522
  }
7495
- }, dependencies: [i1.NgIf, i2$1.RouterLink, i2.RpxTranslatePipe], styles: ["[_nghost-%COMP%]{display:block}"] });
7523
+ }, dependencies: [i1.NgForOf, i1.NgIf, i2$1.RouterLink, i2.RpxTranslatePipe], styles: ["[_nghost-%COMP%]{display:block}"] });
7496
7524
  (function () {
7497
7525
  (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UserDetailsComponent, [{
7498
7526
  type: Component,
7499
- args: [{ selector: 'xuilib-user-details', template: "<div class=\"govuk-warning-text\" *ngIf=\"warningTitle && warningTitle !== ''\">\n<span class=\"govuk-warning-text__icon\">!</span>\n<strong class=\"govuk-warning-text__text\">\n {{ warningTitle | rpxTranslate}}\n</strong>\n</div>\n<table class=\"govuk-table\" *ngIf=\"user\" role=\"presentation\">\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <th class=\"govuk-table__header\" scope=\"row\">{{'Name' | rpxTranslate}}</th>\n <td class=\"govuk-table__cell\">{{user.fullName | rpxTranslate}}</td>\n <td class=\"govuk-table__cell\"></td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th class=\"govuk-table__header\" scope=\"row\">{{'Email address' | rpxTranslate}}</th>\n <td class=\"govuk-table__cell\">{{user.email}}</td>\n <td class=\"govuk-table__cell\"></td>\n </tr>\n <tr class=\"govuk-table__row\" *ngIf=\"!user.resendInvite\">\n <th class=\"govuk-table__header\" scope=\"row\">{{'Permissions' | rpxTranslate}}</th>\n <td class=\"govuk-table__cell\">\n <div *ngIf=\"user.manageOrganisations === 'Yes'\">{{'Manage organisations' | rpxTranslate}}</div>\n <div *ngIf=\"user.manageUsers === 'Yes'\">{{'Manage users' | rpxTranslate}}</div>\n <div *ngIf=\"user.manageCases === 'Yes'\">{{'Manage cases' | rpxTranslate}}</div>\n <div *ngIf=\"userHasRole('pui-caa')\">{{'Case access administrator' | rpxTranslate}}</div>\n <div *ngIf=\"userHasRole('pui-finance-manager')\">{{'Manage fee accounts' | rpxTranslate}}</div>\n </td>\n <td class=\"govuk-table__cell\"><a *ngIf=\"editPermissionRouterLink && showEditLink\" role=\"link\" [routerLink]=\"editPermissionRouterLink\">{{'Change' | rpxTranslate}} <span class=\"govuk-visually-hidden\">{{'roles' | rpxTranslate}}</span></a></td>\n </tr>\n </tbody>\n</table>\n<button *ngIf=\"showSuspendUserButton\" class=\"govuk-button govuk-button--warning\" (click)=\"suspendUser(user)\">\n {{'Suspend account' | rpxTranslate}}\n</button>\n<div *ngIf=\"user && user.resendInvite\">\n <div class=\"govuk-inset-text\">\n <p>{{'This user has already been invited but has not activated their account.' | rpxTranslate}}</p>\n <p>{{'If you resend an invitation, they\\'ll receive an email from HM Courts and Tribunals to finish setting up their account.' | rpxTranslate}}</p>\n <p>{{'You can\\'t invite the same user more than once an hour.' | rpxTranslate}}</p>\n </div>\n <a role=\"button\" draggable=\"false\" class=\"govuk-button\" (click)=\"reinviteClick(user)\" id=\"resend-invite-button\">\n {{'Resend invitation' | rpxTranslate}}\n </a>\n</div>\n<p class=\"govuk-body\" *ngIf=\"showHelpLink && suspendHelpLink\"><a [routerLink]=\"suspendHelpLink\" target=\"_blank\">{{'Get help' | rpxTranslate}}</a> {{'to reactivate this account.' | rpxTranslate}}</p>\n", styles: [":host{display:block}\n"] }]
7527
+ args: [{ selector: 'xuilib-user-details', template: "<div class=\"govuk-warning-text\" *ngIf=\"warningTitle && warningTitle !== ''\">\n<span class=\"govuk-warning-text__icon\">!</span>\n<strong class=\"govuk-warning-text__text\">\n {{ warningTitle | rpxTranslate}}\n</strong>\n</div>\n<table class=\"govuk-table\" *ngIf=\"user\" role=\"presentation\">\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\">\n <th class=\"govuk-table__header\" scope=\"row\">{{'Name' | rpxTranslate}}</th>\n <td class=\"govuk-table__cell\">{{user.fullName | rpxTranslate}}</td>\n <td class=\"govuk-table__cell\"></td>\n </tr>\n <tr class=\"govuk-table__row\">\n <th class=\"govuk-table__header\" scope=\"row\">{{'Email address' | rpxTranslate}}</th>\n <td class=\"govuk-table__cell\">{{user.email}}</td>\n <td class=\"govuk-table__cell\"></td>\n </tr>\n <tr class=\"govuk-table__row\" *ngIf=\"!user.resendInvite\">\n <th class=\"govuk-table__header\" scope=\"row\">{{'Permissions' | rpxTranslate}}</th>\n <td class=\"govuk-table__cell\">\n <div *ngIf=\"user.manageOrganisations === 'Yes'\">{{'Manage organisations' | rpxTranslate}}</div>\n <div *ngIf=\"user.manageUsers === 'Yes'\">{{'Manage users' | rpxTranslate}}</div>\n <div *ngIf=\"user.manageCases === 'Yes'\">{{'Manage cases' | rpxTranslate}}</div>\n <div *ngIf=\"userHasRole('pui-caa')\">{{'Case access administrator' | rpxTranslate}}</div>\n <div *ngIf=\"userHasRole('pui-finance-manager')\">{{'Manage fee accounts' | rpxTranslate}}</div>\n <div *ngFor=\"let accesstype of enabledAccessTypes\">{{ accesstype | rpxTranslate}}</div> \n </td>\n <td class=\"govuk-table__cell\"><a *ngIf=\"editPermissionRouterLink && showEditLink\" role=\"link\" [routerLink]=\"editPermissionRouterLink\">{{'Change' | rpxTranslate}} <span class=\"govuk-visually-hidden\">{{'roles' | rpxTranslate}}</span></a></td>\n </tr>\n </tbody>\n</table>\n<button *ngIf=\"showSuspendUserButton\" class=\"govuk-button govuk-button--warning\" (click)=\"suspendUser(user)\">\n {{'Suspend account' | rpxTranslate}}\n</button>\n<div *ngIf=\"user && user.resendInvite\">\n <div class=\"govuk-inset-text\">\n <p>{{'This user has already been invited but has not activated their account.' | rpxTranslate}}</p>\n <p>{{'If you resend an invitation, they\\'ll receive an email from HM Courts and Tribunals to finish setting up their account.' | rpxTranslate}}</p>\n <p>{{'You can\\'t invite the same user more than once an hour.' | rpxTranslate}}</p>\n </div>\n <a role=\"button\" draggable=\"false\" class=\"govuk-button\" (click)=\"reinviteClick(user)\" id=\"resend-invite-button\">\n {{'Resend invitation' | rpxTranslate}}\n </a>\n</div>\n<p class=\"govuk-body\" *ngIf=\"showHelpLink && suspendHelpLink\"><a [routerLink]=\"suspendHelpLink\" target=\"_blank\">{{'Get help' | rpxTranslate}}</a> {{'to reactivate this account.' | rpxTranslate}}</p>\n", styles: [":host{display:block}\n"] }]
7500
7528
  }], null, { user: [{
7501
7529
  type: Input
7530
+ }], enabledAccessTypes: [{
7531
+ type: Input
7502
7532
  }], editPermissionRouterLink: [{
7503
7533
  type: Input
7504
7534
  }], warningTitle: [{