@hmcts/rpx-xui-common-lib 2.0.18 → 2.0.19

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.
@@ -1,8 +1,6 @@
1
1
  import { HttpClient } from '@angular/common/http';
2
2
  import { Injectable } from '@angular/core';
3
- import { of } from 'rxjs';
4
- import { map, tap } from 'rxjs/operators';
5
- import { getAllCaseworkersFromServices, getSessionStorageKeyForServiceId, setCaseworkers } from '../../gov-ui/util/session-storage/session-storage-utils';
3
+ import { map } from 'rxjs/operators';
6
4
  import { PersonRole, RoleCategory } from '../../models';
7
5
  import { SessionStorageService } from '../storage/session-storage/session-storage.service';
8
6
  import * as i0 from "@angular/core";
@@ -32,35 +30,8 @@ export class FindAPersonService {
32
30
  }
33
31
  this.assignedUser = searchOptions.assignedUser ? searchOptions.assignedUser : null;
34
32
  const fullServices = searchOptions.services;
35
- const storedServices = [];
36
- const newServices = [];
37
- const storedCaseworkersByService = [];
38
- fullServices.forEach(serviceId => {
39
- const serviceKey = getSessionStorageKeyForServiceId(serviceId);
40
- if (this.sessionStorageService.getItem(serviceKey)) {
41
- storedServices.push(serviceId);
42
- storedCaseworkersByService.push({ service: serviceId, caseworkers: JSON.parse(this.sessionStorageService.getItem(serviceKey)) });
43
- }
44
- else {
45
- newServices.push(serviceId);
46
- }
47
- });
48
- // if all services are stored then return the stored caseworkers by service
49
- if (storedServices.length === fullServices.length) {
50
- const storedCaseworkers = getAllCaseworkersFromServices(storedCaseworkersByService);
51
- return of(this.searchInCaseworkers(storedCaseworkers, searchOptions));
52
- }
53
- // all serviceIds passed in as node layer getting used anyway and caseworkers also stored there
54
- return this.http.post('/workallocation/retrieveCaseWorkersForServices', { fullServices }).pipe(tap(caseworkersByService => {
55
- caseworkersByService.forEach(caseworkerListByService => {
56
- // for any new service, ensure that they are then stored in the session
57
- if (newServices.includes(caseworkerListByService.service)) {
58
- setCaseworkers(caseworkerListByService.service, caseworkerListByService.caseworkers, this.sessionStorageService);
59
- }
60
- });
61
- }), map(caseworkersByService => {
62
- const givenCaseworkers = getAllCaseworkersFromServices(caseworkersByService);
63
- return this.searchInCaseworkers(givenCaseworkers, searchOptions);
33
+ return this.http.post('/workallocation/caseworker/getUsersByServiceName', { services: fullServices, term: searchOptions.searchTerm }).pipe(map(caseworkers => {
34
+ return this.searchInCaseworkers(caseworkers, searchOptions);
64
35
  }));
65
36
  }
66
37
  mapCaseworkers(caseworkers, roleCategory) {
@@ -92,11 +63,9 @@ export class FindAPersonService {
92
63
  roleCategory = RoleCategory.CTSC;
93
64
  }
94
65
  }
95
- const searchTerm = searchOptions && searchOptions.searchTerm ? searchOptions.searchTerm.toLowerCase() : '';
96
66
  const people = caseworkers ? this.mapCaseworkers(caseworkers, roleCategory) : [];
97
- const finalPeopleList = people.filter(person => person && person.name && person.name.toLowerCase().includes(searchTerm));
98
- return searchOptions.userIncluded ? finalPeopleList.filter(person => person && person.id !== this.assignedUser)
99
- : finalPeopleList.filter(person => person?.id !== this.assignedUser);
67
+ return searchOptions.userIncluded ? people.filter(person => person && person.id !== this.assignedUser)
68
+ : people.filter(person => person && person.id !== this.userId && person.id !== this.assignedUser);
100
69
  }
101
70
  searchJudicial(value, serviceId) {
102
71
  return this.http.post('api/prd/judicial/getJudicialUsersSearch', { searchString: value, serviceCode: serviceId });
@@ -111,4 +80,4 @@ FindAPersonService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: FindA
111
80
  providedIn: 'root'
112
81
  }]
