@hmcts/rpx-xui-common-lib 3.2.16-pofcc-156 → 3.2.17

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.
@@ -1541,13 +1541,13 @@ var BookingCheckType;
1541
1541
  BookingCheckType["POSSIBLE_BOOKINGS"] = "POSSIBLE_BOOKINGS";
1542
1542
  })(BookingCheckType || (BookingCheckType = {}));
1543
1543
 
1544
+ // used as settings for filters and components
1544
1545
  var PersonRole;
1545
1546
  (function (PersonRole) {
1546
1547
  PersonRole["JUDICIAL"] = "Judicial";
1547
1548
  PersonRole["LEGAL_OPERATIONS"] = "Legal Ops";
1548
1549
  PersonRole["ADMIN"] = "Admin";
1549
1550
  PersonRole["CTSC"] = "CTSC";
1550
- PersonRole["ENFORCEMENT"] = "Enforcement";
1551
1551
  PersonRole["ALL"] = "All";
1552
1552
  })(PersonRole || (PersonRole = {}));
1553
1553
  // Role categories used in application
@@ -1559,43 +1559,8 @@ var RoleCategory;
1559
1559
  RoleCategory["CTSC"] = "CTSC";
1560
1560
  RoleCategory["PROFESSIONAL"] = "PROFESSIONAL";
1561
1561
  RoleCategory["CITIZEN"] = "CITIZEN";
1562
- RoleCategory["ENFORCEMENT"] = "ENFORCEMENT";
1563
1562
  RoleCategory["ALL"] = "ALL";
1564
1563
  })(RoleCategory || (RoleCategory = {}));
1565
- function getRoleCategory(personRole) {
1566
- let roleCategory = RoleCategory.ALL;
1567
- if (!(personRole === PersonRole.ALL)) {
1568
- if (personRole === PersonRole.LEGAL_OPERATIONS) {
1569
- roleCategory = RoleCategory.LEGAL_OPERATIONS;
1570
- }
1571
- else if (personRole === PersonRole.ADMIN) {
1572
- roleCategory = RoleCategory.ADMIN;
1573
- }
1574
- else if (personRole === PersonRole.CTSC) {
1575
- roleCategory = RoleCategory.CTSC;
1576
- }
1577
- else if (personRole === PersonRole.ENFORCEMENT) {
1578
- roleCategory = RoleCategory.ENFORCEMENT;
1579
- }
1580
- }
1581
- return roleCategory;
1582
- }
1583
- function getPersonRole(roleCategories) {
1584
- if (roleCategories.includes(RoleCategory.ADMIN)) {
1585
- return PersonRole.ADMIN;
1586
- }
1587
- if (roleCategories.includes(RoleCategory.CTSC)) {
1588
- return PersonRole.CTSC;
1589
- }
1590
- if (roleCategories.includes(RoleCategory.LEGAL_OPERATIONS)) {
1591
- return PersonRole.LEGAL_OPERATIONS;
1592
- }
1593
- if (roleCategories.includes(RoleCategory.ENFORCEMENT)) {
1594
- return PersonRole.ENFORCEMENT;
1595
- }
1596
- // return default role if no match found
1597
- return PersonRole.LEGAL_OPERATIONS;
1598
- }
1599
1564
 
1600
1565
  var AddressType;
