@hmcts/rpx-xui-common-lib 2.1.2-angular-upgrade-11 → 2.1.3-angular-upgrade-11

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 (273) hide show
  1. package/bundles/hmcts-rpx-xui-common-lib.umd.js +2527 -7345
  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 -15
  4. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
  5. package/esm2015/hmcts-rpx-xui-common-lib.js +3 -7
  6. package/esm2015/lib/components/accessibility/accessibility.component.js +3 -9
  7. package/esm2015/lib/components/checkbox-list/checkbox-list.component.js +14 -112
  8. package/esm2015/lib/components/contact-details/contact-details.component.js +2 -12
  9. package/esm2015/lib/components/cookie-banner/cookie-banner.component.js +4 -65
  10. package/esm2015/lib/components/due-date/due-date.component.js +2 -97
  11. package/esm2015/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +7 -21
  12. package/esm2015/lib/components/find-location/find-location.component.js +11 -131
  13. package/esm2015/lib/components/find-person/find-person.component.js +9 -150
  14. package/esm2015/lib/components/generic-filter/generic-filter-utils.js +11 -55
  15. package/esm2015/lib/components/generic-filter/generic-filter.component.js +33 -288
  16. package/esm2015/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +3 -18
  17. package/esm2015/lib/components/index.js +2 -7
  18. package/esm2015/lib/components/invite-user-form/invite-user-form.component.js +2 -22
  19. package/esm2015/lib/components/invite-user-permissions/invite-user-permission.component.js +2 -21
  20. package/esm2015/lib/components/loading-spinner/loading-spinner.component.js +3 -12
  21. package/esm2015/lib/components/pagination/pagination.component.js +2 -24
  22. package/esm2015/lib/components/public_api.js +33 -33
  23. package/esm2015/lib/components/search-judicials/search-judicials.component.js +10 -133
  24. package/esm2015/lib/components/search-location/search-location.component.js +9 -189
  25. package/esm2015/lib/components/search-venue/search-venue.component.js +12 -135
  26. package/esm2015/lib/components/selected-case/selected-case.component.js +20 -176
  27. package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +3 -41
  28. package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +3 -52
  29. package/esm2015/lib/components/service-message/service-message.component.js +2 -20
  30. package/esm2015/lib/components/service-messages/service-messages.component.js +7 -65
  31. package/esm2015/lib/components/share-case/share-case.component.js +6 -87
  32. package/esm2015/lib/components/share-case-confirm/share-case-confirm.component.js +4 -37
  33. package/esm2015/lib/components/tab/tab.component.js +2 -26
  34. package/esm2015/lib/components/tc-confirm/tc-confirm.component.js +2 -17
  35. package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +2 -8
  36. package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +2 -8
  37. package/esm2015/lib/components/terms-and-conditions/terms-and-conditions.component.js +2 -12
  38. package/esm2015/lib/components/user-details/user-details.component.js +2 -39
  39. package/esm2015/lib/components/user-list/user-list.component.js +2 -32
  40. package/esm2015/lib/components/user-select/user-select.component.js +5 -52
  41. package/esm2015/lib/directives/feature-toggle/feature-toggle.directive.js +3 -56
  42. package/esm2015/lib/directives/index.js +2 -7
  43. package/esm2015/lib/directives/let/let.directive.js +1 -39
  44. package/esm2015/lib/directives/public-api.js +3 -8
  45. package/esm2015/lib/exui-common-lib.module.js +19 -9
  46. package/esm2015/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +2 -22
  47. package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +2 -13
  48. package/esm2015/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +4 -54
  49. package/esm2015/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +2 -14
  50. package/esm2015/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +2 -17
  51. package/esm2015/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +2 -24
  52. package/esm2015/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +2 -16
  53. package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +2 -22
  54. package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +2 -12
  55. package/esm2015/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +6 -24
  56. package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +2 -13
  57. package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +2 -21
  58. package/esm2015/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +2 -32
  59. package/esm2015/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +2 -18
  60. package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +2 -14
  61. package/esm2015/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +2 -44
  62. package/esm2015/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +2 -16
  63. package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +2 -36
  64. package/esm2015/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +2 -23
  65. package/esm2015/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +2 -22
  66. package/esm2015/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +3 -30
  67. package/esm2015/lib/gov-ui/components/index.js +2 -7
  68. package/esm2015/lib/gov-ui/components/public_api.js +22 -7
  69. package/esm2015/lib/gov-ui/directives/remove-host.directive.js +1 -22
  70. package/esm2015/lib/gov-ui/gov-ui.service.js +2 -8
  71. package/esm2015/lib/gov-ui/index.js +2 -7
  72. package/esm2015/lib/gov-ui/models/banner-data-model.js +2 -16
  73. package/esm2015/lib/gov-ui/models/checkboxes-model.js +2 -22
  74. package/esm2015/lib/gov-ui/models/error-messages-model.js +2 -16
  75. package/esm2015/lib/gov-ui/models/gov-ui-config-model.js +2 -36
  76. package/esm2015/lib/gov-ui/models/index.js +2 -7
  77. package/esm2015/lib/gov-ui/models/isession-storage.interface.js +2 -24
  78. package/esm2015/lib/gov-ui/models/public_api.js +5 -10
  79. package/esm2015/lib/gov-ui/public_api.js +5 -9
  80. package/esm2015/lib/gov-ui/util/helpers/html-templates.helper.js +4 -14
  81. package/esm2015/lib/gov-ui/util/session-storage/session-storage-utils.js +12 -48
  82. package/esm2015/lib/gov-ui/validators/checkboxes-be-checked.validator.js +5 -24
  83. package/esm2015/lib/gov-ui/validators/date.validator.js +3 -20
  84. package/esm2015/lib/gov-ui/validators/index.js +2 -7
  85. package/esm2015/lib/gov-ui/validators/public_api.js +4 -9
  86. package/esm2015/lib/gov-ui/validators/radio-group.validator.js +3 -15
  87. package/esm2015/lib/models/case-share.model.js +2 -26
  88. package/esm2015/lib/models/contact-details.model.js +7 -31
  89. package/esm2015/lib/models/due-date.model.js +7 -14
  90. package/esm2015/lib/models/feature-user.js +1 -16
  91. package/esm2015/lib/models/filter.model.js +1 -118
  92. package/esm2015/lib/models/idle-config.model.js +2 -20
  93. package/esm2015/lib/models/index.js +14 -20
  94. package/esm2015/lib/models/location.model.js +2 -129
  95. package/esm2015/lib/models/pagination.model.js +2 -18
  96. package/esm2015/lib/models/person.model.js +17 -92
  97. package/esm2015/lib/models/public_api.js +6 -11
  98. package/esm2015/lib/models/search-options.model.js +2 -22
  99. package/esm2015/lib/models/tcDocument.model.js +2 -18
  100. package/esm2015/lib/models/timeout-notification.model.js +2 -18
  101. package/esm2015/lib/models/user-details.model.js +2 -22
  102. package/esm2015/lib/models/user.model.js +2 -25
  103. package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +9 -84
  104. package/esm2015/lib/services/cookie/cookie.service.js +8 -71
  105. package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +4 -43
  106. package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +2 -28
  107. package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +12 -94
  108. package/esm2015/lib/services/filter/filter.service.js +2 -56
  109. package/esm2015/lib/services/find-person/find-person.service.js +15 -123
  110. package/esm2015/lib/services/google-analytics/google-analytics.service.js +8 -63
  111. package/esm2015/lib/services/google-tag-manager/google-tag-manager.service.js +10 -64
  112. package/esm2015/lib/services/index.js +2 -7
  113. package/esm2015/lib/services/loading/loading.service.js +2 -41
  114. package/esm2015/lib/services/locations/location.service.js +14 -32
  115. package/esm2015/lib/services/manage-session/manage-session.services.js +10 -63
  116. package/esm2015/lib/services/public-api.js +17 -22
  117. package/esm2015/lib/services/role-guard/role.guard.js +12 -53
  118. package/esm2015/lib/services/role-guard/role.service.js +2 -21
  119. package/esm2015/lib/services/session-storage/session-storage.service.js +3 -17
  120. package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +9 -75
  121. package/esm2015/lib/window.js +1 -10
  122. package/esm2015/public-api.js +8 -13
  123. package/fesm2015/hmcts-rpx-xui-common-lib.js +943 -4959
  124. package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
  125. package/hmcts-rpx-xui-common-lib.d.ts +1 -0
  126. package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
  127. package/lib/components/checkbox-list/checkbox-list.component.d.ts +6 -5
  128. package/lib/components/due-date/due-date.component.d.ts +4 -4
  129. package/lib/components/find-location/find-location.component.d.ts +6 -5
  130. package/lib/components/generic-filter/generic-filter.component.d.ts +4 -2
  131. package/lib/components/invite-user-form/invite-user-form.component.d.ts +1 -1
  132. package/lib/components/public_api.d.ts +5 -0
  133. package/lib/components/search-judicials/search-judicials.component.d.ts +1 -1
  134. package/lib/components/search-location/search-location.component.d.ts +6 -7
  135. package/lib/components/search-venue/search-venue.component.d.ts +1 -1
  136. package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +1 -1
  137. package/lib/directives/let/let.directive.d.ts +1 -1
  138. package/lib/exui-common-lib.module.d.ts +3 -1
  139. package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +1 -1
  140. package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +1 -1
  141. package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +1 -1
  142. package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +1 -1
  143. package/lib/gov-ui/components/public_api.d.ts +20 -0
  144. package/lib/gov-ui/public_api.d.ts +1 -0
  145. package/lib/models/filter.model.d.ts +0 -2
  146. package/lib/models/index.d.ts +0 -1
  147. package/lib/models/location.model.d.ts +0 -11
  148. package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
  149. package/lib/services/loading/loading.service.d.ts +2 -2
  150. package/lib/services/locations/location.service.d.ts +2 -2
  151. package/lib/services/role-guard/role.service.d.ts +2 -1
  152. package/lib/window.d.ts +1 -1
  153. package/package.json +6 -19
  154. package/esm5/hmcts-rpx-xui-common-lib.js +0 -73
  155. package/esm5/lib/components/accessibility/accessibility.component.js +0 -22
  156. package/esm5/lib/components/checkbox-list/checkbox-list.component.js +0 -391
  157. package/esm5/lib/components/contact-details/contact-details.component.js +0 -29
  158. package/esm5/lib/components/cookie-banner/cookie-banner.component.js +0 -154
  159. package/esm5/lib/components/due-date/due-date.component.js +0 -254
  160. package/esm5/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +0 -45
  161. package/esm5/lib/components/find-location/find-location.component.js +0 -293
  162. package/esm5/lib/components/find-person/find-person.component.js +0 -286
  163. package/esm5/lib/components/generic-filter/generic-filter-utils.js +0 -66
  164. package/esm5/lib/components/generic-filter/generic-filter.component.js +0 -839
  165. package/esm5/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +0 -47
  166. package/esm5/lib/components/index.js +0 -7
  167. package/esm5/lib/components/invite-user-form/invite-user-form.component.js +0 -54
  168. package/esm5/lib/components/invite-user-permissions/invite-user-permission.component.js +0 -46
  169. package/esm5/lib/components/loading-spinner/loading-spinner.component.js +0 -29
  170. package/esm5/lib/components/pagination/pagination.component.js +0 -58
  171. package/esm5/lib/components/public_api.js +0 -33
  172. package/esm5/lib/components/search-judicials/search-judicials.component.js +0 -291
  173. package/esm5/lib/components/search-location/search-location.component.js +0 -330
  174. package/esm5/lib/components/search-venue/search-venue.component.js +0 -290
  175. package/esm5/lib/components/selected-case/selected-case.component.js +0 -430
  176. package/esm5/lib/components/selected-case-confirm/selected-case-confirm.component.js +0 -84
  177. package/esm5/lib/components/selected-case-list/selected-case-list.component.js +0 -109
  178. package/esm5/lib/components/service-message/service-message.component.js +0 -46
  179. package/esm5/lib/components/service-messages/service-messages.component.js +0 -122
  180. package/esm5/lib/components/share-case/share-case.component.js +0 -223
  181. package/esm5/lib/components/share-case-confirm/share-case-confirm.component.js +0 -70
  182. package/esm5/lib/components/tab/tab.component.js +0 -51
  183. package/esm5/lib/components/tc-confirm/tc-confirm.component.js +0 -42
  184. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +0 -22
  185. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +0 -22
  186. package/esm5/lib/components/terms-and-conditions/terms-and-conditions.component.js +0 -29
  187. package/esm5/lib/components/user-details/user-details.component.js +0 -92
  188. package/esm5/lib/components/user-list/user-list.component.js +0 -76
  189. package/esm5/lib/components/user-select/user-select.component.js +0 -131
  190. package/esm5/lib/directives/feature-toggle/feature-toggle.directive.js +0 -104
  191. package/esm5/lib/directives/index.js +0 -7
  192. package/esm5/lib/directives/let/let.directive.js +0 -78
  193. package/esm5/lib/directives/public-api.js +0 -8
  194. package/esm5/lib/exui-common-lib.module.js +0 -162
  195. package/esm5/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +0 -56
  196. package/esm5/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +0 -36
  197. package/esm5/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +0 -135
  198. package/esm5/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +0 -37
  199. package/esm5/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -49
  200. package/esm5/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +0 -65
  201. package/esm5/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +0 -40
  202. package/esm5/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +0 -66
  203. package/esm5/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +0 -34
  204. package/esm5/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +0 -67
  205. package/esm5/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +0 -36
  206. package/esm5/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +0 -52
  207. package/esm5/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +0 -77
  208. package/esm5/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +0 -50
  209. package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +0 -38
  210. package/esm5/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +0 -108
  211. package/esm5/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +0 -40
  212. package/esm5/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +0 -87
  213. package/esm5/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +0 -51
  214. package/esm5/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +0 -49
  215. package/esm5/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +0 -46
  216. package/esm5/lib/gov-ui/components/index.js +0 -7
  217. package/esm5/lib/gov-ui/components/public_api.js +0 -7
  218. package/esm5/lib/gov-ui/directives/remove-host.directive.js +0 -52
  219. package/esm5/lib/gov-ui/gov-ui.service.js +0 -22
  220. package/esm5/lib/gov-ui/index.js +0 -7
  221. package/esm5/lib/gov-ui/models/banner-data-model.js +0 -16
  222. package/esm5/lib/gov-ui/models/checkboxes-model.js +0 -22
  223. package/esm5/lib/gov-ui/models/error-messages-model.js +0 -16
  224. package/esm5/lib/gov-ui/models/gov-ui-config-model.js +0 -36
  225. package/esm5/lib/gov-ui/models/index.js +0 -7
  226. package/esm5/lib/gov-ui/models/isession-storage.interface.js +0 -24
  227. package/esm5/lib/gov-ui/models/public_api.js +0 -13
  228. package/esm5/lib/gov-ui/public_api.js +0 -12
  229. package/esm5/lib/gov-ui/util/helpers/html-templates.helper.js +0 -57
  230. package/esm5/lib/gov-ui/util/session-storage/session-storage-utils.js +0 -58
  231. package/esm5/lib/gov-ui/validators/checkboxes-be-checked.validator.js +0 -38
  232. package/esm5/lib/gov-ui/validators/date.validator.js +0 -32
  233. package/esm5/lib/gov-ui/validators/index.js +0 -7
  234. package/esm5/lib/gov-ui/validators/public_api.js +0 -12
  235. package/esm5/lib/gov-ui/validators/radio-group.validator.js +0 -27
  236. package/esm5/lib/models/case-share.model.js +0 -26
  237. package/esm5/lib/models/contact-details.model.js +0 -31
  238. package/esm5/lib/models/due-date.model.js +0 -15
  239. package/esm5/lib/models/feature-user.js +0 -28
  240. package/esm5/lib/models/filter.model.js +0 -124
  241. package/esm5/lib/models/idle-config.model.js +0 -20
  242. package/esm5/lib/models/index.js +0 -20
  243. package/esm5/lib/models/location.model.js +0 -129
  244. package/esm5/lib/models/pagination.model.js +0 -18
  245. package/esm5/lib/models/person.model.js +0 -92
  246. package/esm5/lib/models/public_api.js +0 -11
  247. package/esm5/lib/models/search-options.model.js +0 -22
  248. package/esm5/lib/models/tcDocument.model.js +0 -18
  249. package/esm5/lib/models/timeout-notification.model.js +0 -18
  250. package/esm5/lib/models/user-details.model.js +0 -22
  251. package/esm5/lib/models/user.model.js +0 -25
  252. package/esm5/lib/services/case-sharing-state/case-sharing-state.service.js +0 -289
  253. package/esm5/lib/services/cookie/cookie.service.js +0 -136
  254. package/esm5/lib/services/feature-toggle/feature-toggle.guard.js +0 -89
  255. package/esm5/lib/services/feature-toggle/feature-toggle.service.js +0 -90
  256. package/esm5/lib/services/feature-toggle/launch-darkly.service.js +0 -187
  257. package/esm5/lib/services/filter/filter.service.js +0 -153
  258. package/esm5/lib/services/find-person/find-person.service.js +0 -238
  259. package/esm5/lib/services/google-analytics/google-analytics.service.js +0 -128
  260. package/esm5/lib/services/google-tag-manager/google-tag-manager.service.js +0 -135
  261. package/esm5/lib/services/index.js +0 -7
  262. package/esm5/lib/services/loading/loading.service.js +0 -109
  263. package/esm5/lib/services/locations/location.service.js +0 -86
  264. package/esm5/lib/services/manage-session/manage-session.services.js +0 -111
  265. package/esm5/lib/services/public-api.js +0 -25
  266. package/esm5/lib/services/role-guard/role.guard.js +0 -81
  267. package/esm5/lib/services/role-guard/role.service.js +0 -45
  268. package/esm5/lib/services/session-storage/session-storage.service.js +0 -96
  269. package/esm5/lib/services/timeout-notifications/timeout-notifications.service.js +0 -190
  270. package/esm5/lib/window.js +0 -13
  271. package/esm5/public-api.js +0 -16
  272. package/fesm5/hmcts-rpx-xui-common-lib.js +0 -9423
  273. package/fesm5/hmcts-rpx-xui-common-lib.js.map +0 -1