113
82
  }], function () { return [{ type: i1.HttpClient }, { type: i2.SessionStorageService }]; }, null); })();
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1wZXJzb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL3NlcnZpY2VzL2ZpbmQtcGVyc29uL2ZpbmQtcGVyc29uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFDTCw2QkFBNkIsRUFDN0IsZ0NBQWdDLEVBQ2hDLGNBQWMsRUFDZixNQUFNLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8sRUFLTCxVQUFVLEVBQ1YsWUFBWSxFQUViLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDOzs7O0FBSzNGLE1BQU0sT0FBTyxrQkFBa0I7SUFNN0IsWUFBNkIsSUFBZ0IsRUFBbUIscUJBQTRDO1FBQS9FLFNBQUksR0FBSixJQUFJLENBQVk7UUFBbUIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtJQUM1RyxDQUFDO0lBRU0sSUFBSSxDQUFDLGFBQTRCO1FBQ3RDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsSUFBSSxXQUFXLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFO1lBQzlDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLENB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LFlBQVksQ0FBQztZQUM3RyxDQUFDLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFTSxjQUFjLENBQUMsS0FBYSxFQUFFLFNBQWlCO1FBQ3BELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXNCLHlDQUF5QyxFQUNsRixFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQzs7QUFuR2EsaUNBQWMsR0FBVyxhQUFhLENBQUM7b0ZBRjFDLGtCQUFrQjt3RUFBbEIsa0JBQWtCLFdBQWxCLGtCQUFrQixtQkFGakIsTUFBTTt1RkFFUCxrQkFBa0I7Y0FIOUIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gIGdldEFsbENhc2V3b3JrZXJzRnJvbVNlcnZpY2VzLFxuICBnZXRTZXNzaW9uU3RvcmFnZUtleUZvclNlcnZpY2VJZCxcbiAgc2V0Q2FzZXdvcmtlcnNcbn0gZnJvbSAnLi4vLi4vZ292LXVpL3V0aWwvc2Vzc2lvbi1zdG9yYWdlL3Nlc3Npb24tc3RvcmFnZS11dGlscyc7XG5pbXBvcnQge1xuICBDYXNld29ya2VyLFxuICBDYXNld29ya2Vyc0J5U2VydmljZSxcbiAgSnVkaWNpYWxVc2VyTW9kZWwsXG4gIFBlcnNvbixcbiAgUGVyc29uUm9sZSxcbiAgUm9sZUNhdGVnb3J5LFxuICBTZWFyY2hPcHRpb25zXG59IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBTZXNzaW9uU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zdG9yYWdlL3Nlc3Npb24tc3RvcmFnZS9zZXNzaW9uLXN0b3JhZ2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZpbmRBUGVyc29uU2VydmljZSB7XG5cbiAgcHVibGljIHN0YXRpYyBjYXNld29ya2Vyc0tleTogc3RyaW5nID0gJ2Nhc2V3b3JrZXJzJztcbiAgcHVibGljIHVzZXJJZDogc3RyaW5nO1xuICBwdWJsaWMgYXNzaWduZWRVc2VyOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIHJlYWRvbmx5IHNlc3Npb25TdG9yYWdlU2VydmljZTogU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlKSB7XG4gIH1cblxuICBwdWJsaWMgZmluZChzZWFyY2hPcHRpb25zOiBTZWFyY2hPcHRpb25zKTogT2JzZXJ2YWJsZTxQZXJzb25bXT4ge1xuICAgIGNvbnN0IHVzZXJJbmZvU3RyID0gdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSgndXNlckRldGFpbHMnKTtcbiAgICBpZiAodXNlckluZm9TdHIgJiYgIXNlYXJjaE9wdGlvbnMudXNlckluY2x1ZGVkKSB7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IEpTT04ucGFyc2UodXNlckluZm9TdHIpO1xuICAgICAgdGhpcy51c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICB0aGlzLmFzc2lnbmVkVXNlciA9IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyID8gc2VhcmNoT3B0aW9ucy5hc3NpZ25lZFVzZXIgOiBudWxsO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxQZXJzb25bXT4oJy93b3JrYWxsb2NhdGlvbi9maW5kUGVyc29uJywgeyBzZWFyY2hPcHRpb25zIH0pXG4gICAgICAucGlwZShtYXAoanVkaWNpYXJ5ID0+IGp1ZGljaWFyeS5maWx0ZXIoanVkZ2UgPT4gIShbdGhpcy5hc3NpZ25lZFVzZXJdLmluY2x1ZGVzKGp1ZGdlLmlkKSkpKSk7XG4gICAgLy8gUmVtb3ZlZCB0aGUgY3VycmVudCB1c2VyIGlkIHRvIGZpeCBFVUktODQ2NS5cbiAgfVxuXG4gIHB1YmxpYyBmaW5kQ2FzZXdvcmtlcnMoc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IE9ic2VydmFibGU8UGVyc29uW10+IHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgaWYgKHVzZXJJbmZvU3RyKSB7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IEpTT04ucGFyc2UodXNlckluZm9TdHIpO1xuICAgICAgdGhpcy51c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICB0aGlzLmFzc2lnbmVkVXNlciA9IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyID8gc2VhcmNoT3B0aW9ucy5hc3NpZ25lZFVzZXIgOiBudWxsO1xuICAgIGNvbnN0IGZ1bGxTZXJ2aWNlcyA9IHNlYXJjaE9wdGlvbnMuc2VydmljZXM7XG4gICAgY29uc3Qgc3RvcmVkU2VydmljZXMgPSBbXTtcbiAgICBjb25zdCBuZXdTZXJ2aWNlczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBzdG9yZWRDYXNld29ya2Vyc0J5U2VydmljZTogQ2FzZXdvcmtlcnNCeVNlcnZpY2VbXSA9IFtdO1xuICAgIGZ1bGxTZXJ2aWNlcy5mb3JFYWNoKHNlcnZpY2VJZCA9PiB7XG4gICAgICBjb25zdCBzZXJ2aWNlS2V5ID0gZ2V0U2Vzc2lvblN0b3JhZ2VLZXlGb3JTZXJ2aWNlSWQoc2VydmljZUlkKTtcbiAgICAgIGlmICh0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZS5nZXRJdGVtKHNlcnZpY2VLZXkpKSB7XG4gICAgICAgIHN0b3JlZFNlcnZpY2VzLnB1c2goc2VydmljZUlkKTtcbiAgICAgICAgc3RvcmVkQ2FzZXdvcmtlcnNCeVNlcnZpY2UucHVzaCh7IHNlcnZpY2U6IHNlcnZpY2VJZCwgY2FzZXdvcmtlcnM6IEpTT04ucGFyc2UodGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbShzZXJ2aWNlS2V5KSkgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdTZXJ2aWNlcy5wdXNoKHNlcnZpY2VJZCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gaWYgYWxsIHNlcnZpY2VzIGFyZSBzdG9yZWQgdGhlbiByZXR1cm4gdGhlIHN0b3JlZCBjYXNld29ya2VycyBieSBzZXJ2aWNlXG4gICAgaWYgKHN0b3JlZFNlcnZpY2VzLmxlbmd0aCA9PT0gZnVsbFNlcnZpY2VzLmxlbmd0aCkge1xuICAgICAgY29uc3Qgc3RvcmVkQ2FzZXdvcmtlcnMgPSBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyhzdG9yZWRDYXNld29ya2Vyc0J5U2VydmljZSk7XG4gICAgICByZXR1cm4gb2YodGhpcy5zZWFyY2hJbkNhc2V3b3JrZXJzKHN0b3JlZENhc2V3b3JrZXJzLCBzZWFyY2hPcHRpb25zKSk7XG4gICAgfVxuICAgIC8vIGFsbCBzZXJ2aWNlSWRzIHBhc3NlZCBpbiBhcyBub2RlIGxheWVyIGdldHRpbmcgdXNlZCBhbnl3YXkgYW5kIGNhc2V3b3JrZXJzIGFsc28gc3RvcmVkIHRoZXJlXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PENhc2V3b3JrZXJzQnlTZXJ2aWNlW10+KCcvd29ya2FsbG9jYXRpb24vcmV0cmlldmVDYXNlV29ya2Vyc0ZvclNlcnZpY2VzJywgeyBmdWxsU2VydmljZXMgfSkucGlwZShcbiAgICAgIHRhcChjYXNld29ya2Vyc0J5U2VydmljZSA9PiB7XG4gICAgICAgIGNhc2V3b3JrZXJzQnlTZXJ2aWNlLmZvckVhY2goY2FzZXdvcmtlckxpc3RCeVNlcnZpY2UgPT4ge1xuICAgICAgICAgIC8vIGZvciBhbnkgbmV3IHNlcnZpY2UsIGVuc3VyZSB0aGF0IHRoZXkgYXJlIHRoZW4gc3RvcmVkIGluIHRoZSBzZXNzaW9uXG4gICAgICAgICAgaWYgKG5ld1NlcnZpY2VzLmluY2x1ZGVzKGNhc2V3b3JrZXJMaXN0QnlTZXJ2aWNlLnNlcnZpY2UpKSB7XG4gICAgICAgICAgICBzZXRDYXNld29ya2VycyhjYXNld29ya2VyTGlzdEJ5U2VydmljZS5zZXJ2aWNlLCBjYXNld29ya2VyTGlzdEJ5U2VydmljZS5jYXNld29ya2VycywgdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICAgIG1hcChjYXNld29ya2Vyc0J5U2VydmljZSA9PiB7XG4gICAgICAgIGNvbnN0IGdpdmVuQ2FzZXdvcmtlcnMgPSBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyhjYXNld29ya2Vyc0J5U2VydmljZSk7XG4gICAgICAgIHJldHVybiB0aGlzLnNlYXJjaEluQ2FzZXdvcmtlcnMoZ2l2ZW5DYXNld29ya2Vycywgc2VhcmNoT3B0aW9ucyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbWFwQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnM6IENhc2V3b3JrZXJbXSwgcm9sZUNhdGVnb3J5OiBzdHJpbmcpOiBQZXJzb25bXSB7XG4gICAgY29uc3QgcGVvcGxlOiBQZXJzb25bXSA9IFtdO1xuICAgIGNhc2V3b3JrZXJzLmZvckVhY2goKGNhc2V3b3JrZXIpID0+IHtcbiAgICAgIGNvbnN0IHRoaXNQZXJzb246IFBlcnNvbiA9IHtcbiAgICAgICAgZW1haWw6IGNhc2V3b3JrZXIuZW1haWwsXG4gICAgICAgIG5hbWU6IGAke2Nhc2V3b3JrZXIuZmlyc3ROYW1lfSAke2Nhc2V3b3JrZXIubGFzdE5hbWV9YCxcbiAgICAgICAgaWQ6IGNhc2V3b3JrZXIuaWRhbUlkLFxuICAgICAgICBkb21haW46IGNhc2V3b3JrZXIucm9sZUNhdGVnb3J5ID09PSBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUiA/IFBlcnNvblJvbGUuQ0FTRVdPUktFUiA6IFBlcnNvblJvbGUuQURNSU4sXG4gICAgICAgIC8vIGtub3duQXMgY2FuIGJlIGFkZGVkIGlmIHJlcXVpcmVkXG4gICAgICB9O1xuICAgICAgaWYgKGNhc2V3b3JrZXIucm9sZUNhdGVnb3J5ID09PSByb2xlQ2F0ZWdvcnkgfHwgcm9sZUNhdGVnb3J5ID09PSBSb2xlQ2F0ZWdvcnkuQUxMKSB7XG4gICAgICAgIHBlb3BsZS5wdXNoKHRoaXNQZXJzb24pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBwZW9wbGU7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoSW5DYXNld29ya2VycyhjYXNld29ya2VyczogQ2FzZXdvcmtlcltdLCBzZWFyY2hPcHRpb25zOiBTZWFyY2hPcHRpb25zKTogUGVyc29uW10ge1xuICAgIGxldCByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQUxMO1xuICAgIGlmICghKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQUxMKSkge1xuICAgICAgaWYgKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ0FTRVdPUktFUikge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUjtcbiAgICAgIH0gZWxzZSBpZiAoc2VhcmNoT3B0aW9ucy51c2VyUm9sZSA9PT0gUGVyc29uUm9sZS5BRE1JTikge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQURNSU47XG4gICAgICB9IGVsc2UgaWYgKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ1RTQykge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQ1RTQztcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3Qgc2VhcmNoVGVybSA9IHNlYXJjaE9wdGlvbnMgJiYgc2VhcmNoT3B0aW9ucy5zZWFyY2hUZXJtID8gc2VhcmNoT3B0aW9ucy5zZWFyY2hUZXJtLnRvTG93ZXJDYXNlKCkgOiAnJztcbiAgICBjb25zdCBwZW9wbGUgPSBjYXNld29ya2VycyA/IHRoaXMubWFwQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnMsIHJvbGVDYXRlZ29yeSkgOiBbXTtcbiAgICBjb25zdCBmaW5hbFBlb3BsZUxpc3QgPSBwZW9wbGUuZmlsdGVyKHBlcnNvbiA9PiBwZXJzb24gJiYgcGVyc29uLm5hbWUgJiYgcGVyc29uLm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hUZXJtKSk7XG4gICAgcmV0dXJuIHNlYXJjaE9wdGlvbnMudXNlckluY2x1ZGVkID8gZmluYWxQZW9wbGVMaXN0LmZpbHRlcihwZXJzb24gPT4gcGVyc29uICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpXG4gICAgICA6IGZpbmFsUGVvcGxlTGlzdC5maWx0ZXIocGVyc29uID0+IHBlcnNvbj8uaWQgIT09IHRoaXMuYXNzaWduZWRVc2VyKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hKdWRpY2lhbCh2YWx1ZTogc3RyaW5nLCBzZXJ2aWNlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8SnVkaWNpYWxVc2VyTW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxKdWRpY2lhbFVzZXJNb2RlbFtdPignYXBpL3ByZC9qdWRpY2lhbC9nZXRKdWRpY2lhbFVzZXJzU2VhcmNoJyxcbiAgICAgIHsgc2VhcmNoU3RyaW5nOiB2YWx1ZSwgc2VydmljZUNvZGU6IHNlcnZpY2VJZCB9KTtcbiAgfVxufVxuXG4iXX0=
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1wZXJzb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL3NlcnZpY2VzL2ZpbmQtcGVyc29uL2ZpbmQtcGVyc29uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFJTCxVQUFVLEVBQ1YsWUFBWSxFQUViLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDOzs7O0FBSzNGLE1BQU0sT0FBTyxrQkFBa0I7SUFNN0IsWUFBNkIsSUFBZ0IsRUFBbUIscUJBQTRDO1FBQS9FLFNBQUksR0FBSixJQUFJLENBQVk7UUFBbUIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtJQUM1RyxDQUFDO0lBRU0sSUFBSSxDQUFDLGFBQTRCO1FBQ3RDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsSUFBSSxXQUFXLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFO1lBQzlDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO1NBQ3hEO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxh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bSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtcbiAgQ2FzZXdvcmtlcixcbiAgSnVkaWNpYWxVc2VyTW9kZWwsXG4gIFBlcnNvbixcbiAgUGVyc29uUm9sZSxcbiAgUm9sZUNhdGVnb3J5LFxuICBTZWFyY2hPcHRpb25zXG59IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBTZXNzaW9uU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zdG9yYWdlL3Nlc3Npb24tc3RvcmFnZS9zZXNzaW9uLXN0b3JhZ2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZpbmRBUGVyc29uU2VydmljZSB7XG5cbiAgcHVibGljIHN0YXRpYyBjYXNld29ya2Vyc0tleTogc3RyaW5nID0gJ2Nhc2V3b3JrZXJzJztcbiAgcHVibGljIHVzZXJJZDogc3RyaW5nO1xuICBwdWJsaWMgYXNzaWduZWRVc2VyOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIHJlYWRvbmx5IHNlc3Npb25TdG9yYWdlU2VydmljZTogU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlKSB7XG4gIH1cblxuICBwdWJsaWMgZmluZChzZWFyY2hPcHRpb25zOiBTZWFyY2hPcHRpb25zKTogT2JzZXJ2YWJsZTxQZXJzb25bXT4ge1xuICAgIGNvbnN0IHVzZXJJbmZvU3RyID0gdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSgndXNlckRldGFpbHMnKTtcbiAgICBpZiAodXNlckluZm9TdHIgJiYgIXNlYXJjaE9wdGlvbnMudXNlckluY2x1ZGVkKSB7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IEpTT04ucGFyc2UodXNlckluZm9TdHIpO1xuICAgICAgdGhpcy51c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICB0aGlzLmFzc2lnbmVkVXNlciA9IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyID8gc2VhcmNoT3B0aW9ucy5hc3NpZ25lZFVzZXIgOiBudWxsO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxQZXJzb25bXT4oJy93b3JrYWxsb2NhdGlvbi9maW5kUGVyc29uJywgeyBzZWFyY2hPcHRpb25zIH0pXG4gICAgICAucGlwZShtYXAoanVkaWNpYXJ5ID0+IGp1ZGljaWFyeS5maWx0ZXIoanVkZ2UgPT4gIShbdGhpcy5hc3NpZ25lZFVzZXJdLmluY2x1ZGVzKGp1ZGdlLmlkKSkpKSk7XG4gICAgLy8gUmVtb3ZlZCB0aGUgY3VycmVudCB1c2VyIGlkIHRvIGZpeCBFVUktODQ2NS5cbiAgfVxuXG4gIHB1YmxpYyBmaW5kQ2FzZXdvcmtlcnMoc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IE9ic2VydmFibGU8UGVyc29uW10+IHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgaWYgKHVzZXJJbmZvU3RyKSB7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IEpTT04ucGFyc2UodXNlckluZm9TdHIpO1xuICAgICAgdGhpcy51c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICB0aGlzLmFzc2lnbmVkVXNlciA9IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyID8gc2VhcmNoT3B0aW9ucy5hc3NpZ25lZFVzZXIgOiBudWxsO1xuICAgIGNvbnN0IGZ1bGxTZXJ2aWNlcyA9IHNlYXJjaE9wdGlvbnMuc2VydmljZXM7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PENhc2V3b3JrZXJbXT4oJy93b3JrYWxsb2NhdGlvbi9jYXNld29ya2VyL2dldFVzZXJzQnlTZXJ2aWNlTmFtZScsIHtzZXJ2aWNlczogZnVsbFNlcnZpY2VzLCB0ZXJtOiBzZWFyY2hPcHRpb25zLnNlYXJjaFRlcm19KS5waXBlKFxuICAgICAgbWFwKGNhc2V3b3JrZXJzID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoSW5DYXNld29ya2VycyhjYXNld29ya2Vycywgc2VhcmNoT3B0aW9ucyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbWFwQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnM6IENhc2V3b3JrZXJbXSwgcm9sZUNhdGVnb3J5OiBzdHJpbmcpOiBQZXJzb25bXSB7XG4gICAgY29uc3QgcGVvcGxlOiBQZXJzb25bXSA9IFtdO1xuICAgIGNhc2V3b3JrZXJzLmZvckVhY2goKGNhc2V3b3JrZXIpID0+IHtcbiAgICAgIGNvbnN0IHRoaXNQZXJzb246IFBlcnNvbiA9IHtcbiAgICAgICAgZW1haWw6IGNhc2V3b3JrZXIuZW1haWwsXG4gICAgICAgIG5hbWU6IGAke2Nhc2V3b3JrZXIuZmlyc3ROYW1lfSAke2Nhc2V3b3JrZXIubGFzdE5hbWV9YCxcbiAgICAgICAgaWQ6IGNhc2V3b3JrZXIuaWRhbUlkLFxuICAgICAgICBkb21haW46IGNhc2V3b3JrZXIucm9sZUNhdGVnb3J5ID09PSBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUiA/IFBlcnNvblJvbGUuQ0FTRVdPUktFUiA6IFBlcnNvblJvbGUuQURNSU4sXG4gICAgICAgIC8vIGtub3duQXMgY2FuIGJlIGFkZGVkIGlmIHJlcXVpcmVkXG4gICAgICB9O1xuICAgICAgaWYgKGNhc2V3b3JrZXIucm9sZUNhdGVnb3J5ID09PSByb2xlQ2F0ZWdvcnkgfHwgcm9sZUNhdGVnb3J5ID09PSBSb2xlQ2F0ZWdvcnkuQUxMKSB7XG4gICAgICAgIHBlb3BsZS5wdXNoKHRoaXNQZXJzb24pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBwZW9wbGU7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoSW5DYXNld29ya2VycyhjYXNld29ya2VyczogQ2FzZXdvcmtlcltdLCBzZWFyY2hPcHRpb25zOiBTZWFyY2hPcHRpb25zKTogUGVyc29uW10ge1xuICAgIGxldCByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQUxMO1xuICAgIGlmICghKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQUxMKSkge1xuICAgICAgaWYgKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ0FTRVdPUktFUikge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUjtcbiAgICAgIH0gZWxzZSBpZiAoc2VhcmNoT3B0aW9ucy51c2VyUm9sZSA9PT0gUGVyc29uUm9sZS5BRE1JTikge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQURNSU47XG4gICAgICB9IGVsc2UgaWYgKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ1RTQykge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQ1RTQztcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgcGVvcGxlID0gY2FzZXdvcmtlcnMgPyB0aGlzLm1hcENhc2V3b3JrZXJzKGNhc2V3b3JrZXJzLCByb2xlQ2F0ZWdvcnkpIDogW107XG4gICAgcmV0dXJuIHNlYXJjaE9wdGlvbnMudXNlckluY2x1ZGVkID8gcGVvcGxlLmZpbHRlcihwZXJzb24gPT4gcGVyc29uICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpXG4gICAgICA6IHBlb3BsZS5maWx0ZXIocGVyc29uID0+IHBlcnNvbiAmJiBwZXJzb24uaWQgIT09IHRoaXMudXNlcklkICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEp1ZGljaWFsKHZhbHVlOiBzdHJpbmcsIHNlcnZpY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxKdWRpY2lhbFVzZXJNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEp1ZGljaWFsVXNlck1vZGVsW10+KCdhcGkvcHJkL2p1ZGljaWFsL2dldEp1ZGljaWFsVXNlcnNTZWFyY2gnLFxuICAgICAgeyBzZWFyY2hTdHJpbmc6IHZhbHVlLCBzZXJ2aWNlQ29kZTogc2VydmljZUlkIH0pO1xuICB9XG59XG5cbiJdfQ==
@@ -2265,28 +2265,6 @@ RefDataService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: RefDataSe
2265
2265
  * Public API Surface of exui-common-lib