1601
1566
  (function (AddressType) {
@@ -2473,8 +2438,7 @@ class FindAPersonService {
2473
2438
  id: caseworker.idamId,
2474
2439
  // EXUI-4758 - If user has admin role, set domain to admin
2475
2440
  // For more specific domain we need service specific role category (or other technique)
2476
- // Note: Domain only used internally to set the PersonRole for the Person object
2477
- domain: getPersonRole(caseworker.roleCategories)
2441
+ domain: this.setDomain(caseworker)
2478
2442
  // knownAs can be added if required
2479
2443
  };
2480
2444
  if (caseworker.roleCategories.includes(roleCategory) || roleCategory === RoleCategory.ALL || caseworker.idamId === this.userId) {
@@ -2484,7 +2448,18 @@ class FindAPersonService {
2484
2448
  return people;
2485
2449
  }
2486
2450
  searchInCaseworkers(caseworkers, searchOptions) {
2487
- const roleCategory = getRoleCategory(searchOptions.userRole);
2451
+ let roleCategory = RoleCategory.ALL;
2452
+ if (!(searchOptions.userRole === PersonRole.ALL)) {
2453
+ if (searchOptions.userRole === PersonRole.LEGAL_OPERATIONS) {
2454
+ roleCategory = RoleCategory.LEGAL_OPERATIONS;
2455
+ }
2456
+ else if (searchOptions.userRole === PersonRole.ADMIN) {
2457
+ roleCategory = RoleCategory.ADMIN;
2458
+ }
2459
+ else if (searchOptions.userRole === PersonRole.CTSC) {
2460
+ roleCategory = RoleCategory.CTSC;
2461
+ }
2462
+ }
2488
2463
  const searchTerm = searchOptions && searchOptions.searchTerm ? searchOptions.searchTerm.toLowerCase() : '';
2489
2464
  const people = caseworkers ? this.mapCaseworkers(caseworkers, roleCategory) : [];
2490
2465
  const finalPeopleList = people.filter((person) => person && person.name && person.name.toLowerCase().includes(searchTerm));
@@ -2496,33 +2471,19 @@ class FindAPersonService {
2496
2471
  searchJudicial(value, serviceId) {
2497
2472
  return this.http.post('api/prd/judicial/getJudicialUsersSearch', { searchString: value, serviceCode: serviceId });
2498
2473
  }
2499
- findByPersonRole(searchTerm, personRole, selectedPersons, services, userIncluded, assignedUser) {
2500
- switch (personRole) {
2501
- case PersonRole.JUDICIAL: {
2502
- return this.findJudicialOrCTSCPeople(searchTerm, personRole, services, userIncluded, assignedUser).pipe(map((persons) => {
2503
- const ids = selectedPersons.map(({ id }) => id);
2504
- return persons.filter(({ id }) => !ids.includes(id));
2505
- }));
2506
- }
2507
- case PersonRole.ALL: {
2508
- return zip(this.findJudicialOrCTSCPeople(searchTerm, personRole, services, userIncluded, assignedUser), this.findCaseworkersOrAdminsOrCtsc(searchTerm, personRole, services, userIncluded, assignedUser)).pipe(map((separatePeople) => separatePeople[0].concat(separatePeople[1])));
2509
- }
2510
- case PersonRole.CTSC:
2511
- case PersonRole.LEGAL_OPERATIONS:
2512
- case PersonRole.ADMIN:
2513
- case PersonRole.ENFORCEMENT: {
2514
- return this.findCaseworkersOrAdminsOrCtsc(searchTerm, personRole, services, userIncluded, assignedUser);
2515
- }
2516
- default: {
2517
- return of([]);
2518
- }
2474
+ // Note: Domain only used internally to set the PersonRole for the Person object
2475
+ setDomain(caseworker) {
2476
+ if (caseworker.roleCategories.includes(RoleCategory.ADMIN)) {
2477
+ return PersonRole.ADMIN;
2519
2478
  }
2520
- }
2521
- findJudicialOrCTSCPeople(searchTerm, personRole, services, userIncluded, assignedUser) {
2522
- return this.find({ searchTerm, userRole: personRole, services: [services], userIncluded: userIncluded, assignedUser: assignedUser });
2523
- }
2524
- findCaseworkersOrAdminsOrCtsc(searchTerm, personRole, services, userIncluded, assignedUser) {
2525
- return this.findCaseworkers({ searchTerm, userRole: personRole, services: [services], userIncluded: userIncluded, assignedUser: assignedUser });
2479
+ if (caseworker.roleCategories.includes(RoleCategory.CTSC)) {
2480
+ return PersonRole.CTSC;
2481
+ }
2482
+ if (caseworker.roleCategories.includes(RoleCategory.LEGAL_OPERATIONS)) {
2483
+ return PersonRole.LEGAL_OPERATIONS;
2484
+ }
2485
+ // return default role if no match found
2486
+ return PersonRole.LEGAL_OPERATIONS;
2526
2487
  }
2527
2488
  static { this.ɵfac = function FindAPersonService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || FindAPersonService)(i0.ɵɵinject(i1$2.HttpClient), i0.ɵɵinject(SessionStorageService)); }; }
2528
2489
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: FindAPersonService, factory: FindAPersonService.ɵfac, providedIn: 'root' }); }
@@ -2637,8 +2598,28 @@ class FindPersonComponent {
2637
2598
  });
2638
2599
  }
