@hmcts/rpx-xui-common-lib 2.0.0-rc.3 → 2.1.0-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 (282) hide show
  1. package/bundles/hmcts-rpx-xui-common-lib.umd.js +3788 -3772
  2. package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +1 -1
  3. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +1 -1
  4. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
  5. package/esm2015/hmcts-rpx-xui-common-lib.js +59 -50
  6. package/esm2015/lib/components/accessibility/accessibility.component.js +2 -8
  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 +68 -0
  10. package/esm2015/lib/components/due-date/due-date.component.js +7 -102
  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 +120 -0
  13. package/esm2015/lib/components/find-person/find-person.component.js +118 -0
  14. package/esm2015/lib/components/generic-filter/generic-filter-utils.js +21 -0
  15. package/esm2015/lib/components/generic-filter/generic-filter.component.js +381 -0
  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 +7 -45
  21. package/esm2015/lib/components/pagination/pagination.component.js +28 -0
  22. package/esm2015/lib/components/public_api.js +33 -30
  23. package/esm2015/lib/components/search-judicials/search-judicials.component.js +126 -0
  24. package/esm2015/lib/components/search-location/search-location.component.js +114 -0
  25. package/esm2015/lib/components/search-venue/search-venue.component.js +123 -0
  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 +6 -51
  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 +8 -66
  31. package/esm2015/lib/components/share-case/share-case.component.js +7 -88
  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 +15 -19
  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 +33 -34
  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 +49 -27
  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 +3 -23
  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 +28 -0
  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 +4 -26
  67. package/esm2015/lib/gov-ui/components/index.js +2 -7
  68. package/esm2015/lib/gov-ui/components/public_api.js +22 -26
  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 -0
  78. package/esm2015/lib/gov-ui/models/public_api.js +5 -10
  79. package/esm2015/lib/gov-ui/public_api.js +5 -11
  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 +22 -0
  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 +3 -0
  92. package/esm2015/lib/models/idle-config.model.js +2 -20
  93. package/esm2015/lib/models/index.js +14 -7
  94. package/esm2015/lib/models/location.model.js +2 -0
  95. package/esm2015/lib/models/pagination.model.js +2 -0
  96. package/esm2015/lib/models/person.model.js +17 -0
  97. package/esm2015/lib/models/public_api.js +6 -15
  98. package/esm2015/lib/models/search-options.model.js +2 -0
  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 +47 -0
  105. package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +10 -43
  106. package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +3 -28
  107. package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +20 -95
  108. package/esm2015/lib/services/filter/filter.service.js +64 -0
  109. package/esm2015/lib/services/find-person/find-person.service.js +106 -0
  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 +10 -50
  114. package/esm2015/lib/services/locations/location.service.js +39 -0
  115. package/esm2015/lib/services/manage-session/manage-session.services.js +11 -64
  116. package/esm2015/lib/services/public-api.js +13 -17
  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 +41 -0
  120. package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +10 -76
  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 +1862 -1835
  124. package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
  125. package/hmcts-rpx-xui-common-lib.d.ts +57 -43
  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/cookie-banner/cookie-banner.component.d.ts +20 -0
  129. package/lib/components/due-date/due-date.component.d.ts +4 -4
  130. package/lib/components/find-location/find-location.component.d.ts +33 -0
  131. package/lib/components/find-person/find-person.component.d.ts +40 -0
  132. package/lib/components/generic-filter/generic-filter-utils.d.ts +8 -0
  133. package/lib/components/generic-filter/generic-filter.component.d.ts +42 -0
  134. package/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.d.ts +1 -1
  135. package/lib/components/invite-user-form/invite-user-form.component.d.ts +2 -2
  136. package/lib/components/loading-spinner/loading-spinner.component.d.ts +1 -7
  137. package/lib/components/pagination/pagination.component.d.ts +10 -0
  138. package/lib/components/public_api.d.ts +12 -4
  139. package/lib/components/search-judicials/search-judicials.component.d.ts +37 -0
  140. package/lib/components/search-location/search-location.component.d.ts +40 -0
  141. package/lib/components/search-venue/search-venue.component.d.ts +37 -0
  142. package/lib/components/user-list/user-list.component.d.ts +9 -2
  143. package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +1 -1
  144. package/lib/directives/let/let.directive.d.ts +1 -1
  145. package/lib/exui-common-lib.module.d.ts +11 -11
  146. package/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.d.ts +8 -0
  147. package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +1 -1
  148. package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +1 -1
  149. package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +1 -1
  150. package/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.d.ts +10 -0
  151. package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +1 -1
  152. package/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.d.ts +2 -0
  153. package/lib/gov-ui/components/public_api.d.ts +20 -19
  154. package/lib/gov-ui/models/isession-storage.interface.d.ts +4 -0
  155. package/lib/gov-ui/public_api.d.ts +1 -2
  156. package/lib/gov-ui/util/session-storage/session-storage-utils.d.ts +6 -0
  157. package/lib/models/due-date.model.d.ts +1 -1
  158. package/lib/models/filter.model.d.ts +65 -0
  159. package/lib/models/index.d.ts +12 -0
  160. package/lib/models/location.model.d.ts +49 -0
  161. package/lib/models/pagination.model.d.ts +5 -0
  162. package/lib/models/person.model.d.ts +43 -0
  163. package/lib/models/public_api.d.ts +2 -6
  164. package/lib/models/search-options.model.d.ts +8 -0
  165. package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
  166. package/lib/services/cookie/cookie.service.d.ts +9 -0
  167. package/lib/services/feature-toggle/feature-toggle.service.d.ts +1 -1
  168. package/lib/services/feature-toggle/launch-darkly.service.d.ts +4 -5
  169. package/lib/services/filter/filter.service.d.ts +15 -0
  170. package/lib/services/find-person/find-person.service.d.ts +17 -0
  171. package/lib/services/loading/loading.service.d.ts +2 -2
  172. package/lib/services/locations/location.service.d.ts +23 -0
  173. package/lib/services/public-api.d.ts +4 -3
  174. package/lib/services/role-guard/role.service.d.ts +2 -1
  175. package/lib/services/session-storage/session-storage.service.d.ts +20 -0
  176. package/lib/window.d.ts +2 -2
  177. package/package.json +8 -16
  178. package/public-api.d.ts +2 -2
  179. package/esm2015/lib/gov-ui/directives/index.js +0 -7
  180. package/esm2015/lib/gov-ui/directives/public_api.js +0 -7
  181. package/esm5/hmcts-rpx-xui-common-lib.js +0 -59
  182. package/esm5/lib/components/accessibility/accessibility.component.js +0 -22
  183. package/esm5/lib/components/checkbox-list/checkbox-list.component.js +0 -391
  184. package/esm5/lib/components/contact-details/contact-details.component.js +0 -29
  185. package/esm5/lib/components/due-date/due-date.component.js +0 -254
  186. package/esm5/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +0 -45
  187. package/esm5/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +0 -47
  188. package/esm5/lib/components/index.js +0 -7
  189. package/esm5/lib/components/invite-user-form/invite-user-form.component.js +0 -54
  190. package/esm5/lib/components/invite-user-permissions/invite-user-permission.component.js +0 -46
  191. package/esm5/lib/components/loading-spinner/loading-spinner.component.js +0 -61
  192. package/esm5/lib/components/public_api.js +0 -30
  193. package/esm5/lib/components/selected-case/selected-case.component.js +0 -430
  194. package/esm5/lib/components/selected-case-confirm/selected-case-confirm.component.js +0 -91
  195. package/esm5/lib/components/selected-case-list/selected-case-list.component.js +0 -109
  196. package/esm5/lib/components/service-message/service-message.component.js +0 -46
  197. package/esm5/lib/components/service-messages/service-messages.component.js +0 -122
  198. package/esm5/lib/components/share-case/share-case.component.js +0 -223
  199. package/esm5/lib/components/share-case-confirm/share-case-confirm.component.js +0 -70
  200. package/esm5/lib/components/tab/tab.component.js +0 -51
  201. package/esm5/lib/components/tc-confirm/tc-confirm.component.js +0 -42
  202. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +0 -22
  203. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +0 -22
  204. package/esm5/lib/components/terms-and-conditions/terms-and-conditions.component.js +0 -29
  205. package/esm5/lib/components/user-details/user-details.component.js +0 -92
  206. package/esm5/lib/components/user-list/user-list.component.js +0 -43
  207. package/esm5/lib/components/user-select/user-select.component.js +0 -131
  208. package/esm5/lib/directives/feature-toggle/feature-toggle.directive.js +0 -104
  209. package/esm5/lib/directives/index.js +0 -7
  210. package/esm5/lib/directives/let/let.directive.js +0 -78
  211. package/esm5/lib/directives/public-api.js +0 -8
  212. package/esm5/lib/exui-common-lib.module.js +0 -156
  213. package/esm5/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +0 -56
  214. package/esm5/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +0 -36
  215. package/esm5/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +0 -48
  216. package/esm5/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +0 -37
  217. package/esm5/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -49
  218. package/esm5/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +0 -65
  219. package/esm5/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +0 -40
  220. package/esm5/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +0 -66
  221. package/esm5/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +0 -34
  222. package/esm5/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +0 -67
  223. package/esm5/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +0 -36
  224. package/esm5/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +0 -52
  225. package/esm5/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +0 -77
  226. package/esm5/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +0 -50
  227. package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +0 -38
  228. package/esm5/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +0 -108
  229. package/esm5/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +0 -40
  230. package/esm5/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +0 -87
  231. package/esm5/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +0 -49
  232. package/esm5/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +0 -41
  233. package/esm5/lib/gov-ui/components/index.js +0 -7
  234. package/esm5/lib/gov-ui/components/public_api.js +0 -26
  235. package/esm5/lib/gov-ui/directives/index.js +0 -7
  236. package/esm5/lib/gov-ui/directives/public_api.js +0 -7
  237. package/esm5/lib/gov-ui/directives/remove-host.directive.js +0 -52
  238. package/esm5/lib/gov-ui/gov-ui.service.js +0 -22
  239. package/esm5/lib/gov-ui/index.js +0 -7
  240. package/esm5/lib/gov-ui/models/banner-data-model.js +0 -16
  241. package/esm5/lib/gov-ui/models/checkboxes-model.js +0 -22
  242. package/esm5/lib/gov-ui/models/error-messages-model.js +0 -16
  243. package/esm5/lib/gov-ui/models/gov-ui-config-model.js +0 -36
  244. package/esm5/lib/gov-ui/models/index.js +0 -7
  245. package/esm5/lib/gov-ui/models/public_api.js +0 -13
  246. package/esm5/lib/gov-ui/public_api.js +0 -14
  247. package/esm5/lib/gov-ui/util/helpers/html-templates.helper.js +0 -57
  248. package/esm5/lib/gov-ui/validators/checkboxes-be-checked.validator.js +0 -38
  249. package/esm5/lib/gov-ui/validators/date.validator.js +0 -32
  250. package/esm5/lib/gov-ui/validators/index.js +0 -7
  251. package/esm5/lib/gov-ui/validators/public_api.js +0 -12
  252. package/esm5/lib/gov-ui/validators/radio-group.validator.js +0 -27
  253. package/esm5/lib/models/case-share.model.js +0 -26
  254. package/esm5/lib/models/contact-details.model.js +0 -31
  255. package/esm5/lib/models/due-date.model.js +0 -15
  256. package/esm5/lib/models/feature-user.js +0 -28
  257. package/esm5/lib/models/idle-config.model.js +0 -20
  258. package/esm5/lib/models/index.js +0 -7
  259. package/esm5/lib/models/public_api.js +0 -15
  260. package/esm5/lib/models/tcDocument.model.js +0 -18
  261. package/esm5/lib/models/timeout-notification.model.js +0 -18
  262. package/esm5/lib/models/user-details.model.js +0 -22
  263. package/esm5/lib/models/user.model.js +0 -25
  264. package/esm5/lib/services/case-sharing-state/case-sharing-state.service.js +0 -289
  265. package/esm5/lib/services/feature-toggle/feature-toggle.guard.js +0 -83
  266. package/esm5/lib/services/feature-toggle/feature-toggle.service.js +0 -88
  267. package/esm5/lib/services/feature-toggle/launch-darkly.service.js +0 -177
  268. package/esm5/lib/services/google-analytics/google-analytics.service.js +0 -128
  269. package/esm5/lib/services/google-tag-manager/google-tag-manager.service.js +0 -135
  270. package/esm5/lib/services/index.js +0 -7
  271. package/esm5/lib/services/loading/loading.service.js +0 -100
  272. package/esm5/lib/services/manage-session/manage-session.services.js +0 -111
  273. package/esm5/lib/services/public-api.js +0 -20
  274. package/esm5/lib/services/role-guard/role.guard.js +0 -81
  275. package/esm5/lib/services/role-guard/role.service.js +0 -45
  276. package/esm5/lib/services/timeout-notifications/timeout-notifications.service.js +0 -190
  277. package/esm5/lib/window.js +0 -13
  278. package/esm5/public-api.js +0 -16
  279. package/fesm5/hmcts-rpx-xui-common-lib.js +0 -4751
  280. package/fesm5/hmcts-rpx-xui-common-lib.js.map +0 -1
  281. package/lib/gov-ui/directives/index.d.ts +0 -1
  282. package/lib/gov-ui/directives/public_api.d.ts +0 -1
