@hmcts/rpx-xui-common-lib 1.8.0-angular-upgrade-9-rc.6 → 2.0.0-angular-upgrade-8

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 (280) hide show
  1. package/bundles/hmcts-rpx-xui-common-lib.umd.js +7435 -3173
  2. package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +1 -1
  3. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +2 -2
  4. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
  5. package/esm2015/hmcts-rpx-xui-common-lib.js +28 -22
  6. package/esm2015/lib/components/accessibility/accessibility.component.js +17 -13
  7. package/esm2015/lib/components/checkbox-list/checkbox-list.component.js +127 -45
  8. package/esm2015/lib/components/contact-details/contact-details.component.js +23 -16
  9. package/esm2015/lib/components/cookie-banner/cookie-banner.component.js +78 -31
  10. package/esm2015/lib/components/due-date/due-date.component.js +110 -24
  11. package/esm2015/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +34 -29
  12. package/esm2015/lib/components/find-location/find-location.component.js +140 -69
  13. package/esm2015/lib/components/find-person/find-person.component.js +180 -97
  14. package/esm2015/lib/components/generic-filter/generic-filter-utils.js +55 -11
  15. package/esm2015/lib/components/generic-filter/generic-filter.component.js +293 -54
  16. package/esm2015/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +29 -20
  17. package/esm2015/lib/components/index.js +7 -2
  18. package/esm2015/lib/components/invite-user-form/invite-user-form.component.js +33 -23
  19. package/esm2015/lib/components/invite-user-permissions/invite-user-permission.component.js +35 -34
  20. package/esm2015/lib/components/loading-spinner/loading-spinner.component.js +22 -16
  21. package/esm2015/lib/components/pagination/pagination.component.js +38 -28
  22. package/esm2015/lib/components/public_api.js +33 -33
  23. package/esm2015/lib/components/search-judicials/search-judicials.component.js +156 -70
  24. package/esm2015/lib/components/search-location/search-location.component.js +183 -80
  25. package/esm2015/lib/components/search-venue/search-venue.component.js +154 -62
  26. package/esm2015/lib/components/selected-case/selected-case.component.js +191 -54
  27. package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +53 -22
  28. package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +68 -38
  29. package/esm2015/lib/components/service-message/service-message.component.js +32 -23
  30. package/esm2015/lib/components/service-messages/service-messages.component.js +77 -29
  31. package/esm2015/lib/components/share-case/share-case.component.js +104 -45
  32. package/esm2015/lib/components/share-case-confirm/share-case-confirm.component.js +50 -27
  33. package/esm2015/lib/components/tab/tab.component.js +37 -19
  34. package/esm2015/lib/components/tc-confirm/tc-confirm.component.js +29 -20
  35. package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +17 -13
  36. package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +17 -13
  37. package/esm2015/lib/components/terms-and-conditions/terms-and-conditions.component.js +23 -16
  38. package/esm2015/lib/components/user-details/user-details.component.js +57 -47
  39. package/esm2015/lib/components/user-list/user-list.component.js +54 -19
  40. package/esm2015/lib/components/user-select/user-select.component.js +64 -23
  41. package/esm2015/lib/directives/feature-toggle/feature-toggle.directive.js +67 -21
  42. package/esm2015/lib/directives/index.js +7 -2
  43. package/esm2015/lib/directives/let/let.directive.js +49 -16
  44. package/esm2015/lib/directives/public-api.js +8 -3
  45. package/esm2015/lib/exui-common-lib.module.js +40 -31
  46. package/esm2015/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +34 -23
  47. package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +23 -18
  48. package/esm2015/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +68 -30
  49. package/esm2015/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +25 -19
  50. package/esm2015/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +28 -19
  51. package/esm2015/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +36 -23
  52. package/esm2015/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +28 -23
  53. package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +35 -24
  54. package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +22 -15
  55. package/esm2015/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +35 -23
  56. package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +23 -18
  57. package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +34 -27
  58. package/esm2015/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +47 -32
  59. package/esm2015/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +29 -22
  60. package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +26 -20
  61. package/esm2015/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +56 -26
  62. package/esm2015/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +27 -17
  63. package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +52 -40
  64. package/esm2015/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +49 -0
  65. package/esm2015/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +36 -29
  66. package/esm2015/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +40 -18
  67. package/esm2015/lib/gov-ui/components/index.js +7 -2
  68. package/esm2015/lib/gov-ui/components/public_api.js +7 -21
  69. package/esm2015/lib/gov-ui/directives/remove-host.directive.js +30 -12
  70. package/esm2015/lib/gov-ui/gov-ui.service.js +16 -12
  71. package/esm2015/lib/gov-ui/index.js +7 -2
  72. package/esm2015/lib/gov-ui/models/banner-data-model.js +16 -1
  73. package/esm2015/lib/gov-ui/models/checkboxes-model.js +22 -1
  74. package/esm2015/lib/gov-ui/models/error-messages-model.js +16 -1
  75. package/esm2015/lib/gov-ui/models/gov-ui-config-model.js +36 -1
  76. package/esm2015/lib/gov-ui/models/index.js +7 -1
  77. package/esm2015/lib/gov-ui/models/isession-storage.interface.js +24 -1
  78. package/esm2015/lib/gov-ui/models/public_api.js +10 -1
  79. package/esm2015/lib/gov-ui/public_api.js +9 -5
  80. package/esm2015/lib/gov-ui/util/helpers/html-templates.helper.js +14 -4
  81. package/esm2015/lib/gov-ui/util/session-storage/session-storage-utils.js +48 -12
  82. package/esm2015/lib/gov-ui/validators/checkboxes-be-checked.validator.js +24 -5
  83. package/esm2015/lib/gov-ui/validators/date.validator.js +20 -3
  84. package/esm2015/lib/gov-ui/validators/index.js +7 -2
  85. package/esm2015/lib/gov-ui/validators/public_api.js +9 -4
  86. package/esm2015/lib/gov-ui/validators/radio-group.validator.js +15 -3
  87. package/esm2015/lib/models/case-share.model.js +26 -1
  88. package/esm2015/lib/models/contact-details.model.js +31 -7
  89. package/esm2015/lib/models/due-date.model.js +14 -7
  90. package/esm2015/lib/models/feature-user.js +16 -1
  91. package/esm2015/lib/models/filter.model.js +116 -1
  92. package/esm2015/lib/models/idle-config.model.js +20 -1
  93. package/esm2015/lib/models/index.js +19 -6
  94. package/esm2015/lib/models/location.model.js +108 -1
  95. package/esm2015/lib/models/pagination.model.js +18 -0
  96. package/esm2015/lib/models/person.model.js +92 -17
  97. package/esm2015/lib/models/public_api.js +11 -4
  98. package/esm2015/lib/models/search-options.model.js +22 -1
  99. package/esm2015/lib/models/tcDocument.model.js +18 -1
  100. package/esm2015/lib/models/timeout-notification.model.js +18 -1
  101. package/esm2015/lib/models/user-details.model.js +22 -1
  102. package/esm2015/lib/models/user.model.js +25 -1
  103. package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +92 -19
  104. package/esm2015/lib/services/cookie/cookie.service.js +78 -19
  105. package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +51 -16
  106. package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +35 -11
  107. package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +101 -21
  108. package/esm2015/lib/services/filter/filter.service.js +63 -11
  109. package/esm2015/lib/services/find-person/find-person.service.js +130 -25
  110. package/esm2015/lib/services/google-analytics/google-analytics.service.js +70 -21
  111. package/esm2015/lib/services/google-tag-manager/google-tag-manager.service.js +71 -23
  112. package/esm2015/lib/services/index.js +7 -2
  113. package/esm2015/lib/services/loading/loading.service.js +48 -11
  114. package/esm2015/lib/services/locations/location.service.js +35 -22
  115. package/esm2015/lib/services/manage-session/manage-session.services.js +70 -21
  116. package/esm2015/lib/services/public-api.js +18 -13
  117. package/esm2015/lib/services/role-guard/role.guard.js +61 -24
  118. package/esm2015/lib/services/role-guard/role.service.js +28 -11
  119. package/esm2015/lib/services/session-storage/session-storage.service.js +24 -12
  120. package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +82 -20
  121. package/esm2015/lib/window.js +10 -1
  122. package/esm2015/public-api.js +13 -8
  123. package/esm5/hmcts-rpx-xui-common-lib.js +28 -22
  124. package/esm5/lib/components/accessibility/accessibility.component.js +15 -10
  125. package/esm5/lib/components/checkbox-list/checkbox-list.component.js +232 -57
  126. package/esm5/lib/components/contact-details/contact-details.component.js +22 -14
  127. package/esm5/lib/components/cookie-banner/cookie-banner.component.js +106 -36
  128. package/esm5/lib/components/due-date/due-date.component.js +142 -29
  129. package/esm5/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +33 -27
  130. package/esm5/lib/components/find-location/find-location.component.js +180 -80
  131. package/esm5/lib/components/find-person/find-person.component.js +203 -102
  132. package/esm5/lib/components/generic-filter/generic-filter-utils.js +57 -13
  133. package/esm5/lib/components/generic-filter/generic-filter.component.js +421 -85
  134. package/esm5/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +32 -19
  135. package/esm5/lib/components/index.js +7 -2
  136. package/esm5/lib/components/invite-user-form/invite-user-form.component.js +37 -23
  137. package/esm5/lib/components/invite-user-permissions/invite-user-permission.component.js +34 -32
  138. package/esm5/lib/components/loading-spinner/loading-spinner.component.js +21 -14
  139. package/esm5/lib/components/pagination/pagination.component.js +45 -28
  140. package/esm5/lib/components/public_api.js +33 -33
  141. package/esm5/lib/components/search-judicials/search-judicials.component.js +198 -78
  142. package/esm5/lib/components/search-location/search-location.component.js +217 -89
  143. package/esm5/lib/components/search-venue/search-venue.component.js +199 -71
  144. package/esm5/lib/components/selected-case/selected-case.component.js +279 -72
  145. package/esm5/lib/components/selected-case-confirm/selected-case-confirm.component.js +61 -22
  146. package/esm5/lib/components/selected-case-list/selected-case-list.component.js +82 -39
  147. package/esm5/lib/components/service-message/service-message.component.js +36 -22
  148. package/esm5/lib/components/service-messages/service-messages.component.js +91 -30
  149. package/esm5/lib/components/share-case/share-case.component.js +138 -52
  150. package/esm5/lib/components/share-case-confirm/share-case-confirm.component.js +49 -25
  151. package/esm5/lib/components/tab/tab.component.js +41 -18
  152. package/esm5/lib/components/tc-confirm/tc-confirm.component.js +32 -19
  153. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +15 -10
  154. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +15 -10
  155. package/esm5/lib/components/terms-and-conditions/terms-and-conditions.component.js +22 -14
  156. package/esm5/lib/components/user-details/user-details.component.js +71 -48
  157. package/esm5/lib/components/user-list/user-list.component.js +65 -18
  158. package/esm5/lib/components/user-select/user-select.component.js +92 -27
  159. package/esm5/lib/directives/feature-toggle/feature-toggle.directive.js +70 -21
  160. package/esm5/lib/directives/index.js +7 -2
  161. package/esm5/lib/directives/let/let.directive.js +51 -15
  162. package/esm5/lib/directives/public-api.js +8 -3
  163. package/esm5/lib/exui-common-lib.module.js +34 -22
  164. package/esm5/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +37 -22
  165. package/esm5/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +22 -16
  166. package/esm5/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +89 -32
  167. package/esm5/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +24 -17
  168. package/esm5/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +31 -18
  169. package/esm5/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +43 -23
  170. package/esm5/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +27 -21
  171. package/esm5/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +45 -24
  172. package/esm5/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +21 -13
  173. package/esm5/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +44 -18
  174. package/esm5/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +22 -16
  175. package/esm5/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +37 -26
  176. package/esm5/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +51 -31
  177. package/esm5/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +32 -21
  178. package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +25 -18
  179. package/esm5/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +71 -28
  180. package/esm5/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +27 -16
  181. package/esm5/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +60 -41
  182. package/esm5/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +51 -0
  183. package/esm5/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +36 -28
  184. package/esm5/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +39 -16
  185. package/esm5/lib/gov-ui/components/index.js +7 -2
  186. package/esm5/lib/gov-ui/components/public_api.js +7 -21
  187. package/esm5/lib/gov-ui/directives/remove-host.directive.js +29 -10
  188. package/esm5/lib/gov-ui/gov-ui.service.js +14 -9
  189. package/esm5/lib/gov-ui/index.js +7 -2
  190. package/esm5/lib/gov-ui/models/banner-data-model.js +16 -1
  191. package/esm5/lib/gov-ui/models/checkboxes-model.js +22 -1
  192. package/esm5/lib/gov-ui/models/error-messages-model.js +16 -1
  193. package/esm5/lib/gov-ui/models/gov-ui-config-model.js +36 -1
  194. package/esm5/lib/gov-ui/models/index.js +7 -1
  195. package/esm5/lib/gov-ui/models/isession-storage.interface.js +24 -1
  196. package/esm5/lib/gov-ui/models/public_api.js +10 -1
  197. package/esm5/lib/gov-ui/public_api.js +9 -5
  198. package/esm5/lib/gov-ui/util/helpers/html-templates.helper.js +34 -3
  199. package/esm5/lib/gov-ui/util/session-storage/session-storage-utils.js +48 -12
  200. package/esm5/lib/gov-ui/validators/checkboxes-be-checked.validator.js +24 -5
  201. package/esm5/lib/gov-ui/validators/date.validator.js +20 -3
  202. package/esm5/lib/gov-ui/validators/index.js +7 -2
  203. package/esm5/lib/gov-ui/validators/public_api.js +9 -4
  204. package/esm5/lib/gov-ui/validators/radio-group.validator.js +15 -3
  205. package/esm5/lib/models/case-share.model.js +26 -1
  206. package/esm5/lib/models/contact-details.model.js +31 -7
  207. package/esm5/lib/models/due-date.model.js +14 -7
  208. package/esm5/lib/models/feature-user.js +16 -1
  209. package/esm5/lib/models/filter.model.js +116 -1
  210. package/esm5/lib/models/idle-config.model.js +20 -1
  211. package/esm5/lib/models/index.js +19 -6
  212. package/esm5/lib/models/location.model.js +108 -1
  213. package/esm5/lib/models/pagination.model.js +18 -0
  214. package/esm5/lib/models/person.model.js +92 -17
  215. package/esm5/lib/models/public_api.js +11 -4
  216. package/esm5/lib/models/search-options.model.js +22 -1
  217. package/esm5/lib/models/tcDocument.model.js +18 -1
  218. package/esm5/lib/models/timeout-notification.model.js +18 -1
  219. package/esm5/lib/models/user-details.model.js +22 -1
  220. package/esm5/lib/models/user.model.js +25 -1
  221. package/esm5/lib/services/case-sharing-state/case-sharing-state.service.js +132 -27
  222. package/esm5/lib/services/cookie/cookie.service.js +104 -21
  223. package/esm5/lib/services/feature-toggle/feature-toggle.guard.js +61 -13
  224. package/esm5/lib/services/feature-toggle/feature-toggle.service.js +70 -12
  225. package/esm5/lib/services/feature-toggle/launch-darkly.service.js +142 -21
  226. package/esm5/lib/services/filter/filter.service.js +101 -15
  227. package/esm5/lib/services/find-person/find-person.service.js +152 -27
  228. package/esm5/lib/services/google-analytics/google-analytics.service.js +78 -21
  229. package/esm5/lib/services/google-tag-manager/google-tag-manager.service.js +79 -23
  230. package/esm5/lib/services/index.js +7 -2
  231. package/esm5/lib/services/loading/loading.service.js +69 -14
  232. package/esm5/lib/services/locations/location.service.js +50 -11
  233. package/esm5/lib/services/manage-session/manage-session.services.js +73 -20
  234. package/esm5/lib/services/public-api.js +18 -13
  235. package/esm5/lib/services/role-guard/role.guard.js +60 -22
  236. package/esm5/lib/services/role-guard/role.service.js +28 -10
  237. package/esm5/lib/services/session-storage/session-storage.service.js +61 -12
  238. package/esm5/lib/services/timeout-notifications/timeout-notifications.service.js +111 -19
  239. package/esm5/lib/window.js +10 -1
  240. package/esm5/public-api.js +13 -8
  241. package/fesm2015/hmcts-rpx-xui-common-lib.js +6513 -3192
  242. package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
  243. package/fesm5/hmcts-rpx-xui-common-lib.js +7455 -3160
  244. package/fesm5/hmcts-rpx-xui-common-lib.js.map +1 -1
  245. package/hmcts-rpx-xui-common-lib.d.ts +21 -20
  246. package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
  247. package/lib/components/checkbox-list/checkbox-list.component.d.ts +5 -6
  248. package/lib/components/due-date/due-date.component.d.ts +4 -4
  249. package/lib/components/find-location/find-location.component.d.ts +2 -4
  250. package/lib/components/generic-filter/generic-filter.component.d.ts +2 -4
  251. package/lib/components/invite-user-form/invite-user-form.component.d.ts +1 -1
  252. package/lib/components/public_api.d.ts +4 -9
  253. package/lib/components/search-judicials/search-judicials.component.d.ts +1 -1
  254. package/lib/components/search-location/search-location.component.d.ts +2 -4
  255. package/lib/components/search-venue/search-venue.component.d.ts +1 -1
  256. package/lib/components/user-list/user-list.component.d.ts +9 -2
  257. package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +1 -1
  258. package/lib/directives/let/let.directive.d.ts +1 -1
  259. package/lib/exui-common-lib.module.d.ts +4 -2
  260. package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +1 -1
  261. package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +1 -1
  262. package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +1 -1
  263. package/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.d.ts +10 -0
  264. package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +1 -1
  265. package/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.d.ts +2 -0
  266. package/lib/gov-ui/components/public_api.d.ts +0 -19
  267. package/lib/gov-ui/public_api.d.ts +1 -2
  268. package/lib/models/index.d.ts +1 -0
  269. package/lib/models/pagination.model.d.ts +5 -0
  270. package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
  271. package/lib/services/loading/loading.service.d.ts +2 -2
  272. package/lib/services/role-guard/role.service.d.ts +1 -2
  273. package/lib/window.d.ts +1 -1
  274. package/package.json +10 -6
  275. package/esm2015/lib/gov-ui/directives/index.js +0 -2
  276. package/esm2015/lib/gov-ui/directives/public_api.js +0 -2
  277. package/esm5/lib/gov-ui/directives/index.js +0 -2
  278. package/esm5/lib/gov-ui/directives/public_api.js +0 -2
  279. package/lib/gov-ui/directives/index.d.ts +0 -1
  280. package/lib/gov-ui/directives/public_api.d.ts +0 -1