@@ -1,92 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/models/person.model.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- /**
7
- * @record
8
- */
9
- export function Person() { }
10
- if (false) {
11
- /** @type {?} */
12
- Person.prototype.id;
13
- /** @type {?} */
14
- Person.prototype.name;
15
- /** @type {?|undefined} */
16
- Person.prototype.email;
17
- /** @type {?} */
18
- Person.prototype.domain;
19
- /** @type {?|undefined} */
20
- Person.prototype.knownAs;
21
- }
22
- /**
23
- * @record
24
- */
25
- export function JudicialUserModel() { }
26
- if (false) {
27
- /** @type {?} */
28
- JudicialUserModel.prototype.emailId;
29
- /** @type {?} */
30
- JudicialUserModel.prototype.fullName;
31
- /** @type {?} */
32
- JudicialUserModel.prototype.idamId;
33
- /** @type {?} */
34
- JudicialUserModel.prototype.isJudge;
35
- /** @type {?} */
36
- JudicialUserModel.prototype.isMagistrate;
37
- /** @type {?} */
38
- JudicialUserModel.prototype.isPanelMember;
39
- /** @type {?} */
40
- JudicialUserModel.prototype.knownAs;
41
- /** @type {?} */
42
- JudicialUserModel.prototype.personalCode;
43
- /** @type {?} */
44
- JudicialUserModel.prototype.surname;
45
- /** @type {?} */
46
- JudicialUserModel.prototype.title;
47
- }
48
- /**
49
- * @record
50
- */
51
- export function CaseworkersByService() { }
52
- if (false) {
53
- /** @type {?} */
54
- CaseworkersByService.prototype.service;
55
- /** @type {?} */
56
- CaseworkersByService.prototype.caseworkers;
57
- }
58
- /**
59
- * @record
60
- */
61
- export function Caseworker() { }
62
- if (false) {
63
- /** @type {?} */
64
- Caseworker.prototype.idamId;
65
- /** @type {?} */
66
- Caseworker.prototype.firstName;
67
- /** @type {?} */
68
- Caseworker.prototype.lastName;
69
- /** @type {?} */
70
- Caseworker.prototype.email;
71
- /** @type {?|undefined} */
72
- Caseworker.prototype.knownAs;
73
- /** @type {?} */
74
- Caseworker.prototype.roleCategory;
75
- }
76
- /** @enum {string} */
77
- var PersonRole = {
78
- JUDICIAL: "Judicial",
79
- CASEWORKER: "Legal Ops",
80
- ADMIN: "Admin",
81
- ALL: "All",
82
- };
83
- export { PersonRole };
84
- /** @enum {string} */
85
- var RoleCategory = {
86
- JUDICIAL: "JUDICIAL",
87
- CASEWORKER: "LEGAL_OPERATIONS",
88
- ADMIN: "ADMIN",
89
- ALL: "ALL",
90
- };
91
- export { RoleCategory };
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvcGVyc29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsNEJBTUM7OztJQUxDLG9CQUFXOztJQUNYLHNCQUFhOztJQUNiLHVCQUFlOztJQUNmLHdCQUFlOztJQUNmLHlCQUFpQjs7Ozs7QUFHbkIsdUNBV0M7OztJQVZDLG9DQUFnQjs7SUFDaEIscUNBQWlCOztJQUNqQixtQ0FBZTs7SUFDZixvQ0FBZ0I7O0lBQ2hCLHlDQUFxQjs7SUFDckIsMENBQXNCOztJQUN0QixvQ0FBZ0I7O0lBQ2hCLHlDQUFxQjs7SUFDckIsb0NBQWdCOztJQUNoQixrQ0FBYzs7Ozs7QUFHaEIsMENBR0M7OztJQUZDLHVDQUFnQjs7SUFDaEIsMkNBQTBCOzs7OztBQUc1QixnQ0FPQzs7O0lBTkMsNEJBQWU7O0lBQ2YsK0JBQWtCOztJQUNsQiw4QkFBaUI7O0lBQ2pCLDJCQUFjOztJQUNkLDZCQUFpQjs7SUFDakIsa0NBQXFCOzs7QUFHdkIsSUFBWSxVQUFVO0lBQ3BCLFFBQVEsWUFBYTtJQUNyQixVQUFVLGFBQWM7SUFDeEIsS0FBSyxTQUFVO0lBQ2YsR0FBRyxPQUFRO0VBQ1o7OztBQUlELElBQVksWUFBWTtJQUN0QixRQUFRLFlBQWE7SUFDckIsVUFBVSxvQkFBcUI7SUFDL0IsS0FBSyxTQUFVO0lBQ2YsR0FBRyxPQUFRO0VBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFBlcnNvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgZW1haWw/OiBzdHJpbmc7XG4gIGRvbWFpbjogc3RyaW5nO1xuICBrbm93bkFzPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEp1ZGljaWFsVXNlck1vZGVsIHtcbiAgZW1haWxJZDogc3RyaW5nO1xuICBmdWxsTmFtZTogc3RyaW5nO1xuICBpZGFtSWQ6IHN0cmluZztcbiAgaXNKdWRnZTogc3RyaW5nO1xuICBpc01hZ2lzdHJhdGU6IHN0cmluZztcbiAgaXNQYW5lbE1lbWJlcjogc3RyaW5nO1xuICBrbm93bkFzOiBzdHJpbmc7XG4gIHBlcnNvbmFsQ29kZTogc3RyaW5nO1xuICBzdXJuYW1lOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FzZXdvcmtlcnNCeVNlcnZpY2Uge1xuICBzZXJ2aWNlOiBzdHJpbmc7XG4gIGNhc2V3b3JrZXJzOiBDYXNld29ya2VyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FzZXdvcmtlciB7XG4gIGlkYW1JZDogc3RyaW5nO1xuICBmaXJzdE5hbWU6IHN0cmluZztcbiAgbGFzdE5hbWU6IHN0cmluZztcbiAgZW1haWw6IHN0cmluZztcbiAga25vd25Bcz86IHN0cmluZztcbiAgcm9sZUNhdGVnb3J5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFBlcnNvblJvbGUge1xuICBKVURJQ0lBTCA9ICdKdWRpY2lhbCcsXG4gIENBU0VXT1JLRVIgPSAnTGVnYWwgT3BzJyxcbiAgQURNSU4gPSAnQWRtaW4nLFxuICBBTEwgPSAnQWxsJyxcbn1cblxuLy8gTm90ZTogUm9sZUNhdGVnb3J5IGNvdWxkIHJlcGxhY2UgUGVyc29uUm9sZSBwb3NzaWJseVxuLy8gSG93ZXZlciBhIGxvdCBvZiB3ZWJhcHAgbG9naWMgaXMgYmFzZWQgb24gY3VycmVudCBQZXJzb25Sb2xlIHVuZGVyc3RhbmRpbmdcbmV4cG9ydCBlbnVtIFJvbGVDYXRlZ29yeSB7XG4gIEpVRElDSUFMID0gJ0pVRElDSUFMJyxcbiAgQ0FTRVdPUktFUiA9ICdMRUdBTF9PUEVSQVRJT05TJyxcbiAgQURNSU4gPSAnQURNSU4nLFxuICBBTEwgPSAnQUxMJ1xufVxuIl19
@@ -1,11 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/models/public_api.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- export {} from './tcDocument.model';
7
- export { BadgeColour } from './contact-details.model';
8
- export { AnonymousFeatureUser, LoggedInFeatureUser } from './feature-user';
9
- export {} from './user.model';
10
- export { RadioFilterFieldConfig } from './filter.model';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxlQUFjLG9CQUFvQixDQUFDO0FBQ25DLDRCQUFjLHlCQUF5QixDQUFDO0FBQ3hDLDBEQUFjLGdCQUFnQixDQUFDO0FBQy9CLGVBQWMsY0FBYyxDQUFDO0FBQzdCLHVDQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90Y0RvY3VtZW50Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1kZXRhaWxzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS11c2VyJztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci5tb2RlbCc7XG4iXX0=
@@ -1,22 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/models/search-options.model.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- /**
7
- * @record
8
- */
9
- export function SearchOptions() { }
10
- if (false) {
11
- /** @type {?} */
12
- SearchOptions.prototype.searchTerm;
13
- /** @type {?} */
14
- SearchOptions.prototype.userRole;
15
- /** @type {?} */
16
- SearchOptions.prototype.services;
17
- /** @type {?|undefined} */
18
- SearchOptions.prototype.userIncluded;
19
- /** @type {?|undefined} */
20
- SearchOptions.prototype.assignedUser;
21
- }
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLW9wdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9zZWFyY2gtb3B0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUVBLG1DQU1DOzs7SUFMQyxtQ0FBbUI7O0lBQ25CLGlDQUFxQjs7SUFDckIsaUNBQW1COztJQUNuQixxQ0FBdUI7O0lBQ3ZCLHFDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBlcnNvblJvbGUgfSBmcm9tICcuL3BlcnNvbi5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoT3B0aW9ucyB7XG4gIHNlYXJjaFRlcm06IHN0cmluZztcbiAgdXNlclJvbGU6IFBlcnNvblJvbGU7XG4gIHNlcnZpY2VzOiBzdHJpbmdbXTtcbiAgdXNlckluY2x1ZGVkPzogYm9vbGVhbjtcbiAgYXNzaWduZWRVc2VyPzogc3RyaW5nO1xufVxuIl19
@@ -1,18 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/models/tcDocument.model.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- /**
7
- * @record
8
- */
9
- export function TCDocument() { }
10
- if (false) {
11
- /** @type {?} */
12
- TCDocument.prototype.version;
13
- /** @type {?} */
14
- TCDocument.prototype.content;
15
- /** @type {?} */
16
- TCDocument.prototype.mimeType;
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGNEb2N1bWVudC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL3RjRG9jdW1lbnQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxnQ0FJQzs7O0lBSEcsNkJBQWdCOztJQUNoQiw2QkFBZ0I7O0lBQ2hCLDhCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVENEb2N1bWVudCB7XG4gICAgdmVyc2lvbjogbnVtYmVyO1xuICAgIGNvbnRlbnQ6IHN0cmluZztcbiAgICBtaW1lVHlwZTogc3RyaW5nO1xufVxuIl19
@@ -1,18 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/models/timeout-notification.model.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- /**
7
- * @record
8
- */
9
- export function TimeoutNotificationConfig() { }
10
- if (false) {
11
- /** @type {?} */
12
- TimeoutNotificationConfig.prototype.idleModalDisplayTime;
13
- /** @type {?} */
14
- TimeoutNotificationConfig.prototype.totalIdleTime;
15
- /** @type {?|undefined} */
16
- TimeoutNotificationConfig.prototype.idleServiceName;
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZW91dC1ub3RpZmljYXRpb24ubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL21vZGVscy90aW1lb3V0LW5vdGlmaWNhdGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLCtDQUlDOzs7SUFIQyx5REFBNkI7O0lBQzdCLGtEQUFzQjs7SUFDdEIsb0RBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUaW1lb3V0Tm90aWZpY2F0aW9uQ29uZmlnIHtcbiAgaWRsZU1vZGFsRGlzcGxheVRpbWU6IG51bWJlcjtcbiAgdG90YWxJZGxlVGltZTogbnVtYmVyO1xuICBpZGxlU2VydmljZU5hbWU/OiBzdHJpbmc7XG59XG4iXX0=
@@ -1,22 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/models/user-details.model.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- /**
7
- * @record
8
- */
9
- export function UserDetails() { }
10
- if (false) {
11
- /** @type {?|undefined} */
12
- UserDetails.prototype.caseRoles;
13
- /** @type {?} */
14
- UserDetails.prototype.email;
15
- /** @type {?} */
16
- UserDetails.prototype.firstName;
17
- /** @type {?} */
18
- UserDetails.prototype.idamId;
19
- /** @type {?} */
20
- UserDetails.prototype.lastName;
21
- }
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1kZXRhaWxzLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvdXNlci1kZXRhaWxzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsaUNBTUM7OztJQUxDLGdDQUFtQjs7SUFDbkIsNEJBQWM7O0lBQ2QsZ0NBQWtCOztJQUNsQiw2QkFBZTs7SUFDZiwrQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFVzZXJEZXRhaWxzIHtcbiAgY2FzZVJvbGVzPzogc3RyaW5nO1xuICBlbWFpbDogc3RyaW5nO1xuICBmaXJzdE5hbWU6IHN0cmluZztcbiAgaWRhbUlkOiBzdHJpbmc7XG4gIGxhc3ROYW1lOiBzdHJpbmc7XG59XG4iXX0=
@@ -1,25 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/models/user.model.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- /**
7
- * @record
8
- */
9
- export function User() { }
10
- if (false) {
11
- /** @type {?|undefined} */
12
- User.prototype.routerLink;
13
- /** @type {?|undefined} */
14
- User.prototype.routerLinkTitle;
15
- /** @type {?|undefined} */
16
- User.prototype.fullName;
17
- /** @type {?|undefined} */
18
- User.prototype.email;
19
- /** @type {?|undefined} */
20
- User.prototype.status;
21
- /** @type {?|undefined} */
22
- User.prototype.resendInvite;
23
- /* Skipping unhandled member: [key: string]: any;*/
24
- }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL3VzZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSwwQkFRQzs7O0lBTkcsMEJBQW9COztJQUNwQiwrQkFBeUI7O0lBQ3pCLHdCQUFrQjs7SUFDbEIscUJBQWU7O0lBQ2Ysc0JBQWdCOztJQUNoQiw0QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFVzZXIge1xuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICByb3V0ZXJMaW5rPzogc3RyaW5nO1xuICAgIHJvdXRlckxpbmtUaXRsZT86IHN0cmluZztcbiAgICBmdWxsTmFtZT86IHN0cmluZztcbiAgICBlbWFpbD86IHN0cmluZztcbiAgICBzdGF0dXM/OiBzdHJpbmc7XG4gICAgcmVzZW5kSW52aXRlPzogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -1,289 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/services/case-sharing-state/case-sharing-state.service.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import * as tslib_1 from "tslib";
7
- import { Injectable } from '@angular/core';
8
- import { BehaviorSubject } from 'rxjs';
9
- import { distinctUntilChanged } from 'rxjs/operators';
10
- import * as i0 from "@angular/core";
11
- var CaseSharingStateService = /** @class */ (function () {
12
- function CaseSharingStateService() {
13
- this.caseState = [];
14
- this.subject = new BehaviorSubject(this.caseState);
15
- }
16
- Object.defineProperty(CaseSharingStateService.prototype, "state", {
17
- get: /**
18
- * @return {?}
19
- */
20
- function () {
21
- return this.subject.asObservable().pipe(distinctUntilChanged());
22
- },
23
- enumerable: true,
24
- configurable: true
25
- });
26
- /**
27
- * @param {?} cases
28
- * @return {?}
29
- */
30
- CaseSharingStateService.prototype.setCases = /**
31
- * @param {?} cases
32
- * @return {?}
33
- */
34
- function (cases) {
35
- var _this = this;
36
- this.caseState = [];
37
- cases.forEach((/**
38
- * @param {?} aCase
39
- * @return {?}
40
- */
41
- function (aCase) {
42
- _this.caseState.push({ caseId: aCase.caseId, caseTitle: aCase.caseTitle, caseTypeId: aCase.caseTypeId, roles: aCase.roles,
43
- sharedWith: aCase.sharedWith, pendingShares: aCase.pendingShares, pendingUnshares: aCase.pendingUnshares });
44
- }));
45
- this.subject.next(this.caseState);
46
- };
47
- /**
48
- * @return {?}
49
- */
50
- CaseSharingStateService.prototype.getCases = /**
51
- * @return {?}
52
- */
53
- function () {
54
- return this.caseState;
55
- };
56
- /**
57
- * @param {?} user
58
- * @return {?}
59
- */
60
- CaseSharingStateService.prototype.requestShare = /**
61
- * @param {?} user
62
- * @return {?}
63
- */
64
- function (user) {
65
- var e_1, _a;
66
- /** @type {?} */
67
- var oldSharedCases = this.caseState.slice();
68
- /** @type {?} */
69
- var newSharedCases = [];
70
- try {
71
- for (var oldSharedCases_1 = tslib_1.__values(oldSharedCases), oldSharedCases_1_1 = oldSharedCases_1.next(); !oldSharedCases_1_1.done; oldSharedCases_1_1 = oldSharedCases_1.next()) {
72
- var sharedCase = oldSharedCases_1_1.value;
73
- if (!sharedCase.pendingShares) {
74
- sharedCase.pendingShares = [];
75
- }
76
- /** @type {?} */
77
- var newPendingShares = sharedCase.pendingShares.slice();
78
- if (!sharedCase.pendingUnshares) {
79
- sharedCase.pendingUnshares = [];
80
- }
81
- /** @type {?} */
82
- var newPendingUnshares = sharedCase.pendingUnshares.slice();
83
- if (!this.userHasAccess(sharedCase, user)) {
84
- if (!newPendingShares.some((/**
85
- * @param {?} u
86
- * @return {?}
87
- */
88
- function (u) { return u.email === user.email; }))) {
89
- newPendingShares.push(user);
90
- }
91
- }
92
- else {
93
- for (var u = 0, ul = newPendingUnshares.length; u < ul; u++) {
94
- if (newPendingUnshares[u].email === user.email) {
95
- newPendingUnshares.splice(u, 1);
96
- break;
97
- }
98
- }
99
- }
100
- /** @type {?} */
101
- var newSharedCase = tslib_1.__assign({}, sharedCase, { pendingUnshares: newPendingUnshares, pendingShares: newPendingShares });
102
- newSharedCases.push(newSharedCase);
103
- }
104
- }
105
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
106
- finally {
107
- try {
108
- if (oldSharedCases_1_1 && !oldSharedCases_1_1.done && (_a = oldSharedCases_1.return)) _a.call(oldSharedCases_1);
109
- }
110
- finally { if (e_1) throw e_1.error; }
111
- }
112
- this.subject.next(newSharedCases);
113
- return newSharedCases;
114
- };
115
- /**
116
- * @param {?} caseId
117
- * @param {?} user
118
- * @return {?}
119
- */
120
- CaseSharingStateService.prototype.requestUnshare = /**
121
- * @param {?} caseId
122
- * @param {?} user
123
- * @return {?}
124
- */
125
- function (caseId, user) {
126
- var e_2, _a;
127
- /** @type {?} */
128
- var newSharedCases = [];
129
- try {
130
- for (var _b = tslib_1.__values(this.caseState), _c = _b.next(); !_c.done; _c = _b.next()) {
131
- var sharedCase = _c.value;
132
- if (sharedCase.caseId === caseId) {
133
- if (!sharedCase.pendingUnshares) {
134
- sharedCase.pendingUnshares = [];
135
- }
136
- /** @type {?} */
137
- var newPendingUnshares = sharedCase.pendingUnshares.slice();
138
- if (newPendingUnshares) {
139
- if (!newPendingUnshares.some((/**
140
- * @param {?} u
141
- * @return {?}
142
- */
143
- function (u) { return u.email === user.email; }))) {
144
- newPendingUnshares.push(user);
145
- }
146
- }
147
- else {
148
- newPendingUnshares.push(user);
149
- }
150
- /** @type {?} */
151
- var newSharedCase = tslib_1.__assign({}, sharedCase, { pendingUnshares: newPendingUnshares });
152
- newSharedCases.push(newSharedCase);
153
- }
154
- else {
155
- newSharedCases.push(sharedCase);
156
- }
157
- }
158
- }
159
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
160
- finally {
161
- try {
162
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
163
- }
164
- finally { if (e_2) throw e_2.error; }
165
- }
166
- this.subject.next(newSharedCases);
167
- return;
168
- };
169
- /**
170
- * @param {?} caseId
171
- * @param {?} user
172
- * @return {?}
173
- */
174
- CaseSharingStateService.prototype.requestCancel = /**
175
- * @param {?} caseId
176
- * @param {?} user
177
- * @return {?}
178
- */
179
- function (caseId, user) {
180
- var e_3, _a;
181
- /** @type {?} */
182
- var newSharedCases = [];
183
- try {
184
- for (var _b = tslib_1.__values(this.caseState), _c = _b.next(); !_c.done; _c = _b.next()) {
185
- var sharedCase = _c.value;
186
- if (sharedCase.caseId === caseId) {
187
- if (!sharedCase.pendingUnshares) {
188
- sharedCase.pendingUnshares = [];
189
- }
190
- /** @type {?} */
191
- var newPendingUnshares = sharedCase.pendingUnshares.slice();
192
- for (var iPendingUnshares = 0; iPendingUnshares < newPendingUnshares.length; iPendingUnshares++) {
193
- if (newPendingUnshares[iPendingUnshares].email === user.email) {
194
- newPendingUnshares.splice(iPendingUnshares, 1);
195
- break;
196
- }
197
- }
198
- if (!sharedCase.pendingShares) {
199
- sharedCase.pendingShares = [];
200
- }
201
- /** @type {?} */
202
- var newPendingShares = sharedCase.pendingShares.slice();
203
- for (var iPendingShares = 0; iPendingShares < newPendingShares.length; iPendingShares++) {
204
- if (newPendingShares[iPendingShares].email === user.email) {
205
- newPendingShares.splice(iPendingShares, 1);
206
- break;
207
- }
208
- }
209
- /** @type {?} */
210
- var newSharedCase = tslib_1.__assign({}, sharedCase, { pendingUnshares: newPendingUnshares, pendingShares: newPendingShares });
211
- newSharedCases.push(newSharedCase);
212
- }
213
- else {
214
- newSharedCases.push(sharedCase);
215
- }
216
- }
217
- }
218
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
219
- finally {
220
- try {
221
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
222
- }
223
- finally { if (e_3) throw e_3.error; }
224
- }
225
- this.subject.next(newSharedCases);
226
- return;
227
- };
228
- /**
229
- * @param {?} caseId
230
- * @return {?}
231
- */
232
- CaseSharingStateService.prototype.removeCase = /**
233
- * @param {?} caseId
234
- * @return {?}
235
- */
236
- function (caseId) {
237
- for (var i = 0, l = this.caseState.length; i < l; i++) {
238
- if (this.caseState[i].caseId === caseId) {
239
- this.caseState.splice(i, 1);
240
- this.subject.next(this.caseState);
241
- return;
242
- }
243
- }
244
- };
245
- /**
246
- * @param {?} c
247
- * @param {?} user
248
- * @return {?}
249
- */
250
- CaseSharingStateService.prototype.userHasAccess = /**
251
- * @param {?} c
252
- * @param {?} user
253
- * @return {?}
254
- */
255
- function (c, user) {
256
- if (!c.sharedWith) {
257
- return false;
258
- }
259
- for (var i = 0, l = c.sharedWith.length; i < l; i++) {
260
- if (c.sharedWith[i].email === user.email) {
261
- return true;
262
- }
263
- }
264
- return false;
265
- };
266
- CaseSharingStateService.decorators = [
267
- { type: Injectable, args: [{
268
- providedIn: 'root'
269
- },] }
270
- ];
271
- /** @nocollapse */
272
- CaseSharingStateService.ctorParameters = function () { return []; };
273
- /** @nocollapse */ CaseSharingStateService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function CaseSharingStateService_Factory() { return new CaseSharingStateService(); }, token: CaseSharingStateService, providedIn: "root" });
274
- return CaseSharingStateService;
275
- }());
276
- export { CaseSharingStateService };
277
- if (false) {
278
- /**
279
- * @type {?}
280
- * @private
281
- */
282
- CaseSharingStateService.prototype.caseState;
283
- /**
284
- * @type {?}
285
- * @private
286
- */
287
- CaseSharingStateService.prototype.subject;
288
- }
289
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1zaGFyaW5nLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2Nhc2Utc2hhcmluZy1zdGF0ZS9jYXNlLXNoYXJpbmctc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSXREO0lBY0U7UUFUUSxjQUFTLEdBQWlCLEVBQUUsQ0FBQztRQUNwQixZQUFPLEdBQUcsSUFBSSxlQUFlLENBQWUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBUTdELENBQUM7SUFOakIsc0JBQVcsMENBQUs7Ozs7UUFBaEI7WUFDRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUNyQyxvQkFBb0IsRUFBRSxDQUN2QixDQUFDO1FBQ0osQ0FBQzs7O09BQUE7Ozs7O0lBSU0sMENBQVE7Ozs7SUFBZixVQUFnQixLQUFtQjtRQUFuQyxpQkFPQztRQU5DLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLEtBQUssQ0FBQyxPQUFPOzs7O1FBQUMsVUFBQSxLQUFLO1lBQ2pCLEtBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO2dCQUN0SCxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFB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QUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ2xDLE9BQU87YUFDUjtTQUNGO0lBQ0gsQ0FBQzs7Ozs7O0lBRU0sK0NBQWE7Ozs7O0lBQXBCLFVBQXFCLENBQWEsRUFBRSxJQUFpQjtRQUNuRCxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRTtZQUNqQixPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkQsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUN4QyxPQUFPLElBQUksQ0FBQzthQUNiO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7O2dCQXRKRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7OztrQ0FSRDtDQTZKQyxBQXZKRCxJQXVKQztTQXBKWSx1QkFBdUI7Ozs7OztJQUVsQyw0Q0FBcUM7Ozs7O0lBQ3JDLDBDQUE2RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTaGFyZWRDYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Nhc2Utc2hhcmUubW9kZWwnO1xuaW1wb3J0IHsgVXNlckRldGFpbHMgfSBmcm9tICcuLi8uLi9tb2RlbHMvdXNlci1kZXRhaWxzLm1vZGVsJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FzZVNoYXJpbmdTdGF0ZVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgY2FzZVN0YXRlOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBzdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTaGFyZWRDYXNlW10+KHRoaXMuY2FzZVN0YXRlKTtcblxuICBwdWJsaWMgZ2V0IHN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLnN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBwdWJsaWMgc2V0Q2FzZXMoY2FzZXM6IFNoYXJlZENhc2VbXSk6IHZvaWQge1xuICAgIHRoaXMuY2FzZVN0YXRlID0gW107XG4gICAgY2FzZXMuZm9yRWFjaChhQ2FzZSA9PiB7XG4gICAgICB0aGlzLmNhc2VTdGF0ZS5wdXNoKHsgY2FzZUlkOiBhQ2FzZS5jYXNlSWQsIGNhc2VUaXRsZTogYUNhc2UuY2FzZVRpdGxlLCBjYXNlVHlwZUlkOiBhQ2FzZS5jYXNlVHlwZUlkLCByb2xlczogYUNhc2Uucm9sZXMsXG4gICAgICAgIHNoYXJlZFdpdGg6IGFDYXNlLnNoYXJlZFdpdGgsIHBlbmRpbmdTaGFyZXM6IGFDYXNlLnBlbmRpbmdTaGFyZXMsIHBlbmRpbmdVbnNoYXJlczogYUNhc2UucGVuZGluZ1Vuc2hhcmVzIH0pO1xuICAgIH0pO1xuICAgIHRoaXMuc3ViamVjdC5uZXh0KHRoaXMuY2FzZVN0YXRlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDYXNlcygpOiBTaGFyZWRDYXNlW10ge1xuICAgIHJldHVybiB0aGlzLmNhc2VTdGF0ZTtcbiAgfVxuXG4gIHB1YmxpYyByZXF1ZXN0U2hhcmUodXNlcjogVXNlckRldGFpbHMpOiBTaGFyZWRDYXNlW10ge1xuICAgIGNvbnN0IG9sZFNoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSB0aGlzLmNhc2VTdGF0ZS5zbGljZSgpO1xuICAgIGNvbnN0IG5ld1NoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHNoYXJlZENhc2Ugb2Ygb2xkU2hhcmVkQ2FzZXMpIHtcbiAgICAgIGlmICghc2hhcmVkQ2FzZS5wZW5kaW5nU2hhcmVzKSB7XG4gICAgICAgIHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcyA9IFtdO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3UGVuZGluZ1NoYXJlcyA9IHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcy5zbGljZSgpO1xuICAgICAgaWYgKCFzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcykge1xuICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcyA9IFtdO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3UGVuZGluZ1Vuc2hhcmVzID0gc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMuc2xpY2UoKTtcbiAgICAgIGlmICghdGhpcy51c2VySGFzQWNjZXNzKHNoYXJlZENhc2UsIHVzZXIpKSB7XG4gICAgICAgIGlmICghbmV3UGVuZGluZ1NoYXJlcy5zb21lKHUgPT4gdS5lbWFpbCA9PT0gdXNlci5lbWFpbCkpIHtcbiAgICAgICAgICBuZXdQZW5kaW5nU2hhcmVzLnB1c2godXNlcik7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZvciAobGV0IHUgPSAwLCB1bCA9IG5ld1BlbmRpbmdVbnNoYXJlcy5sZW5ndGg7IHUgPCB1bDsgdSsrKSB7XG4gICAgICAgICAgaWYgKG5ld1BlbmRpbmdVbnNoYXJlc1t1XS5lbWFpbCA9PT0gdXNlci5lbWFpbCkge1xuICAgICAgICAgICAgbmV3UGVuZGluZ1Vuc2hhcmVzLnNwbGljZSh1LCAxKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgbmV3U2hhcmVkQ2FzZSA9IHtcbiAgICAgICAgLi4uc2hhcmVkQ2FzZSxcbiAgICAgICAgcGVuZGluZ1Vuc2hhcmVzOiBuZXdQZW5kaW5nVW5zaGFyZXMsXG4gICAgICAgIHBlbmRpbmdTaGFyZXM6IG5ld1BlbmRpbmdTaGFyZXNcbiAgICAgIH07XG4gICAgICBuZXdTaGFyZWRDYXNlcy5wdXNoKG5ld1NoYXJlZENhc2UpO1xuICAgIH1cbiAgICB0aGlzLnN1YmplY3QubmV4dChuZXdTaGFyZWRDYXNlcyk7XG4gICAgcmV0dXJuIG5ld1NoYXJlZENhc2VzO1xuICB9XG5cbiAgcHVibGljIHJlcXVlc3RVbnNoYXJlKGNhc2VJZDogc3RyaW5nLCB1c2VyOiBVc2VyRGV0YWlscyk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1NoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHNoYXJlZENhc2Ugb2YgdGhpcy5jYXNlU3RhdGUpIHtcbiAgICAgIGlmIChzaGFyZWRDYXNlLmNhc2VJZCA9PT0gY2FzZUlkKSB7XG4gICAgICAgIGlmICghc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMpIHtcbiAgICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1BlbmRpbmdVbnNoYXJlcyA9IHNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzLnNsaWNlKCk7XG4gICAgICAgIGlmIChuZXdQZW5kaW5nVW5zaGFyZXMpIHtcbiAgICAgICAgICBpZiAoIW5ld1BlbmRpbmdVbnNoYXJlcy5zb21lKHUgPT4gdS5lbWFpbCA9PT0gdXNlci5lbWFpbCkpIHtcbiAgICAgICAgICAgIG5ld1BlbmRpbmdVbnNoYXJlcy5wdXNoKHVzZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBuZXdQZW5kaW5nVW5zaGFyZXMucHVzaCh1c2VyKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXdTaGFyZWRDYXNlID0ge1xuICAgICAgICAgIC4uLnNoYXJlZENhc2UsXG4gICAgICAgICAgcGVuZGluZ1Vuc2hhcmVzOiBuZXdQZW5kaW5nVW5zaGFyZXNcbiAgICAgICAgfTtcbiAgICAgICAgbmV3U2hhcmVkQ2FzZXMucHVzaChuZXdTaGFyZWRDYXNlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ld1NoYXJlZENhc2VzLnB1c2goc2hhcmVkQ2FzZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc3ViamVjdC5uZXh0KG5ld1NoYXJlZENhc2VzKTtcbiAgICByZXR1cm47XG4gIH1cblxuICBwdWJsaWMgcmVxdWVzdENhbmNlbChjYXNlSWQ6IHN0cmluZywgdXNlcjogVXNlckRldGFpbHMpOiB2b2lkIHtcbiAgICBjb25zdCBuZXdTaGFyZWRDYXNlczogU2hhcmVkQ2FzZVtdID0gW107XG4gICAgZm9yIChjb25zdCBzaGFyZWRDYXNlIG9mIHRoaXMuY2FzZVN0YXRlKSB7XG4gICAgICBpZiAoc2hhcmVkQ2FzZS5jYXNlSWQgPT09IGNhc2VJZCkge1xuICAgICAgICBpZiAoIXNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzKSB7XG4gICAgICAgICAgc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXdQZW5kaW5nVW5zaGFyZXMgPSBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcy5zbGljZSgpO1xuICAgICAgICBmb3IgKGxldCBpUGVuZGluZ1Vuc2hhcmVzID0gMDsgaVBlbmRpbmdVbnNoYXJlcyA8IG5ld1BlbmRpbmdVbnNoYXJlcy5sZW5ndGg7IGlQZW5kaW5nVW5zaGFyZXMrKykge1xuICAgICAgICAgIGlmIChuZXdQZW5kaW5nVW5zaGFyZXNbaVBlbmRpbmdVbnNoYXJlc10uZW1haWwgPT09IHVzZXIuZW1haWwpIHtcbiAgICAgICAgICAgIG5ld1BlbmRpbmdVbnNoYXJlcy5zcGxpY2UoaVBlbmRpbmdVbnNoYXJlcywgMSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFzaGFyZWRDYXNlLnBlbmRpbmdTaGFyZXMpIHtcbiAgICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdTaGFyZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuZXdQZW5kaW5nU2hhcmVzID0gc2hhcmVkQ2FzZS5wZW5kaW5nU2hhcmVzLnNsaWNlKCk7XG4gICAgICAgIGZvciAobGV0IGlQZW5kaW5nU2hhcmVzID0gMDsgaVBlbmRpbmdTaGFyZXMgPCBuZXdQZW5kaW5nU2hhcmVzLmxlbmd0aDsgaVBlbmRpbmdTaGFyZXMrKykge1xuICAgICAgICAgIGlmIChuZXdQZW5kaW5nU2hhcmVzW2lQZW5kaW5nU2hhcmVzXS5lbWFpbCA9PT0gdXNlci5lbWFpbCkge1xuICAgICAgICAgICAgbmV3UGVuZGluZ1NoYXJlcy5zcGxpY2UoaVBlbmRpbmdTaGFyZXMsIDEpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1NoYXJlZENhc2UgPSB7XG4gICAgICAgICAgLi4uc2hhcmVkQ2FzZSxcbiAgICAgICAgICBwZW5kaW5nVW5zaGFyZXM6IG5ld1BlbmRpbmdVbnNoYXJlcyxcbiAgICAgICAgICBwZW5kaW5nU2hhcmVzOiBuZXdQZW5kaW5nU2hhcmVzXG4gICAgICAgIH07XG4gICAgICAgIG5ld1NoYXJlZENhc2VzLnB1c2gobmV3U2hhcmVkQ2FzZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdTaGFyZWRDYXNlcy5wdXNoKHNoYXJlZENhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnN1YmplY3QubmV4dChuZXdTaGFyZWRDYXNlcyk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUNhc2UoY2FzZUlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBmb3IgKGxldCBpID0gMCwgbCA9IHRoaXMuY2FzZVN0YXRlLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgaWYgKHRoaXMuY2FzZVN0YXRlW2ldLmNhc2VJZCA9PT0gY2FzZUlkKSB7XG4gICAgICAgIHRoaXMuY2FzZVN0YXRlLnNwbGljZShpLCAxKTtcbiAgICAgICAgdGhpcy5zdWJqZWN0Lm5leHQodGhpcy5jYXNlU3RhdGUpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHVzZXJIYXNBY2Nlc3MoYzogU2hhcmVkQ2FzZSwgdXNlcjogVXNlckRldGFpbHMpOiBib29sZWFuIHtcbiAgICBpZiAoIWMuc2hhcmVkV2l0aCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMCwgbCA9IGMuc2hhcmVkV2l0aC5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIGlmIChjLnNoYXJlZFdpdGhbaV0uZW1haWwgPT09IHVzZXIuZW1haWwpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19