@@ -1,8 +1,3 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/components/invite-user-permissions/invite-user-permission.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
1
  import { Component, Input } from '@angular/core';
7
2
  import { FormGroup } from '@angular/forms';
8
3
  export class InviteUserPermissionComponent {
@@ -17,7 +12,7 @@ InviteUserPermissionComponent.decorators = [
17
12
  { type: Component, args: [{
18
13
  selector: 'xuilib-invite-permission-form',
19
14
  template: " <!--permissions -->\n <ng-container [formGroup]=\"inviteUserForm\">\n <xuilib-gov-uk-form-group-wrapper\n [config]=\"{hint: 'Choose what the user will be able to do. You can change this later.', legend: 'Permissions', key: 'roles'}\"\n [formGroupName]=\"'roles'\"\n [error]=\"errorMessages\">\n\n <div class=\"govuk-checkboxes\">\n <xuilib-gov-checkbox\n [group]=\"inviteUserForm.controls['roles']\"\n [isChecked]=\"isPuiCaseManager\"\n [config]=\"{value: 'pui-case-manager', label: 'Manage Cases', name: 'roles', hint: 'View, create and progress cases.', focusOn: 'roles'}\">\n </xuilib-gov-checkbox>\n\n <xuilib-gov-checkbox\n [group]=\"inviteUserForm.controls['roles']\"\n [isChecked]=\"isPuiUserManager\"\n [config]=\"{value: 'pui-user-manager', label: 'Manage Users', name: 'roles',\n hint: 'Invite users.'}\">\n </xuilib-gov-checkbox>\n\n <xuilib-gov-checkbox\n [group]=\"inviteUserForm.controls['roles']\"\n [isChecked]=\"isPuiOrganisationManager\"\n [config]=\"{value: 'pui-organisation-manager', label: 'Manage Organisation', name: 'roles',\n hint: 'View organisation name and addresses.'}\">\n </xuilib-gov-checkbox>\n\n <!-- <xuilib-gov-checkbox\n [group]=\"inviteUserForm.controls['roles']\"\n [isChecked]=\"isPuiFinanceManager\"\n [config]=\"{value: 'pui-finance-manager', label: 'Manage Payments', name: 'roles',\n hint: 'View account balances, available credit and transactions.'}\">\n </xuilib-gov-checkbox> -->\n </div>\n\n </xuilib-gov-uk-form-group-wrapper>\n</ng-container>"
20
- }] }
15
+ },] }
21
16
  ];
