@hmcts/rpx-xui-common-lib 1.8.5-angular-upgrade-r4 → 1.8.7-fix-wrong-services

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 (132) hide show
  1. package/bundles/hmcts-rpx-xui-common-lib.umd.js +431 -1076
  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 +29 -32
  6. package/esm2015/lib/components/find-location/find-location.component.js +3 -3
  7. package/esm2015/lib/components/find-service/find-service.component.js +12 -129
  8. package/esm2015/lib/components/generic-filter/generic-filter-utils.js +2 -2
  9. package/esm2015/lib/components/generic-filter/generic-filter.component.js +15 -361
  10. package/esm2015/lib/components/search-location/search-location.component.js +3 -3
  11. package/esm2015/lib/components/search-service/search-service.component.js +34 -17
  12. package/esm2015/lib/components/selected-case/selected-case.component.js +4 -10
  13. package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +1 -1
  14. package/esm2015/lib/components/share-case/share-case.component.js +186 -14
  15. package/esm2015/lib/exui-common-lib.module.js +5 -13
  16. package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +6 -80
  17. package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +3 -3
  18. package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +2 -3
  19. package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +1 -1
  20. package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +2 -2
  21. package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +14 -19
  22. package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +2 -2
  23. package/esm2015/lib/gov-ui/components/index.js +2 -2
  24. package/esm2015/lib/gov-ui/components/public_api.js +1 -2
  25. package/esm2015/lib/gov-ui/index.js +2 -2
  26. package/esm2015/lib/gov-ui/models/banner-data-model.js +16 -0
  27. package/esm2015/lib/gov-ui/models/checkboxes-model.js +8 -6
  28. package/esm2015/lib/gov-ui/models/gov-ui-config-model.js +1 -5
  29. package/esm2015/lib/gov-ui/models/public_api.js +2 -1
  30. package/esm2015/lib/gov-ui/public_api.js +2 -2
  31. package/esm2015/lib/models/case-share.model.js +8 -1
  32. package/esm2015/lib/models/filter.model.js +5 -65
  33. package/esm2015/lib/models/index.js +2 -2
  34. package/esm2015/lib/models/person.model.js +2 -2
  35. package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +39 -15
  36. package/esm2015/lib/services/filter/filter.service.js +3 -17
  37. package/esm2015/lib/services/find-person/find-person.service.js +3 -3
  38. package/esm2015/lib/services/role-guard/role.guard.js +15 -22
  39. package/esm2015/lib/services/role-guard/role.service.js +13 -13
  40. package/esm2015/lib/services/session-storage/session-storage.service.js +55 -0
  41. package/esm2015/public-api.js +3 -3
  42. package/esm5/hmcts-rpx-xui-common-lib.js +29 -32
  43. package/esm5/lib/components/find-location/find-location.component.js +3 -3
  44. package/esm5/lib/components/find-service/find-service.component.js +12 -166
  45. package/esm5/lib/components/generic-filter/generic-filter-utils.js +2 -2
  46. package/esm5/lib/components/generic-filter/generic-filter.component.js +14 -397
  47. package/esm5/lib/components/search-location/search-location.component.js +3 -3
  48. package/esm5/lib/components/search-service/search-service.component.js +38 -19
  49. package/esm5/lib/components/selected-case/selected-case.component.js +4 -13
  50. package/esm5/lib/components/selected-case-confirm/selected-case-confirm.component.js +1 -1
  51. package/esm5/lib/components/share-case/share-case.component.js +219 -14
  52. package/esm5/lib/exui-common-lib.module.js +5 -11
  53. package/esm5/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +6 -100
  54. package/esm5/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +3 -3
  55. package/esm5/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +2 -3
  56. package/esm5/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +1 -1
  57. package/esm5/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +2 -2
  58. package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +13 -17
  59. package/esm5/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +2 -2
  60. package/esm5/lib/gov-ui/components/index.js +2 -2
  61. package/esm5/lib/gov-ui/components/public_api.js +1 -2
  62. package/esm5/lib/gov-ui/index.js +2 -2
  63. package/esm5/lib/gov-ui/models/banner-data-model.js +16 -0
  64. package/esm5/lib/gov-ui/models/checkboxes-model.js +8 -6
  65. package/esm5/lib/gov-ui/models/gov-ui-config-model.js +1 -5
  66. package/esm5/lib/gov-ui/models/public_api.js +2 -1
  67. package/esm5/lib/gov-ui/public_api.js +2 -2
  68. package/esm5/lib/models/case-share.model.js +8 -1
  69. package/esm5/lib/models/filter.model.js +5 -65
  70. package/esm5/lib/models/index.js +2 -2
  71. package/esm5/lib/models/person.model.js +2 -2
  72. package/esm5/lib/services/case-sharing-state/case-sharing-state.service.js +40 -16
  73. package/esm5/lib/services/filter/filter.service.js +3 -21
  74. package/esm5/lib/services/find-person/find-person.service.js +3 -3
  75. package/esm5/lib/services/role-guard/role.guard.js +15 -22
  76. package/esm5/lib/services/role-guard/role.service.js +13 -13
  77. package/esm5/lib/services/{storage/session-storage → session-storage}/session-storage.service.js +2 -2
  78. package/esm5/public-api.js +3 -3
  79. package/fesm2015/hmcts-rpx-xui-common-lib.js +447 -1040
  80. package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
  81. package/fesm5/hmcts-rpx-xui-common-lib.js +415 -1094
  82. package/fesm5/hmcts-rpx-xui-common-lib.js.map +1 -1
  83. package/hmcts-rpx-xui-common-lib.d.ts +27 -30
  84. package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
  85. package/lib/components/find-service/find-service.component.d.ts +6 -14
  86. package/lib/components/generic-filter/generic-filter-utils.d.ts +5 -2
  87. package/lib/components/generic-filter/generic-filter.component.d.ts +2 -12
  88. package/lib/components/search-location/search-location.component.d.ts +1 -1
  89. package/lib/components/search-service/search-service.component.d.ts +11 -5
  90. package/lib/components/selected-case/selected-case.component.d.ts +0 -1
  91. package/lib/components/share-case/share-case.component.d.ts +35 -2
  92. package/lib/exui-common-lib.module.d.ts +3 -4
  93. package/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.d.ts +5 -14
  94. package/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.d.ts +2 -1
  95. package/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.d.ts +0 -1
  96. package/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.d.ts +2 -2
  97. package/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.d.ts +2 -4
  98. package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +3 -3
  99. package/lib/gov-ui/components/public_api.d.ts +0 -1
  100. package/lib/gov-ui/models/banner-data-model.d.ts +4 -0
  101. package/lib/gov-ui/models/checkboxes-model.d.ts +7 -4
  102. package/lib/gov-ui/models/gov-ui-config-model.d.ts +0 -2
  103. package/lib/gov-ui/models/public_api.d.ts +1 -0
  104. package/lib/models/case-share.model.d.ts +5 -0
  105. package/lib/models/filter.model.d.ts +8 -30
  106. package/lib/models/person.model.d.ts +1 -1
  107. package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
  108. package/lib/services/filter/filter.service.d.ts +0 -1
  109. package/lib/services/find-person/find-person.service.d.ts +1 -1
  110. package/lib/services/role-guard/role.guard.d.ts +1 -2
  111. package/lib/services/role-guard/role.service.d.ts +1 -3
  112. package/lib/services/{storage/session-storage → session-storage}/session-storage.service.d.ts +0 -0
  113. package/package.json +1 -1
  114. package/esm2015/lib/components/find-task-name/find-task-name.component.js +0 -228
  115. package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner-info.interface.js +0 -22
  116. package/esm2015/lib/gov-ui/models/radio-buttons.model.js +0 -22
  117. package/esm2015/lib/models/task-name.model.js +0 -16
  118. package/esm2015/lib/pipes/capitalize.pipe.js +0 -21
  119. package/esm2015/lib/services/storage/session-storage/session-storage.service.js +0 -55
  120. package/esm2015/lib/services/task-name/task-name.service.js +0 -65
  121. package/esm5/lib/components/find-task-name/find-task-name.component.js +0 -243
  122. package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner-info.interface.js +0 -22
  123. package/esm5/lib/gov-ui/models/radio-buttons.model.js +0 -22
  124. package/esm5/lib/models/task-name.model.js +0 -16
  125. package/esm5/lib/pipes/capitalize.pipe.js +0 -29
  126. package/esm5/lib/services/task-name/task-name.service.js +0 -70
  127. package/lib/components/find-task-name/find-task-name.component.d.ts +0 -41
  128. package/lib/gov-ui/components/hmcts-banner/hmcts-banner-info.interface.d.ts +0 -7
  129. package/lib/gov-ui/models/radio-buttons.model.d.ts +0 -9
  130. package/lib/models/task-name.model.d.ts +0 -4
  131. package/lib/pipes/capitalize.pipe.d.ts +0 -4
  132. package/lib/services/task-name/task-name.service.d.ts +0 -14
@@ -3,7 +3,7 @@
3
3
  * Generated from: lib/models/index.ts
4
4
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
5
  */
6
- export {} from './case-share.model';
6
+ export { SharedCaseErrorMessages } from './case-share.model';
7
7
  export { BadgeColour } from './contact-details.model';
8
8
  export { DateBadgeColour, SECONDS_IN_A_DAY } from './due-date.model';
9
9
  export { AnonymousFeatureUser, LoggedInFeatureUser } from './feature-user';
@@ -17,4 +17,4 @@ export {} from './tcDocument.model';
17
17
  export {} from './timeout-notification.model';
18
18
  export {} from './user-details.model';
19
19
  export {} from './user.model';
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGVBQWMsb0JBQW9CLENBQUM7QUFDbkMsNEJBQWMseUJBQXlCLENBQUM7QUFDeEMsa0RBQWMsa0JBQWtCLENBQUM7QUFDakMsMERBQWMsZ0JBQWdCLENBQUM7QUFDL0IsZUFBYyxxQkFBcUIsQ0FBQztBQUNwQyxpQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxlQUFjLG9CQUFvQixDQUFDO0FBQ25DLHlDQUFjLGdCQUFnQixDQUFDO0FBQy9CLHVDQUFjLGNBQWMsQ0FBQztBQUM3QixlQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGVBQWMsb0JBQW9CLENBQUM7QUFDbkMsZUFBYyw4QkFBOEIsQ0FBQztBQUM3QyxlQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGVBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jYXNlLXNoYXJlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1kZXRhaWxzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZHVlLWRhdGUubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLXVzZXInO1xuZXhwb3J0ICogZnJvbSAnLi9pZGxlLWNvbmZpZy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xvY2F0aW9uLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGlvbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3BlcnNvbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gtb3B0aW9ucy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3RjRG9jdW1lbnQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi90aW1lb3V0LW5vdGlmaWNhdGlvbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItZGV0YWlscy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXIubW9kZWwnO1xuIl19
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdDQUFjLG9CQUFvQixDQUFDO0FBQ25DLDRCQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGtEQUFjLGtCQUFrQixDQUFDO0FBQ2pDLDBEQUFjLGdCQUFnQixDQUFDO0FBQy9CLGVBQWMscUJBQXFCLENBQUM7QUFDcEMsaUNBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxvQkFBb0IsQ0FBQztBQUNuQyx5Q0FBYyxnQkFBZ0IsQ0FBQztBQUMvQix1Q0FBYyxjQUFjLENBQUM7QUFDN0IsZUFBYyx3QkFBd0IsQ0FBQztBQUN2QyxlQUFjLG9CQUFvQixDQUFDO0FBQ25DLGVBQWMsOEJBQThCLENBQUM7QUFDN0MsZUFBYyxzQkFBc0IsQ0FBQztBQUNyQyxlQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2FzZS1zaGFyZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRhY3QtZGV0YWlscy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2R1ZS1kYXRlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS11c2VyJztcbmV4cG9ydCAqIGZyb20gJy4vaWRsZS1jb25maWcubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2NhdGlvbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3BhZ2luYXRpb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9wZXJzb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoLW9wdGlvbnMubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi90Y0RvY3VtZW50Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vdGltZW91dC1ub3RpZmljYXRpb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWRldGFpbHMubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLm1vZGVsJztcbiJdfQ==
@@ -80,7 +80,7 @@ const PersonRole = {
80
80
  JUDICIAL: "Judicial",
81
81
  CASEWORKER: "Legal Ops",
82
82
  ADMIN: "Admin",
83
- CTSC: "CTSC User",
83
+ CTSC: "CTSC",
84
84
  ALL: "All",
85
85
  };
86
86
  export { PersonRole };
@@ -93,4 +93,4 @@ const RoleCategory = {
93
93
  ALL: "ALL",
94
94
  };