2266
2266
  */
2267
2267
 
2268
- const getAllCaseworkersFromServices = (caseworkersByService) => {
2269
- let allCaseworkers = [];
2270
- caseworkersByService.forEach(caseworkerListByService => {
2271
- allCaseworkers = allCaseworkers.concat(caseworkerListByService.caseworkers);
2272
- });
2273
- return allCaseworkers;
2274
- };
2275
- const getSessionStorageKeyForServiceId = (serviceId) => {
2276
- return `${serviceId}-caseworkers`;
2277
- };
2278
- const getCaseworkers = (serviceId, sessionStorageService) => {
2279
- const sessionKey = getSessionStorageKeyForServiceId(serviceId);
2280
- const value = sessionStorageService.getItem(sessionKey);
2281
- if (value) {
2282
- return JSON.parse(value);
2283
- }
2284
- };
2285
- const setCaseworkers = (serviceId, caseworkers, sessionStorageService) => {
2286
- const sessionKey = getSessionStorageKeyForServiceId(serviceId);
2287
- sessionStorageService.setItem(sessionKey, JSON.stringify(caseworkers));
2288
- };
2289
-
2290
2268
  class SessionStorageService {
2291
2269
  /**
2292
2270
  * Get an item from the session storage.
@@ -2354,35 +2332,8 @@ class FindAPersonService {
2354
2332
  }
2355
2333
  this.assignedUser = searchOptions.assignedUser ? searchOptions.assignedUser : null;
2356
2334
  const fullServices = searchOptions.services;
2357
- const storedServices = [];
2358
- const newServices = [];
2359
- const storedCaseworkersByService = [];
2360
- fullServices.forEach(serviceId => {
2361
- const serviceKey = getSessionStorageKeyForServiceId(serviceId);
2362
- if (this.sessionStorageService.getItem(serviceKey)) {
2363
- storedServices.push(serviceId);
2364
- storedCaseworkersByService.push({ service: serviceId, caseworkers: JSON.parse(this.sessionStorageService.getItem(serviceKey)) });
2365
- }
2366
- else {
2367
- newServices.push(serviceId);
2368
- }
2369
- });
2370
- // if all services are stored then return the stored caseworkers by service
2371
- if (storedServices.length === fullServices.length) {
2372
- const storedCaseworkers = getAllCaseworkersFromServices(storedCaseworkersByService);
2373
- return of$1(this.searchInCaseworkers(storedCaseworkers, searchOptions));
2374
- }
2375
- // all serviceIds passed in as node layer getting used anyway and caseworkers also stored there
2376
- return this.http.post('/workallocation/retrieveCaseWorkersForServices', { fullServices }).pipe(tap(caseworkersByService => {
2377
- caseworkersByService.forEach(caseworkerListByService => {
2378
- // for any new service, ensure that they are then stored in the session
2379
- if (newServices.includes(caseworkerListByService.service)) {
2380
- setCaseworkers(caseworkerListByService.service, caseworkerListByService.caseworkers, this.sessionStorageService);
2381
- }
2382
- });
2383
- }), map(caseworkersByService => {
2384
- const givenCaseworkers = getAllCaseworkersFromServices(caseworkersByService);
2385
- return this.searchInCaseworkers(givenCaseworkers, searchOptions);
2335
+ return this.http.post('/workallocation/caseworker/getUsersByServiceName', { services: fullServices, term: searchOptions.searchTerm }).pipe(map(caseworkers => {
2336
+ return this.searchInCaseworkers(caseworkers, searchOptions);
2386
2337
  }));
2387
2338
  }
2388
2339
  mapCaseworkers(caseworkers, roleCategory) {
@@ -2414,11 +2365,9 @@ class FindAPersonService {
2414
2365
  roleCategory = RoleCategory.CTSC;
2415
2366
  }
2416
2367
  }
2417
- const searchTerm = searchOptions && searchOptions.searchTerm ? searchOptions.searchTerm.toLowerCase() : '';
2418
2368
  const people = caseworkers ? this.mapCaseworkers(caseworkers, roleCategory) : [];
2419
- const finalPeopleList = people.filter(person => person && person.name && person.name.toLowerCase().includes(searchTerm));
2420
- return searchOptions.userIncluded ? finalPeopleList.filter(person => person && person.id !== this.assignedUser)
2421
- : finalPeopleList.filter(person => (person === null || person === void 0 ? void 0 : person.id) !== this.assignedUser);
2369
+ return searchOptions.userIncluded ? people.filter(person => person && person.id !== this.assignedUser)
2370
+ : people.filter(person => person && person.id !== this.userId && person.id !== this.assignedUser);
2422
2371
  }
2423
2372
  searchJudicial(value, serviceId) {
2424
2373
  return this.http.post('api/prd/judicial/getJudicialUsersSearch', { searchString: value, serviceCode: serviceId });