2639
2600
  filter(searchTerm) {
2601
+ const findJudicialOrCTSCPeople = this.findPersonService.find({ searchTerm, userRole: this.domain, services: [this.services], userIncluded: this.userIncluded, assignedUser: this.assignedUser });
2602
+ const findCaseworkersOrAdminsOrCtsc = this.findPersonService.findCaseworkers({ searchTerm, userRole: this.domain, services: [this.services], userIncluded: this.userIncluded, assignedUser: this.assignedUser });
2640
2603
  if (searchTerm && searchTerm.length > this.minSearchCharacters) {
2641
- return this.findPersonService.findByPersonRole(searchTerm, this.domain, this.selectedPersons, this.services, this.userIncluded, this.assignedUser);
2604
+ switch (this.domain) {
2605
+ case PersonRole.JUDICIAL: {
2606
+ return findJudicialOrCTSCPeople.pipe(map((persons) => {
2607
+ const ids = this.selectedPersons.map(({ id }) => id);
2608
+ return persons.filter(({ id }) => !ids.includes(id));
2609
+ }));
2610
+ }
2611
+ case PersonRole.ALL: {
2612
+ return zip(findJudicialOrCTSCPeople, findCaseworkersOrAdminsOrCtsc).pipe(map((separatePeople) => separatePeople[0].concat(separatePeople[1])));
2613
+ }
2614
+ case PersonRole.CTSC:
2615
+ case PersonRole.LEGAL_OPERATIONS:
2616
+ case PersonRole.ADMIN: {
2617
+ return findCaseworkersOrAdminsOrCtsc;
2618
+ }
2619
+ default: {
2620
+ return of([]);
2621
+ }
2622
+ }
2642
2623
  }
2643
2624
  return of([]);
2644
2625
  }