95
95
  export { RoleCategory };
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvcGVyc29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsNEJBT0M7OztJQU5DLG9CQUFXOztJQUNYLHNCQUFhOztJQUNiLHVCQUFlOztJQUNmLHdCQUFlOztJQUNmLHlCQUFpQjs7SUFDakIsMEJBQWtCOzs7OztBQUdwQix1Q0FXQzs7O0lBVkMsb0NBQWdCOztJQUNoQixxQ0FBaUI7O0lBQ2pCLG1DQUFlOztJQUNmLG9DQUFnQjs7SUFDaEIseUNBQXFCOztJQUNyQiwwQ0FBc0I7O0lBQ3RCLG9DQUFnQjs7SUFDaEIseUNBQXFCOztJQUNyQixvQ0FBZ0I7O0lBQ2hCLGtDQUFjOzs7OztBQUdoQiwwQ0FHQzs7O0lBRkMsdUNBQWdCOztJQUNoQiwyQ0FBMEI7Ozs7O0FBRzVCLGdDQU9DOzs7SUFOQyw0QkFBZTs7SUFDZiwrQkFBa0I7O0lBQ2xCLDhCQUFpQjs7SUFDakIsMkJBQWM7O0lBQ2QsNkJBQWlCOztJQUNqQixrQ0FBcUI7OztBQUd2QixNQUFZLFVBQVU7SUFDcEIsUUFBUSxZQUFhO0lBQ3JCLFVBQVUsYUFBYztJQUN4QixLQUFLLFNBQVU7SUFDZixJQUFJLGFBQWM7SUFDbEIsR0FBRyxPQUFRO0VBQ1o7OztBQUlELE1BQVksWUFBWTtJQUN0QixRQUFRLFlBQWE7SUFDckIsVUFBVSxvQkFBcUI7SUFDL0IsS0FBSyxTQUFVO0lBQ2YsSUFBSSxRQUFTO0lBQ2IsR0FBRyxPQUFRO0VBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFBlcnNvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgZW1haWw/OiBzdHJpbmc7XG4gIGRvbWFpbjogc3RyaW5nO1xuICBrbm93bkFzPzogc3RyaW5nO1xuICBmdWxsTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBKdWRpY2lhbFVzZXJNb2RlbCB7XG4gIGVtYWlsSWQ6IHN0cmluZztcbiAgZnVsbE5hbWU6IHN0cmluZztcbiAgaWRhbUlkOiBzdHJpbmc7XG4gIGlzSnVkZ2U6IHN0cmluZztcbiAgaXNNYWdpc3RyYXRlOiBzdHJpbmc7XG4gIGlzUGFuZWxNZW1iZXI6IHN0cmluZztcbiAga25vd25Bczogc3RyaW5nO1xuICBwZXJzb25hbENvZGU6IHN0cmluZztcbiAgc3VybmFtZTogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhc2V3b3JrZXJzQnlTZXJ2aWNlIHtcbiAgc2VydmljZTogc3RyaW5nO1xuICBjYXNld29ya2VyczogQ2FzZXdvcmtlcltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhc2V3b3JrZXIge1xuICBpZGFtSWQ6IHN0cmluZztcbiAgZmlyc3ROYW1lOiBzdHJpbmc7XG4gIGxhc3ROYW1lOiBzdHJpbmc7XG4gIGVtYWlsOiBzdHJpbmc7XG4gIGtub3duQXM/OiBzdHJpbmc7XG4gIHJvbGVDYXRlZ29yeTogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBQZXJzb25Sb2xlIHtcbiAgSlVESUNJQUwgPSAnSnVkaWNpYWwnLFxuICBDQVNFV09SS0VSID0gJ0xlZ2FsIE9wcycsXG4gIEFETUlOID0gJ0FkbWluJyxcbiAgQ1RTQyA9ICdDVFNDIFVzZXInLFxuICBBTEwgPSAnQWxsJyxcbn1cblxuLy8gTm90ZTogUm9sZUNhdGVnb3J5IGNvdWxkIHJlcGxhY2UgUGVyc29uUm9sZSBwb3NzaWJseVxuLy8gSG93ZXZlciBhIGxvdCBvZiB3ZWJhcHAgbG9naWMgaXMgYmFzZWQgb24gY3VycmVudCBQZXJzb25Sb2xlIHVuZGVyc3RhbmRpbmdcbmV4cG9ydCBlbnVtIFJvbGVDYXRlZ29yeSB7XG4gIEpVRElDSUFMID0gJ0pVRElDSUFMJyxcbiAgQ0FTRVdPUktFUiA9ICdMRUdBTF9PUEVSQVRJT05TJyxcbiAgQURNSU4gPSAnQURNSU4nLFxuICBDVFNDID0gJ0NUU0MnLFxuICBBTEwgPSAnQUxMJ1xufVxuIl19
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvcGVyc29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsNEJBT0M7OztJQU5DLG9CQUFXOztJQUNYLHNCQUFhOztJQUNiLHVCQUFlOztJQUNmLHdCQUFlOztJQUNmLHlCQUFpQjs7SUFDakIsMEJBQWtCOzs7OztBQUdwQix1Q0FXQzs7O0lBVkMsb0NBQWdCOztJQUNoQixxQ0FBaUI7O0lBQ2pCLG1DQUFlOztJQUNmLG9DQUFnQjs7SUFDaEIseUNBQXFCOztJQUNyQiwwQ0FBc0I7O0lBQ3RCLG9DQUFnQjs7SUFDaEIseUNBQXFCOztJQUNyQixvQ0FBZ0I7O0lBQ2hCLGtDQUFjOzs7OztBQUdoQiwwQ0FHQzs7O0lBRkMsdUNBQWdCOztJQUNoQiwyQ0FBMEI7Ozs7O0FBRzVCLGdDQU9DOzs7SUFOQyw0QkFBZTs7SUFDZiwrQkFBa0I7O0lBQ2xCLDhCQUFpQjs7SUFDakIsMkJBQWM7O0lBQ2QsNkJBQWlCOztJQUNqQixrQ0FBcUI7OztBQUd2QixNQUFZLFVBQVU7SUFDcEIsUUFBUSxZQUFhO0lBQ3JCLFVBQVUsYUFBYztJQUN4QixLQUFLLFNBQVU7SUFDZixJQUFJLFFBQVM7SUFDYixHQUFHLE9BQVE7RUFDWjs7O0FBSUQsTUFBWSxZQUFZO0lBQ3RCLFFBQVEsWUFBYTtJQUNyQixVQUFVLG9CQUFxQjtJQUMvQixLQUFLLFNBQVU7SUFDZixJQUFJLFFBQVM7SUFDYixHQUFHLE9BQVE7RUFDWiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgUGVyc29uIHtcbiAgaWQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBlbWFpbD86IHN0cmluZztcbiAgZG9tYWluOiBzdHJpbmc7XG4gIGtub3duQXM/OiBzdHJpbmc7XG4gIGZ1bGxOYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEp1ZGljaWFsVXNlck1vZGVsIHtcbiAgZW1haWxJZDogc3RyaW5nO1xuICBmdWxsTmFtZTogc3RyaW5nO1xuICBpZGFtSWQ6IHN0cmluZztcbiAgaXNKdWRnZTogc3RyaW5nO1xuICBpc01hZ2lzdHJhdGU6IHN0cmluZztcbiAgaXNQYW5lbE1lbWJlcjogc3RyaW5nO1xuICBrbm93bkFzOiBzdHJpbmc7XG4gIHBlcnNvbmFsQ29kZTogc3RyaW5nO1xuICBzdXJuYW1lOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FzZXdvcmtlcnNCeVNlcnZpY2Uge1xuICBzZXJ2aWNlOiBzdHJpbmc7XG4gIGNhc2V3b3JrZXJzOiBDYXNld29ya2VyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FzZXdvcmtlciB7XG4gIGlkYW1JZDogc3RyaW5nO1xuICBmaXJzdE5hbWU6IHN0cmluZztcbiAgbGFzdE5hbWU6IHN0cmluZztcbiAgZW1haWw6IHN0cmluZztcbiAga25vd25Bcz86IHN0cmluZztcbiAgcm9sZUNhdGVnb3J5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFBlcnNvblJvbGUge1xuICBKVURJQ0lBTCA9ICdKdWRpY2lhbCcsXG4gIENBU0VXT1JLRVIgPSAnTGVnYWwgT3BzJyxcbiAgQURNSU4gPSAnQWRtaW4nLFxuICBDVFNDID0gJ0NUU0MnLFxuICBBTEwgPSAnQWxsJyxcbn1cblxuLy8gTm90ZTogUm9sZUNhdGVnb3J5IGNvdWxkIHJlcGxhY2UgUGVyc29uUm9sZSBwb3NzaWJseVxuLy8gSG93ZXZlciBhIGxvdCBvZiB3ZWJhcHAgbG9naWMgaXMgYmFzZWQgb24gY3VycmVudCBQZXJzb25Sb2xlIHVuZGVyc3RhbmRpbmdcbmV4cG9ydCBlbnVtIFJvbGVDYXRlZ29yeSB7XG4gIEpVRElDSUFMID0gJ0pVRElDSUFMJyxcbiAgQ0FTRVdPUktFUiA9ICdMRUdBTF9PUEVSQVRJT05TJyxcbiAgQURNSU4gPSAnQURNSU4nLFxuICBDVFNDID0gJ0NUU0MnLFxuICBBTEwgPSAnQUxMJ1xufVxuIl19
@@ -85,21 +85,44 @@ export class CaseSharingStateService {
85
85
  return newSharedCases;
86
86
  }
87
87
  /**
88
- * @param {?} caseId
89
88
  * @param {?} user
89
+ * @param {?=} caseId
90
90
  * @return {?}
91
91
  */