22
17
  InviteUserPermissionComponent.propDecorators = {
23
18
  inviteUserForm: [{ type: Input }],
@@ -27,18 +22,4 @@ InviteUserPermissionComponent.propDecorators = {
27
22
  isPuiFinanceManager: [{ type: Input }],
28
23
  errorMessages: [{ type: Input }]
29
24
  };
30
- if (false) {
31
- /** @type {?} */
32
- InviteUserPermissionComponent.prototype.inviteUserForm;
33
- /** @type {?} */
34
- InviteUserPermissionComponent.prototype.isPuiCaseManager;
35
- /** @type {?} */
36
- InviteUserPermissionComponent.prototype.isPuiUserManager;
37
- /** @type {?} */
38
- InviteUserPermissionComponent.prototype.isPuiOrganisationManager;
39
- /** @type {?} */
40
- InviteUserPermissionComponent.prototype.isPuiFinanceManager;
41
- /** @type {?} */
42
- InviteUserPermissionComponent.prototype.errorMessages;
43
- }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52aXRlLXVzZXItcGVybWlzc2lvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvaW52aXRlLXVzZXItcGVybWlzc2lvbnMvaW52aXRlLXVzZXItcGVybWlzc2lvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFRekMsTUFBTSxPQUFPLDZCQUE2QjtJQUw1QztRQU9vQixxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLDZCQUF3QixHQUFZLEtBQUssQ0FBQztRQUMxQyx3QkFBbUIsR0FBWSxLQUFLLENBQUM7SUFFdkQsQ0FBQzs7O1lBWkYsU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLHVvREFBc0Q7YUFDdkQ7Ozs2QkFHRSxLQUFLOytCQUNMLEtBQUs7K0JBQ0wsS0FBSzt1Q0FDTCxLQUFLO2tDQUNMLEtBQUs7NEJBQ0wsS0FBSzs7OztJQUxOLHVEQUEwQzs7SUFDMUMseURBQWtEOztJQUNsRCx5REFBa0Q7O0lBQ2xELGlFQUEwRDs7SUFDMUQsNERBQXFEOztJQUNyRCxzREFBa0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRXJyb3JNZXNzYWdlc01vZGVsIH0gZnJvbSAnLi4vLi4vZ292LXVpL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAneHVpbGliLWludml0ZS1wZXJtaXNzaW9uLWZvcm0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnZpdGUtdXNlci1wZXJtaXNzaW9uLmNvbXBvbmVudC5odG1sJyxcbiAgfSlcblxuICBleHBvcnQgY2xhc3MgSW52aXRlVXNlclBlcm1pc3Npb25Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpbnZpdGVVc2VyRm9ybTogRm9ybUdyb3VwO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpc1B1aUNhc2VNYW5hZ2VyOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHVibGljIGlzUHVpVXNlck1hbmFnZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBwdWJsaWMgaXNQdWlPcmdhbmlzYXRpb25NYW5hZ2VyOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHVibGljIGlzUHVpRmluYW5jZU1hbmFnZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBwdWJsaWMgZXJyb3JNZXNzYWdlczogRXJyb3JNZXNzYWdlc01vZGVsO1xuICB9XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52aXRlLXVzZXItcGVybWlzc2lvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2ludml0ZS11c2VyLXBlcm1pc3Npb25zL2ludml0ZS11c2VyLXBlcm1pc3Npb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVF6QyxNQUFNLE9BQU8sNkJBQTZCO0lBTDVDO1FBT29CLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNsQyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMsNkJBQXdCLEdBQVksS0FBSyxDQUFDO1FBQzFDLHdCQUFtQixHQUFZLEtBQUssQ0FBQztJQUV2RCxDQUFDOzs7WUFaRixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLCtCQUErQjtnQkFDekMsdW9EQUFzRDthQUN2RDs7OzZCQUdFLEtBQUs7K0JBQ0wsS0FBSzsrQkFDTCxLQUFLO3VDQUNMLEtBQUs7a0NBQ0wsS0FBSzs0QkFDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEVycm9yTWVzc2FnZXNNb2RlbCB9IGZyb20gJy4uLy4uL2dvdi11aS9tb2RlbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3h1aWxpYi1pbnZpdGUtcGVybWlzc2lvbi1mb3JtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW52aXRlLXVzZXItcGVybWlzc2lvbi5jb21wb25lbnQuaHRtbCcsXG4gIH0pXG5cbiAgZXhwb3J0IGNsYXNzIEludml0ZVVzZXJQZXJtaXNzaW9uQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBwdWJsaWMgaW52aXRlVXNlckZvcm06IEZvcm1Hcm91cDtcbiAgICBASW5wdXQoKSBwdWJsaWMgaXNQdWlDYXNlTWFuYWdlcjogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpc1B1aVVzZXJNYW5hZ2VyOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHVibGljIGlzUHVpT3JnYW5pc2F0aW9uTWFuYWdlcjogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpc1B1aUZpbmFuY2VNYW5hZ2VyOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHVibGljIGVycm9yTWVzc2FnZXM6IEVycm9yTWVzc2FnZXNNb2RlbDtcbiAgfVxuIl19
@@ -1,56 +1,18 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/components/loading-spinner/loading-spinner.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { Component, Input, Renderer2, ViewEncapsulation } from '@angular/core';
1
+ import { Component, Input, ViewEncapsulation } from '@angular/core';
7
2
  export class LoadingSpinnerComponent {
8
- /**
9
- * @param {?} renderer
10
- */
11
- constructor(renderer) {
12
- this.renderer = renderer;
13
- this.zIndex = 1000;
14
- this.loadingText = 'Page can take up to 30 seconds to load';
15
- }
16
- /**
17
- * @return {?}
18
- */
19
- ngOnInit() {
20
- this.renderer.addClass(document.body, 'loading-spinner-in-action');
21
- }
22
- /**
23
- * @return {?}
24
- */
25
- ngOnDestroy() {
26
- this.renderer.removeClass(document.body, 'loading-spinner-in-action');
3
+ constructor() {
4
+ this.loadingText = 'Loading';
27
5
  }
28
6
  }
29
7
  LoadingSpinnerComponent.decorators = [
30
8
  { type: Component, args: [{
31
9
  selector: 'xuilib-loading-spinner',
32
- template: "<div class=\"loading-spinner__overlay\" [ngStyle]=\"{'z-index': zIndex}\">\n <div class=\"loading-spinner__box\" [ngStyle]=\"{'z-index': zIndex + 1}\">\n <div class=\"loading-spinner__fan\">\n <ng-container *ngFor=\"let i of [].constructor(12)\">\n <div></div>\n </ng-container>\n </div>\n <p>{{loadingText}}</p>\n </div>\n</div>",
10
+ template: "<div class=\"spinner-container\">\n <div class=\"spinner-inner-container\">\n <p>{{loadingText}}</p>\n <div class=\"spinner\" style=\"margin: auto;\"></div>\n </div>\n</div>\n",
33
11
  encapsulation: ViewEncapsulation.None,
34
- styles: [".loading-spinner-in-action{overflow:hidden}.loading-spinner-in-action .loading-spinner__overlay{position:fixed;top:0;left:0;bottom:0;right:0;background-color:rgba(255,255,255,.7)}.loading-spinner-in-action .loading-spinner__box{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.loading-spinner-in-action .loading-spinner__fan{display:inline-block;position:relative;width:64px;height:64px}.loading-spinner-in-action .loading-spinner__fan div{transform-origin:32px 32px;-webkit-animation:1.2s linear infinite lds-spinner;animation:1.2s linear infinite lds-spinner}.loading-spinner-in-action .loading-spinner__fan div:after{content:\" \";display:block;position:absolute;top:3px;left:29px;width:5px;height:14px;border-radius:20%;background:#0b0c0c}.loading-spinner-in-action .loading-spinner__fan div:nth-child(1){transform:rotate(0);-webkit-animation-delay:-1.1s;animation-delay:-1.1s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(2){transform:rotate(30deg);-webkit-animation-delay:-1s;animation-delay:-1s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(3){transform:rotate(60deg);-webkit-animation-delay:-.9s;animation-delay:-.9s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(4){transform:rotate(90deg);-webkit-animation-delay:-.8s;animation-delay:-.8s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(5){transform:rotate(120deg);-webkit-animation-delay:-.7s;animation-delay:-.7s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(6){transform:rotate(150deg);-webkit-animation-delay:-.6s;animation-delay:-.6s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(7){transform:rotate(180deg);-webkit-animation-delay:-.5s;animation-delay:-.5s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(8){transform:rotate(210deg);-webkit-animation-delay:-.4s;animation-delay:-.4s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(9){transform:rotate(240deg);-webkit-animation-delay:-.3s;animation-delay:-.3s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(10){transform:rotate(270deg);-webkit-animation-delay:-.2s;animation-delay:-.2s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(11){transform:rotate(300deg);-webkit-animation-delay:-.1s;animation-delay:-.1s}.loading-spinner-in-action .loading-spinner__fan div:nth-child(12){transform:rotate(330deg);-webkit-animation-delay:0s;animation-delay:0s}@-webkit-keyframes lds-spinner{0%{opacity:1}100%{opacity:0}}@keyframes lds-spinner{0%{opacity:1}100%{opacity:0}}"]
35
- }] }
36
- ];
37
- /** @nocollapse */
38
- LoadingSpinnerComponent.ctorParameters = () => [
39
- { type: Renderer2 }
12
+ styles: [".spinner-container{position:fixed;top:0;left:0;height:100%;width:100%;display:flex;justify-content:center;align-items:center;background:hsla(0,0%,100%,.5);z-index:99}.spinner-container .spinner-inner-container p{text-align:center}.spinner-container .spinner-inner-container .spinner{border:10px solid #ddd;border-top-color:#000;border-radius:50%;width:40px;height:40px;-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}"]
13
+ },] }
40
14
  ];
41
15
  LoadingSpinnerComponent.propDecorators = {
42
- zIndex: [{ type: Input }],
43
16
  loadingText: [{ type: Input }]
44
17
  };