@@ -2650,7 +2631,6 @@ class FindPersonComponent {
2650
2631
  if (!selectedPerson) {
2651
2632
  return '';
2652
2633
  }
2653
- // The judiciary people contain a different object which has a fullName property
2654
2634
  if (selectedPerson.domain === PersonRole.JUDICIAL && selectedPerson.fullName) {
2655
2635
  return `${selectedPerson.fullName} (${selectedPerson.email})`;
2656
2636
  }
@@ -10788,5 +10768,5 @@ function radioGroupValidator() {
10788
10768
  * Generated bundle index. Do not edit.
10789
10769
  */
10790
10770
 
10791
- export { AccessibilityComponent, AddressMessageEnum, AddressModel, AddressOption, AddressService, AnonymousFeatureUser, BadgeColour, BookingCheckType, COMMON_COMPONENTS, CapitalizePipe, CheckboxListComponent, ContactDetailsComponent, CookieBannerComponent, CookieService, DateBadgeColour, DueDateComponent, ExuiCommonLibModule, ExuiPageWrapperComponent, FeatureToggleDirective, FeatureToggleGuard, FeatureToggleService, FilterService, FindLocationComponent, FindPersonComponent, FindServiceComponent, FindTaskNameComponent, FindWorkTypeComponent, GOV_UI_COMPONENTS, GenericFilterComponent, GoogleAnalyticsService, GoogleTagManagerService, GovUiService, GovUkCheckboxComponent, GovUkCheckboxesComponent, GovUkDateComponent, GovUkErrorMessageComponent, GovUkFieldsetComponent, GovUkFileUploadComponent, GovUkFormGroupWrapperComponent, GovUkInputComponent, GovUkLabelComponent, GovUkRadioComponent, GovUkRadiosComponent, GovUkSelectComponent, GovUkTextareaComponent, GovukTableColumnConfig, GovukTableComponent, HasLoadingState, HmctsBannerComponent, HmctsErrorSummaryComponent, HmctsIdentityBarComponent, HmctsMainWrapperComponent, HmctsPaginationComponent, HmctsPrimaryNavigationComponent, HmctsSessionDialogComponent, HmctsSubNavigationComponent, InviteUserFormComponent, InviteUserPermissionComponent, LaunchDarklyService, LetContext, LetDirective, LoadingService, LoadingSpinnerComponent, LocationService, LoggedInFeatureUser, ManageSessionServices, PaginationComponent, PersonRole, RadioFilterFieldConfig, RefDataService, RemoveHostDirective, RoleCategory, RoleGuard, RoleMatching, RoleService, SECONDS_IN_A_DAY, SearchJudicialsComponent, SearchLocationComponent, SearchServiceComponent, SearchVenueComponent, SearchWorkTypeComponent, SelectedCaseComponent, SelectedCaseConfirmComponent, SelectedCaseListComponent, ServiceMessageComponent, ServiceMessagesComponent, ShareCaseComponent, ShareCaseConfirmComponent, SharedCaseErrorMessages, TabComponent, TaskService, TcConfirmComponent, TcDisplayHtmlComponent, TcDisplayPlainComponent, TermsAndConditionsComponent, TimeoutNotificationsService, UserDetailsComponent, UserListComponent, UserSelectComponent, WriteAddressFieldComponent, WriteAddressInputsComponent, checkboxesBeCheckedValidator, dateValidator, getPersonRole, getRoleCategory, radioGroupValidator, windowProvider, windowToken };
10771
+ export { AccessibilityComponent, AddressMessageEnum, AddressModel, AddressOption, AddressService, AnonymousFeatureUser, BadgeColour, BookingCheckType, COMMON_COMPONENTS, CapitalizePipe, CheckboxListComponent, ContactDetailsComponent, CookieBannerComponent, CookieService, DateBadgeColour, DueDateComponent, ExuiCommonLibModule, ExuiPageWrapperComponent, FeatureToggleDirective, FeatureToggleGuard, FeatureToggleService, FilterService, FindLocationComponent, FindPersonComponent, FindServiceComponent, FindTaskNameComponent, FindWorkTypeComponent, GOV_UI_COMPONENTS, GenericFilterComponent, GoogleAnalyticsService, GoogleTagManagerService, GovUiService, GovUkCheckboxComponent, GovUkCheckboxesComponent, GovUkDateComponent, GovUkErrorMessageComponent, GovUkFieldsetComponent, GovUkFileUploadComponent, GovUkFormGroupWrapperComponent, GovUkInputComponent, GovUkLabelComponent, GovUkRadioComponent, GovUkRadiosComponent, GovUkSelectComponent, GovUkTextareaComponent, GovukTableColumnConfig, GovukTableComponent, HasLoadingState, HmctsBannerComponent, HmctsErrorSummaryComponent, HmctsIdentityBarComponent, HmctsMainWrapperComponent, HmctsPaginationComponent, HmctsPrimaryNavigationComponent, HmctsSessionDialogComponent, HmctsSubNavigationComponent, InviteUserFormComponent, InviteUserPermissionComponent, LaunchDarklyService, LetContext, LetDirective, LoadingService, LoadingSpinnerComponent, LocationService, LoggedInFeatureUser, ManageSessionServices, PaginationComponent, PersonRole, RadioFilterFieldConfig, RefDataService, RemoveHostDirective, RoleCategory, RoleGuard, RoleMatching, RoleService, SECONDS_IN_A_DAY, SearchJudicialsComponent, SearchLocationComponent, SearchServiceComponent, SearchVenueComponent, SearchWorkTypeComponent, SelectedCaseComponent, SelectedCaseConfirmComponent, SelectedCaseListComponent, ServiceMessageComponent, ServiceMessagesComponent, ShareCaseComponent, ShareCaseConfirmComponent, SharedCaseErrorMessages, TabComponent, TaskService, TcConfirmComponent, TcDisplayHtmlComponent, TcDisplayPlainComponent, TermsAndConditionsComponent, TimeoutNotificationsService, UserDetailsComponent, UserListComponent, UserSelectComponent, WriteAddressFieldComponent, WriteAddressInputsComponent, checkboxesBeCheckedValidator, dateValidator, radioGroupValidator, windowProvider, windowToken };
10792
10772
  //# sourceMappingURL=hmcts-rpx-xui-common-lib.mjs.map