@@ -1,11 +1,19 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { ChangeDetectorRef, Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * Generated from: lib/components/find-person/find-person.component.ts
4
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
+ */
6
+ import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';
3
7
  import { FormControl, FormGroup } from '@angular/forms';
4
8
  import { of, zip } from 'rxjs';
5
9
  import { catchError, debounceTime, filter, map, switchMap, tap } from 'rxjs/operators';
6
10
  import { PersonRole } from '../../models';
7
11
  import { FindAPersonService } from '../../services/find-person/find-person.service';
8
- let FindPersonComponent = class FindPersonComponent {
12
+ export class FindPersonComponent {
13
+ /**
14
+ * @param {?} findPersonService
15
+ * @param {?} cd
16
+ */
9
17
  constructor(findPersonService, cd) {
10
18
  this.findPersonService = findPersonService;
11
19
  this.cd = cd;
@@ -29,32 +37,89 @@ let FindPersonComponent = class FindPersonComponent {
29
37
  this.filteredOptions = [];
30
38
  this.minSearchCharacters = 2;
31
39
  }
40
+ /**
41
+ * @return {?}
42
+ */
32
43
  ngOnDestroy() {
33
44
  if (this.sub) {
34
45
  this.sub.unsubscribe();
35
46
  }
36
47
  }
48
+ /**
49
+ * @return {?}
50
+ */
37
51
  ngOnInit() {
38
52
  this.findPersonControl = new FormControl(this.selectedPerson);
39
53
  this.findPersonGroup.addControl('findPersonControl', this.findPersonControl);
40
- this.sub = this.findPersonControl.valueChanges.pipe(tap(() => this.showAutocomplete = false), tap(() => this.filteredOptions = []), debounceTime(300), tap((searchTerm) => typeof searchTerm === 'string' ? this.personSelected.emit(null) : void 0), filter((searchTerm) => searchTerm && searchTerm.length > this.minSearchCharacters), switchMap((searchTerm) => this.filter(searchTerm).pipe(tap(() => this.showAutocomplete = true), catchError(() => this.filteredOptions = [])))).subscribe((people) => {
54
+ this.sub = this.findPersonControl.valueChanges.pipe(tap((/**
55
+ * @return {?}
56
+ */
57
+ () => this.showAutocomplete = false)), tap((/**
58
+ * @return {?}
59
+ */
60
+ () => this.filteredOptions = [])), debounceTime(300), tap((/**
61
+ * @param {?} searchTerm
62
+ * @return {?}
63
+ */
64
+ (searchTerm) => typeof searchTerm === 'string' ? this.personSelected.emit(null) : void 0)), filter((/**
65
+ * @param {?} searchTerm
66
+ * @return {?}
67
+ */
68
+ (searchTerm) => searchTerm && searchTerm.length > this.minSearchCharacters)), switchMap((/**
69
+ * @param {?} searchTerm
70
+ * @return {?}
71
+ */
72
+ (searchTerm) => this.filter(searchTerm).pipe(tap((/**
73
+ * @return {?}
74
+ */
75
+ () => this.showAutocomplete = true)), catchError((/**
76
+ * @return {?}
77
+ */
78
+ () => this.filteredOptions = [])))))).subscribe((/**
79
+ * @param {?} people
80
+ * @return {?}
81
+ */
82
+ (people) => {
41
83
  this.filteredOptions = people;
42
84
  this.cd.detectChanges();
43
- });
85
+ }));
44
86
  }
87
+ /**
88
+ * @param {?} searchTerm
89
+ * @return {?}
90
+ */
45
91
  filter(searchTerm) {
92
+ /** @type {?} */
46
93
  const findJudicialPeople = this.findPersonService.find({ searchTerm, userRole: this.domain, services: this.services, userIncluded: this.userIncluded, assignedUser: this.assignedUser });
94
+ /** @type {?} */
47
95
  const findCaseworkersOrAdmins = this.findPersonService.findCaseworkers({ searchTerm, userRole: this.domain, services: this.services, userIncluded: this.userIncluded, assignedUser: this.assignedUser });
48
96
  if (searchTerm && searchTerm.length > this.minSearchCharacters) {
49
97
  switch (this.domain) {
50
98
  case PersonRole.JUDICIAL: {
51
- return findJudicialPeople.pipe(map(persons => {
52
- const ids = this.selectedPersons.map(({ id }) => id);
53
- return persons.filter(({ id }) => !ids.includes(id));
54
- }));
99
+ return findJudicialPeople.pipe(map((/**
100
+ * @param {?} persons
101
+ * @return {?}
102
+ */
103
+ persons => {
104
+ /** @type {?} */
105
+ const ids = this.selectedPersons.map((/**
106
+ * @param {?} __0
107
+ * @return {?}
108
+ */
109
+ ({ id }) => id));
110
+ return persons.filter((/**
111
+ * @param {?} __0
112
+ * @return {?}
113
+ */
114
+ ({ id }) => !ids.includes(id)));
115
+ })));
55
116
  }
56
117
  case PersonRole.ALL: {
57
- return zip(findJudicialPeople, findCaseworkersOrAdmins).pipe(map(separatePeople => separatePeople[0].concat(separatePeople[1])));
118
+ return zip(findJudicialPeople, findCaseworkersOrAdmins).pipe(map((/**
119
+ * @param {?} separatePeople
120
+ * @return {?}
121
+ */
122
+ separatePeople => separatePeople[0].concat(separatePeople[1]))));
58
123
  }
59
124
  case PersonRole.CASEWORKER:
60
125
  case PersonRole.ADMIN: {
@@ -67,10 +132,18 @@ let FindPersonComponent = class FindPersonComponent {
67
132
  }
68
133
  return of([]);
69
134
  }
135
+ /**
136
+ * @param {?} selectedPerson
137
+ * @return {?}
138
+ */
70
139
  onSelectionChange(selectedPerson) {
71
140
  this.personSelected.emit(selectedPerson);
72
141
  this.findPersonControl.setValue(this.getDisplayName(selectedPerson), { emitEvent: false, onlySelf: true });
73
142
  }
143
+ /**
144
+ * @param {?} selectedPerson
145
+ * @return {?}
146
+ */
74
147
  getDisplayName(selectedPerson) {
75
148
  if (!selectedPerson) {
76
149
  return '';
@@ -80,97 +153,107 @@ let FindPersonComponent = class FindPersonComponent {
80
153
  }
81
154
  return selectedPerson.email ? `${selectedPerson.name} (${selectedPerson.email})` : selectedPerson.name;
82
155
  }
156
+ /**
157
+ * @return {?}
158
+ */
83
159
  onInput() {
84
160
  this.personFieldChanged.emit();
85
161
  }
86
- };
162
+ }
163
+ FindPersonComponent.decorators = [
164
+ { type: Component, args: [{
165
+ selector: 'xuilib-find-person',
166
+ template: "<h1 class=\"govuk-heading-l\" *ngIf=\"title && title.length\">\n <span class=\"govuk-caption-l\">{{title}}</span>\n {{boldTitle}}\n</h1>\n<div class=\"govuk-form-group\" [formGroup]=\"findPersonGroup\"\n [ngClass]=\"{'form-group-error': findPersonGroup.get('findPersonControl').invalid && submitted}\">\n <fieldset class=\"govuk-fieldset\" aria-describedby=\"sub-title-hint\">\n <div id=\"sub-title-hint\" class=\"govuk-hint\" *ngIf=\"subTitle && subTitle.length\">\n {{subTitle}}\n </div>\n <span id=\"validation-error\" class=\"govuk-error-message\" *ngIf=\"findPersonGroup && findPersonGroup.errors\">\n <span class=\"govuk-visually-hidden\">Error:</span>{{findPersonGroup.errors.error ? findPersonGroup.errors.error : errorMessage}}\n </span>\n <input id=\"inputSelectPerson{{idValue}}\" type=\"text\" aria-label=\"select a person\"\n formControlName=\"findPersonControl\"\n [matAutocomplete]=\"auto\"\n class=\"govuk-input govuk-!-width-one-third\"\n [placeholder]=\"placeholderContent\"\n [attr.disabled]=\"disabled\"\n (input)=\"onInput()\">\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" (optionSelected)=\"onSelectionChange($event.option.value)\">\n <mat-option *ngFor=\"let option of filteredOptions\"\n [value]=\"option\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete, 'select-option': showUpdatedColor}\">\n {{getDisplayName(option)}}\n </mat-option>\n <mat-option [ngClass]=\"{'select-option': showUpdatedColor}\" *ngIf=\"isNoResultsShown && !filteredOptions.length && showAutocomplete\">No results found</mat-option>\n </mat-autocomplete>\n </fieldset>\n</div>\n",
167
+ styles: [".mat-option:hover{background:#2596be}.mat-option.select-option:hover{background:#1d70b8;color:#fff}.hide-autocomplete{display:none}"]
168
+ }] }
169
+ ];
170
+ /** @nocollapse */
87
171
  FindPersonComponent.ctorParameters = () => [
88
172
  { type: FindAPersonService },
89
173
  { type: ChangeDetectorRef }
90
174
  ];
91
- __decorate([
92
- Output(),
93
- __metadata("design:type", Object)
94
- ], FindPersonComponent.prototype, "personSelected", void 0);
95
- __decorate([
96
- Output(),
97
- __metadata("design:type", Object)
98
- ], FindPersonComponent.prototype, "personFieldChanged", void 0);
99
- __decorate([
100
- Input(),
101
- __metadata("design:type", String)
102
- ], FindPersonComponent.prototype, "title", void 0);
103
- __decorate([
104
- Input(),
105
- __metadata("design:type", Object)
106
- ], FindPersonComponent.prototype, "boldTitle", void 0);
107
- __decorate([
108
- Input(),
109
- __metadata("design:type", Object)
110
- ], FindPersonComponent.prototype, "subTitle", void 0);
111
- __decorate([
112
- Input(),
113
- __metadata("design:type", Object)
114
- ], FindPersonComponent.prototype, "domain", void 0);
115
- __decorate([
116
- Input(),
117
- __metadata("design:type", FormGroup)
118
- ], FindPersonComponent.prototype, "findPersonGroup", void 0);
119
- __decorate([
120
- Input(),
121
- __metadata("design:type", String)
122
- ], FindPersonComponent.prototype, "selectedPerson", void 0);
123
- __decorate([
124
- Input(),
125
- __metadata("design:type", Boolean)
126
- ], FindPersonComponent.prototype, "submitted", void 0);
127
- __decorate([
128
- Input(),
129
- __metadata("design:type", Boolean)
130
- ], FindPersonComponent.prototype, "userIncluded", void 0);
131
- __decorate([
132
- Input(),
133
- __metadata("design:type", String)
134
- ], FindPersonComponent.prototype, "assignedUser", void 0);
135
- __decorate([
136
- Input(),
137
- __metadata("design:type", String)
138
- ], FindPersonComponent.prototype, "placeholderContent", void 0);
139
- __decorate([
140
- Input(),
141
- __metadata("design:type", Boolean)
142
- ], FindPersonComponent.prototype, "isNoResultsShown", void 0);
143
- __decorate([
144
- Input(),
145
- __metadata("design:type", Boolean)
146
- ], FindPersonComponent.prototype, "showUpdatedColor", void 0);
147
- __decorate([
148
- Input(),
149
- __metadata("design:type", Array)
150
- ], FindPersonComponent.prototype, "selectedPersons", void 0);
151
- __decorate([
152
- Input(),
153
- __metadata("design:type", String)
154
- ], FindPersonComponent.prototype, "errorMessage", void 0);
155
- __decorate([
156
- Input(),
157
- __metadata("design:type", String)
158
- ], FindPersonComponent.prototype, "idValue", void 0);
159
- __decorate([
160
- Input(),
161
- __metadata("design:type", Array)
162
- ], FindPersonComponent.prototype, "services", void 0);
163
- __decorate([
164
- Input(),
165
- __metadata("design:type", Boolean)
166
- ], FindPersonComponent.prototype, "disabled", void 0);
167
- FindPersonComponent = __decorate([
168
- Component({
169
- selector: 'xuilib-find-person',
170
- template: "<h1 class=\"govuk-heading-l\" *ngIf=\"title && title.length\">\n <span class=\"govuk-caption-l\">{{title}}</span>\n {{boldTitle}}\n</h1>\n<div class=\"govuk-form-group\" [formGroup]=\"findPersonGroup\"\n [ngClass]=\"{'form-group-error': findPersonGroup.get('findPersonControl').invalid && submitted}\">\n <fieldset class=\"govuk-fieldset\" aria-describedby=\"sub-title-hint\">\n <div id=\"sub-title-hint\" class=\"govuk-hint\" *ngIf=\"subTitle && subTitle.length\">\n {{subTitle}}\n </div>\n <span id=\"validation-error\" class=\"govuk-error-message\" *ngIf=\"findPersonGroup && findPersonGroup.errors\">\n <span class=\"govuk-visually-hidden\">Error:</span>{{findPersonGroup.errors.error ? findPersonGroup.errors.error : errorMessage}}\n </span>\n <input id=\"inputSelectPerson{{idValue}}\" type=\"text\" aria-label=\"select a person\"\n formControlName=\"findPersonControl\"\n [matAutocomplete]=\"auto\"\n class=\"govuk-input govuk-!-width-one-third\"\n [placeholder]=\"placeholderContent\"\n [attr.disabled]=\"disabled\"\n (input)=\"onInput()\">\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" (optionSelected)=\"onSelectionChange($event.option.value)\">\n <mat-option *ngFor=\"let option of filteredOptions\"\n [value]=\"option\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete, 'select-option': showUpdatedColor}\">\n {{getDisplayName(option)}}\n </mat-option>\n <mat-option [ngClass]=\"{'select-option': showUpdatedColor}\" *ngIf=\"isNoResultsShown && !filteredOptions.length && showAutocomplete\">No results found</mat-option>\n </mat-autocomplete>\n </fieldset>\n</div>\n",
171
- styles: [".mat-option:hover{background:#2596be}.mat-option.select-option:hover{background:#1d70b8;color:#fff}.hide-autocomplete{display:none}"]
172
- }),
173
- __metadata("design:paramtypes", [FindAPersonService, ChangeDetectorRef])
174
- ], FindPersonComponent);
175
- export { FindPersonComponent };
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1wZXJzb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2ZpbmQtcGVyc29uL2ZpbmQtcGVyc29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBQyxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFhLEVBQUUsRUFBZ0IsR0FBRyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JGLE9BQU8sRUFBUyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFRbEYsSUFBYSxtQkFBbUIsR0FBaEMsTUFBYSxtQkFBbUI7SUEwQjlCLFlBQTZCLGlCQUFxQyxFQUFtQixFQUFxQjtRQUE3RSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW9CO1FBQW1CLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBekJ6RixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDNUMsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUvQyxjQUFTLEdBQUcsaUJBQWlCLENBQUM7UUFDOUIsYUFBUSxHQUFHLDhDQUE4QyxDQUFDO1FBQzFELFdBQU0sR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQ3hCLG9CQUFlLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFB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QUFTOzREQUFxQjtBQUN0RDtJQUFSLEtBQUssRUFBRTs7MkRBQStCO0FBQzlCO0lBQVIsS0FBSyxFQUFFOztzREFBa0M7QUFDakM7SUFBUixLQUFLLEVBQUU7O3lEQUF1QztBQUN0QztJQUFSLEtBQUssRUFBRTs7eURBQThCO0FBQzdCO0lBQVIsS0FBSyxFQUFFOzsrREFBd0M7QUFDdkM7SUFBUixLQUFLLEVBQUU7OzZEQUF5QztBQUN4QztJQUFSLEtBQUssRUFBRTs7NkRBQTBDO0FBQ3pDO0lBQVIsS0FBSyxFQUFFOzs0REFBdUM7QUFDdEM7SUFBUixLQUFLLEVBQUU7O3lEQUF3RDtBQUN2RDtJQUFSLEtBQUssRUFBRTs7b0RBQTZCO0FBQzVCO0lBQVIsS0FBSyxFQUFFOztxREFBb0M7QUFDbkM7SUFBUixLQUFLLEVBQUU7O3FEQUFpQztBQW5COUIsbUJBQW1CO0lBTi9CLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxvQkFBb0I7UUFDOUIsOHVEQUEyQzs7S0FFNUMsQ0FBQztxQ0E0QmdELGtCQUFrQixFQUF1QixpQkFBaUI7R0ExQi9GLG1CQUFtQixDQWtHL0I7U0FsR1ksbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUNvbnRyb2wsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgU3Vic2NyaXB0aW9uLCB6aXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtQZXJzb24sIFBlcnNvblJvbGV9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge0ZpbmRBUGVyc29uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmluZC1wZXJzb24vZmluZC1wZXJzb24uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3h1aWxpYi1maW5kLXBlcnNvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9maW5kLXBlcnNvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbmQtcGVyc29uLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuXG5leHBvcnQgY2xhc3MgRmluZFBlcnNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQE91dHB1dCgpIHB1YmxpYyBwZXJzb25TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8UGVyc29uPigpO1xuICBAT3V0cHV0KCkgcHVibGljIHBlcnNvbkZpZWxkQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQElucHV0KCkgcHVibGljIHRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBib2xkVGl0bGUgPSAnRmluZCB0aGUgcGVyc29uJztcbiAgQElucHV0KCkgcHVibGljIHN1YlRpdGxlID0gJ1R5cGUgdGhlIG5hbWUgb2YgdGhlIHBlcnNvbiBhbmQgc2VsZWN0IHRoZW0uJztcbiAgQElucHV0KCkgcHVibGljIGRvbWFpbiA9IFBlcnNvblJvbGUuQUxMO1xuICBASW5wdXQoKSBwdWJsaWMgZmluZFBlcnNvbkdyb3VwOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcbiAgQElucHV0KCkgcHVibGljIHNlbGVjdGVkUGVyc29uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJtaXR0ZWQ6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBwdWJsaWMgdXNlckluY2x1ZGVkPzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgYXNzaWduZWRVc2VyPzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXJDb250ZW50OiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGlzTm9SZXN1bHRzU2hvd246IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBwdWJsaWMgc2hvd1VwZGF0ZWRDb2xvcjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0ZWRQZXJzb25zOiBQZXJzb25bXSA9IFtdO1xuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnWW91IG11c3Qgc2VsZWN0IGEgbmFtZSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpZFZhbHVlOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHNlcnZpY2VzOiBzdHJpbmdbXSA9IFsnSUEnXTtcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gbnVsbDtcbiAgcHVibGljIHNob3dBdXRvY29tcGxldGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGZpbmRQZXJzb25Db250cm9sOiBGb3JtQ29udHJvbDtcbiAgcHVibGljIGZpbHRlcmVkT3B0aW9uczogUGVyc29uW10gPSBbXTtcbiAgcHVibGljIHJlYWRvbmx5IG1pblNlYXJjaENoYXJhY3RlcnMgPSAyO1xuICBwcml2YXRlIHN1YjogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZmluZFBlcnNvblNlcnZpY2U6IEZpbmRBUGVyc29uU2VydmljZSwgcHJpdmF0ZSByZWFkb25seSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5zdWIpIHtcbiAgICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZmluZFBlcnNvbkNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2wodGhpcy5zZWxlY3RlZFBlcnNvbik7XG4gICAgdGhpcy5maW5kUGVyc29uR3JvdXAuYWRkQ29udHJvbCgnZmluZFBlcnNvbkNvbnRyb2wnLCB0aGlzLmZpbmRQZXJzb25Db250cm9sKTtcbiAgICB0aGlzLnN1YiA9IHRoaXMuZmluZFBlcnNvbkNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICB0YXAoKCkgPT4gdGhpcy5zaG93QXV0b2NvbXBsZXRlID0gZmFsc2UpLFxuICAgICAgdGFwKCgpID0+IHRoaXMuZmlsdGVyZWRPcHRpb25zID0gW10pLFxuICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICB0YXAoKHNlYXJjaFRlcm0pID0+IHR5cGVvZiBzZWFyY2hUZXJtID09PSAnc3RyaW5nJyA/IHRoaXMucGVyc29uU2VsZWN0ZWQuZW1pdChudWxsKSA6IHZvaWQgMCksXG4gICAgICBmaWx0ZXIoKHNlYXJjaFRlcm06IHN0cmluZykgPT4gc2VhcmNoVGVybSAmJiBzZWFyY2hUZXJtLmxlbmd0aCA+IHRoaXMubWluU2VhcmNoQ2hhcmFjdGVycyksXG4gICAgICBzd2l0Y2hNYXAoKHNlYXJjaFRlcm06IHN0cmluZykgPT4gdGhpcy5maWx0ZXIoc2VhcmNoVGVybSkucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9IHRydWUpLFxuICAgICAgICBjYXRjaEVycm9yKCgpID0+IHRoaXMuZmlsdGVyZWRPcHRpb25zID0gW10pLFxuICAgICAgKSlcbiAgICApLnN1YnNjcmliZSgocGVvcGxlOiBQZXJzb25bXSkgPT4ge1xuICAgICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSBwZW9wbGU7XG4gICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXIoc2VhcmNoVGVybTogc3RyaW5nKTogT2JzZXJ2YWJsZTxQZXJzb25bXT4ge1xuICAgIGNvbnN0IGZpbmRKdWRpY2lhbFBlb3BsZSA9IHRoaXMuZmluZFBlcnNvblNlcnZpY2UuZmluZCh7c2VhcmNoVGVybSwgdXNlclJvbGU6IHRoaXMuZG9tYWluLCBzZXJ2aWNlczogdGhpcy5zZXJ2aWNlcywgdXNlckluY2x1ZGVkOiB0aGlzLnVzZXJJbmNsdWRlZCwgYXNzaWduZWRVc2VyOiB0aGlzLmFzc2lnbmVkVXNlcn0pO1xuICAgIGNvbnN0IGZpbmRDYXNld29ya2Vyc09yQWRtaW5zID0gdGhpcy5maW5kUGVyc29uU2VydmljZS5maW5kQ2FzZXdvcmtlcnMoe3NlYXJjaFRlcm0sIHVzZXJSb2xlOiB0aGlzLmRvbWFpbiwgc2VydmljZXM6IHRoaXMuc2VydmljZXMsIHVzZXJJbmNsdWRlZDogdGhpcy51c2VySW5jbHVkZWQsIGFzc2lnbmVkVXNlcjogdGhpcy5hc3NpZ25lZFVzZXJ9KTtcbiAgICBpZiAoc2VhcmNoVGVybSAmJiBzZWFyY2hUZXJtLmxlbmd0aCA+IHRoaXMubWluU2VhcmNoQ2hhcmFjdGVycykge1xuICAgICAgc3dpdGNoICh0aGlzLmRvbWFpbikge1xuICAgICAgICBjYXNlIFBlcnNvblJvbGUuSlVESUNJQUw6IHtcbiAgICAgICAgICByZXR1cm4gZmluZEp1ZGljaWFsUGVvcGxlLnBpcGUobWFwKHBlcnNvbnMgPT4ge1xuICAgICAgICAgICAgY29uc3QgaWRzOiBzdHJpbmdbXSA9IHRoaXMuc2VsZWN0ZWRQZXJzb25zLm1hcCgoe2lkfSkgPT4gaWQpO1xuICAgICAgICAgICAgcmV0dXJuIHBlcnNvbnMuZmlsdGVyKCh7IGlkIH0pID0+ICFpZHMuaW5jbHVkZXMoaWQpKTtcbiAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSBQZXJzb25Sb2xlLkFMTDoge1xuICAgICAgICAgIHJldHVybiB6aXAoZmluZEp1ZGljaWFsUGVvcGxlLCBmaW5kQ2FzZXdvcmtlcnNPckFkbWlucykucGlwZShtYXAoc2VwYXJhdGVQZW9wbGUgPT4gc2VwYXJhdGVQZW9wbGVbMF0uY29uY2F0KHNlcGFyYXRlUGVvcGxlWzFdKSkpO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgUGVyc29uUm9sZS5DQVNFV09SS0VSOlxuICAgICAgICBjYXNlIFBlcnNvblJvbGUuQURNSU46IHtcbiAgICAgICAgICByZXR1cm4gZmluZENhc2V3b3JrZXJzT3JBZG1pbnM7XG4gICAgICAgIH1cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIHJldHVybiBvZihbXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG9mKFtdKTtcbiAgfVxuXG4gIHB1YmxpYyBvblNlbGVjdGlvbkNoYW5nZShzZWxlY3RlZFBlcnNvbjogUGVyc29uKTogdm9pZCB7XG4gICAgdGhpcy5wZXJzb25TZWxlY3RlZC5lbWl0KHNlbGVjdGVkUGVyc29uKTtcbiAgICB0aGlzLmZpbmRQZXJzb25Db250cm9sLnNldFZhbHVlKHRoaXMuZ2V0RGlzcGxheU5hbWUoc2VsZWN0ZWRQZXJzb24pLCB7ZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWV9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXREaXNwbGF5TmFtZShzZWxlY3RlZFBlcnNvbjogUGVyc29uKTogc3RyaW5nIHtcbiAgICBpZiAoIXNlbGVjdGVkUGVyc29uKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIGlmIChzZWxlY3RlZFBlcnNvbi5kb21haW4gPT09IFBlcnNvblJvbGUuSlVESUNJQUwgJiYgc2VsZWN0ZWRQZXJzb24ua25vd25Bcykge1xuICAgICAgcmV0dXJuIGAke3NlbGVjdGVkUGVyc29uLmtub3duQXN9ICgke3NlbGVjdGVkUGVyc29uLmVtYWlsfSlgO1xuICAgIH1cbiAgICByZXR1cm4gc2VsZWN0ZWRQZXJzb24uZW1haWwgPyBgJHtzZWxlY3RlZFBlcnNvbi5uYW1lfSAoJHtzZWxlY3RlZFBlcnNvbi5lbWFpbH0pYCA6IHNlbGVjdGVkUGVyc29uLm5hbWU7XG4gIH1cblxuICBwdWJsaWMgb25JbnB1dCgpOiB2b2lkIHtcbiAgICB0aGlzLnBlcnNvbkZpZWxkQ2hhbmdlZC5lbWl0KCk7XG4gIH1cbn1cbiJdfQ==
175
+ FindPersonComponent.propDecorators = {
176
+ personSelected: [{ type: Output }],
177
+ personFieldChanged: [{ type: Output }],
178
+ title: [{ type: Input }],
179
+ boldTitle: [{ type: Input }],
180
+ subTitle: [{ type: Input }],
181
+ domain: [{ type: Input }],
182
+ findPersonGroup: [{ type: Input }],
183
+ selectedPerson: [{ type: Input }],
184
+ submitted: [{ type: Input }],
185
+ userIncluded: [{ type: Input }],
186
+ assignedUser: [{ type: Input }],
187
+ placeholderContent: [{ type: Input }],
188
+ isNoResultsShown: [{ type: Input }],
189
+ showUpdatedColor: [{ type: Input }],
190
+ selectedPersons: [{ type: Input }],
191
+ errorMessage: [{ type: Input }],
192
+ idValue: [{ type: Input }],
193
+ services: [{ type: Input }],
194
+ disabled: [{ type: Input }]
195
+ };
196
+ if (false) {
197
+ /** @type {?} */
198
+ FindPersonComponent.prototype.personSelected;
199
+ /** @type {?} */
200
+ FindPersonComponent.prototype.personFieldChanged;
201
+ /** @type {?} */
202
+ FindPersonComponent.prototype.title;
203
+ /** @type {?} */
204
+ FindPersonComponent.prototype.boldTitle;
205
+ /** @type {?} */
206
+ FindPersonComponent.prototype.subTitle;
207
+ /** @type {?} */
208
+ FindPersonComponent.prototype.domain;
209
+ /** @type {?} */
210
+ FindPersonComponent.prototype.findPersonGroup;
211
+ /** @type {?} */
212
+ FindPersonComponent.prototype.selectedPerson;
213
+ /** @type {?} */
214
+ FindPersonComponent.prototype.submitted;
215
+ /** @type {?} */
216
+ FindPersonComponent.prototype.userIncluded;
217
+ /** @type {?} */
218
+ FindPersonComponent.prototype.assignedUser;
219
+ /** @type {?} */
220
+ FindPersonComponent.prototype.placeholderContent;
221
+ /** @type {?} */
222
+ FindPersonComponent.prototype.isNoResultsShown;
223
+ /** @type {?} */
224
+ FindPersonComponent.prototype.showUpdatedColor;
225
+ /** @type {?} */
226
+ FindPersonComponent.prototype.selectedPersons;
227
+ /** @type {?} */
228
+ FindPersonComponent.prototype.errorMessage;
229
+ /** @type {?} */
230
+ FindPersonComponent.prototype.idValue;
231
+ /** @type {?} */
232
+ FindPersonComponent.prototype.services;
233
+ /** @type {?} */
234
+ FindPersonComponent.prototype.disabled;
235
+ /** @type {?} */
236
+ FindPersonComponent.prototype.showAutocomplete;
237
+ /** @type {?} */
238
+ FindPersonComponent.prototype.findPersonControl;
239
+ /** @type {?} */
240
+ FindPersonComponent.prototype.filteredOptions;
241
+ /** @type {?} */
242
+ FindPersonComponent.prototype.minSearchCharacters;
243
+ /**
244
+ * @type {?}
245
+ * @private
246
+ */
247
+ FindPersonComponent.prototype.sub;
248
+ /**
249
+ * @type {?}
250
+ * @private
251
+ */
252
+ FindPersonComponent.prototype.findPersonService;
253
+ /**
254
+ * @type {?}
255
+ * @private
256
+ */
257
+ FindPersonComponent.prototype.cd;
258
+ }
259
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1wZXJzb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2ZpbmQtcGVyc29uL2ZpbmQtcGVyc29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBQyxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFhLEVBQUUsRUFBZ0IsR0FBRyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JGLE9BQU8sRUFBUyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFRbEYsTUFBTSxPQUFPLG1CQUFtQjs7Ozs7SUEwQjlCLFlBQTZCLGlCQUFxQyxFQUFtQixFQUFxQjtRQUE3RSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW9CO1FBQW1CLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBekJ6RixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDNUMsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUvQyxjQUFTLEdBQUcsaUJBQWlCLENBQUM7UUFDOUIsYUFBUSxHQUFHLDhDQUE4QyxDQUFDO1FBQzFELFdBQU0sR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQ3hCLG9CQUFlLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFL0MsY0FBUyxH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K0JBQ0wsS0FBSzs4QkFDTCxLQUFLOzJCQUNMLEtBQUs7c0JBQ0wsS0FBSzt1QkFDTCxLQUFLO3VCQUNMLEtBQUs7Ozs7SUFsQk4sNkNBQTZEOztJQUM3RCxpREFBK0Q7O0lBQy9ELG9DQUE4Qjs7SUFDOUIsd0NBQThDOztJQUM5Qyx1Q0FBMEU7O0lBQzFFLHFDQUF3Qzs7SUFDeEMsOENBQStEOztJQUMvRCw2Q0FBdUM7O0lBQ3ZDLHdDQUEwQzs7SUFDMUMsMkNBQStDOztJQUMvQywyQ0FBc0M7O0lBQ3RDLGlEQUFnRDs7SUFDaEQsK0NBQWlEOztJQUNqRCwrQ0FBa0Q7O0lBQ2xELDhDQUErQzs7SUFDL0MsMkNBQWdFOztJQUNoRSxzQ0FBcUM7O0lBQ3JDLHVDQUE0Qzs7SUFDNUMsdUNBQXlDOztJQUN6QywrQ0FBeUM7O0lBQ3pDLGdEQUFzQzs7SUFDdEMsOENBQXNDOztJQUN0QyxrREFBd0M7Ozs7O0lBQ3hDLGtDQUEwQjs7Ozs7SUFFZCxnREFBc0Q7Ozs7O0lBQUUsaUNBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUNvbnRyb2wsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgU3Vic2NyaXB0aW9uLCB6aXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtQZXJzb24sIFBlcnNvblJvbGV9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge0ZpbmRBUGVyc29uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmluZC1wZXJzb24vZmluZC1wZXJzb24uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3h1aWxpYi1maW5kLXBlcnNvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9maW5kLXBlcnNvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbmQtcGVyc29uLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuXG5leHBvcnQgY2xhc3MgRmluZFBlcnNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQE91dHB1dCgpIHB1YmxpYyBwZXJzb25TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8UGVyc29uPigpO1xuICBAT3V0cHV0KCkgcHVibGljIHBlcnNvbkZpZWxkQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQElucHV0KCkgcHVibGljIHRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBib2xkVGl0bGUgPSAnRmluZCB0aGUgcGVyc29uJztcbiAgQElucHV0KCkgcHVibGljIHN1YlRpdGxlID0gJ1R5cGUgdGhlIG5hbWUgb2YgdGhlIHBlcnNvbiBhbmQgc2VsZWN0IHRoZW0uJztcbiAgQElucHV0KCkgcHVibGljIGRvbWFpbiA9IFBlcnNvblJvbGUuQUxMO1xuICBASW5wdXQoKSBwdWJsaWMgZmluZFBlcnNvbkdyb3VwOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcbiAgQElucHV0KCkgcHVibGljIHNlbGVjdGVkUGVyc29uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJtaXR0ZWQ6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBwdWJsaWMgdXNlckluY2x1ZGVkPzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgYXNzaWduZWRVc2VyPzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXJDb250ZW50OiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGlzTm9SZXN1bHRzU2hvd246IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBwdWJsaWMgc2hvd1VwZGF0ZWRDb2xvcjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0ZWRQZXJzb25zOiBQZXJzb25bXSA9IFtdO1xuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnWW91IG11c3Qgc2VsZWN0IGEgbmFtZSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpZFZhbHVlOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHNlcnZpY2VzOiBzdHJpbmdbXSA9IFsnSUEnXTtcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gbnVsbDtcbiAgcHVibGljIHNob3dBdXRvY29tcGxldGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGZpbmRQZXJzb25Db250cm9sOiBGb3JtQ29udHJvbDtcbiAgcHVibGljIGZpbHRlcmVkT3B0aW9uczogUGVyc29uW10gPSBbXTtcbiAgcHVibGljIHJlYWRvbmx5IG1pblNlYXJjaENoYXJhY3RlcnMgPSAyO1xuICBwcml2YXRlIHN1YjogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZmluZFBlcnNvblNlcnZpY2U6IEZpbmRBUGVyc29uU2VydmljZSwgcHJpdmF0ZSByZWFkb25seSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5zdWIpIHtcbiAgICAgIHRoaXMuc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZmluZFBlcnNvbkNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2wodGhpcy5zZWxlY3RlZFBlcnNvbik7XG4gICAgdGhpcy5maW5kUGVyc29uR3JvdXAuYWRkQ29udHJvbCgnZmluZFBlcnNvbkNvbnRyb2wnLCB0aGlzLmZpbmRQZXJzb25Db250cm9sKTtcbiAgICB0aGlzLnN1YiA9IHRoaXMuZmluZFBlcnNvbkNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICB0YXAoKCkgPT4gdGhpcy5zaG93QXV0b2NvbXBsZXRlID0gZmFsc2UpLFxuICAgICAgdGFwKCgpID0+IHRoaXMuZmlsdGVyZWRPcHRpb25zID0gW10pLFxuICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICB0YXAoKHNlYXJjaFRlcm0pID0+IHR5cGVvZiBzZWFyY2hUZXJtID09PSAnc3RyaW5nJyA/IHRoaXMucGVyc29uU2VsZWN0ZWQuZW1pdChudWxsKSA6IHZvaWQgMCksXG4gICAgICBmaWx0ZXIoKHNlYXJjaFRlcm06IHN0cmluZykgPT4gc2VhcmNoVGVybSAmJiBzZWFyY2hUZXJtLmxlbmd0aCA+IHRoaXMubWluU2VhcmNoQ2hhcmFjdGVycyksXG4gICAgICBzd2l0Y2hNYXAoKHNlYXJjaFRlcm06IHN0cmluZykgPT4gdGhpcy5maWx0ZXIoc2VhcmNoVGVybSkucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9IHRydWUpLFxuICAgICAgICBjYXRjaEVycm9yKCgpID0+IHRoaXMuZmlsdGVyZWRPcHRpb25zID0gW10pLFxuICAgICAgKSlcbiAgICApLnN1YnNjcmliZSgocGVvcGxlOiBQZXJzb25bXSkgPT4ge1xuICAgICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSBwZW9wbGU7XG4gICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXIoc2VhcmNoVGVybTogc3RyaW5nKTogT2JzZXJ2YWJsZTxQZXJzb25bXT4ge1xuICAgIGNvbnN0IGZpbmRKdWRpY2lhbFBlb3BsZSA9IHRoaXMuZmluZFBlcnNvblNlcnZpY2UuZmluZCh7c2VhcmNoVGVybSwgdXNlclJvbGU6IHRoaXMuZG9tYWluLCBzZXJ2aWNlczogdGhpcy5zZXJ2aWNlcywgdXNlckluY2x1ZGVkOiB0aGlzLnVzZXJJbmNsdWRlZCwgYXNzaWduZWRVc2VyOiB0aGlzLmFzc2lnbmVkVXNlcn0pO1xuICAgIGNvbnN0IGZpbmRDYXNld29ya2Vyc09yQWRtaW5zID0gdGhpcy5maW5kUGVyc29uU2VydmljZS5maW5kQ2FzZXdvcmtlcnMoe3NlYXJjaFRlcm0sIHVzZXJSb2xlOiB0aGlzLmRvbWFpbiwgc2VydmljZXM6IHRoaXMuc2VydmljZXMsIHVzZXJJbmNsdWRlZDogdGhpcy51c2VySW5jbHVkZWQsIGFzc2lnbmVkVXNlcjogdGhpcy5hc3NpZ25lZFVzZXJ9KTtcbiAgICBpZiAoc2VhcmNoVGVybSAmJiBzZWFyY2hUZXJtLmxlbmd0aCA+IHRoaXMubWluU2VhcmNoQ2hhcmFjdGVycykge1xuICAgICAgc3dpdGNoICh0aGlzLmRvbWFpbikge1xuICAgICAgICBjYXNlIFBlcnNvblJvbGUuSlVESUNJQUw6IHtcbiAgICAgICAgICByZXR1cm4gZmluZEp1ZGljaWFsUGVvcGxlLnBpcGUobWFwKHBlcnNvbnMgPT4ge1xuICAgICAgICAgICAgY29uc3QgaWRzOiBzdHJpbmdbXSA9IHRoaXMuc2VsZWN0ZWRQZXJzb25zLm1hcCgoe2lkfSkgPT4gaWQpO1xuICAgICAgICAgICAgcmV0dXJuIHBlcnNvbnMuZmlsdGVyKCh7IGlkIH0pID0+ICFpZHMuaW5jbHVkZXMoaWQpKTtcbiAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSBQZXJzb25Sb2xlLkFMTDoge1xuICAgICAgICAgIHJldHVybiB6aXAoZmluZEp1ZGljaWFsUGVvcGxlLCBmaW5kQ2FzZXdvcmtlcnNPckFkbWlucykucGlwZShtYXAoc2VwYXJhdGVQZW9wbGUgPT4gc2VwYXJhdGVQZW9wbGVbMF0uY29uY2F0KHNlcGFyYXRlUGVvcGxlWzFdKSkpO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgUGVyc29uUm9sZS5DQVNFV09SS0VSOlxuICAgICAgICBjYXNlIFBlcnNvblJvbGUuQURNSU46IHtcbiAgICAgICAgICByZXR1cm4gZmluZENhc2V3b3JrZXJzT3JBZG1pbnM7XG4gICAgICAgIH1cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIHJldHVybiBvZihbXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG9mKFtdKTtcbiAgfVxuXG4gIHB1YmxpYyBvblNlbGVjdGlvbkNoYW5nZShzZWxlY3RlZFBlcnNvbjogUGVyc29uKTogdm9pZCB7XG4gICAgdGhpcy5wZXJzb25TZWxlY3RlZC5lbWl0KHNlbGVjdGVkUGVyc29uKTtcbiAgICB0aGlzLmZpbmRQZXJzb25Db250cm9sLnNldFZhbHVlKHRoaXMuZ2V0RGlzcGxheU5hbWUoc2VsZWN0ZWRQZXJzb24pLCB7ZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWV9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXREaXNwbGF5TmFtZShzZWxlY3RlZFBlcnNvbjogUGVyc29uKTogc3RyaW5nIHtcbiAgICBpZiAoIXNlbGVjdGVkUGVyc29uKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIGlmIChzZWxlY3RlZFBlcnNvbi5kb21haW4gPT09IFBlcnNvblJvbGUuSlVESUNJQUwgJiYgc2VsZWN0ZWRQZXJzb24ua25vd25Bcykge1xuICAgICAgcmV0dXJuIGAke3NlbGVjdGVkUGVyc29uLmtub3duQXN9ICgke3NlbGVjdGVkUGVyc29uLmVtYWlsfSlgO1xuICAgIH1cbiAgICByZXR1cm4gc2VsZWN0ZWRQZXJzb24uZW1haWwgPyBgJHtzZWxlY3RlZFBlcnNvbi5uYW1lfSAoJHtzZWxlY3RlZFBlcnNvbi5lbWFpbH0pYCA6IHNlbGVjdGVkUGVyc29uLm5hbWU7XG4gIH1cblxuICBwdWJsaWMgb25JbnB1dCgpOiB2b2lkIHtcbiAgICB0aGlzLnBlcnNvbkZpZWxkQ2hhbmdlZC5lbWl0KCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,21 +1,65 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * Generated from: lib/components/generic-filter/generic-filter-utils.ts
4
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
+ */
6
+ /**
7
+ * @template T
8
+ * @param {?} min
9
+ * @return {?}
10
+ */
1
11
  export function minSelectedValidator(min) {
2
- return (control) => {
3
- const values = control.value;
4
- return values.length && values.filter(value => value).length >= min ? null : { minLength: true };
5
- };
12
+ return (/**
13
+ * @param {?} control
14
+ * @return {?}
15
+ */
16
+ (control) => {
17
+ /** @type {?} */
18
+ const values = (/** @type {?} */ (control.value));
19
+ return values.length && values.filter((/**
20
+ * @param {?} value
21
+ * @return {?}
22
+ */
23
+ value => value)).length >= min ? null : { minLength: true };
24
+ });
6
25
  }
26
+ /**
27
+ * @template T
28
+ * @param {?} max
29
+ * @return {?}
30
+ */
7
31
  export function maxSelectedValidator(max) {
8
- return (control) => {
9
- const values = control.value;
10
- return values.length && values.filter(value => value).length <= max ? null : { maxLength: true };
11
- };
32
+ return (/**
33
+ * @param {?} control
34
+ * @return {?}
35
+ */
36
+ (control) => {
37
+ /** @type {?} */
38
+ const values = (/** @type {?} */ (control.value));
39
+ return values.length && values.filter((/**
40
+ * @param {?} value
41
+ * @return {?}
42
+ */
43
+ value => value)).length <= max ? null : { maxLength: true };
44
+ });
12
45
  }
46
+ /**
47
+ * @param {?} options
48
+ * @param {?} values
49
+ * @return {?}
50
+ */
13
51
  export function getValues(options, values) {
14
- return options.reduce((acc, option, index) => {
52
+ return options.reduce((/**
53
+ * @param {?} acc
54
+ * @param {?} option
55
+ * @param {?} index
56
+ * @return {?}
57
+ */
58
+ (acc, option, index) => {
15
59
  if (values[index]) {
16
60
  return [...acc, option.key];
17
61
  }
18
62
  return acc;
19
- }, []);
63
+ }), []);
20
64
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1maWx0ZXItdXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvZ2VuZXJpYy1maWx0ZXIvZ2VuZXJpYy1maWx0ZXItdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLG9CQUFvQixDQUFJLEdBQVc7SUFDakQsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQVksQ0FBQztRQUNwQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFDLENBQUM7SUFDakcsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBSSxHQUFXO0lBQ2pELE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1FBQzNELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFZLENBQUM7UUFDcEMsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsU0FBUyxFQUFFLElBQUksRUFBQyxDQUFDO0lBQ2pHLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUFDLE9BQTJELEVBQUUsTUFBYTtJQUNsRyxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFhLEVBQUUsTUFBc0MsRUFBRSxLQUFhLEVBQUUsRUFBRTtRQUM3RixJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixPQUFPLENBQUMsR0FBRyxHQUFHLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDVCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBtaW5TZWxlY3RlZFZhbGlkYXRvcjxUPihtaW46IG51bWJlcik6IFZhbGlkYXRvckZuIHtcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgY29uc3QgdmFsdWVzID0gY29udHJvbC52YWx1ZSBhcyBUW107XG4gICAgcmV0dXJuIHZhbHVlcy5sZW5ndGggJiYgdmFsdWVzLmZpbHRlcih2YWx1ZSA9PiB2YWx1ZSkubGVuZ3RoID49IG1pbiA/IG51bGwgOiB7bWluTGVuZ3RoOiB0cnVlfTtcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1heFNlbGVjdGVkVmFsaWRhdG9yPFQ+KG1heDogbnVtYmVyKTogVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICBjb25zdCB2YWx1ZXMgPSBjb250cm9sLnZhbHVlIGFzIFRbXTtcbiAgICByZXR1cm4gdmFsdWVzLmxlbmd0aCAmJiB2YWx1ZXMuZmlsdGVyKHZhbHVlID0+IHZhbHVlKS5sZW5ndGggPD0gbWF4ID8gbnVsbCA6IHttYXhMZW5ndGg6IHRydWV9O1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VmFsdWVzKG9wdGlvbnM6IHsga2V5OiBzdHJpbmcsIGxhYmVsOiBzdHJpbmcsIHNlbGVjdEFsbD86IHRydWUgfVtdLCB2YWx1ZXM6IGFueVtdKTogYW55W10ge1xuICByZXR1cm4gb3B0aW9ucy5yZWR1Y2UoKGFjYzogc3RyaW5nW10sIG9wdGlvbjogeyBrZXk6IHN0cmluZywgbGFiZWw6IHN0cmluZyB9LCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKHZhbHVlc1tpbmRleF0pIHtcbiAgICAgIHJldHVybiBbLi4uYWNjLCBvcHRpb24ua2V5XTtcbiAgICB9XG4gICAgcmV0dXJuIGFjYztcbiAgfSwgW10pO1xufVxuXG4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1maWx0ZXItdXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvZ2VuZXJpYy1maWx0ZXIvZ2VuZXJpYy1maWx0ZXItdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUVBLE1BQU0sVUFBVSxvQkFBb0IsQ0FBSSxHQUFXO0lBQ2pEOzs7O0lBQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFOztjQUNyRCxNQUFNLEdBQUcsbUJBQUEsT0FBTyxDQUFDLEtBQUssRUFBTztRQUNuQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLE1BQU07Ozs7UUFBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBQyxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFDLENBQUM7SUFDakcsQ0FBQyxFQUFDO0FBQ0osQ0FBQzs7Ozs7O0FBRUQsTUFBTSxVQUFVLG9CQUFvQixDQUFJLEdBQVc7SUFDakQ7Ozs7SUFBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7O2NBQ3JELE1BQU0sR0FBRyxtQkFBQSxPQUFPLENBQUMsS0FBSyxFQUFPO1FBQ25DLE9BQU8sTUFBTSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTTs7OztRQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFDLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsQ0FBQztJQUNqRyxDQUFDLEVBQUM7QUFDSixDQUFDOzs7Ozs7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUFDLE9BQTJELEVBQUUsTUFBYTtJQUNsRyxPQUFPLE9BQU8sQ0FBQyxNQUFNOzs7Ozs7SUFBQyxDQUFDLEdBQWEsRUFBRSxNQUFzQyxFQUFFLEtBQWEsRUFBRSxFQUFFO1FBQzdGLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxHQUFHLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDN0I7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsR0FBRSxFQUFFLENBQUMsQ0FBQztBQUNULENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIG1pblNlbGVjdGVkVmFsaWRhdG9yPFQ+KG1pbjogbnVtYmVyKTogVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICBjb25zdCB2YWx1ZXMgPSBjb250cm9sLnZhbHVlIGFzIFRbXTtcbiAgICByZXR1cm4gdmFsdWVzLmxlbmd0aCAmJiB2YWx1ZXMuZmlsdGVyKHZhbHVlID0+IHZhbHVlKS5sZW5ndGggPj0gbWluID8gbnVsbCA6IHttaW5MZW5ndGg6IHRydWV9O1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWF4U2VsZWN0ZWRWYWxpZGF0b3I8VD4obWF4OiBudW1iZXIpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IHZhbHVlcyA9IGNvbnRyb2wudmFsdWUgYXMgVFtdO1xuICAgIHJldHVybiB2YWx1ZXMubGVuZ3RoICYmIHZhbHVlcy5maWx0ZXIodmFsdWUgPT4gdmFsdWUpLmxlbmd0aCA8PSBtYXggPyBudWxsIDoge21heExlbmd0aDogdHJ1ZX07XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRWYWx1ZXMob3B0aW9uczogeyBrZXk6IHN0cmluZywgbGFiZWw6IHN0cmluZywgc2VsZWN0QWxsPzogdHJ1ZSB9W10sIHZhbHVlczogYW55W10pOiBhbnlbXSB7XG4gIHJldHVybiBvcHRpb25zLnJlZHVjZSgoYWNjOiBzdHJpbmdbXSwgb3B0aW9uOiB7IGtleTogc3RyaW5nLCBsYWJlbDogc3RyaW5nIH0sIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICBpZiAodmFsdWVzW2luZGV4XSkge1xuICAgICAgcmV0dXJuIFsuLi5hY2MsIG9wdGlvbi5rZXldO1xuICAgIH1cbiAgICByZXR1cm4gYWNjO1xuICB9LCBbXSk7XG59XG5cbiJdfQ==