45
- if (false) {
46
- /** @type {?} */
47
- LoadingSpinnerComponent.prototype.zIndex;
48
- /** @type {?} */
49
- LoadingSpinnerComponent.prototype.loadingText;
50
- /**
51
- * @type {?}
52
- * @private
53
- */
54
- LoadingSpinnerComponent.prototype.renderer;
55
- }
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1zcGlubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sb2FkaW5nLXNwaW5uZXIvbG9hZGluZy1zcGlubmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFTbEcsTUFBTSxPQUFPLHVCQUF1Qjs7OztJQUlsQyxZQUE2QixRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBSGhDLFdBQU0sR0FBVyxJQUFJLENBQUM7UUFDdEIsZ0JBQVcsR0FBVyx3Q0FBd0MsQ0FBQztJQUU1QixDQUFDOzs7O0lBRTdDLFFBQVE7UUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLDJCQUEyQixDQUFDLENBQUM7SUFDckUsQ0FBQzs7OztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSwyQkFBMkIsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7OztZQW5CRixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsaVhBQStDO2dCQUUvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTs7YUFDeEM7Ozs7WUFQNkMsU0FBUzs7O3FCQVVwRCxLQUFLOzBCQUNMLEtBQUs7Ozs7SUFETix5Q0FBc0M7O0lBQ3RDLDhDQUErRTs7Ozs7SUFFbkUsMkNBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFJlbmRlcmVyMiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd4dWlsaWItbG9hZGluZy1zcGlubmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbG9hZGluZy1zcGlubmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9sb2FkaW5nLXNwaW5uZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuXG5leHBvcnQgY2xhc3MgTG9hZGluZ1NwaW5uZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHB1YmxpYyB6SW5kZXg6IG51bWJlciA9IDEwMDA7XG4gIEBJbnB1dCgpIHB1YmxpYyBsb2FkaW5nVGV4dDogc3RyaW5nID0gJ1BhZ2UgY2FuIHRha2UgdXAgdG8gMzAgc2Vjb25kcyB0byBsb2FkJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoZG9jdW1lbnQuYm9keSwgJ2xvYWRpbmctc3Bpbm5lci1pbi1hY3Rpb24nKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKGRvY3VtZW50LmJvZHksICdsb2FkaW5nLXNwaW5uZXItaW4tYWN0aW9uJyk7XG4gIH1cbn1cbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1zcGlubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbG9hZGluZy1zcGlubmVyL2xvYWRpbmctc3Bpbm5lci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFTcEUsTUFBTSxPQUFPLHVCQUF1QjtJQVBwQztRQVFrQixnQkFBVyxHQUFXLFNBQVMsQ0FBQztJQUNsRCxDQUFDOzs7WUFUQSxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsK01BQStDO2dCQUUvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTs7YUFDdEM7OzswQkFHRSxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneHVpbGliLWxvYWRpbmctc3Bpbm5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2FkaW5nLXNwaW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sb2FkaW5nLXNwaW5uZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcblxuZXhwb3J0IGNsYXNzIExvYWRpbmdTcGlubmVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIGxvYWRpbmdUZXh0OiBzdHJpbmcgPSAnTG9hZGluZyc7XG59XG4iXX0=
@@ -0,0 +1,28 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ export class PaginationComponent {
3
+ constructor() {
4
+ this.previousPage = new EventEmitter();
5
+ this.nextPage = new EventEmitter();
6
+ }
7
+ onPrevious() {
8
+ this.previousPage.emit(null);
9
+ }
10
+ onNext() {
11
+ this.nextPage.emit(null);
12
+ }
13
+ }
14
+ PaginationComponent.decorators = [
15
+ { type: Component, args: [{
16
+ selector: 'xuilib-pagination',
17
+ template: "<nav class=\"hmcts-pagination\" id=\"pagination-label\">\n\n <p class=\"govuk-visually-hidden\" aria-labelledby=\"pagination-label\">Pagination navigation</p>\n\n <ul class=\"hmcts-pagination__list\">\n <li class=\"hmcts-pagination__item hmcts-pagination__item--prev\">\n <a *ngIf=\"firstRecord > 1; else noPrevious\" class=\"hmcts-pagination__link\" (click)=\"onPrevious()\" href=\"javascript:void(0)\">\n Previous page\n </a>\n <ng-template #noPrevious>\n <span class=\"hmcts-pagination__link\">Previous page</span>\n </ng-template>\n </li>\n\n <li class=\"hmcts-pagination__item hmcts-pagination__item--next\">\n <a *ngIf=\"moreItems; else noNext\" class=\"hmcts-pagination__link\" (click)=\"onNext()\" href=\"javascript:void(0)\">Next page</a>\n <ng-template #noNext>\n <span class=\"hmcts-pagination__link\">Next page</span>\n </ng-template>\n </li>\n </ul>\n</nav>\n",
18
+ styles: ["span.hmcts-pagination__link:hover{color:revert}"]
19
+ },] }
20
+ ];
21
+ PaginationComponent.ctorParameters = () => [];
22
+ PaginationComponent.propDecorators = {
23
+ moreItems: [{ type: Input }],
24
+ firstRecord: [{ type: Input }],
25
+ previousPage: [{ type: Output }],
26
+ nextPage: [{ type: Output }]
27
+ };
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU92RSxNQUFNLE9BQU8sbUJBQW1CO0lBTzlCO1FBSGlCLGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckQsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRWxELENBQUM7SUFFVixVQUFVO1FBQ2YsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDOzs7WUFwQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLDY3QkFBMEM7O2FBRTNDOzs7O3dCQUdFLEtBQUs7MEJBQ0wsS0FBSzsyQkFDTCxNQUFNO3VCQUNOLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd4dWlsaWItcGFnaW5hdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2luYXRpb25Db21wb25lbnQge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBtb3JlSXRlbXM6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHB1YmxpYyBmaXJzdFJlY29yZDogbnVtYmVyO1xuICBAT3V0cHV0KCkgcHVibGljIHByZXZpb3VzUGFnZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgbmV4dFBhZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHVibGljIG9uUHJldmlvdXMoKTogdm9pZCB7XG4gICAgdGhpcy5wcmV2aW91c1BhZ2UuZW1pdChudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBvbk5leHQoKTogdm9pZCB7XG4gICAgdGhpcy5uZXh0UGFnZS5lbWl0KG51bGwpO1xuICB9XG59XG4iXX0=
@@ -1,30 +1,33 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/components/public_api.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- export { AccessibilityComponent } from './accessibility/accessibility.component';
7
- export { CheckboxListComponent } from './checkbox-list/checkbox-list.component';
8
- export { ContactDetailsComponent } from './contact-details/contact-details.component';
9
- export { DueDateComponent } from './due-date/due-date.component';
10
- export { ExuiPageWrapperComponent } from './exui-main-wrapper/exui-page-wrapper.component';
11
- export { HmctsSessionDialogComponent } from './hmcts-session-dialog/hmcts-session-dialog.component';
12
- export { InviteUserFormComponent } from './invite-user-form/invite-user-form.component';
13
- export { InviteUserPermissionComponent } from './invite-user-permissions/invite-user-permission.component';
14
- export { LoadingSpinnerComponent } from './loading-spinner/loading-spinner.component';
15
- export { SelectedCaseComponent } from './selected-case/selected-case.component';
16
- export { SelectedCaseConfirmComponent } from './selected-case-confirm/selected-case-confirm.component';
17
- export { SelectedCaseListComponent } from './selected-case-list/selected-case-list.component';
18
- export { ServiceMessageComponent } from './service-message/service-message.component';
19
- export { ServiceMessagesComponent } from './service-messages/service-messages.component';
20
- export { ShareCaseComponent } from './share-case/share-case.component';
21
- export { ShareCaseConfirmComponent } from './share-case-confirm/share-case-confirm.component';
22
- export { TabComponent } from './tab/tab.component';
23
- export { TcConfirmComponent } from './tc-confirm/tc-confirm.component';
24
- export { TermsAndConditionsComponent } from './terms-and-conditions/terms-and-conditions.component';
25
- export { TcDisplayHtmlComponent } from './terms-and-conditions/tc-display/tc-display-html/tc-display-html.component';
26
- export { TcDisplayPlainComponent } from './terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component';
27
- export { UserDetailsComponent } from './user-details/user-details.component';
28
- export { UserListComponent } from './user-list/user-list.component';
29
- export { UserSelectComponent } from './user-select/user-select.component';
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsdUNBQWMseUNBQXlDLENBQUM7QUFDeEQsc0NBQWMseUNBQXlDLENBQUM7QUFDeEQsd0NBQWMsNkNBQTZDLENBQUM7QUFDNUQsaUNBQWMsK0JBQStCLENBQUM7QUFDOUMseUNBQWMsaURBQWlELENBQUM7QUFDaEUsNENBQWMsdURBQXVELENBQUM7QUFDdEUsd0NBQWMsK0NBQStDLENBQUM7QUFDOUQsOENBQWMsNERBQTRELENBQUM7QUFDM0Usd0NBQWMsNkNBQTZDLENBQUM7QUFDNUQsc0NBQWMseUNBQXlDLENBQUM7QUFDeEQsNkNBQWMseURBQXlELENBQUM7QUFDeEUsMENBQWMsbURBQW1ELENBQUM7QUFDbEUsd0NBQWMsNkNBQTZDLENBQUM7QUFDNUQseUNBQWMsK0NBQStDLENBQUM7QUFDOUQsbUNBQWMsbUNBQW1DLENBQUM7QUFDbEQsMENBQWMsbURBQW1ELENBQUM7QUFDbEUsNkJBQWMscUJBQXFCLENBQUM7QUFDcEMsbUNBQWMsbUNBQW1DLENBQUM7QUFDbEQsNENBQWMsdURBQXVELENBQUM7QUFDdEUsdUNBQWMsNkVBQTZFLENBQUM7QUFDNUYsd0NBQWMsK0VBQStFLENBQUM7QUFDOUYscUNBQWMsdUNBQXVDLENBQUM7QUFDdEQsa0NBQWMsaUNBQWlDLENBQUM7QUFDaEQsb0NBQWMscUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FjY2Vzc2liaWxpdHkvYWNjZXNzaWJpbGl0eS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGVja2JveC1saXN0L2NoZWNrYm94LWxpc3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1kZXRhaWxzL2NvbnRhY3QtZGV0YWlscy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kdWUtZGF0ZS9kdWUtZGF0ZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9leHVpLW1haW4td3JhcHBlci9leHVpLXBhZ2Utd3JhcHBlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9obWN0cy1zZXNzaW9uLWRpYWxvZy9obWN0cy1zZXNzaW9uLWRpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnZpdGUtdXNlci1mb3JtL2ludml0ZS11c2VyLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW52aXRlLXVzZXItcGVybWlzc2lvbnMvaW52aXRlLXVzZXItcGVybWlzc2lvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2FkaW5nLXNwaW5uZXIvbG9hZGluZy1zcGlubmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdGVkLWNhc2Uvc2VsZWN0ZWQtY2FzZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3RlZC1jYXNlLWNvbmZpcm0vc2VsZWN0ZWQtY2FzZS1jb25maXJtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdGVkLWNhc2UtbGlzdC9zZWxlY3RlZC1jYXNlLWxpc3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS1tZXNzYWdlL3NlcnZpY2UtbWVzc2FnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlLW1lc3NhZ2VzL3NlcnZpY2UtbWVzc2FnZXMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmUtY2FzZS9zaGFyZS1jYXNlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlLWNhc2UtY29uZmlybS9zaGFyZS1jYXNlLWNvbmZpcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGFiL3RhYi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90Yy1jb25maXJtL3RjLWNvbmZpcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGVybXMtYW5kLWNvbmRpdGlvbnMvdGVybXMtYW5kLWNvbmRpdGlvbnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGVybXMtYW5kLWNvbmRpdGlvbnMvdGMtZGlzcGxheS90Yy1kaXNwbGF5LWh0bWwvdGMtZGlzcGxheS1odG1sLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3Rlcm1zLWFuZC1jb25kaXRpb25zL3RjLWRpc3BsYXkvdGMtZGlzcGxheS1wbGFpbi90Yy1kaXNwbGF5LXBsYWluLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItZGV0YWlscy91c2VyLWRldGFpbHMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci1saXN0L3VzZXItbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLXNlbGVjdC91c2VyLXNlbGVjdC5jb21wb25lbnQnO1xuIl19
1
+ export * from './accessibility/accessibility.component';
2
+ export * from './checkbox-list/checkbox-list.component';
3
+ export * from './contact-details/contact-details.component';
4
+ export * from './due-date/due-date.component';
5
+ export * from './generic-filter/generic-filter.component';
6
+ export * from './hmcts-session-dialog/hmcts-session-dialog.component';
7
+ export * from './invite-user-form/invite-user-form.component';
8
+ export * from './invite-user-permissions/invite-user-permission.component';
9
+ export * from './loading-spinner/loading-spinner.component';
10
+ export * from './selected-case-confirm/selected-case-confirm.component';
11
+ export * from './selected-case-list/selected-case-list.component';
12
+ export * from './selected-case/selected-case.component';
13
+ export * from './service-message/service-message.component';
14
+ export * from './service-messages/service-messages.component';
15
+ export * from './share-case-confirm/share-case-confirm.component';
16
+ export * from './share-case/share-case.component';
17
+ export * from './tab/tab.component';
18
+ export * from './tc-confirm/tc-confirm.component';
19
+ export * from './terms-and-conditions/tc-display/tc-display-html/tc-display-html.component';
20
+ export * from './terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component';
21
+ export * from './terms-and-conditions/terms-and-conditions.component';
22
+ export * from './user-details/user-details.component';
23
+ export * from './user-list/user-list.component';
24
+ export * from './cookie-banner/cookie-banner.component';
25
+ export * from './find-location/find-location.component';
26
+ export * from './search-location/search-location.component';
27
+ export * from './pagination/pagination.component';
28
+ export * from './search-venue/search-venue.component';
29
+ export * from './search-judicials/search-judicials.component';
30
+ export * from './find-person/find-person.component';
31
+ export * from './user-select/user-select.component';
32
+ export * from './exui-main-wrapper/exui-page-wrapper.component';
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDZFQUE2RSxDQUFDO0FBQzVGLGNBQWMsK0VBQStFLENBQUM7QUFDOUYsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsaURBQWlELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FjY2Vzc2liaWxpdHkvYWNjZXNzaWJpbGl0eS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGVja2JveC1saXN0L2NoZWNrYm94LWxpc3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1kZXRhaWxzL2NvbnRhY3QtZGV0YWlscy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kdWUtZGF0ZS9kdWUtZGF0ZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9nZW5lcmljLWZpbHRlci9nZW5lcmljLWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9obWN0cy1zZXNzaW9uLWRpYWxvZy9obWN0cy1zZXNzaW9uLWRpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnZpdGUtdXNlci1mb3JtL2ludml0ZS11c2VyLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW52aXRlLXVzZXItcGVybWlzc2lvbnMvaW52aXRlLXVzZXItcGVybWlzc2lvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2FkaW5nLXNwaW5uZXIvbG9hZGluZy1zcGlubmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdGVkLWNhc2UtY29uZmlybS9zZWxlY3RlZC1jYXNlLWNvbmZpcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0ZWQtY2FzZS1saXN0L3NlbGVjdGVkLWNhc2UtbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3RlZC1jYXNlL3NlbGVjdGVkLWNhc2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS1tZXNzYWdlL3NlcnZpY2UtbWVzc2FnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlLW1lc3NhZ2VzL3NlcnZpY2UtbWVzc2FnZXMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmUtY2FzZS1jb25maXJtL3NoYXJlLWNhc2UtY29uZmlybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZS1jYXNlL3NoYXJlLWNhc2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGFiL3RhYi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90Yy1jb25maXJtL3RjLWNvbmZpcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGVybXMtYW5kLWNvbmRpdGlvbnMvdGMtZGlzcGxheS90Yy1kaXNwbGF5LWh0bWwvdGMtZGlzcGxheS1odG1sLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3Rlcm1zLWFuZC1jb25kaXRpb25zL3RjLWRpc3BsYXkvdGMtZGlzcGxheS1wbGFpbi90Yy1kaXNwbGF5LXBsYWluLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3Rlcm1zLWFuZC1jb25kaXRpb25zL3Rlcm1zLWFuZC1jb25kaXRpb25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItZGV0YWlscy91c2VyLWRldGFpbHMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci1saXN0L3VzZXItbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb29raWUtYmFubmVyL2Nvb2tpZS1iYW5uZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZmluZC1sb2NhdGlvbi9maW5kLWxvY2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC1sb2NhdGlvbi9zZWFyY2gtbG9jYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC12ZW51ZS9zZWFyY2gtdmVudWUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoLWp1ZGljaWFscy9zZWFyY2gtanVkaWNpYWxzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbmQtcGVyc29uL2ZpbmQtcGVyc29uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItc2VsZWN0L3VzZXItc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2V4dWktbWFpbi13cmFwcGVyL2V4dWktcGFnZS13cmFwcGVyLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,126 @@
1
+ import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import { AbstractControl, FormArray, FormBuilder, FormControl } from '@angular/forms';
3
+ import { Subject } from 'rxjs';
4
+ import { debounceTime, mergeMap } from 'rxjs/operators';
5
+ import { FindAPersonService } from '../../services/find-person/find-person.service';
6
+ export class SearchJudicialsComponent {
7
+ constructor(judicialService, fb) {
8
+ this.judicialService = judicialService;
9
+ this.disabled = null;
10
+ this.selectedJudicials = [];
11
+ this.submitted = true;
12
+ this.placeholderContent = '';
13
+ this.showAutocomplete = false;
14
+ this.judicialChanged = new EventEmitter();
15
+ this.idValue = '';
16
+ this.errorMessage = 'You must select a name';
17
+ this.serviceId = '';
18
+ this.minSearchCharacters = 3;
19
+ this.keyUpSubject$ = new Subject();
20
+ this.searchInProgress = false;
21
+ this.formGroup = fb.group({
22
+ formControl: [null],
23
+ selectedFormControl: [null]
24
+ });
25
+ }
26
+ ngOnInit() {
27
+ this.displayedJudicials = [];
28
+ if (this.control) {
29
+ if (this.formGroup && this.formGroup.controls) {
30
+ this.formGroup.controls.selectedFormControl = this.control;
31
+ this.formGroup.controls.formControl.setValue(this.getControlValueDisplayText());
32
+ }
33
+ }
34
+ this.keyUpSubject$.pipe(debounceTime(500)).subscribe(searchValue => this.search(searchValue));
35
+ }
36
+ onKeyDown() {
37
+ this.judicialChanged.emit();
38
+ }
39
+ onKeyUp(event) {
40
+ this.showAutocomplete = false;
41
+ this.keyUpSubject$.next(event.target.value);
42
+ }
43
+ onFocus() {
44
+ this.showAutocomplete = false;
45
+ }
46
+ get displayedJudicialsDuplicationFiltered() {
47
+ return this.displayedJudicials.filter(judicial => !this.selectedJudicials.map(selectedJudicial => selectedJudicial.idamId).includes(judicial.idamId));
48
+ }
49
+ filter(term) {
50
+ this.searchJudicials(term, this.serviceId).pipe(mergeMap((apiData) => {
51
+ const apiFilter = apiData.filter(apiJudicial => !this.selectedJudicials.map(selectedJudicial => selectedJudicial.idamId).includes(apiJudicial.idamId));
52
+ this.displayedJudicials = apiFilter;
53
+ this.searchInProgress = false;
54
+ return apiFilter;
55
+ })).subscribe(judicial => {
56
+ if (term === judicial.knownAs) {
57
+ this.formGroup.controls.selectedFormControl.setValue(judicial);
58
+ this.displayedJudicials = [];
59
+ this.judicialChanged.emit(judicial);
60
+ this.showAutocomplete = false;
61
+ }
62
+ this.searchInProgress = false;
63
+ });
64
+ }
65
+ onSelectionChange(selection) {
66
+ if (this.formGroup.controls.formControl instanceof FormArray) {
67
+ this.formGroup.controls.selectedFormControl.push(new FormControl(selection.idamId));
68
+ }
69
+ else {
70
+ this.formGroup.controls.selectedFormControl.setValue(selection);
71
+ }
72
+ this.judicialChanged.emit(selection);
73
+ }
74
+ search(currentValue) {
75
+ this.searchInProgress = true;
76
+ this.showAutocomplete = !!currentValue && (currentValue.length >= this.minSearchCharacters);
77
+ if (!!currentValue) {
78
+ this.formGroup.controls.selectedFormControl.markAsDirty();
79
+ }
80
+ else {
81
+ this.formGroup.controls.selectedFormControl.reset();
82
+ }
83
+ if (this.showAutocomplete) {
84
+ this.filter(currentValue);
85
+ }
86
+ else {
87
+ this.searchInProgress = false;
88
+ }
89
+ }
90
+ getDisplayName(selectedJudicial) {
91
+ return `${selectedJudicial.knownAs} (${selectedJudicial.emailId})`;
92
+ }
93
+ searchJudicials(term, serviceId) {
94
+ return this.judicialService.searchJudicial(term, serviceId);
95
+ }
96
+ getControlValueDisplayText() {
97
+ return this.formGroup && this.formGroup.controls && this.formGroup.controls.selectedFormControl.value ?
98
+ this.getDisplayName(this.formGroup.controls.selectedFormControl.value) : '';
99
+ }
100
+ }
101
+ SearchJudicialsComponent.decorators = [
102
+ { type: Component, args: [{
103
+ selector: 'xuilib-search-judicials',
104
+ template: "<div class=\"govuk-form-group\">\n <input id=\"inputSelectPerson{{idValue}}\" [placeholder]=\"placeholderContent\" [formControl]=\"formGroup.controls.formControl\"\n [matAutocomplete]=\"autoComplete\" (keydown)=\"onKeyDown()\" (keyup)=\"onKeyUp($event)\" (focus)=\"onFocus()\"\n class=\"govuk-input\" [attr.disabled]=\"!disabled ? null: disabled\" [value]=\"getControlValueDisplayText()\"\n #inputSelection>\n <mat-autocomplete autoActiveFirstOption #autoComplete=\"matAutocomplete\">\n <mat-option *ngFor=\"let judicial of displayedJudicialsDuplicationFiltered\" class=\"select-option\"\n [value]=\"getDisplayName(judicial)\" (onSelectionChange)=\"onSelectionChange(judicial)\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete}\">\n {{ getDisplayName(judicial) }}\n </mat-option>\n <mat-option class=\"select-option\"\n *ngIf=\"!displayedJudicialsDuplicationFiltered?.length && showAutocomplete && !searchInProgress\">\n {{ 'No results found' }}</mat-option>\n </mat-autocomplete>\n</div>\n",
105
+ styles: [".hide-autocomplete{display:none}.mat-option:hover{background:#2596be}.mat-option.select-option:hover{background:#1d70b8;color:#fff}"]
106
+ },] }
107
+ ];
108
+ SearchJudicialsComponent.ctorParameters = () => [
109
+ { type: FindAPersonService },
110
+ { type: FormBuilder }
111
+ ];
112
+ SearchJudicialsComponent.propDecorators = {
113
+ control: [{ type: Input }],
114
+ disabled: [{ type: Input }],
115
+ selectedJudicials: [{ type: Input }],
116
+ submitted: [{ type: Input }],
117
+ placeholderContent: [{ type: Input }],
118
+ showAutocomplete: [{ type: Input }],
119
+ displayedJudicials: [{ type: Input }],
120
+ judicialChanged: [{ type: Output }],
121
+ idValue: [{ type: Input }],
122
+ errorMessage: [{ type: Input }],
123
+ serviceId: [{ type: Input }],
124
+ autoCompleteInputBox: [{ type: ViewChild, args: ['inputSelection', { read: ElementRef, static: true },] }]
125
+ };
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWp1ZGljaWFscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC1qdWRpY2lhbHMvc2VhcmNoLWp1ZGljaWFscy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRyxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFPcEYsTUFBTSxPQUFPLHdCQUF3QjtJQW1CbkMsWUFBNkIsZUFBbUMsRUFBRSxFQUFlO1FBQXBELG9CQUFlLEdBQWYsZUFBZSxDQUFvQjtRQWhCaEQsYUFBUSxHQUFZLElBQUksQ0FBQztRQUN6QixzQkFBaUIsR0FBd0IsRUFBRSxDQUFDO1FBQzVDLGNBQVMsR0FBYSxJQUFJLENBQUM7UUFDM0IsdUJBQWtCLEdBQVcsRUFBRSxDQUFDO1FBQ2hDLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUVqQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFxQixDQUFDO1FBQ3pELFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsaUJBQVksR0FBVyx3QkFBd0IsQ0FBQztRQUNoRCxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBR3RCLHdCQUFtQixHQUFHLENBQUMsQ0FBQztRQUNsQyxrQkFBYSxHQUFvQixJ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QUVNLGNBQWMsQ0FBQyxnQkFBbUM7UUFDdkQsT0FBTyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sS0FBSyxnQkFBZ0IsQ0FBQyxPQUFPLEdBQUcsQ0FBQztJQUNyRSxDQUFDO0lBRU0sZUFBZSxDQUFDLElBQVksRUFBRSxTQUFpQjtRQUNwRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU0sMEJBQTBCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEtBQTBCLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3JHLENBQUM7OztZQXJIRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtnQkFDbkMsOGhDQUFnRDs7YUFFakQ7OztZQU5RLGtCQUFrQjtZQUpVLFdBQVc7OztzQkFhN0MsS0FBSzt1QkFDTCxLQUFLO2dDQUNMLEtBQUs7d0JBQ0wsS0FBSztpQ0FDTCxLQUFLOytCQUNMLEtBQUs7aUNBQ0wsS0FBSzs4QkFDTCxNQUFNO3NCQUNOLEtBQUs7MkJBQ0wsS0FBSzt3QkFDTCxLQUFLO21DQUNMLFNBQVMsU0FBQyxnQkFBZ0IsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtZXJnZU1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEp1ZGljaWFsVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEZpbmRBUGVyc29uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZpbmQtcGVyc29uL2ZpbmQtcGVyc29uLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd4dWlsaWItc2VhcmNoLWp1ZGljaWFscycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2gtanVkaWNpYWxzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VhcmNoLWp1ZGljaWFscy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEp1ZGljaWFsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgcHVibGljIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIHNlbGVjdGVkSnVkaWNpYWxzOiBKdWRpY2lhbFVzZXJNb2RlbFtdID0gW107XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJtaXR0ZWQ/OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyQ29udGVudDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93QXV0b2NvbXBsZXRlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNwbGF5ZWRKdWRpY2lhbHM6IEp1ZGljaWFsVXNlck1vZGVsW107XG4gIEBPdXRwdXQoKSBwdWJsaWMganVkaWNpYWxDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxKdWRpY2lhbFVzZXJNb2RlbD4oKTtcbiAgQElucHV0KCkgcHVibGljIGlkVmFsdWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnWW91IG11c3Qgc2VsZWN0IGEgbmFtZSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXJ2aWNlSWQ6IHN0cmluZyA9ICcnO1xuICBAVmlld0NoaWxkKCdpbnB1dFNlbGVjdGlvbicsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pIHB1YmxpYyBhdXRvQ29tcGxldGVJbnB1dEJveDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgcHVibGljIHNlbGVjdGVkSnVkaWNpYWw6IEp1ZGljaWFsVXNlck1vZGVsO1xuICBwcml2YXRlIHJlYWRvbmx5IG1pblNlYXJjaENoYXJhY3RlcnMgPSAzO1xuICBwdWJsaWMga2V5VXBTdWJqZWN0JDogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3QoKTtcbiAgcHVibGljIHNlYXJjaEluUHJvZ3Jlc3M6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGp1ZGljaWFsU2VydmljZTogRmluZEFQZXJzb25TZXJ2aWNlLCBmYjogRm9ybUJ1aWxkZXIpIHtcbiAgICB0aGlzLmZvcm1Hcm91cCA9IGZiLmdyb3VwKHtcbiAgICAgIGZvcm1Db250cm9sOiBbbnVsbF0sXG4gICAgICBzZWxlY3RlZEZvcm1Db250cm9sOiBbbnVsbF1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3BsYXllZEp1ZGljaWFscyA9IFtdO1xuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgIGlmICh0aGlzLmZvcm1Hcm91cCAmJiB0aGlzLmZvcm1Hcm91cC5jb250cm9scykge1xuICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5zZWxlY3RlZEZvcm1Db250cm9sID0gdGhpcy5jb250cm9sO1xuICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh0aGlzLmdldENvbnRyb2xWYWx1ZURpc3BsYXlUZXh0KCkpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmtleVVwU3ViamVjdCQucGlwZShkZWJvdW5jZVRpbWUoNTAwKSkuc3Vic2NyaWJlKHNlYXJjaFZhbHVlID0+IHRoaXMuc2VhcmNoKHNlYXJjaFZhbHVlIGFzIHN0cmluZykpO1xuICB9XG5cbiAgcHVibGljIG9uS2V5RG93bigpOiB2b2lkIHtcbiAgICB0aGlzLmp1ZGljaWFsQ2hhbmdlZC5lbWl0KCk7XG4gIH1cblxuICBwdWJsaWMgb25LZXlVcChldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5zaG93QXV0b2NvbXBsZXRlID0gZmFsc2U7XG4gICAgdGhpcy5rZXlVcFN1YmplY3QkLm5leHQoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkZvY3VzKCkge1xuICAgIHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5ZWRKdWRpY2lhbHNEdXBsaWNhdGlvbkZpbHRlcmVkKCk6IEp1ZGljaWFsVXNlck1vZGVsW10ge1xuICAgIHJldHVybiB0aGlzLmRpc3BsYXllZEp1ZGljaWFscy5maWx0ZXIoXG4gICAgICBqdWRpY2lhbCA9PiAhdGhpcy5zZWxlY3RlZEp1ZGljaWFscy5tYXAoc2VsZWN0ZWRKdWRpY2lhbCA9PiBzZWxlY3RlZEp1ZGljaWFsLmlkYW1JZCkuaW5jbHVkZXMoanVkaWNpYWwuaWRhbUlkKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZmlsdGVyKHRlcm06IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoSnVkaWNpYWxzKHRlcm0sIHRoaXMuc2VydmljZUlkKS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKGFwaURhdGE6IEp1ZGljaWFsVXNlck1vZGVsW10pID0+IHtcbiAgICAgICAgY29uc3QgYXBpRmlsdGVyID0gYXBpRGF0YS5maWx0ZXIoXG4gICAgICAgICAgYXBpSnVkaWNpYWwgPT4gIXRoaXMuc2VsZWN0ZWRKdWRpY2lhbHMubWFwKHNlbGVjdGVkSnVkaWNpYWwgPT4gc2VsZWN0ZWRKdWRpY2lhbC5pZGFtSWQpLmluY2x1ZGVzKGFwaUp1ZGljaWFsLmlkYW1JZClcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5ZWRKdWRpY2lhbHMgPSBhcGlGaWx0ZXI7XG4gICAgICAgIHRoaXMuc2VhcmNoSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gYXBpRmlsdGVyO1xuICAgICAgfSlcbiAgICApLnN1YnNjcmliZShqdWRpY2lhbCA9PiB7XG4gICAgICBpZiAodGVybSA9PT0ganVkaWNpYWwua25vd25Bcykge1xuICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5zZWxlY3RlZEZvcm1Db250cm9sLnNldFZhbHVlKGp1ZGljaWFsKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5ZWRKdWRpY2lhbHMgPSBbXTtcbiAgICAgICAgdGhpcy5qdWRpY2lhbENoYW5nZWQuZW1pdChqdWRpY2lhbCk7XG4gICAgICAgIHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9IGZhbHNlO1xuICAgICAgfVxuICAgICAgdGhpcy5zZWFyY2hJblByb2dyZXNzID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25TZWxlY3Rpb25DaGFuZ2Uoc2VsZWN0aW9uPzogSnVkaWNpYWxVc2VyTW9kZWwpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mb3JtR3JvdXAuY29udHJvbHMuZm9ybUNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQXJyYXkpIHtcbiAgICAgICh0aGlzLmZvcm1Hcm91cC5jb250cm9scy5zZWxlY3RlZEZvcm1Db250cm9sIGFzIEZvcm1BcnJheSkucHVzaChuZXcgRm9ybUNvbnRyb2woc2VsZWN0aW9uLmlkYW1JZCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5zZWxlY3RlZEZvcm1Db250cm9sLnNldFZhbHVlKHNlbGVjdGlvbik7XG4gICAgfVxuICAgIHRoaXMuanVkaWNpYWxDaGFuZ2VkLmVtaXQoc2VsZWN0aW9uKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2goY3VycmVudFZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaEluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgIHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9ICEhY3VycmVudFZhbHVlICYmIChjdXJyZW50VmFsdWUubGVuZ3RoID49IHRoaXMubWluU2VhcmNoQ2hhcmFjdGVycyk7XG4gICAgaWYgKCEhY3VycmVudFZhbHVlKSB7XG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5zZWxlY3RlZEZvcm1Db250cm9sLm1hcmtBc0RpcnR5KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnNlbGVjdGVkRm9ybUNvbnRyb2wucmVzZXQoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuc2hvd0F1dG9jb21wbGV0ZSkge1xuICAgICAgdGhpcy5maWx0ZXIoY3VycmVudFZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWFyY2hJblByb2dyZXNzID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldERpc3BsYXlOYW1lKHNlbGVjdGVkSnVkaWNpYWw6IEp1ZGljaWFsVXNlck1vZGVsKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7c2VsZWN0ZWRKdWRpY2lhbC5rbm93bkFzfSAoJHtzZWxlY3RlZEp1ZGljaWFsLmVtYWlsSWR9KWA7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoSnVkaWNpYWxzKHRlcm06IHN0cmluZywgc2VydmljZUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEp1ZGljaWFsVXNlck1vZGVsW10+IHtcbiAgICByZXR1cm4gdGhpcy5qdWRpY2lhbFNlcnZpY2Uuc2VhcmNoSnVkaWNpYWwodGVybSwgc2VydmljZUlkKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb250cm9sVmFsdWVEaXNwbGF5VGV4dCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cCAmJiB0aGlzLmZvcm1Hcm91cC5jb250cm9scyAmJiB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5zZWxlY3RlZEZvcm1Db250cm9sLnZhbHVlID9cbiAgICAgIHRoaXMuZ2V0RGlzcGxheU5hbWUodGhpcy5mb3JtR3JvdXAuY29udHJvbHMuc2VsZWN0ZWRGb3JtQ29udHJvbC52YWx1ZSBhcyBKdWRpY2lhbFVzZXJNb2RlbCkgOiAnJztcbiAgfVxufVxuIl19
@@ -0,0 +1,114 @@
1
+ import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { AbstractControl, FormBuilder, FormGroup } from '@angular/forms';
3
+ import { debounceTime, filter, map, mergeMap, tap } from 'rxjs/operators';
4
+ import { LocationService } from '../../services/locations/location.service';
5
+ export class SearchLocationComponent {
6
+ constructor(locationService, fb, cd) {
7
+ this.locationService = locationService;
8
+ this.fb = fb;
9
+ this.cd = cd;
10
+ this.disabled = null;
11
+ this.singleMode = false;
12
+ this.locationType = '';
13
+ this.serviceIds = '';
14
+ this.submitted = true;
15
+ this.delay = 500;
16
+ this.showAutocomplete = false;
17
+ this.locations = [];
18
+ this.locationSelected = new EventEmitter();
19
+ this.locationInputChanged = new EventEmitter();
20
+ this.searchLocationChanged = new EventEmitter();
21
+ this.minSearchCharacters = 3;
22
+ this.term = '';
23
+ this.pSelectedLocations = [];
24
+ this.pReset = true;
25
+ this.form = this.fb.group({
26
+ searchTerm: ['']
27
+ });
28
+ }
29
+ get reset() {
30
+ return this.pReset;
31
+ }
32
+ set reset(value) {
33
+ this.pReset = value;
34
+ this.resetSearchTerm();
35
+ }
36
+ get selectedLocations() {
37
+ return this.pSelectedLocations;
38
+ }
39
+ set selectedLocations(value) {
40
+ this.pSelectedLocations = value;
41
+ }
42
+ ngOnInit() {
43
+ if (this.singleMode && this.selectedLocations.length > 0) {
44
+ const location = this.selectedLocations[0];
45
+ this.form.controls.searchTerm.patchValue(location.site_name, { emitEvent: false, onlySelf: true });
46
+ }
47
+ this.search();
48
+ }
49
+ filter(term) {
50
+ this.getLocations(term).pipe(map((locations) => this.removeSelectedLocations(locations)));
51
+ }
52
+ onSelectionChange(location) {
53
+ this.form.controls.searchTerm.patchValue(location.site_name, { emitEvent: false, onlySelf: true });
54
+ this.locationSelected.emit(location);
55
+ }
56
+ search() {
57
+ this.form.controls.searchTerm.valueChanges
58
+ .pipe(tap((term) => this.locationInputChanged.next(term)), tap(() => this.locations = []), tap((term) => this.term = term), filter(term => !!term && term.length >= this.minSearchCharacters), debounceTime(this.delay), mergeMap(value => this.getLocations(value)), map((locations) => this.removeSelectedLocations(locations))).subscribe(locations => {
59
+ this.locations = locations;
60
+ this.cd.markForCheck();
61
+ if (locations.length === 1 && this.term === locations[0].site_name && !this.singleMode) {
62
+ this.locationSelected.emit(locations[0]);
63
+ this.showAutocomplete = false;
64
+ return;
65
+ }
66
+ this.showAutocomplete = true;
67
+ });
68
+ }
69
+ onInput() {
70
+ this.searchLocationChanged.emit();
71
+ }
72
+ getLocations(term) {
73
+ return this.locationService.getAllLocations(this.serviceIds, this.locationType, term);
74
+ }
75
+ resetSearchTerm() {
76
+ this.form.controls.searchTerm.patchValue('', { emitEvent: false, onlySelf: true });
77
+ }
78
+ removeSelectedLocations(locations) {
79
+ if (this.singleMode) {
80
+ return locations;
81
+ }
82
+ return locations.filter(location => !this.selectedLocations.map(selectedLocation => selectedLocation.epimms_id).includes(location.epimms_id) && location.site_name);
83
+ }
84
+ }
85
+ SearchLocationComponent.decorators = [
86
+ { type: Component, args: [{
87
+ selector: 'exui-search-location',
88
+ template: "<div class=\"auto-complete-container\">\n <input\n id=\"inputLocationSearch\"\n (input)=\"onInput()\"\n [formControl]=\"form.controls.searchTerm\"\n [matAutocomplete]=\"autoSearchLocation\"\n class=\"govuk-input\"\n [attr.disabled]=\"disabled\">\n <mat-autocomplete class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #autoSearchLocation=\"matAutocomplete\">\n <mat-option *ngFor=\"let location of locations\"\n (onSelectionChange)=\"onSelectionChange(location)\">\n {{ location.site_name }}\n </mat-option>\n <mat-option *ngIf=\"!locations.length && showAutocomplete && term && term.length >= this.minSearchCharacters\">No results found</mat-option>\n </mat-autocomplete>\n</div>\n",
89
+ styles: [".autocomplete__input--show-all-values{padding:5px 34px 5px 5px;cursor:pointer}.autocomplete__dropdown-arrow-down{z-index:-1;display:inline-block;position:absolute;right:8px;width:24px;height:24px;top:10px}.autocomplete__menu{background-color:#fff;border:2px solid #0b0c0c;border-top:0;color:#0b0c0c;margin:0;max-height:342px;overflow-x:hidden;padding:0;width:100%;width:calc(100% - 4px)}.autocomplete__menu--visible{display:block}.autocomplete__menu--hidden{display:none}.autocomplete__menu--overlay{box-shadow:0 2px 6px rgba(0,0,0,.256863);left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline{position:relative}.autocomplete__option{border-left-width:0;border-bottom:1px solid #b1b4b6;border-right-width:0;border-top-width:1px;cursor:pointer;display:block;position:relative}.autocomplete__option>*{pointer-events:none}.autocomplete__option:first-of-type{border-top-width:0}.autocomplete__option:last-of-type{border-bottom-width:0}.autocomplete__option--odd{background-color:#fafafa}.autocomplete__option--focused,.autocomplete__option:hover{background-color:#1d70b8;border-color:#1d70b8;color:#fff;outline:0}.autocomplete__option--no-results{background-color:#fafafa;color:#646b6f;cursor:not-allowed}.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:13px;line-height:1.25}.autocomplete__hint,.autocomplete__option{padding:5px}@media (min-width:641px){.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:13px;line-height:1.31579}}.div-action{display:inline-block}.add-location{display:inline}.remove-location-button{margin:5px}.hide-autocomplete{display:none}.auto-complete-container{min-width:550px;display:inline-block;margin-right:4px}.autocomplete__input{line-height:24px;font-size:19px}"]
90
+ },] }
91
+ ];
92
+ SearchLocationComponent.ctorParameters = () => [
93
+ { type: LocationService },
94
+ { type: FormBuilder },
95
+ { type: ChangeDetectorRef }
96
+ ];
97
+ SearchLocationComponent.propDecorators = {
98
+ control: [{ type: Input }],
99
+ disabled: [{ type: Input }],
100
+ singleMode: [{ type: Input }],
101
+ locationType: [{ type: Input }],
102
+ serviceIds: [{ type: Input }],
103
+ submitted: [{ type: Input }],
104
+ delay: [{ type: Input }],
105
+ form: [{ type: Input }],
106
+ showAutocomplete: [{ type: Input }],
107
+ locations: [{ type: Input }],
108
+ locationSelected: [{ type: Output }],
109
+ locationInputChanged: [{ type: Output }],
110
+ searchLocationChanged: [{ type: Output }],
111
+ reset: [{ type: Input }],
112
+ selectedLocations: [{ type: Input }]
113
+ };
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWxvY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvc2VhcmNoLWxvY2F0aW9uL3NlYXJjaC1sb2NhdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQUMsZUFBZSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxPQUFPLEVBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXhFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQU8xRSxNQUFNLE9BQU8sdUJBQXVCO0lBbUJsQyxZQUE2QixlQUFnQyxFQUFtQixFQUFlLEVBQW1CLEVBQXFCO1FBQTFHLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUFtQixPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQW1CLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBakJ2SCxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixjQUFTLEdBQWEsSUFBSSxDQUFDO1FBQzNCLFVBQUssR0FBWSxHQUFHLENBQUM7UUFFckIscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLGNBQVMsR0FBNEIsRUFBRSxDQUFDO1FBQ3ZDLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO1FBQzdELHlCQUFvQixHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3hFLDBCQUFxQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3RFLHdCQUFtQixHQUFHLENBQUMsQ0FBQztRQUNqQyxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2pCLHVCQUFrQixHQUFVLEVBQUUsQ0FBQztRQUMvQixXQUFNLEdBQVksSUFBSSxDQUFDO1FBRzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDeEIsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQ1csS0FBSyxDQUFDLEtBQWM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFXLGlCQUFpQjtRQUMxQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFDVyxpQkFBaUIsQ0FBQyxLQUFZO1FBQ3ZDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7SUFFbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDeEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7U0FDbEc7UUFDRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxJQUFZO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUMxQixHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsQ0FDekQsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVNLGlCQUFpQixDQUFDLFFBQStCO1FBQ3RELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFDakcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZO2FBQ3ZDLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsRUFDbkQsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLEVBQzlCLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFDL0IsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUNqRSxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUN4QixRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQzNDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQzVELENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1lBQzNCLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdkIsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUN0RixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN6QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO2dCQUM5QixPQUFPO2FBQ1I7WUFDRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLFlBQVksQ0FBQyxJQUFZO1FBQzlCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFFTSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRU8sdUJBQXVCLENBQUMsU0FBa0M7UUFDaEUsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBQ0QsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUNyQixRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUMzSSxDQUFDO0lBQ0osQ0FBQzs7O1lBL0dGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsc0JBQXNCO2dCQUNoQyxrdkJBQStDOzthQUVoRDs7O1lBTk8sZUFBZTtZQUpFLFdBQVc7WUFENUIsaUJBQWlCOzs7c0JBYXRCLEtBQUs7dUJBQ0wsS0FBSzt5QkFDTCxLQUFLOzJCQUNMLEtBQUs7eUJBQ0wsS0FBSzt3QkFDTCxLQUFLO29CQUNMLEtBQUs7bUJBQ0wsS0FBSzsrQkFDTCxLQUFLO3dCQUNMLEtBQUs7K0JBQ0wsTUFBTTttQ0FDTixNQUFNO29DQUNOLE1BQU07b0JBZ0JOLEtBQUs7Z0NBVUwsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIEZvcm1CdWlsZGVyLCBGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2RlYm91bmNlVGltZSwgZmlsdGVyLCBtYXAsIG1lcmdlTWFwLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7TG9jYXRpb25CeUVQSU1NU01vZGVsfSBmcm9tICcuLi8uLi9tb2RlbHMvbG9jYXRpb24ubW9kZWwnO1xuaW1wb3J0IHtMb2NhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvY2F0aW9ucy9sb2NhdGlvbi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXh1aS1zZWFyY2gtbG9jYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWxvY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VhcmNoLWxvY2F0aW9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoTG9jYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBwdWJsaWMgY29udHJvbDogQWJzdHJhY3RDb250cm9sO1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBudWxsO1xuICBASW5wdXQoKSBwdWJsaWMgc2luZ2xlTW9kZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgbG9jYXRpb25UeXBlOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHNlcnZpY2VJZHM6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgc3VibWl0dGVkPzogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHB1YmxpYyBkZWxheT86IG51bWJlciA9IDUwMDtcbiAgQElucHV0KCkgcHVibGljIGZvcm06IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgcHVibGljIHNob3dBdXRvY29tcGxldGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGxvY2F0aW9uczogTG9jYXRpb25CeUVQSU1NU01vZGVsW10gPSBbXTtcbiAgQE91dHB1dCgpIHB1YmxpYyBsb2NhdGlvblNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxMb2NhdGlvbkJ5RVBJTU1TTW9kZWw+KCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgbG9jYXRpb25JbnB1dENoYW5nZWQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgc2VhcmNoTG9jYXRpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIHB1YmxpYyByZWFkb25seSBtaW5TZWFyY2hDaGFyYWN0ZXJzID0gMztcbiAgcHVibGljIHRlcm06IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIHBTZWxlY3RlZExvY2F0aW9uczogYW55W10gPSBbXTtcbiAgcHJpdmF0ZSBwUmVzZXQ6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgbG9jYXRpb25TZXJ2aWNlOiBMb2NhdGlvblNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHJlYWRvbmx5IGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgc2VhcmNoVGVybTogWycnXVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldCByZXNldCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5wUmVzZXQ7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHJlc2V0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5wUmVzZXQgPSB2YWx1ZTtcbiAgICB0aGlzLnJlc2V0U2VhcmNoVGVybSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBzZWxlY3RlZExvY2F0aW9ucygpOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRoaXMucFNlbGVjdGVkTG9jYXRpb25zO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzZWxlY3RlZExvY2F0aW9ucyh2YWx1ZTogYW55W10pIHtcbiAgICB0aGlzLnBTZWxlY3RlZExvY2F0aW9ucyA9IHZhbHVlO1xuXG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2luZ2xlTW9kZSAmJiB0aGlzLnNlbGVjdGVkTG9jYXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IGxvY2F0aW9uID0gdGhpcy5zZWxlY3RlZExvY2F0aW9uc1swXTtcbiAgICAgIHRoaXMuZm9ybS5jb250cm9scy5zZWFyY2hUZXJtLnBhdGNoVmFsdWUobG9jYXRpb24uc2l0ZV9uYW1lLCB7ZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWV9KTtcbiAgICB9XG4gICAgdGhpcy5zZWFyY2goKTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXIodGVybTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5nZXRMb2NhdGlvbnModGVybSkucGlwZShcbiAgICAgIG1hcCgobG9jYXRpb25zKSA9PiB0aGlzLnJlbW92ZVNlbGVjdGVkTG9jYXRpb25zKGxvY2F0aW9ucylcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG9uU2VsZWN0aW9uQ2hhbmdlKGxvY2F0aW9uOiBMb2NhdGlvbkJ5RVBJTU1TTW9kZWwpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm0uY29udHJvbHMuc2VhcmNoVGVybS5wYXRjaFZhbHVlKGxvY2F0aW9uLnNpdGVfbmFtZSwge2VtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlfSk7XG4gICAgdGhpcy5sb2NhdGlvblNlbGVjdGVkLmVtaXQobG9jYXRpb24pO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaCgpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm0uY29udHJvbHMuc2VhcmNoVGVybS52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHRlcm0pID0+IHRoaXMubG9jYXRpb25JbnB1dENoYW5nZWQubmV4dCh0ZXJtKSksXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLmxvY2F0aW9ucyA9IFtdKSxcbiAgICAgICAgdGFwKCh0ZXJtKSA9PiB0aGlzLnRlcm0gPSB0ZXJtKSxcbiAgICAgICAgZmlsdGVyKHRlcm0gPT4gISF0ZXJtICYmIHRlcm0ubGVuZ3RoID49IHRoaXMubWluU2VhcmNoQ2hhcmFjdGVycyksXG4gICAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlbGF5KSxcbiAgICAgICAgbWVyZ2VNYXAodmFsdWUgPT4gdGhpcy5nZXRMb2NhdGlvbnModmFsdWUpKSxcbiAgICAgICAgbWFwKChsb2NhdGlvbnMpID0+IHRoaXMucmVtb3ZlU2VsZWN0ZWRMb2NhdGlvbnMobG9jYXRpb25zKSlcbiAgICAgICkuc3Vic2NyaWJlKGxvY2F0aW9ucyA9PiB7XG4gICAgICB0aGlzLmxvY2F0aW9ucyA9IGxvY2F0aW9ucztcbiAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICBpZiAobG9jYXRpb25zLmxlbmd0aCA9PT0gMSAmJiB0aGlzLnRlcm0gPT09IGxvY2F0aW9uc1swXS5zaXRlX25hbWUgJiYgIXRoaXMuc2luZ2xlTW9kZSkge1xuICAgICAgICB0aGlzLmxvY2F0aW9uU2VsZWN0ZWQuZW1pdChsb2NhdGlvbnNbMF0pO1xuICAgICAgICB0aGlzLnNob3dBdXRvY29tcGxldGUgPSBmYWxzZTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5zaG93QXV0b2NvbXBsZXRlID0gdHJ1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvbklucHV0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoTG9jYXRpb25DaGFuZ2VkLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRMb2NhdGlvbnModGVybTogc3RyaW5nKTogT2JzZXJ2YWJsZTxMb2NhdGlvbkJ5RVBJTU1TTW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmxvY2F0aW9uU2VydmljZS5nZXRBbGxMb2NhdGlvbnModGhpcy5zZXJ2aWNlSWRzLCB0aGlzLmxvY2F0aW9uVHlwZSwgdGVybSk7XG4gIH1cblxuICBwdWJsaWMgcmVzZXRTZWFyY2hUZXJtKCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybS5jb250cm9scy5zZWFyY2hUZXJtLnBhdGNoVmFsdWUoJycsIHtlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZX0pO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVTZWxlY3RlZExvY2F0aW9ucyhsb2NhdGlvbnM6IExvY2F0aW9uQnlFUElNTVNNb2RlbFtdKTogTG9jYXRpb25CeUVQSU1NU01vZGVsW10ge1xuICAgIGlmICh0aGlzLnNpbmdsZU1vZGUpIHtcbiAgICAgIHJldHVybiBsb2NhdGlvbnM7XG4gICAgfVxuICAgIHJldHVybiBsb2NhdGlvbnMuZmlsdGVyKFxuICAgICAgbG9jYXRpb24gPT4gIXRoaXMuc2VsZWN0ZWRMb2NhdGlvbnMubWFwKHNlbGVjdGVkTG9jYXRpb24gPT4gc2VsZWN0ZWRMb2NhdGlvbi5lcGltbXNfaWQpLmluY2x1ZGVzKGxvY2F0aW9uLmVwaW1tc19pZCkgJiYgbG9jYXRpb24uc2l0ZV9uYW1lXG4gICAgKTtcbiAgfVxufVxuIl19