92
- requestUnshare(caseId, user) {
92
+ requestUnshare(user, caseId) {
93
93
  /** @type {?} */
94
94
  const newSharedCases = [];
95
95
  for (const sharedCase of this.caseState) {
96
- if (sharedCase.caseId === caseId) {
96
+ // If no caseId, then request unshare from all shared cases
97
+ if (caseId === undefined || sharedCase.caseId === caseId) {
97
98
  if (!sharedCase.pendingUnshares) {
98
99
  sharedCase.pendingUnshares = [];
99
100
  }
100
101
  /** @type {?} */
101
102
  const newPendingUnshares = sharedCase.pendingUnshares.slice();
102
- if (newPendingUnshares) {
103
+ // If the user is pending shared access, just remove them from pendingShares
104
+ /** @type {?} */
105
+ let newPendingShares;
106
+ /** @type {?} */
107
+ let indexOfPreviouslyAddedUser = -1;
108
+ if (sharedCase.pendingShares) {
109
+ indexOfPreviouslyAddedUser = sharedCase.pendingShares.findIndex((/**
110
+ * @param {?} u
111
+ * @return {?}
112
+ */
113
+ u => u.idamId === user.idamId));
114
+ if (indexOfPreviouslyAddedUser > -1) {
115
+ newPendingShares = sharedCase.pendingShares.slice();
116
+ newPendingShares.splice(indexOfPreviouslyAddedUser, 1);
117
+ }
118
+ }
119
+ // If the user does not exist in pendingShares, and already has shared access (i.e. exists in sharedWith),
120
+ // request removal of shared access
121
+ if (indexOfPreviouslyAddedUser === -1 && sharedCase.sharedWith && sharedCase.sharedWith.findIndex((/**
122
+ * @param {?} u
123
+ * @return {?}
124
+ */
125
+ u => u.idamId === user.idamId)) > -1) {
103
126
  if (!newPendingUnshares.some((/**
104
127
  * @param {?} u
105
128
  * @return {?}
@@ -108,11 +131,10 @@ export class CaseSharingStateService {
108
131
  newPendingUnshares.push(user);
109
132
  }
110
133
  }
111
- else {
112
- newPendingUnshares.push(user);
113
- }
114
134
  /** @type {?} */
115
- const newSharedCase = Object.assign({}, sharedCase, { pendingUnshares: newPendingUnshares });
135
+ const newSharedCase = Object.assign({}, sharedCase, { pendingUnshares: newPendingUnshares }, (newPendingShares && {
136
+ pendingShares: newPendingShares
137
+ }));
116
138
  newSharedCases.push(newSharedCase);
117
139
  }
118
140
  else {
@@ -120,7 +142,7 @@ export class CaseSharingStateService {
120
142
  }
121
143
  }
122
144
  this.subject.next(newSharedCases);
123
- return;
145
+ return newSharedCases;
124
146
  }
125
147
  /**
126
148
  * @param {?} caseId
@@ -170,11 +192,13 @@ export class CaseSharingStateService {
170
192
  * @return {?}
171
193
  */
172
194
  removeCase(caseId) {
173
- for (let i = 0, l = this.caseState.length; i < l; i++) {
174
- if (this.caseState[i].caseId === caseId) {
175
- this.caseState.splice(i, 1);
176
- this.subject.next(this.caseState);
177
- return;
195
+ if (this.caseState.length > 1) {
196
+ for (let i = 0, l = this.caseState.length; i < l; i++) {
197
+ if (this.caseState[i].caseId === caseId) {
198
+ this.caseState.splice(i, 1);
199
+ this.subject.next(this.caseState);
200
+ return;
201
+ }
178
202
  }
179
203
  }
180
204
  }
@@ -215,4 +239,4 @@ if (false) {
215
239
  */
216
240
  CaseSharingStateService.prototype.subject;
217
241
  }
218
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1zaGFyaW5nLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2Nhc2Utc2hhcmluZy1zdGF0ZS9jYXNlLXNoYXJpbmctc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFPdEQsTUFBTSxPQUFPLHVCQUF1QjtJQVdsQztRQVRRLGNBQVMsR0FBaUIsRUFBRSxDQUFDO1FBQ3BCLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBZSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFRN0QsQ0FBQzs7OztJQU5qQixJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUNyQyxvQkFBb0IsRUFBRSxDQUN2QixDQUFDO0lBQ0osQ0FBQzs7Ozs7SUFJTSxRQUFRLENBQUMsS0FBbUI7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDcEIsS0FBSyxDQUFDLE9BQU87Ozs7UUFBQyxLQUFLLENBQUMsRUFBRTtZQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztnQkFDdEgsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsZUFBZSxFQUFFLEtB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R0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkQsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUN4QyxPQUFPLElBQUksQ0FBQzthQUNiO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OztZQXRKRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs7Ozs7Ozs7SUFHQyw0Q0FBcUM7Ozs7O0lBQ3JDLDBDQUE2RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTaGFyZWRDYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Nhc2Utc2hhcmUubW9kZWwnO1xuaW1wb3J0IHsgVXNlckRldGFpbHMgfSBmcm9tICcuLi8uLi9tb2RlbHMvdXNlci1kZXRhaWxzLm1vZGVsJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FzZVNoYXJpbmdTdGF0ZVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgY2FzZVN0YXRlOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBzdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTaGFyZWRDYXNlW10+KHRoaXMuY2FzZVN0YXRlKTtcblxuICBwdWJsaWMgZ2V0IHN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLnN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBwdWJsaWMgc2V0Q2FzZXMoY2FzZXM6IFNoYXJlZENhc2VbXSk6IHZvaWQge1xuICAgIHRoaXMuY2FzZVN0YXRlID0gW107XG4gICAgY2FzZXMuZm9yRWFjaChhQ2FzZSA9PiB7XG4gICAgICB0aGlzLmNhc2VTdGF0ZS5wdXNoKHsgY2FzZUlkOiBhQ2FzZS5jYXNlSWQsIGNhc2VUaXRsZTogYUNhc2UuY2FzZVRpdGxlLCBjYXNlVHlwZUlkOiBhQ2FzZS5jYXNlVHlwZUlkLCByb2xlczogYUNhc2Uucm9sZXMsXG4gICAgICAgIHNoYXJlZFdpdGg6IGFDYXNlLnNoYXJlZFdpdGgsIHBlbmRpbmdTaGFyZXM6IGFDYXNlLnBlbmRpbmdTaGFyZXMsIHBlbmRpbmdVbnNoYXJlczogYUNhc2UucGVuZGluZ1Vuc2hhcmVzIH0pO1xuICAgIH0pO1xuICAgIHRoaXMuc3ViamVjdC5uZXh0KHRoaXMuY2FzZVN0YXRlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDYXNlcygpOiBTaGFyZWRDYXNlW10ge1xuICAgIHJldHVybiB0aGlzLmNhc2VTdGF0ZTtcbiAgfVxuXG4gIHB1YmxpYyByZXF1ZXN0U2hhcmUodXNlcjogVXNlckRldGFpbHMpOiBTaGFyZWRDYXNlW10ge1xuICAgIGNvbnN0IG9sZFNoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSB0aGlzLmNhc2VTdGF0ZS5zbGljZSgpO1xuICAgIGNvbnN0IG5ld1NoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHNoYXJlZENhc2Ugb2Ygb2xkU2hhcmVkQ2FzZXMpIHtcbiAgICAgIGlmICghc2hhcmVkQ2FzZS5wZW5kaW5nU2hhcmVzKSB7XG4gICAgICAgIHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcyA9IFtdO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3UGVuZGluZ1NoYXJlcyA9IHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcy5zbGljZSgpO1xuICAgICAgaWYgKCFzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcykge1xuICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcyA9IFtdO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3UGVuZGluZ1Vuc2hhcmVzID0gc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMuc2xpY2UoKTtcbiAgICAgIGlmICghdGhpcy51c2VySGFzQWNjZXNzKHNoYXJlZENhc2UsIHVzZXIpKSB7XG4gICAgICAgIGlmICghbmV3UGVuZGluZ1NoYXJlcy5zb21lKHUgPT4gdS5lbWFpbCA9PT0gdXNlci5lbWFpbCkpIHtcbiAgICAgICAgICBuZXdQZW5kaW5nU2hhcmVzLnB1c2godXNlcik7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZvciAobGV0IHUgPSAwLCB1bCA9IG5ld1BlbmRpbmdVbnNoYXJlcy5sZW5ndGg7IHUgPCB1bDsgdSsrKSB7XG4gICAgICAgICAgaWYgKG5ld1BlbmRpbmdVbnNoYXJlc1t1XS5lbWFpbCA9PT0gdXNlci5lbWFpbCkge1xuICAgICAgICAgICAgbmV3UGVuZGluZ1Vuc2hhcmVzLnNwbGljZSh1LCAxKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgbmV3U2hhcmVkQ2FzZSA9IHtcbiAgICAgICAgLi4uc2hhcmVkQ2FzZSxcbiAgICAgICAgcGVuZGluZ1Vuc2hhcmVzOiBuZXdQZW5kaW5nVW5zaGFyZXMsXG4gICAgICAgIHBlbmRpbmdTaGFyZXM6IG5ld1BlbmRpbmdTaGFyZXNcbiAgICAgIH07XG4gICAgICBuZXdTaGFyZWRDYXNlcy5wdXNoKG5ld1NoYXJlZENhc2UpO1xuICAgIH1cbiAgICB0aGlzLnN1YmplY3QubmV4dChuZXdTaGFyZWRDYXNlcyk7XG4gICAgcmV0dXJuIG5ld1NoYXJlZENhc2VzO1xuICB9XG5cbiAgcHVibGljIHJlcXVlc3RVbnNoYXJlKGNhc2VJZDogc3RyaW5nLCB1c2VyOiBVc2VyRGV0YWlscyk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1NoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHNoYXJlZENhc2Ugb2YgdGhpcy5jYXNlU3RhdGUpIHtcbiAgICAgIGlmIChzaGFyZWRDYXNlLmNhc2VJZCA9PT0gY2FzZUlkKSB7XG4gICAgICAgIGlmICghc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMpIHtcbiAgICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1BlbmRpbmdVbnNoYXJlcyA9IHNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzLnNsaWNlKCk7XG4gICAgICAgIGlmIChuZXdQZW5kaW5nVW5zaGFyZXMpIHtcbiAgICAgICAgICBpZiAoIW5ld1BlbmRpbmdVbnNoYXJlcy5zb21lKHUgPT4gdS5lbWFpbCA9PT0gdXNlci5lbWFpbCkpIHtcbiAgICAgICAgICAgIG5ld1BlbmRpbmdVbnNoYXJlcy5wdXNoKHVzZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBuZXdQZW5kaW5nVW5zaGFyZXMucHVzaCh1c2VyKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXdTaGFyZWRDYXNlID0ge1xuICAgICAgICAgIC4uLnNoYXJlZENhc2UsXG4gICAgICAgICAgcGVuZGluZ1Vuc2hhcmVzOiBuZXdQZW5kaW5nVW5zaGFyZXNcbiAgICAgICAgfTtcbiAgICAgICAgbmV3U2hhcmVkQ2FzZXMucHVzaChuZXdTaGFyZWRDYXNlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ld1NoYXJlZENhc2VzLnB1c2goc2hhcmVkQ2FzZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc3ViamVjdC5uZXh0KG5ld1NoYXJlZENhc2VzKTtcbiAgICByZXR1cm47XG4gIH1cblxuICBwdWJsaWMgcmVxdWVzdENhbmNlbChjYXNlSWQ6IHN0cmluZywgdXNlcjogVXNlckRldGFpbHMpOiB2b2lkIHtcbiAgICBjb25zdCBuZXdTaGFyZWRDYXNlczogU2hhcmVkQ2FzZVtdID0gW107XG4gICAgZm9yIChjb25zdCBzaGFyZWRDYXNlIG9mIHRoaXMuY2FzZVN0YXRlKSB7XG4gICAgICBpZiAoc2hhcmVkQ2FzZS5jYXNlSWQgPT09IGNhc2VJZCkge1xuICAgICAgICBpZiAoIXNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzKSB7XG4gICAgICAgICAgc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXdQZW5kaW5nVW5zaGFyZXMgPSBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcy5zbGljZSgpO1xuICAgICAgICBmb3IgKGxldCBpUGVuZGluZ1Vuc2hhcmVzID0gMDsgaVBlbmRpbmdVbnNoYXJlcyA8IG5ld1BlbmRpbmdVbnNoYXJlcy5sZW5ndGg7IGlQZW5kaW5nVW5zaGFyZXMrKykge1xuICAgICAgICAgIGlmIChuZXdQZW5kaW5nVW5zaGFyZXNbaVBlbmRpbmdVbnNoYXJlc10uZW1haWwgPT09IHVzZXIuZW1haWwpIHtcbiAgICAgICAgICAgIG5ld1BlbmRpbmdVbnNoYXJlcy5zcGxpY2UoaVBlbmRpbmdVbnNoYXJlcywgMSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFzaGFyZWRDYXNlLnBlbmRpbmdTaGFyZXMpIHtcbiAgICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdTaGFyZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXdQZW5kaW5nU2hhcmVzID0gc2hhcmVkQ2FzZS5wZW5kaW5nU2hhcmVzLnNsaWNlKCk7XG4gICAgICAgIGZvciAobGV0IGlQZW5kaW5nU2hhcmVzID0gMDsgaVBlbmRpbmdTaGFyZXMgPCBuZXdQZW5kaW5nU2hhcmVzLmxlbmd0aDsgaVBlbmRpbmdTaGFyZXMrKykge1xuICAgICAgICAgIGlmIChuZXdQZW5kaW5nU2hhcmVzW2lQZW5kaW5nU2hhcmVzXS5lbWFpbCA9PT0gdXNlci5lbWFpbCkge1xuICAgICAgICAgICAgbmV3UGVuZGluZ1NoYXJlcy5zcGxpY2UoaVBlbmRpbmdTaGFyZXMsIDEpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1NoYXJlZENhc2UgPSB7XG4gICAgICAgICAgLi4uc2hhcmVkQ2FzZSxcbiAgICAgICAgICBwZW5kaW5nVW5zaGFyZXM6IG5ld1BlbmRpbmdVbnNoYXJlcyxcbiAgICAgICAgICBwZW5kaW5nU2hhcmVzOiBuZXdQZW5kaW5nU2hhcmVzXG4gICAgICAgIH07XG4gICAgICAgIG5ld1NoYXJlZENhc2VzLnB1c2gobmV3U2hhcmVkQ2FzZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdTaGFyZWRDYXNlcy5wdXNoKHNoYXJlZENhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnN1YmplY3QubmV4dChuZXdTaGFyZWRDYXNlcyk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUNhc2UoY2FzZUlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBmb3IgKGxldCBpID0gMCwgbCA9IHRoaXMuY2FzZVN0YXRlLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgaWYgKHRoaXMuY2FzZVN0YXRlW2ldLmNhc2VJZCA9PT0gY2FzZUlkKSB7XG4gICAgICAgIHRoaXMuY2FzZVN0YXRlLnNwbGljZShpLCAxKTtcbiAgICAgICAgdGhpcy5zdWJqZWN0Lm5leHQodGhpcy5jYXNlU3RhdGUpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHVzZXJIYXNBY2Nlc3MoYzogU2hhcmVkQ2FzZSwgdXNlcjogVXNlckRldGFpbHMpOiBib29sZWFuIHtcbiAgICBpZiAoIWMuc2hhcmVkV2l0aCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMCwgbCA9IGMuc2hhcmVkV2l0aC5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIGlmIChjLnNoYXJlZFdpdGhbaV0uZW1haWwgPT09IHVzZXIuZW1haWwpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1zaGFyaW5nLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2Nhc2Utc2hhcmluZy1zdGF0ZS9jYXNlLXNoYXJpbmctc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFPdEQsTUFBTSxPQUFPLHVCQUF1QjtJQVdsQztRQVRRLGNBQVMsR0FBaUIsRUFBRSxDQUFDO1FBQ3BCLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBZSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFRN0QsQ0FBQzs7OztJQU5qQixJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUNyQyxvQkFBb0IsRUFBRSxDQUN2QixDQUFDO0lBQ0osQ0FBQzs7Ozs7SUFJTSxRQUFRLENBQUMsS0FBbUI7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDcEIsS0FBSyxDQUFDLE9BQU87Ozs7UUFBQyxLQUFLLENBQUMsRUFBRTtZQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztnQkFDdEgsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsZUFBZSxFQUFFLEtB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LE1BQU07YUFDbkI7Ozs7Ozs7Ozs7SUFHQyw0Q0FBcUM7Ozs7O0lBQ3JDLDBDQUE2RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTaGFyZWRDYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Nhc2Utc2hhcmUubW9kZWwnO1xuaW1wb3J0IHsgVXNlckRldGFpbHMgfSBmcm9tICcuLi8uLi9tb2RlbHMvdXNlci1kZXRhaWxzLm1vZGVsJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FzZVNoYXJpbmdTdGF0ZVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgY2FzZVN0YXRlOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBzdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTaGFyZWRDYXNlW10+KHRoaXMuY2FzZVN0YXRlKTtcblxuICBwdWJsaWMgZ2V0IHN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLnN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBwdWJsaWMgc2V0Q2FzZXMoY2FzZXM6IFNoYXJlZENhc2VbXSk6IHZvaWQge1xuICAgIHRoaXMuY2FzZVN0YXRlID0gW107XG4gICAgY2FzZXMuZm9yRWFjaChhQ2FzZSA9PiB7XG4gICAgICB0aGlzLmNhc2VTdGF0ZS5wdXNoKHsgY2FzZUlkOiBhQ2FzZS5jYXNlSWQsIGNhc2VUaXRsZTogYUNhc2UuY2FzZVRpdGxlLCBjYXNlVHlwZUlkOiBhQ2FzZS5jYXNlVHlwZUlkLCByb2xlczogYUNhc2Uucm9sZXMsXG4gICAgICAgIHNoYXJlZFdpdGg6IGFDYXNlLnNoYXJlZFdpdGgsIHBlbmRpbmdTaGFyZXM6IGFDYXNlLnBlbmRpbmdTaGFyZXMsIHBlbmRpbmdVbnNoYXJlczogYUNhc2UucGVuZGluZ1Vuc2hhcmVzIH0pO1xuICAgIH0pO1xuICAgIHRoaXMuc3ViamVjdC5uZXh0KHRoaXMuY2FzZVN0YXRlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDYXNlcygpOiBTaGFyZWRDYXNlW10ge1xuICAgIHJldHVybiB0aGlzLmNhc2VTdGF0ZTtcbiAgfVxuXG4gIHB1YmxpYyByZXF1ZXN0U2hhcmUodXNlcjogVXNlckRldGFpbHMpOiBTaGFyZWRDYXNlW10ge1xuICAgIGNvbnN0IG9sZFNoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSB0aGlzLmNhc2VTdGF0ZS5zbGljZSgpO1xuICAgIGNvbnN0IG5ld1NoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHNoYXJlZENhc2Ugb2Ygb2xkU2hhcmVkQ2FzZXMpIHtcbiAgICAgIGlmICghc2hhcmVkQ2FzZS5wZW5kaW5nU2hhcmVzKSB7XG4gICAgICAgIHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcyA9IFtdO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3UGVuZGluZ1NoYXJlcyA9IHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcy5zbGljZSgpO1xuICAgICAgaWYgKCFzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcykge1xuICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcyA9IFtdO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3UGVuZGluZ1Vuc2hhcmVzID0gc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMuc2xpY2UoKTtcbiAgICAgIGlmICghdGhpcy51c2VySGFzQWNjZXNzKHNoYXJlZENhc2UsIHVzZXIpKSB7XG4gICAgICAgIGlmICghbmV3UGVuZGluZ1NoYXJlcy5zb21lKHUgPT4gdS5lbWFpbCA9PT0gdXNlci5lbWFpbCkpIHtcbiAgICAgICAgICBuZXdQZW5kaW5nU2hhcmVzLnB1c2godXNlcik7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZvciAobGV0IHUgPSAwLCB1bCA9IG5ld1BlbmRpbmdVbnNoYXJlcy5sZW5ndGg7IHUgPCB1bDsgdSsrKSB7XG4gICAgICAgICAgaWYgKG5ld1BlbmRpbmdVbnNoYXJlc1t1XS5lbWFpbCA9PT0gdXNlci5lbWFpbCkge1xuICAgICAgICAgICAgbmV3UGVuZGluZ1Vuc2hhcmVzLnNwbGljZSh1LCAxKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgbmV3U2hhcmVkQ2FzZSA9IHtcbiAgICAgICAgLi4uc2hhcmVkQ2FzZSxcbiAgICAgICAgcGVuZGluZ1Vuc2hhcmVzOiBuZXdQZW5kaW5nVW5zaGFyZXMsXG4gICAgICAgIHBlbmRpbmdTaGFyZXM6IG5ld1BlbmRpbmdTaGFyZXNcbiAgICAgIH07XG4gICAgICBuZXdTaGFyZWRDYXNlcy5wdXNoKG5ld1NoYXJlZENhc2UpO1xuICAgIH1cbiAgICB0aGlzLnN1YmplY3QubmV4dChuZXdTaGFyZWRDYXNlcyk7XG4gICAgcmV0dXJuIG5ld1NoYXJlZENhc2VzO1xuICB9XG5cbiAgcHVibGljIHJlcXVlc3RVbnNoYXJlKHVzZXI6IFVzZXJEZXRhaWxzLCBjYXNlSWQ/OiBzdHJpbmcpOiBTaGFyZWRDYXNlW10ge1xuICAgIGNvbnN0IG5ld1NoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHNoYXJlZENhc2Ugb2YgdGhpcy5jYXNlU3RhdGUpIHtcbiAgICAgIC8vIElmIG5vIGNhc2VJZCwgdGhlbiByZXF1ZXN0IHVuc2hhcmUgZnJvbSBhbGwgc2hhcmVkIGNhc2VzXG4gICAgICBpZiAoY2FzZUlkID09PSB1bmRlZmluZWQgfHwgc2hhcmVkQ2FzZS5jYXNlSWQgPT09IGNhc2VJZCkge1xuICAgICAgICBpZiAoIXNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzKSB7XG4gICAgICAgICAgc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXdQZW5kaW5nVW5zaGFyZXMgPSBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcy5zbGljZSgpO1xuICAgICAgICAvLyBJZiB0aGUgdXNlciBpcyBwZW5kaW5nIHNoYXJlZCBhY2Nlc3MsIGp1c3QgcmVtb3ZlIHRoZW0gZnJvbSBwZW5kaW5nU2hhcmVzXG4gICAgICAgIGxldCBuZXdQZW5kaW5nU2hhcmVzO1xuICAgICAgICBsZXQgaW5kZXhPZlByZXZpb3VzbHlBZGRlZFVzZXIgPSAtMTtcbiAgICAgICAgaWYgKHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcykge1xuICAgICAgICAgIGluZGV4T2ZQcmV2aW91c2x5QWRkZWRVc2VyID0gc2hhcmVkQ2FzZS5wZW5kaW5nU2hhcmVzLmZpbmRJbmRleCh1ID0+IHUuaWRhbUlkID09PSB1c2VyLmlkYW1JZCk7XG4gICAgICAgICAgaWYgKGluZGV4T2ZQcmV2aW91c2x5QWRkZWRVc2VyID4gLTEpIHtcbiAgICAgICAgICAgIG5ld1BlbmRpbmdTaGFyZXMgPSBzaGFyZWRDYXNlLnBlbmRpbmdTaGFyZXMuc2xpY2UoKTtcbiAgICAgICAgICAgIG5ld1BlbmRpbmdTaGFyZXMuc3BsaWNlKGluZGV4T2ZQcmV2aW91c2x5QWRkZWRVc2VyLCAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gSWYgdGhlIHVzZXIgZG9lcyBub3QgZXhpc3QgaW4gcGVuZGluZ1NoYXJlcywgYW5kIGFscmVhZHkgaGFzIHNoYXJlZCBhY2Nlc3MgKGkuZS4gZXhpc3RzIGluIHNoYXJlZFdpdGgpLFxuICAgICAgICAvLyByZXF1ZXN0IHJlbW92YWwgb2Ygc2hhcmVkIGFjY2Vzc1xuICAgICAgICBpZiAoaW5kZXhPZlByZXZpb3VzbHlBZGRlZFVzZXIgPT09IC0xICYmIHNoYXJlZENhc2Uuc2hhcmVkV2l0aCAmJiBzaGFyZWRDYXNlLnNoYXJlZFdpdGguZmluZEluZGV4KFxuICAgICAgICAgIHUgPT4gdS5pZGFtSWQgPT09IHVzZXIuaWRhbUlkKSA+IC0xKSB7XG4gICAgICAgICAgaWYgKCFuZXdQZW5kaW5nVW5zaGFyZXMuc29tZSh1ID0+IHUuZW1haWwgPT09IHVzZXIuZW1haWwpKSB7XG4gICAgICAgICAgICBuZXdQZW5kaW5nVW5zaGFyZXMucHVzaCh1c2VyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbmV3U2hhcmVkQ2FzZSA9IHtcbiAgICAgICAgICAuLi5zaGFyZWRDYXNlLFxuICAgICAgICAgIHBlbmRpbmdVbnNoYXJlczogbmV3UGVuZGluZ1Vuc2hhcmVzLFxuICAgICAgICAgIC4uLihuZXdQZW5kaW5nU2hhcmVzICYmIHtcbiAgICAgICAgICAgIHBlbmRpbmdTaGFyZXM6IG5ld1BlbmRpbmdTaGFyZXNcbiAgICAgICAgICB9KVxuICAgICAgICB9O1xuICAgICAgICBuZXdTaGFyZWRDYXNlcy5wdXNoKG5ld1NoYXJlZENhc2UpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3U2hhcmVkQ2FzZXMucHVzaChzaGFyZWRDYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5zdWJqZWN0Lm5leHQobmV3U2hhcmVkQ2FzZXMpO1xuICAgIHJldHVybiBuZXdTaGFyZWRDYXNlcztcbiAgfVxuXG4gIHB1YmxpYyByZXF1ZXN0Q2FuY2VsKGNhc2VJZDogc3RyaW5nLCB1c2VyOiBVc2VyRGV0YWlscyk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1NoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHNoYXJlZENhc2Ugb2YgdGhpcy5jYXNlU3RhdGUpIHtcbiAgICAgIGlmIChzaGFyZWRDYXNlLmNhc2VJZCA9PT0gY2FzZUlkKSB7XG4gICAgICAgIGlmICghc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMpIHtcbiAgICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1BlbmRpbmdVbnNoYXJlcyA9IHNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzLnNsaWNlKCk7XG4gICAgICAgIGZvciAobGV0IGlQZW5kaW5nVW5zaGFyZXMgPSAwOyBpUGVuZGluZ1Vuc2hhcmVzIDwgbmV3UGVuZGluZ1Vuc2hhcmVzLmxlbmd0aDsgaVBlbmRpbmdVbnNoYXJlcysrKSB7XG4gICAgICAgICAgaWYgKG5ld1BlbmRpbmdVbnNoYXJlc1tpUGVuZGluZ1Vuc2hhcmVzXS5lbWFpbCA9PT0gdXNlci5lbWFpbCkge1xuICAgICAgICAgICAgbmV3UGVuZGluZ1Vuc2hhcmVzLnNwbGljZShpUGVuZGluZ1Vuc2hhcmVzLCAxKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIXNoYXJlZENhc2UucGVuZGluZ1NoYXJlcykge1xuICAgICAgICAgIHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1BlbmRpbmdTaGFyZXMgPSBzaGFyZWRDYXNlLnBlbmRpbmdTaGFyZXMuc2xpY2UoKTtcbiAgICAgICAgZm9yIChsZXQgaVBlbmRpbmdTaGFyZXMgPSAwOyBpUGVuZGluZ1NoYXJlcyA8IG5ld1BlbmRpbmdTaGFyZXMubGVuZ3RoOyBpUGVuZGluZ1NoYXJlcysrKSB7XG4gICAgICAgICAgaWYgKG5ld1BlbmRpbmdTaGFyZXNbaVBlbmRpbmdTaGFyZXNdLmVtYWlsID09PSB1c2VyLmVtYWlsKSB7XG4gICAgICAgICAgICBuZXdQZW5kaW5nU2hhcmVzLnNwbGljZShpUGVuZGluZ1NoYXJlcywgMSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbmV3U2hhcmVkQ2FzZSA9IHtcbiAgICAgICAgICAuLi5zaGFyZWRDYXNlLFxuICAgICAgICAgIHBlbmRpbmdVbnNoYXJlczogbmV3UGVuZGluZ1Vuc2hhcmVzLFxuICAgICAgICAgIHBlbmRpbmdTaGFyZXM6IG5ld1BlbmRpbmdTaGFyZXNcbiAgICAgICAgfTtcbiAgICAgICAgbmV3U2hhcmVkQ2FzZXMucHVzaChuZXdTaGFyZWRDYXNlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ld1NoYXJlZENhc2VzLnB1c2goc2hhcmVkQ2FzZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc3ViamVjdC5uZXh0KG5ld1NoYXJlZENhc2VzKTtcbiAgICByZXR1cm47XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlQ2FzZShjYXNlSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNhc2VTdGF0ZS5sZW5ndGggPiAxKSB7XG4gICAgICBmb3IgKGxldCBpID0gMCwgbCA9IHRoaXMuY2FzZVN0YXRlLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICBpZiAodGhpcy5jYXNlU3RhdGVbaV0uY2FzZUlkID09PSBjYXNlSWQpIHtcbiAgICAgICAgICB0aGlzLmNhc2VTdGF0ZS5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgdGhpcy5zdWJqZWN0Lm5leHQodGhpcy5jYXNlU3RhdGUpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1c2VySGFzQWNjZXNzKGM6IFNoYXJlZENhc2UsIHVzZXI6IFVzZXJEZXRhaWxzKTogYm9vbGVhbiB7XG4gICAgaWYgKCFjLnNoYXJlZFdpdGgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDAsIGwgPSBjLnNoYXJlZFdpdGgubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICBpZiAoYy5zaGFyZWRXaXRoW2ldLmVtYWlsID09PSB1c2VyLmVtYWlsKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
@@ -41,7 +41,7 @@ export class FilterService {
41
41
  return this.filterSettings[id];
42
42
  }
43
43
  if (sessionStorage.getItem(id)) {
44
- return JSON.parse(sessionStorage.getItem(id));
44
+ return JSON.parse(window.sessionStorage.getItem(id));
45
45
  }
46
46
  if (localStorage.getItem(id)) {
47
47
  if (this.isSameUser(id)) {
@@ -72,20 +72,6 @@ export class FilterService {
72
72
  }
73
73
  return this.streams[id].asObservable();
74
74
  }
75
- /**
76
- * @param {?} id
77
- * @return {?}
78
- */
79
- clearSessionAndLocalPersistance(id) {
80
- sessionStorage.removeItem(id);
81
- localStorage.removeItem(id);
82
- if (this.filterSettings[id] !== undefined) {
83
- this.filterSettings[id] = null;
84
- }
85
- if (this.streams[id] !== undefined) {
86
- this.streams[id].next(null);
87
- }
88
- }
89
75
  /**
90
76
  * @private
91
77
  * @param {?} setting
@@ -101,7 +87,7 @@ export class FilterService {
101
87
  * @return {?}
102
88
  */
103
89
  persistSession(setting) {
104
- sessionStorage.setItem(setting.id, JSON.stringify(setting));
90
+ window.sessionStorage.setItem(setting.id, JSON.stringify(setting));
105
91
  }
106
92
  /**
107
93
  * @private
@@ -159,4 +145,4 @@ if (false) {
159
145
  */
160
146
  FilterService.prototype.streams;
161
147
  }
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2ZpbHRlci9maWx0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQzs7QUFNbkQsTUFBTSxPQUFPLGFBQWE7SUFIMUI7UUFJUyxnQkFBVyxHQUFtQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4RSxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDeEIsbUJBQWMsR0FBb0MsRUFBRSxDQUFDO1FBQ3JELFlBQU8sR0FBcUQsRUFBRSxDQUFDO0tBcUZqRjs7Ozs7O0lBbkZRLE9BQU8sQ0FBQyxPQUFzQixFQUFFLFdBQThCO1FBQ25FLFFBQVEsV0FBVyxFQUFFO1lBQ25CLEtBQUssT0FBTztnQkFDVixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUMzQixNQUFNO1lBQ1IsS0FBSyxTQUFTO2dCQUNaLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzdCLE1BQU07WUFDUjtnQkFDRSxNQUFNO1NBQ1Q7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7Ozs7SUFFTSxHQUFHLENBQUMsRUFBVTtRQUNuQixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDM0IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2hDO1FBQ0QsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQzlCLE9BQU8s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QUFFOztrQkFDVCxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7WUFDeEMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7U0FDbkQ7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOzs7WUEzRkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7OztJQUVDLG9DQUErRTs7SUFDL0UseUNBQXlDOzs7OztJQUN6Qyx1Q0FBc0U7Ozs7O0lBQ3RFLGdDQUFnRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmlsdGVyRXJyb3IsIEZpbHRlclBlcnNpc3RlbmNlLCBGaWx0ZXJTZXR0aW5nIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRmlsdGVyU2VydmljZSB7XG4gIHB1YmxpYyBnaXZlbkVycm9yczogQmVoYXZpb3JTdWJqZWN0PEZpbHRlckVycm9yW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHVibGljIGlzSW5pdGlhbFNldHRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBmaWx0ZXJTZXR0aW5nczogeyBbaWQ6IHN0cmluZ106IEZpbHRlclNldHRpbmcgfSA9IHt9O1xuICBwcml2YXRlIHJlYWRvbmx5IHN0cmVhbXM6IHsgW2lkOiBzdHJpbmddOiBCZWhhdmlvclN1YmplY3Q8RmlsdGVyU2V0dGluZz4gfSA9IHt9O1xuXG4gIHB1YmxpYyBwZXJzaXN0KHNldHRpbmc6IEZpbHRlclNldHRpbmcsIHBlcnNpc3RlbmNlOiBGaWx0ZXJQZXJzaXN0ZW5jZSk6IHZvaWQge1xuICAgIHN3aXRjaCAocGVyc2lzdGVuY2UpIHtcbiAgICAgIGNhc2UgJ2xvY2FsJzpcbiAgICAgICAgdGhpcy5wZXJzaXN0TG9jYWwoc2V0dGluZyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnc2Vzc2lvbic6XG4gICAgICAgIHRoaXMucGVyc2lzdFNlc3Npb24oc2V0dGluZyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHRoaXMucGVyc2lzdE1lbW9yeShzZXR0aW5nKTtcbiAgICB0aGlzLnVwZGF0ZVN0cmVhbXMoc2V0dGluZyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0KGlkOiBzdHJpbmcpOiBGaWx0ZXJTZXR0aW5nIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMuZmlsdGVyU2V0dGluZ3NbaWRdKSB7XG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXJTZXR0aW5nc1tpZF07XG4gICAgfVxuICAgIGlmIChzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGlkKSkge1xuICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShpZCkpO1xuICAgIH1cbiAgICBpZiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oaWQpKSB7XG4gICAgICBpZiAodGhpcy5pc1NhbWVVc2VyKGlkKSkge1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0oaWQpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBpc1NhbWVVc2VyKGlkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBmaWx0ZXJTZXR0aW5nOiBGaWx0ZXJTZXR0aW5nID0gSlNPTi5wYXJzZSh3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0oaWQpKTtcbiAgICByZXR1cm4gISFmaWx0ZXJTZXR0aW5nLmlkYW1JZCAmJiBmaWx0ZXJTZXR0aW5nLmlkYW1JZCA9PT0gdGhpcy5nZXRVc2VySWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRTdHJlYW0oaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RmlsdGVyU2V0dGluZz4ge1xuICAgIGlmICghdGhpcy5zdHJlYW1zW2lkXSkge1xuICAgICAgdGhpcy5zdHJlYW1zW2lkXSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RmlsdGVyU2V0dGluZz4odGhpcy5nZXQoaWQpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc3RyZWFtc1tpZF0uYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJTZXNzaW9uQW5kTG9jYWxQZXJzaXN0YW5jZShpZDogc3RyaW5nKSB7XG4gICAgc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShpZCk7XG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oaWQpO1xuICAgIGlmICh0aGlzLmZpbHRlclNldHRpbmdzW2lkXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmZpbHRlclNldHRpbmdzW2lkXSA9IG51bGw7XG4gICAgfVxuICAgIGlmICh0aGlzLnN0cmVhbXNbaWRdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuc3RyZWFtc1tpZF0ubmV4dChudWxsKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHBlcnNpc3RMb2NhbChzZXR0aW5nOiBGaWx0ZXJTZXR0aW5nKTogdm9pZCB7XG4gICAgc2V0dGluZy5pZGFtSWQgPSB0aGlzLmdldFVzZXJJZCgpO1xuICAgIHdpbmRvdy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShzZXR0aW5nLmlkLCBKU09OLnN0cmluZ2lmeShzZXR0aW5nKSk7XG4gIH1cblxuICBwcml2YXRlIHBlcnNpc3RTZXNzaW9uKHNldHRpbmc6IEZpbHRlclNldHRpbmcpOiB2b2lkIHtcbiAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKHNldHRpbmcuaWQsIEpTT04uc3RyaW5naWZ5KHNldHRpbmcpKTtcbiAgfVxuXG4gIHByaXZhdGUgcGVyc2lzdE1lbW9yeShzZXR0aW5nOiBGaWx0ZXJTZXR0aW5nKTogdm9pZCB7XG4gICAgdGhpcy5maWx0ZXJTZXR0aW5nc1tzZXR0aW5nLmlkXSA9IHNldHRpbmc7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVN0cmVhbXMoc2V0dGluZzogRmlsdGVyU2V0dGluZyk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0cmVhbXNbc2V0dGluZy5pZF0pIHtcbiAgICAgIHRoaXMuc3RyZWFtc1tzZXR0aW5nLmlkXS5uZXh0KHNldHRpbmcpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRVc2VySWQoKTogc3RyaW5nIHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHdpbmRvdy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCd1c2VyRGV0YWlscycpO1xuICAgIGxldCB1c2VySWQ6IHN0cmluZztcbiAgICBpZiAodXNlckluZm9TdHIpIHtcbiAgICAgIGNvbnN0IHVzZXJJbmZvID0gSlNPTi5wYXJzZSh1c2VySW5mb1N0cik7XG4gICAgICB1c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICByZXR1cm4gdXNlcklkO1xuICB9XG59XG4iXX0=
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2ZpbHRlci9maWx0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQzs7QUFNbkQsTUFBTSxPQUFPLGFBQWE7SUFIMUI7UUFLUyxnQkFBVyxHQUFtQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4RSxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDeEIsbUJBQWMsR0FBb0MsRUFBRSxDQUFDO1FBQ3JELFlBQU8sR0FBcUQsRUFBRSxDQUFDO0tBMEVqRjs7Ozs7O0lBeEVRLE9BQU8sQ0FBQyxPQUFzQixFQUFFLFdBQThCO1FBQ25FLFFBQVEsV0FBVyxFQUFFO1lBQ25CLEtBQUssT0FBTztnQkFDVixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUMzQixNQUFNO1lBQ1IsS0FBSyxTQUFTO2dCQUNaLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzdCLE1BQU07WUFDUjtnQkFDRSxNQUFNO1NBQ1Q7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7Ozs7SUFFTSxHQUFHLENBQUMsRUFBVTtRQUNuQixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDM0IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2hDO1FBQ0QsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQzlCLE9BQU8s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bSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZpbHRlckVycm9yLCBGaWx0ZXJQZXJzaXN0ZW5jZSwgRmlsdGVyU2V0dGluZyB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlclNlcnZpY2Uge1xuXG4gIHB1YmxpYyBnaXZlbkVycm9yczogQmVoYXZpb3JTdWJqZWN0PEZpbHRlckVycm9yW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHVibGljIGlzSW5pdGlhbFNldHRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBmaWx0ZXJTZXR0aW5nczogeyBbaWQ6IHN0cmluZ106IEZpbHRlclNldHRpbmcgfSA9IHt9O1xuICBwcml2YXRlIHJlYWRvbmx5IHN0cmVhbXM6IHsgW2lkOiBzdHJpbmddOiBCZWhhdmlvclN1YmplY3Q8RmlsdGVyU2V0dGluZz4gfSA9IHt9O1xuXG4gIHB1YmxpYyBwZXJzaXN0KHNldHRpbmc6IEZpbHRlclNldHRpbmcsIHBlcnNpc3RlbmNlOiBGaWx0ZXJQZXJzaXN0ZW5jZSk6IHZvaWQge1xuICAgIHN3aXRjaCAocGVyc2lzdGVuY2UpIHtcbiAgICAgIGNhc2UgJ2xvY2FsJzpcbiAgICAgICAgdGhpcy5wZXJzaXN0TG9jYWwoc2V0dGluZyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnc2Vzc2lvbic6XG4gICAgICAgIHRoaXMucGVyc2lzdFNlc3Npb24oc2V0dGluZyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHRoaXMucGVyc2lzdE1lbW9yeShzZXR0aW5nKTtcbiAgICB0aGlzLnVwZGF0ZVN0cmVhbXMoc2V0dGluZyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0KGlkOiBzdHJpbmcpOiBGaWx0ZXJTZXR0aW5nIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMuZmlsdGVyU2V0dGluZ3NbaWRdKSB7XG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXJTZXR0aW5nc1tpZF07XG4gICAgfVxuICAgIGlmIChzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGlkKSkge1xuICAgICAgcmV0dXJuIEpTT04ucGFyc2Uod2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oaWQpKTtcbiAgICB9XG4gICAgaWYgKGxvY2FsU3RvcmFnZS5nZXRJdGVtKGlkKSkge1xuICAgICAgaWYgKHRoaXMuaXNTYW1lVXNlcihpZCkpIHtcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2Uod2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKGlkKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwdWJsaWMgaXNTYW1lVXNlcihpZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZmlsdGVyU2V0dGluZzogRmlsdGVyU2V0dGluZyA9IEpTT04ucGFyc2Uod2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKGlkKSk7XG4gICAgcmV0dXJuICEhZmlsdGVyU2V0dGluZy5pZGFtSWQgJiYgZmlsdGVyU2V0dGluZy5pZGFtSWQgPT09IHRoaXMuZ2V0VXNlcklkKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3RyZWFtKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEZpbHRlclNldHRpbmc+IHtcbiAgICBpZiAoIXRoaXMuc3RyZWFtc1tpZF0pIHtcbiAgICAgIHRoaXMuc3RyZWFtc1tpZF0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEZpbHRlclNldHRpbmc+KHRoaXMuZ2V0KGlkKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnN0cmVhbXNbaWRdLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBwZXJzaXN0TG9jYWwoc2V0dGluZzogRmlsdGVyU2V0dGluZyk6IHZvaWQge1xuICAgIHNldHRpbmcuaWRhbUlkID0gdGhpcy5nZXRVc2VySWQoKTtcbiAgICB3aW5kb3cubG9jYWxTdG9yYWdlLnNldEl0ZW0oc2V0dGluZy5pZCwgSlNPTi5zdHJpbmdpZnkoc2V0dGluZykpO1xuICB9XG5cbiAgcHJpdmF0ZSBwZXJzaXN0U2Vzc2lvbihzZXR0aW5nOiBGaWx0ZXJTZXR0aW5nKTogdm9pZCB7XG4gICAgd2luZG93LnNlc3Npb25TdG9yYWdlLnNldEl0ZW0oc2V0dGluZy5pZCwgSlNPTi5zdHJpbmdpZnkoc2V0dGluZykpO1xuICB9XG5cbiAgcHJpdmF0ZSBwZXJzaXN0TWVtb3J5KHNldHRpbmc6IEZpbHRlclNldHRpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlclNldHRpbmdzW3NldHRpbmcuaWRdID0gc2V0dGluZztcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlU3RyZWFtcyhzZXR0aW5nOiBGaWx0ZXJTZXR0aW5nKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RyZWFtc1tzZXR0aW5nLmlkXSkge1xuICAgICAgdGhpcy5zdHJlYW1zW3NldHRpbmcuaWRdLm5leHQoc2V0dGluZyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFVzZXJJZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHVzZXJJbmZvU3RyID0gd2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgbGV0IHVzZXJJZDogc3RyaW5nO1xuICAgIGlmICh1c2VySW5mb1N0cikge1xuICAgICAgY29uc3QgdXNlckluZm8gPSBKU09OLnBhcnNlKHVzZXJJbmZvU3RyKTtcbiAgICAgIHVzZXJJZCA9IHVzZXJJbmZvLmlkID8gdXNlckluZm8uaWQgOiB1c2VySW5mby51aWQ7XG4gICAgfVxuICAgIHJldHVybiB1c2VySWQ7XG4gIH1cbn1cbiJdfQ==
@@ -9,10 +9,10 @@ import { of } from 'rxjs';
9
9
  import { map, tap } from 'rxjs/operators';
10
10
  import { getAllCaseworkersFromServices, getSessionStorageKeyForServiceId, setCaseworkers } from '../../gov-ui/util/session-storage/session-storage-utils';
11
11
  import { PersonRole, RoleCategory } from '../../models';
12
- import { SessionStorageService } from '../storage/session-storage/session-storage.service';
12
+ import { SessionStorageService } from '../session-storage/session-storage.service';
13
13
  import * as i0 from "@angular/core";
14
14
  import * as i1 from "@angular/common/http";
15
- import * as i2 from "../storage/session-storage/session-storage.service";
15
+ import * as i2 from "../session-storage/session-storage.service";
16
16
  export class FindAPersonService {
17
17
  /**
18
18
  * @param {?} http
@@ -219,4 +219,4 @@ if (false) {
219
219
  */
220
220
  FindAPersonService.prototype.sessionStorageService;
221
221
  }
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1wZXJzb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZmluZC1wZXJzb24vZmluZC1wZXJzb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLGdDQUFnQyxFQUNoQyxjQUFjLEVBQ2YsTUFBTSx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLEVBS0wsVUFBVSxFQUNWLFlBQVksRUFFYixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvREFBb0QsQ0FBQzs7OztBQUt6RixNQUFNLE9BQU8sa0JBQWtCOzs7OztJQU03QixZQUE2QixJQUFnQixFQUFtQixxQkFBNEM7UUFBL0UsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFtQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBQzVHLENBQUM7Ozs7O0lBRU0sSUFBSSxDQUFDLGFBQTRCOztjQUNoQyxXQUFXLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDckUsSUFBSSxXQUFXLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFOztrQkFDeEMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVB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QUFJLE1BQU0sQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBQyxDQUFDO0lBQy9HLENBQUM7Ozs7OztJQUVNLGNBQWMsQ0FBQyxLQUFhLEVBQUUsU0FBaUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBc0IseUNBQXlDLEVBQ2xGLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDOztBQWxHYSxpQ0FBYyxHQUFXLGFBQWEsQ0FBQzs7WUFMdEQsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7O1lBdEJRLFVBQVU7WUFrQlgscUJBQXFCOzs7OztJQU8zQixrQ0FBcUQ7O0lBQ3JELG9DQUFzQjs7SUFDdEIsMENBQTRCOzs7OztJQUVoQixrQ0FBaUM7Ozs7O0lBQUUsbURBQTZEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gIGdldEFsbENhc2V3b3JrZXJzRnJvbVNlcnZpY2VzLFxuICBnZXRTZXNzaW9uU3RvcmFnZUtleUZvclNlcnZpY2VJZCxcbiAgc2V0Q2FzZXdvcmtlcnNcbn0gZnJvbSAnLi4vLi4vZ292LXVpL3V0aWwvc2Vzc2lvbi1zdG9yYWdlL3Nlc3Npb24tc3RvcmFnZS11dGlscyc7XG5pbXBvcnQge1xuICBDYXNld29ya2VyLFxuICBDYXNld29ya2Vyc0J5U2VydmljZSxcbiAgSnVkaWNpYWxVc2VyTW9kZWwsXG4gIFBlcnNvbixcbiAgUGVyc29uUm9sZSxcbiAgUm9sZUNhdGVnb3J5LFxuICBTZWFyY2hPcHRpb25zXG59IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge1Nlc3Npb25TdG9yYWdlU2VydmljZX0gZnJvbSAnLi4vc3RvcmFnZS9zZXNzaW9uLXN0b3JhZ2Uvc2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGaW5kQVBlcnNvblNlcnZpY2Uge1xuXG4gIHB1YmxpYyBzdGF0aWMgY2FzZXdvcmtlcnNLZXk6IHN0cmluZyA9ICdjYXNld29ya2Vycyc7XG4gIHB1YmxpYyB1c2VySWQ6IHN0cmluZztcbiAgcHVibGljIGFzc2lnbmVkVXNlcjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSByZWFkb25seSBzZXNzaW9uU3RvcmFnZVNlcnZpY2U6IFNlc3Npb25TdG9yYWdlU2VydmljZSkge1xuICB9XG5cbiAgcHVibGljIGZpbmQoc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IE9ic2VydmFibGU8UGVyc29uW10+IHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgaWYgKHVzZXJJbmZvU3RyICYmICFzZWFyY2hPcHRpb25zLnVzZXJJbmNsdWRlZCkge1xuICAgICAgY29uc3QgdXNlckluZm8gPSBKU09OLnBhcnNlKHVzZXJJbmZvU3RyKTtcbiAgICAgIHRoaXMudXNlcklkID0gdXNlckluZm8uaWQgPyB1c2VySW5mby5pZCA6IHVzZXJJbmZvLnVpZDtcbiAgICB9XG4gICAgdGhpcy5hc3NpZ25lZFVzZXIgPSBzZWFyY2hPcHRpb25zLmFzc2lnbmVkVXNlciA/IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyIDogbnVsbDtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8UGVyc29uW10+KCcvd29ya2FsbG9jYXRpb24vZmluZFBlcnNvbicsIHsgc2VhcmNoT3B0aW9ucyB9KVxuICAgICAgLnBpcGUobWFwKGp1ZGljaWFyeSA9PiBqdWRpY2lhcnkuZmlsdGVyKGp1ZGdlID0+ICEoW3RoaXMuYXNzaWduZWRVc2VyLCB0aGlzLnVzZXJJZF0uaW5jbHVkZXMoanVkZ2UuaWQpKSkpKTtcbiAgfVxuXG4gIHB1YmxpYyBmaW5kQ2FzZXdvcmtlcnMoc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IE9ic2VydmFibGU8UGVyc29uW10+IHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgaWYgKHVzZXJJbmZvU3RyKSB7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IEpTT04ucGFyc2UodXNlckluZm9TdHIpO1xuICAgICAgdGhpcy51c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICB0aGlzLmFzc2lnbmVkVXNlciA9IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyID8gc2VhcmNoT3B0aW9ucy5hc3NpZ25lZFVzZXIgOiBudWxsO1xuICAgIGNvbnN0IGZ1bGxTZXJ2aWNlcyA9IHNlYXJjaE9wdGlvbnMuc2VydmljZXM7XG4gICAgY29uc3Qgc3RvcmVkU2VydmljZXMgPSBbXTtcbiAgICBjb25zdCBuZXdTZXJ2aWNlczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBzdG9yZWRDYXNld29ya2Vyc0J5U2VydmljZTogQ2FzZXdvcmtlcnNCeVNlcnZpY2VbXSA9IFtdO1xuICAgIGZ1bGxTZXJ2aWNlcy5mb3JFYWNoKHNlcnZpY2VJZCA9PiB7XG4gICAgICBjb25zdCBzZXJ2aWNlS2V5ID0gZ2V0U2Vzc2lvblN0b3JhZ2VLZXlGb3JTZXJ2aWNlSWQoc2VydmljZUlkKTtcbiAgICAgIGlmICh0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZS5nZXRJdGVtKHNlcnZpY2VLZXkpKSB7XG4gICAgICAgIHN0b3JlZFNlcnZpY2VzLnB1c2goc2VydmljZUlkKTtcbiAgICAgICAgc3RvcmVkQ2FzZXdvcmtlcnNCeVNlcnZpY2UucHVzaCh7IHNlcnZpY2U6IHNlcnZpY2VJZCwgY2FzZXdvcmtlcnM6IEpTT04ucGFyc2UodGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbShzZXJ2aWNlS2V5KSkgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdTZXJ2aWNlcy5wdXNoKHNlcnZpY2VJZCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gaWYgYWxsIHNlcnZpY2VzIGFyZSBzdG9yZWQgdGhlbiByZXR1cm4gdGhlIHN0b3JlZCBjYXNld29ya2VycyBieSBzZXJ2aWNlXG4gICAgaWYgKHN0b3JlZFNlcnZpY2VzLmxlbmd0aCA9PT0gZnVsbFNlcnZpY2VzLmxlbmd0aCkge1xuICAgICAgY29uc3Qgc3RvcmVkQ2FzZXdvcmtlcnMgPSBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyhzdG9yZWRDYXNld29ya2Vyc0J5U2VydmljZSk7XG4gICAgICByZXR1cm4gb2YodGhpcy5zZWFyY2hJbkNhc2V3b3JrZXJzKHN0b3JlZENhc2V3b3JrZXJzLCBzZWFyY2hPcHRpb25zKSk7XG4gICAgfVxuICAgIC8vIGFsbCBzZXJ2aWNlSWRzIHBhc3NlZCBpbiBhcyBub2RlIGxheWVyIGdldHRpbmcgdXNlZCBhbnl3YXkgYW5kIGNhc2V3b3JrZXJzIGFsc28gc3RvcmVkIHRoZXJlXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PENhc2V3b3JrZXJzQnlTZXJ2aWNlW10+KCcvd29ya2FsbG9jYXRpb24vcmV0cmlldmVDYXNlV29ya2Vyc0ZvclNlcnZpY2VzJywgeyBmdWxsU2VydmljZXMgfSkucGlwZShcbiAgICAgIHRhcChjYXNld29ya2Vyc0J5U2VydmljZSA9PiB7XG4gICAgICAgIGNhc2V3b3JrZXJzQnlTZXJ2aWNlLmZvckVhY2goY2FzZXdvcmtlckxpc3RCeVNlcnZpY2UgPT4ge1xuICAgICAgICAgIC8vIGZvciBhbnkgbmV3IHNlcnZpY2UsIGVuc3VyZSB0aGF0IHRoZXkgYXJlIHRoZW4gc3RvcmVkIGluIHRoZSBzZXNzaW9uXG4gICAgICAgICAgaWYgKG5ld1NlcnZpY2VzLmluY2x1ZGVzKGNhc2V3b3JrZXJMaXN0QnlTZXJ2aWNlLnNlcnZpY2UpKSB7XG4gICAgICAgICAgICBzZXRDYXNld29ya2VycyhjYXNld29ya2VyTGlzdEJ5U2VydmljZS5zZXJ2aWNlLCBjYXNld29ya2VyTGlzdEJ5U2VydmljZS5jYXNld29ya2VycywgdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICAgIG1hcChjYXNld29ya2Vyc0J5U2VydmljZSA9PiB7XG4gICAgICAgIGNvbnN0IGdpdmVuQ2FzZXdvcmtlcnMgPSBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyhjYXNld29ya2Vyc0J5U2VydmljZSk7XG4gICAgICAgIHJldHVybiB0aGlzLnNlYXJjaEluQ2FzZXdvcmtlcnMoZ2l2ZW5DYXNld29ya2Vycywgc2VhcmNoT3B0aW9ucyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbWFwQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnM6IENhc2V3b3JrZXJbXSwgcm9sZUNhdGVnb3J5OiBzdHJpbmcpOiBQZXJzb25bXSB7XG4gICAgY29uc3QgcGVvcGxlOiBQZXJzb25bXSA9IFtdO1xuICAgIGNhc2V3b3JrZXJzLmZvckVhY2goKGNhc2V3b3JrZXIpID0+IHtcbiAgICAgIGNvbnN0IHRoaXNQZXJzb246IFBlcnNvbiA9IHtcbiAgICAgICAgZW1haWw6IGNhc2V3b3JrZXIuZW1haWwsXG4gICAgICAgIG5hbWU6IGAke2Nhc2V3b3JrZXIuZmlyc3ROYW1lfSAke2Nhc2V3b3JrZXIubGFzdE5hbWV9YCxcbiAgICAgICAgaWQ6IGNhc2V3b3JrZXIuaWRhbUlkLFxuICAgICAgICBkb21haW46IGNhc2V3b3JrZXIucm9sZUNhdGVnb3J5ID09PSBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUiA/IFBlcnNvblJvbGUuQ0FTRVdPUktFUiA6IFBlcnNvblJvbGUuQURNSU4sXG4gICAgICAgIC8vIGtub3duQXMgY2FuIGJlIGFkZGVkIGlmIHJlcXVpcmVkXG4gICAgICB9O1xuICAgICAgaWYgKGNhc2V3b3JrZXIucm9sZUNhdGVnb3J5ID09PSByb2xlQ2F0ZWdvcnkgfHwgcm9sZUNhdGVnb3J5ID09PSBSb2xlQ2F0ZWdvcnkuQUxMKSB7XG4gICAgICAgIHBlb3BsZS5wdXNoKHRoaXNQZXJzb24pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBwZW9wbGU7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoSW5DYXNld29ya2VycyhjYXNld29ya2VyczogQ2FzZXdvcmtlcltdLCBzZWFyY2hPcHRpb25zOiBTZWFyY2hPcHRpb25zKTogUGVyc29uW10ge1xuICAgIGxldCByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQUxMO1xuICAgIGlmICghKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQUxMKSkge1xuICAgICAgaWYgKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ0FTRVdPUktFUikge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUjtcbiAgICAgIH0gZWxzZSBpZiAoc2VhcmNoT3B0aW9ucy51c2VyUm9sZSA9PT0gUGVyc29uUm9sZS5BRE1JTikge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQURNSU47XG4gICAgICB9IGVsc2UgaWYgKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ1RTQykge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQ1RTQztcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3Qgc2VhcmNoVGVybSA9IHNlYXJjaE9wdGlvbnMgJiYgc2VhcmNoT3B0aW9ucy5zZWFyY2hUZXJtID8gc2VhcmNoT3B0aW9ucy5zZWFyY2hUZXJtLnRvTG93ZXJDYXNlKCkgOiAnJztcbiAgICBjb25zdCBwZW9wbGUgPSBjYXNld29ya2VycyA/IHRoaXMubWFwQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnMsIHJvbGVDYXRlZ29yeSkgOiBbXTtcbiAgICBjb25zdCBmaW5hbFBlb3BsZUxpc3QgPSBwZW9wbGUuZmlsdGVyKHBlcnNvbiA9PiBwZXJzb24gJiYgcGVyc29uLm5hbWUgJiYgcGVyc29uLm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hUZXJtKSk7XG4gICAgcmV0dXJuIHNlYXJjaE9wdGlvbnMudXNlckluY2x1ZGVkID8gZmluYWxQZW9wbGVMaXN0LmZpbHRlcihwZXJzb24gPT4gcGVyc29uICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpXG4gICAgICA6IGZpbmFsUGVvcGxlTGlzdC5maWx0ZXIocGVyc29uID0+IHBlcnNvbiAmJiBwZXJzb24uaWQgIT09IHRoaXMudXNlcklkICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEp1ZGljaWFsKHZhbHVlOiBzdHJpbmcsIHNlcnZpY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxKdWRpY2lhbFVzZXJNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEp1ZGljaWFsVXNlck1vZGVsW10+KCdhcGkvcHJkL2p1ZGljaWFsL2dldEp1ZGljaWFsVXNlcnNTZWFyY2gnLFxuICAgICAgeyBzZWFyY2hTdHJpbmc6IHZhbHVlLCBzZXJ2aWNlQ29kZTogc2VydmljZUlkIH0pO1xuICB9XG59XG5cbiJdfQ==
222
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1wZXJzb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZmluZC1wZXJzb24vZmluZC1wZXJzb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLGdDQUFnQyxFQUNoQyxjQUFjLEVBQ2YsTUFBTSx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLEVBS0wsVUFBVSxFQUNWLFlBQVksRUFFYixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7OztBQUtuRixNQUFNLE9BQU8sa0JBQWtCOzs7OztJQU03QixZQUE2QixJQUFnQixFQUFtQixxQkFBNEM7UUFBL0UsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFtQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBQzVHLENBQUM7Ozs7O0lBRU0sSUFBSSxDQUFDLGFBQTRCOztjQUNoQyxXQUFXLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDckUsSUFBSSxXQUFXLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFOztrQkFDeEMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVB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QUFJLE1BQU0sQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBQyxDQUFDO0lBQy9HLENBQUM7Ozs7OztJQUVNLGNBQWMsQ0FBQyxLQUFhLEVBQUUsU0FBaUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBc0IseUNBQXlDLEVBQ2xGLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDOztBQWxHYSxpQ0FBYyxHQUFXLGFBQWEsQ0FBQzs7WUFMdEQsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7O1lBdEJRLFVBQVU7WUFrQlYscUJBQXFCOzs7OztJQU81QixrQ0FBcUQ7O0lBQ3JELG9DQUFzQjs7SUFDdEIsMENBQTRCOzs7OztJQUVoQixrQ0FBaUM7Ozs7O0lBQUUsbURBQTZEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gIGdldEFsbENhc2V3b3JrZXJzRnJvbVNlcnZpY2VzLFxuICBnZXRTZXNzaW9uU3RvcmFnZUtleUZvclNlcnZpY2VJZCxcbiAgc2V0Q2FzZXdvcmtlcnNcbn0gZnJvbSAnLi4vLi4vZ292LXVpL3V0aWwvc2Vzc2lvbi1zdG9yYWdlL3Nlc3Npb24tc3RvcmFnZS11dGlscyc7XG5pbXBvcnQge1xuICBDYXNld29ya2VyLFxuICBDYXNld29ya2Vyc0J5U2VydmljZSxcbiAgSnVkaWNpYWxVc2VyTW9kZWwsXG4gIFBlcnNvbixcbiAgUGVyc29uUm9sZSxcbiAgUm9sZUNhdGVnb3J5LFxuICBTZWFyY2hPcHRpb25zXG59IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBTZXNzaW9uU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zZXNzaW9uLXN0b3JhZ2Uvc2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGaW5kQVBlcnNvblNlcnZpY2Uge1xuXG4gIHB1YmxpYyBzdGF0aWMgY2FzZXdvcmtlcnNLZXk6IHN0cmluZyA9ICdjYXNld29ya2Vycyc7XG4gIHB1YmxpYyB1c2VySWQ6IHN0cmluZztcbiAgcHVibGljIGFzc2lnbmVkVXNlcjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSByZWFkb25seSBzZXNzaW9uU3RvcmFnZVNlcnZpY2U6IFNlc3Npb25TdG9yYWdlU2VydmljZSkge1xuICB9XG5cbiAgcHVibGljIGZpbmQoc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IE9ic2VydmFibGU8UGVyc29uW10+IHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgaWYgKHVzZXJJbmZvU3RyICYmICFzZWFyY2hPcHRpb25zLnVzZXJJbmNsdWRlZCkge1xuICAgICAgY29uc3QgdXNlckluZm8gPSBKU09OLnBhcnNlKHVzZXJJbmZvU3RyKTtcbiAgICAgIHRoaXMudXNlcklkID0gdXNlckluZm8uaWQgPyB1c2VySW5mby5pZCA6IHVzZXJJbmZvLnVpZDtcbiAgICB9XG4gICAgdGhpcy5hc3NpZ25lZFVzZXIgPSBzZWFyY2hPcHRpb25zLmFzc2lnbmVkVXNlciA/IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyIDogbnVsbDtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8UGVyc29uW10+KCcvd29ya2FsbG9jYXRpb24vZmluZFBlcnNvbicsIHsgc2VhcmNoT3B0aW9ucyB9KVxuICAgICAgLnBpcGUobWFwKGp1ZGljaWFyeSA9PiBqdWRpY2lhcnkuZmlsdGVyKGp1ZGdlID0+ICEoW3RoaXMuYXNzaWduZWRVc2VyLCB0aGlzLnVzZXJJZF0uaW5jbHVkZXMoanVkZ2UuaWQpKSkpKTtcbiAgfVxuXG4gIHB1YmxpYyBmaW5kQ2FzZXdvcmtlcnMoc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IE9ic2VydmFibGU8UGVyc29uW10+IHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgaWYgKHVzZXJJbmZvU3RyKSB7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IEpTT04ucGFyc2UodXNlckluZm9TdHIpO1xuICAgICAgdGhpcy51c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICB0aGlzLmFzc2lnbmVkVXNlciA9IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyID8gc2VhcmNoT3B0aW9ucy5hc3NpZ25lZFVzZXIgOiBudWxsO1xuICAgIGNvbnN0IGZ1bGxTZXJ2aWNlcyA9IHNlYXJjaE9wdGlvbnMuc2VydmljZXM7XG4gICAgY29uc3Qgc3RvcmVkU2VydmljZXMgPSBbXTtcbiAgICBjb25zdCBuZXdTZXJ2aWNlczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBzdG9yZWRDYXNld29ya2Vyc0J5U2VydmljZTogQ2FzZXdvcmtlcnNCeVNlcnZpY2VbXSA9IFtdO1xuICAgIGZ1bGxTZXJ2aWNlcy5mb3JFYWNoKHNlcnZpY2VJZCA9PiB7XG4gICAgICBjb25zdCBzZXJ2aWNlS2V5ID0gZ2V0U2Vzc2lvblN0b3JhZ2VLZXlGb3JTZXJ2aWNlSWQoc2VydmljZUlkKTtcbiAgICAgIGlmICh0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZS5nZXRJdGVtKHNlcnZpY2VLZXkpKSB7XG4gICAgICAgIHN0b3JlZFNlcnZpY2VzLnB1c2goc2VydmljZUlkKTtcbiAgICAgICAgc3RvcmVkQ2FzZXdvcmtlcnNCeVNlcnZpY2UucHVzaCh7IHNlcnZpY2U6IHNlcnZpY2VJZCwgY2FzZXdvcmtlcnM6IEpTT04ucGFyc2UodGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbShzZXJ2aWNlS2V5KSkgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdTZXJ2aWNlcy5wdXNoKHNlcnZpY2VJZCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gaWYgYWxsIHNlcnZpY2VzIGFyZSBzdG9yZWQgdGhlbiByZXR1cm4gdGhlIHN0b3JlZCBjYXNld29ya2VycyBieSBzZXJ2aWNlXG4gICAgaWYgKHN0b3JlZFNlcnZpY2VzLmxlbmd0aCA9PT0gZnVsbFNlcnZpY2VzLmxlbmd0aCkge1xuICAgICAgY29uc3Qgc3RvcmVkQ2FzZXdvcmtlcnMgPSBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyhzdG9yZWRDYXNld29ya2Vyc0J5U2VydmljZSk7XG4gICAgICByZXR1cm4gb2YodGhpcy5zZWFyY2hJbkNhc2V3b3JrZXJzKHN0b3JlZENhc2V3b3JrZXJzLCBzZWFyY2hPcHRpb25zKSk7XG4gICAgfVxuICAgIC8vIGFsbCBzZXJ2aWNlSWRzIHBhc3NlZCBpbiBhcyBub2RlIGxheWVyIGdldHRpbmcgdXNlZCBhbnl3YXkgYW5kIGNhc2V3b3JrZXJzIGFsc28gc3RvcmVkIHRoZXJlXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PENhc2V3b3JrZXJzQnlTZXJ2aWNlW10+KCcvd29ya2FsbG9jYXRpb24vcmV0cmlldmVDYXNlV29ya2Vyc0ZvclNlcnZpY2VzJywgeyBmdWxsU2VydmljZXMgfSkucGlwZShcbiAgICAgIHRhcChjYXNld29ya2Vyc0J5U2VydmljZSA9PiB7XG4gICAgICAgIGNhc2V3b3JrZXJzQnlTZXJ2aWNlLmZvckVhY2goY2FzZXdvcmtlckxpc3RCeVNlcnZpY2UgPT4ge1xuICAgICAgICAgIC8vIGZvciBhbnkgbmV3IHNlcnZpY2UsIGVuc3VyZSB0aGF0IHRoZXkgYXJlIHRoZW4gc3RvcmVkIGluIHRoZSBzZXNzaW9uXG4gICAgICAgICAgaWYgKG5ld1NlcnZpY2VzLmluY2x1ZGVzKGNhc2V3b3JrZXJMaXN0QnlTZXJ2aWNlLnNlcnZpY2UpKSB7XG4gICAgICAgICAgICBzZXRDYXNld29ya2VycyhjYXNld29ya2VyTGlzdEJ5U2VydmljZS5zZXJ2aWNlLCBjYXNld29ya2VyTGlzdEJ5U2VydmljZS5jYXNld29ya2VycywgdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICAgIG1hcChjYXNld29ya2Vyc0J5U2VydmljZSA9PiB7XG4gICAgICAgIGNvbnN0IGdpdmVuQ2FzZXdvcmtlcnMgPSBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyhjYXNld29ya2Vyc0J5U2VydmljZSk7XG4gICAgICAgIHJldHVybiB0aGlzLnNlYXJjaEluQ2FzZXdvcmtlcnMoZ2l2ZW5DYXNld29ya2Vycywgc2VhcmNoT3B0aW9ucyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbWFwQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnM6IENhc2V3b3JrZXJbXSwgcm9sZUNhdGVnb3J5OiBzdHJpbmcpOiBQZXJzb25bXSB7XG4gICAgY29uc3QgcGVvcGxlOiBQZXJzb25bXSA9IFtdO1xuICAgIGNhc2V3b3JrZXJzLmZvckVhY2goKGNhc2V3b3JrZXIpID0+IHtcbiAgICAgIGNvbnN0IHRoaXNQZXJzb246IFBlcnNvbiA9IHtcbiAgICAgICAgZW1haWw6IGNhc2V3b3JrZXIuZW1haWwsXG4gICAgICAgIG5hbWU6IGAke2Nhc2V3b3JrZXIuZmlyc3ROYW1lfSAke2Nhc2V3b3JrZXIubGFzdE5hbWV9YCxcbiAgICAgICAgaWQ6IGNhc2V3b3JrZXIuaWRhbUlkLFxuICAgICAgICBkb21haW46IGNhc2V3b3JrZXIucm9sZUNhdGVnb3J5ID09PSBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUiA/IFBlcnNvblJvbGUuQ0FTRVdPUktFUiA6IFBlcnNvblJvbGUuQURNSU4sXG4gICAgICAgIC8vIGtub3duQXMgY2FuIGJlIGFkZGVkIGlmIHJlcXVpcmVkXG4gICAgICB9O1xuICAgICAgaWYgKGNhc2V3b3JrZXIucm9sZUNhdGVnb3J5ID09PSByb2xlQ2F0ZWdvcnkgfHwgcm9sZUNhdGVnb3J5ID09PSBSb2xlQ2F0ZWdvcnkuQUxMKSB7XG4gICAgICAgIHBlb3BsZS5wdXNoKHRoaXNQZXJzb24pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBwZW9wbGU7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoSW5DYXNld29ya2VycyhjYXNld29ya2VyczogQ2FzZXdvcmtlcltdLCBzZWFyY2hPcHRpb25zOiBTZWFyY2hPcHRpb25zKTogUGVyc29uW10ge1xuICAgIGxldCByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQUxMO1xuICAgIGlmICghKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQUxMKSkge1xuICAgICAgaWYgKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ0FTRVdPUktFUikge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUjtcbiAgICAgIH0gZWxzZSBpZiAoc2VhcmNoT3B0aW9ucy51c2VyUm9sZSA9PT0gUGVyc29uUm9sZS5BRE1JTikge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQURNSU47XG4gICAgICB9IGVsc2UgaWYgKHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ1RTQykge1xuICAgICAgICByb2xlQ2F0ZWdvcnkgPSBSb2xlQ2F0ZWdvcnkuQ1RTQztcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3Qgc2VhcmNoVGVybSA9IHNlYXJjaE9wdGlvbnMgJiYgc2VhcmNoT3B0aW9ucy5zZWFyY2hUZXJtID8gc2VhcmNoT3B0aW9ucy5zZWFyY2hUZXJtLnRvTG93ZXJDYXNlKCkgOiAnJztcbiAgICBjb25zdCBwZW9wbGUgPSBjYXNld29ya2VycyA/IHRoaXMubWFwQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnMsIHJvbGVDYXRlZ29yeSkgOiBbXTtcbiAgICBjb25zdCBmaW5hbFBlb3BsZUxpc3QgPSBwZW9wbGUuZmlsdGVyKHBlcnNvbiA9PiBwZXJzb24gJiYgcGVyc29uLm5hbWUgJiYgcGVyc29uLm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hUZXJtKSk7XG4gICAgcmV0dXJuIHNlYXJjaE9wdGlvbnMudXNlckluY2x1ZGVkID8gZmluYWxQZW9wbGVMaXN0LmZpbHRlcihwZXJzb24gPT4gcGVyc29uICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpXG4gICAgICA6IGZpbmFsUGVvcGxlTGlzdC5maWx0ZXIocGVyc29uID0+IHBlcnNvbiAmJiBwZXJzb24uaWQgIT09IHRoaXMudXNlcklkICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEp1ZGljaWFsKHZhbHVlOiBzdHJpbmcsIHNlcnZpY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxKdWRpY2lhbFVzZXJNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEp1ZGljaWFsVXNlck1vZGVsW10+KCdhcGkvcHJkL2p1ZGljaWFsL2dldEp1ZGljaWFsVXNlcnNTZWFyY2gnLFxuICAgICAgeyBzZWFyY2hTdHJpbmc6IHZhbHVlLCBzZXJ2aWNlQ29kZTogc2VydmljZUlkIH0pO1xuICB9XG59XG5cbiJdfQ==
@@ -5,7 +5,6 @@
5
5
  */
6
6
  import { Injectable } from '@angular/core';
7
7
  import { Router } from '@angular/router';
8
- import { map } from 'rxjs/operators';
9
8
  import { RoleService } from './role.service';
10
9
  import * as i0 from "@angular/core";
11
10
  import * as i1 from "./role.service";
@@ -32,31 +31,25 @@ export class RoleGuard {
32
31
  * @return {?}
33
32
  */
34
33
  canActivate(route) {
35
- return this.roleService.roles$.pipe(map((/**
36
- * @param {?} roles
34
+ /** @type {?} */
35
+ const roles = ((/** @type {?} */ (route.data.needsRole)));
36
+ /** @type {?} */
37
+ const check = (/**
38
+ * @param {?} roleRegEx
37
39
  * @return {?}
38
40
  */
39
- roles => {
41
+ (roleRegEx) => {
40
42
  /** @type {?} */
41
- const canActivateRoles = ((/** @type {?} */ (route.data.needsRole)));
42
- /** @type {?} */
43
- const check = (/**
44
- * @param {?} roleRegEx
43
+ const regex = new RegExp(roleRegEx);
44
+ return this.roleService.roles.some((/**
45
+ * @param {?} role
45
46
  * @return {?}
46
47
  */
47
- (roleRegEx) => {
48
- /** @type {?} */
49
- const regex = new RegExp(roleRegEx);
50
- return roles.some((/**
51
- * @param {?} role
52
- * @return {?}
53
- */
54
- role => regex.test(role)));
55
- });
56
- /** @type {?} */
57
- const match = route.data.roleMatching === RoleMatching.ALL ? canActivateRoles.every(check) : canActivateRoles.some(check);
58
- return match || this.router.parseUrl((/** @type {?} */ (route.data.noRoleMatchRedirect)));
59
- })));
48
+ role => regex.test(role)));
49
+ });
50
+ /** @type {?} */
51
+ const match = route.data.roleMatching === RoleMatching.ALL ? roles.every(check) : roles.some(check);
52
+ return match || this.router.parseUrl((/** @type {?} */ (route.data.noRoleMatchRedirect)));
60
53
  }
61
54
  }
62
55
  RoleGuard.decorators = [
@@ -82,4 +75,4 @@ if (false) {
82
75
  */
83
76
  RoleGuard.prototype.router;
84
77
  }
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvcm9sZS1ndWFyZC9yb2xlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQXVDLE1BQU0sRUFBVyxNQUFNLGlCQUFpQixDQUFDO0FBRXZGLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRTdDLE1BQVksWUFBWTtJQUNwQixHQUFHLEdBQUE7SUFDSCxHQUFHLEdBQUE7RUFDTjs7OztBQUtELE1BQU0sT0FBTyxTQUFTOzs7OztJQUVsQixZQUNxQixXQUF3QixFQUN4QixNQUFjO1FBRGQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUNoQyxDQUFDOzs7OztJQUVHLFdBQVcsQ0FBQyxLQUE2QjtRQUM5QyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDakMsR0FBRzs7OztRQUFDLEtBQUssQ0FBQyxFQUFFOztrQkFDSixnQkFBZ0IsR0FBRyxDQUFDLG1CQUFBLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFZLENBQUM7O2tCQUNyRCxLQUFLOzs7O1lBQUcsQ0FBQyxTQUFpQixFQUFFLEVBQUU7O3NCQUM1QixLQUFLLEdBQUcsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDO2dCQUNuQyxPQUFPLEtBQUssQ0FBQyxJQUFJOzs7O2dCQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBQyxDQUFDO1lBQzlDLENBQUMsQ0FBQTs7a0JBQ0ssS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxLQUFLLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUV6SCxPQUFPLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQkFBQSxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFVLENBQUMsQ0FBQztRQUNqRixDQUFDLEVBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7O1lBdkJKLFVBQVUsU0FBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNuQjs7OztZQVRNLFdBQVc7WUFIMEIsTUFBTTs7Ozs7Ozs7SUFnQjVDLGdDQUF5Qzs7Ozs7SUFDekMsMkJBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuQWN0aXZhdGUsIFJvdXRlciwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBSb2xlU2VydmljZSB9IGZyb20gJy4vcm9sZS5zZXJ2aWNlJztcblxuZXhwb3J0IGVudW0gUm9sZU1hdGNoaW5nIHtcbiAgICBBTEwsXG4gICAgQU5ZXG59XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbiAgfSlcbmV4cG9ydCBjbGFzcyBSb2xlR3VhcmQgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSB7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcm9sZVNlcnZpY2U6IFJvbGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyXG4gICAgKSB7fVxuXG4gICAgcHVibGljIGNhbkFjdGl2YXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogT2JzZXJ2YWJsZTxib29sZWFuIHwgVXJsVHJlZT4ge1xuICAgICAgcmV0dXJuIHRoaXMucm9sZVNlcnZpY2Uucm9sZXMkLnBpcGUoXG4gICAgICAgIG1hcChyb2xlcyA9PiB7XG4gICAgICAgICAgY29uc3QgY2FuQWN0aXZhdGVSb2xlcyA9IChyb3V0ZS5kYXRhLm5lZWRzUm9sZSBhcyBzdHJpbmdbXSk7XG4gICAgICAgICAgY29uc3QgY2hlY2sgPSAocm9sZVJlZ0V4OiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChyb2xlUmVnRXgpO1xuICAgICAgICAgICAgcmV0dXJuIHJvbGVzLnNvbWUocm9sZSA9PiByZWdleC50ZXN0KHJvbGUpKTtcbiAgICAgICAgICB9O1xuICAgICAgICAgIGNvbnN0IG1hdGNoID0gcm91dGUuZGF0YS5yb2xlTWF0Y2hpbmcgPT09IFJvbGVNYXRjaGluZy5BTEwgPyBjYW5BY3RpdmF0ZVJvbGVzLmV2ZXJ5KGNoZWNrKSA6IGNhbkFjdGl2YXRlUm9sZXMuc29tZShjaGVjayk7XG5cbiAgICAgICAgICByZXR1cm4gbWF0Y2ggfHwgdGhpcy5yb3V0ZXIucGFyc2VVcmwocm91dGUuZGF0YS5ub1JvbGVNYXRjaFJlZGlyZWN0IGFzIHN0cmluZyk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cbn1cbiJdfQ==
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvcm9sZS1ndWFyZC9yb2xlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQXVDLE1BQU0sRUFBVyxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFFN0MsTUFBWSxZQUFZO0lBQ3BCLEdBQUcsR0FBQTtJQUNILEdBQUcsR0FBQTtFQUNOOzs7O0FBS0QsTUFBTSxPQUFPLFNBQVM7Ozs7O0lBRWxCLFlBQ3FCLFdBQXdCLEVBQ3hCLE1BQWM7UUFEZCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQ2hDLENBQUM7Ozs7O0lBRUcsV0FBVyxDQUFDLEtBQTZCOztjQUN0QyxLQUFLLEdBQUcsQ0FBQyxtQkFBQSxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBWSxDQUFDOztjQUMxQyxLQUFLOzs7O1FBQUcsQ0FBQyxTQUFpQixFQUFFLEVBQUU7O2tCQUMxQixLQUFLLEdBQUcsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDO1lBQ25DLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSTs7OztZQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBQyxDQUFDO1FBQ2pFLENBQUMsQ0FBQTs7Y0FDSyxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLEtBQUssWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFbkcsT0FBTyxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsbUJBQUEsS0FBSyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBVSxDQUFDLENBQUM7SUFDbkYsQ0FBQzs7O1lBbkJKLFVBQVUsU0FBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNuQjs7OztZQVRNLFdBQVc7WUFEMEIsTUFBTTs7Ozs7Ozs7SUFjNUMsZ0NBQXlDOzs7OztJQUN6QywyQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBDYW5BY3RpdmF0ZSwgUm91dGVyLCBVcmxUcmVlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFJvbGVTZXJ2aWNlIH0gZnJvbSAnLi9yb2xlLnNlcnZpY2UnO1xuXG5leHBvcnQgZW51bSBSb2xlTWF0Y2hpbmcge1xuICAgIEFMTCxcbiAgICBBTllcbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xuICB9KVxuZXhwb3J0IGNsYXNzIFJvbGVHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb2xlU2VydmljZTogUm9sZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXJcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgY2FuQWN0aXZhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBib29sZWFuIHwgVXJsVHJlZSB7XG4gICAgICAgIGNvbnN0IHJvbGVzID0gKHJvdXRlLmRhdGEubmVlZHNSb2xlIGFzIHN0cmluZ1tdKTtcbiAgICAgICAgY29uc3QgY2hlY2sgPSAocm9sZVJlZ0V4OiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChyb2xlUmVnRXgpO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucm9sZVNlcnZpY2Uucm9sZXMuc29tZShyb2xlID0+IHJlZ2V4LnRlc3Qocm9sZSkpO1xuICAgICAgICB9O1xuICAgICAgICBjb25zdCBtYXRjaCA9IHJvdXRlLmRhdGEucm9sZU1hdGNoaW5nID09PSBSb2xlTWF0Y2hpbmcuQUxMID8gcm9sZXMuZXZlcnkoY2hlY2spIDogcm9sZXMuc29tZShjaGVjayk7XG5cbiAgICAgICAgcmV0dXJuIG1hdGNoIHx8IHRoaXMucm91dGVyLnBhcnNlVXJsKHJvdXRlLmRhdGEubm9Sb2xlTWF0Y2hSZWRpcmVjdCBhcyBzdHJpbmcpO1xuICAgIH1cbn1cbiJdfQ==
@@ -4,24 +4,23 @@
4
4
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
5
  */
6
6
  import { Injectable } from '@angular/core';
7
- import { BehaviorSubject } from 'rxjs';
8
- import { skipWhile } from 'rxjs/operators';
9
7
  import * as i0 from "@angular/core";
10
8
  export class RoleService {
11
9
  constructor() {
12
- this.pRoles = new BehaviorSubject(null);
13
- this.roles$ = this.pRoles.asObservable().pipe(skipWhile((/**
14
- * @param {?} item
15
- * @return {?}
16
- */
17
- item => item === null)));
10
+ this.pRoles = [];
11
+ }
12
+ /**
13
+ * @return {?}
14
+ */
15
+ get roles() {
16
+ return this.pRoles;
18
17
  }
19
18
  /**
20
19
  * @param {?} roles
21
20
  * @return {?}
22
21
  */
23
22
  set roles(roles) {
24
- this.pRoles.next(roles);
23
+ this.pRoles = roles;
25
24
  }
26
25
  }
27
26
  RoleService.decorators = [
@@ -31,9 +30,10 @@ RoleService.decorators = [
31
30
  ];
32
31
  /** @nocollapse */ RoleService.ngInjectableDef = i0.defineInjectable({ factory: function RoleService_Factory() { return new RoleService(); }, token: RoleService, providedIn: "root" });
33
32
  if (false) {
34
- /** @type {?} */
33
+ /**
34
+ * @type {?}
35
+ * @private
36
+ */
35
37
  RoleService.prototype.pRoles;
36
- /** @type {?} */
37
- RoleService.prototype.roles$;
38
38
  }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9yb2xlLWd1YXJkL3JvbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBUzNDLE1BQU0sT0FBTyxXQUFXO0lBSHhCO1FBSW9CLFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBUSxJQUFJLENBQUMsQ0FBQztRQUNuRCxXQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUzs7OztRQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLElBQUksRUFBQyxDQUFDLENBQUM7S0FLckY7Ozs7O0lBSEcsSUFBVyxLQUFLLENBQUMsS0FBWTtRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDOzs7WUFUSixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs7O0lBRUMsNkJBQTBEOztJQUMxRCw2QkFBa0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNraXBXaGlsZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gdXNlIHR5cGVzIHNvIHdlIGNhbiBtb3ZlIHRvIHN0cmljdGVkIHR5cGluZyBsYXRlciBvblxuZXhwb3J0IHR5cGUgUm9sZSA9IHN0cmluZztcbmV4cG9ydCB0eXBlIFJvbGVzID0gUm9sZVtdO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG4gIH0pXG5leHBvcnQgY2xhc3MgUm9sZVNlcnZpY2Uge1xuICAgIHB1YmxpYyByZWFkb25seSBwUm9sZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFJvbGVzPihudWxsKTtcbiAgICBwdWJsaWMgcm9sZXMkID0gdGhpcy5wUm9sZXMuYXNPYnNlcnZhYmxlKCkucGlwZShza2lwV2hpbGUoaXRlbSA9PiBpdGVtID09PSBudWxsKSk7XG5cbiAgICBwdWJsaWMgc2V0IHJvbGVzKHJvbGVzOiBSb2xlcykge1xuICAgICAgICB0aGlzLnBSb2xlcy5uZXh0KHJvbGVzKTtcbiAgICB9XG59XG4iXX0=
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9yb2xlLWd1YXJkL3JvbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUzNDLE1BQU0sT0FBTyxXQUFXO0lBSHhCO1FBSVksV0FBTSxHQUFVLEVBQUUsQ0FBQztLQVM5Qjs7OztJQVBHLElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDOzs7OztJQUVELElBQVcsS0FBSyxDQUFDLEtBQVk7UUFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQzs7O1lBWkosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7Ozs7OztJQUVDLDZCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gdXNlIHR5cGVzIHNvIHdlIGNhbiBtb3ZlIHRvIHN0cmljdGVkIHR5cGluZyBsYXRlciBvblxuZXhwb3J0IHR5cGUgUm9sZSA9IHN0cmluZztcbmV4cG9ydCB0eXBlIFJvbGVzID0gUm9sZVtdO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG4gIH0pXG5leHBvcnQgY2xhc3MgUm9sZVNlcnZpY2Uge1xuICAgIHByaXZhdGUgcFJvbGVzOiBSb2xlcyA9IFtdO1xuXG4gICAgcHVibGljIGdldCByb2xlcygpOiBSb2xlcyB7XG4gICAgICAgIHJldHVybiB0aGlzLnBSb2xlcztcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0IHJvbGVzKHJvbGVzOiBSb2xlcykge1xuICAgICAgICB0aGlzLnBSb2xlcyA9IHJvbGVzO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,55 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * Generated from: lib/services/session-storage/session-storage.service.ts
4
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
+ */
6
+ import { Injectable } from '@angular/core';
7
+ import * as i0 from "@angular/core";
8
+ export class SessionStorageService {
9
+ /**
10
+ * Get an item from the session storage.
11
+ * If remove is true, the item will be removed once read
12
+ * @param {?} key
13
+ * @param {?=} removeAfterRead removed the key once it has been read
14
+ * @return {?}
15
+ */
16
+ getItem(key, removeAfterRead = false) {
17
+ /** @type {?} */
18
+ const item = sessionStorage.getItem(key);
19
+ if (removeAfterRead) {
20
+ this.removeItem(key);
21
+ }
22
+ return item;
23
+ }
24
+ /**
25
+ * Set an item in the session storage.
26
+ * @param {?} key
27
+ * @param {?} value
28
+ * @return {?}
29
+ */
30
+ setItem(key, value) {
31
+ sessionStorage.setItem(key, value);
32
+ }
33
+ /**
34
+ * Remove an item in the session storage.
35
+ * @param {?} key
36
+ * @return {?}
37
+ */
38
+ removeItem(key) {
39
+ sessionStorage.removeItem(key);
40
+ }
41
+ /**
42
+ * Clear all the items held in session storage.
43
+ * @return {?}
44
+ */
45
+ clear() {
46
+ sessionStorage.clear();
47
+ }
48
+ }
49
+ SessionStorageService.decorators = [
50
+ { type: Injectable, args: [{
51
+ providedIn: 'root'
52
+ },] }
53
+ ];
54
+ /** @nocollapse */ SessionStorageService.ngInjectableDef = i0.defineInjectable({ factory: function SessionStorageService_Factory() { return new SessionStorageService(); }, token: SessionStorageService, providedIn: "root" });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL3Nlc3Npb24tc3RvcmFnZS9zZXNzaW9uLXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxxQkFBcUI7Ozs7Ozs7O0lBT3pCLE9BQU8sQ0FBQyxHQUFXLEVBQUUsa0JBQTJCLEtBQUs7O2NBQ3BELElBQUksR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztRQUV4QyxJQUFJLGVBQWUsRUFBRTtZQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7U0FBRTtRQUU5QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Ozs7Ozs7SUFLTSxPQUFPLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDdkMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQzs7Ozs7O0lBS00sVUFBVSxDQUFDLEdBQVc7UUFDM0IsY0FBYyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqQyxDQUFDOzs7OztJQUtNLEtBQUs7UUFDVixjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDekIsQ0FBQzs7O1lBckNGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlIHtcblxuICAvKipcbiAgICogR2V0IGFuIGl0ZW0gZnJvbSB0aGUgc2Vzc2lvbiBzdG9yYWdlLlxuICAgKiBJZiByZW1vdmUgaXMgdHJ1ZSwgdGhlIGl0ZW0gd2lsbCBiZSByZW1vdmVkIG9uY2UgcmVhZFxuICAgKiBAcGFyYW0gcmVtb3ZlQWZ0ZXJSZWFkIHJlbW92ZWQgdGhlIGtleSBvbmNlIGl0IGhhcyBiZWVuIHJlYWRcbiAgICovXG4gIHB1YmxpYyBnZXRJdGVtKGtleTogc3RyaW5nLCByZW1vdmVBZnRlclJlYWQ6IGJvb2xlYW4gPSBmYWxzZSk6IHN0cmluZyB7XG4gICAgY29uc3QgaXRlbSA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oa2V5KTtcblxuICAgIGlmIChyZW1vdmVBZnRlclJlYWQpIHsgdGhpcy5yZW1vdmVJdGVtKGtleSk7IH1cblxuICAgIHJldHVybiBpdGVtO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBhbiBpdGVtIGluIHRoZSBzZXNzaW9uIHN0b3JhZ2UuXG4gICAqL1xuICBwdWJsaWMgc2V0SXRlbShrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGFuIGl0ZW0gaW4gdGhlIHNlc3Npb24gc3RvcmFnZS5cbiAgICovXG4gIHB1YmxpYyByZW1vdmVJdGVtKGtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIGFsbCB0aGUgaXRlbXMgaGVsZCBpbiBzZXNzaW9uIHN0b3JhZ2UuXG4gICAqL1xuICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XG4gICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIoKTtcbiAgfVxufVxuIl19
@@ -9,8 +9,8 @@
9
9
  export { AccessibilityComponent, CheckboxListComponent, ContactDetailsComponent, DueDateComponent, GenericFilterComponent, HmctsSessionDialogComponent, InviteUserFormComponent, InviteUserPermissionComponent, LoadingSpinnerComponent, SelectedCaseConfirmComponent, SelectedCaseListComponent, SelectedCaseComponent, ServiceMessageComponent, ServiceMessagesComponent, ShareCaseConfirmComponent, ShareCaseComponent, TabComponent, TcConfirmComponent, TcDisplayHtmlComponent, TcDisplayPlainComponent, TermsAndConditionsComponent, UserDetailsComponent, UserListComponent, CookieBannerComponent, FindLocationComponent, SearchLocationComponent, PaginationComponent } from './lib/components';
10
10
  export { FeatureToggleDirective, LetContext, LetDirective } from './lib/directives';
11
11
  export { COMMON_COMPONENTS, GOV_UI_COMPONENTS, ExuiCommonLibModule } from './lib/exui-common-lib.module';
12
- export { GovUiService, checkboxesBeCheckedValidator, dateValidator, radioGroupValidator, HmctsSubNavigationComponent, HmctsBannerComponent } from './lib/gov-ui';
13
- export { BadgeColour, DateBadgeColour, SECONDS_IN_A_DAY, AnonymousFeatureUser, LoggedInFeatureUser, BookingCheckType, PersonRole, RoleCategory, RadioFilterFieldConfig } from './lib/models';
12
+ export { GovUiService, checkboxesBeCheckedValidator, dateValidator, radioGroupValidator, HmctsSubNavigationComponent } from './lib/gov-ui';
13
+ export { SharedCaseErrorMessages, BadgeColour, DateBadgeColour, SECONDS_IN_A_DAY, AnonymousFeatureUser, LoggedInFeatureUser, BookingCheckType, PersonRole, RoleCategory, RadioFilterFieldConfig } from './lib/models';
14
14
  export { FeatureToggleGuard, FeatureToggleService, LaunchDarklyService, GoogleAnalyticsService, GoogleTagManagerService, ManageSessionServices, TimeoutNotificationsService, RoleMatching, RoleGuard, RoleService, CookieService, HasLoadingState, LoadingService, FilterService } from './lib/services';
15
15
  export { windowProvider, windowToken } from './lib/window';
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBSUEsc3BCQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGlFQUFjLGtCQUFrQixDQUFDO0FBQ2pDLDBFQUFjLDhCQUE4QixDQUFDO0FBQzdDLGtKQUFjLGNBQWMsQ0FBQztBQUM3Qiw4S0FBYyxjQUFjLENBQUM7QUFDN0Isd1JBQWMsZ0JBQWdCLENBQUM7QUFDL0IsNENBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBleHVpLWNvbW1vbi1saWJcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZXh1aS1jb21tb24tbGliLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9nb3YtdWknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3dpbmRvdyc7XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBSUEsc3BCQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGlFQUFjLGtCQUFrQixDQUFDO0FBQ2pDLDBFQUFjLDhCQUE4QixDQUFDO0FBQzdDLDRIQUFjLGNBQWMsQ0FBQztBQUM3Qix1TUFBYyxjQUFjLENBQUM7QUFDN0Isd1JBQWMsZ0JBQWdCLENBQUM7QUFDL0IsNENBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBleHVpLWNvbW1vbi1saWJcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZXh1aS1jb21tb24tbGliLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9nb3YtdWknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3dpbmRvdyc7XG4iXX0=