@hmcts/rpx-xui-common-lib 1.7.0 → 1.8.0-angular-upgrade-9

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 (271) hide show
  1. package/bundles/hmcts-rpx-xui-common-lib.umd.js +4078 -6583
  2. package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +1 -1
  3. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +15 -1
  4. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
  5. package/esm2015/hmcts-rpx-xui-common-lib.js +2 -7
  6. package/esm2015/lib/components/accessibility/accessibility.component.js +13 -17
  7. package/esm2015/lib/components/checkbox-list/checkbox-list.component.js +45 -127
  8. package/esm2015/lib/components/contact-details/contact-details.component.js +16 -23
  9. package/esm2015/lib/components/cookie-banner/cookie-banner.component.js +31 -78
  10. package/esm2015/lib/components/due-date/due-date.component.js +24 -110
  11. package/esm2015/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +29 -34
  12. package/esm2015/lib/components/find-location/find-location.component.js +61 -131
  13. package/esm2015/lib/components/find-person/find-person.component.js +93 -174
  14. package/esm2015/lib/components/generic-filter/generic-filter-utils.js +11 -55
  15. package/esm2015/lib/components/generic-filter/generic-filter.component.js +54 -289
  16. package/esm2015/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +20 -29
  17. package/esm2015/lib/components/index.js +2 -7
  18. package/esm2015/lib/components/invite-user-form/invite-user-form.component.js +23 -33
  19. package/esm2015/lib/components/invite-user-permissions/invite-user-permission.component.js +34 -35
  20. package/esm2015/lib/components/loading-spinner/loading-spinner.component.js +16 -22
  21. package/esm2015/lib/components/pagination/pagination.component.js +28 -38
  22. package/esm2015/lib/components/public_api.js +33 -33
  23. package/esm2015/lib/components/search-judicials/search-judicials.component.js +70 -156
  24. package/esm2015/lib/components/search-location/search-location.component.js +76 -177
  25. package/esm2015/lib/components/search-venue/search-venue.component.js +62 -154
  26. package/esm2015/lib/components/selected-case/selected-case.component.js +54 -191
  27. package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +22 -53
  28. package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +38 -68
  29. package/esm2015/lib/components/service-message/service-message.component.js +23 -32
  30. package/esm2015/lib/components/service-messages/service-messages.component.js +29 -77
  31. package/esm2015/lib/components/share-case/share-case.component.js +45 -104
  32. package/esm2015/lib/components/share-case-confirm/share-case-confirm.component.js +27 -50
  33. package/esm2015/lib/components/tab/tab.component.js +19 -37
  34. package/esm2015/lib/components/tc-confirm/tc-confirm.component.js +20 -29
  35. package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +13 -17
  36. package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +13 -17
  37. package/esm2015/lib/components/terms-and-conditions/terms-and-conditions.component.js +16 -23
  38. package/esm2015/lib/components/user-details/user-details.component.js +47 -57
  39. package/esm2015/lib/components/user-list/user-list.component.js +19 -28
  40. package/esm2015/lib/components/user-select/user-select.component.js +23 -64
  41. package/esm2015/lib/directives/feature-toggle/feature-toggle.directive.js +21 -67
  42. package/esm2015/lib/directives/index.js +2 -7
  43. package/esm2015/lib/directives/let/let.directive.js +16 -49
  44. package/esm2015/lib/directives/public-api.js +3 -8
  45. package/esm2015/lib/exui-common-lib.module.js +31 -35
  46. package/esm2015/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +23 -34
  47. package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +18 -23
  48. package/esm2015/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +30 -68
  49. package/esm2015/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +19 -25
  50. package/esm2015/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +19 -28
  51. package/esm2015/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +23 -36
  52. package/esm2015/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +23 -28
  53. package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +24 -35
  54. package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +15 -22
  55. package/esm2015/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +23 -35
  56. package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +18 -23
  57. package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +27 -34
  58. package/esm2015/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +32 -47
  59. package/esm2015/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +22 -29
  60. package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +20 -26
  61. package/esm2015/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +26 -56
  62. package/esm2015/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +17 -27
  63. package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +40 -52
  64. package/esm2015/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +29 -36
  65. package/esm2015/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +18 -35
  66. package/esm2015/lib/gov-ui/components/index.js +2 -7
  67. package/esm2015/lib/gov-ui/components/public_api.js +21 -7
  68. package/esm2015/lib/gov-ui/directives/index.js +2 -0
  69. package/esm2015/lib/gov-ui/directives/public_api.js +2 -0
  70. package/esm2015/lib/gov-ui/directives/remove-host.directive.js +12 -30
  71. package/esm2015/lib/gov-ui/gov-ui.service.js +12 -16
  72. package/esm2015/lib/gov-ui/index.js +2 -7
  73. package/esm2015/lib/gov-ui/models/banner-data-model.js +1 -16
  74. package/esm2015/lib/gov-ui/models/checkboxes-model.js +1 -22
  75. package/esm2015/lib/gov-ui/models/error-messages-model.js +1 -16
  76. package/esm2015/lib/gov-ui/models/gov-ui-config-model.js +1 -36
  77. package/esm2015/lib/gov-ui/models/index.js +1 -7
  78. package/esm2015/lib/gov-ui/models/isession-storage.interface.js +1 -24
  79. package/esm2015/lib/gov-ui/models/public_api.js +1 -10
  80. package/esm2015/lib/gov-ui/public_api.js +5 -9
  81. package/esm2015/lib/gov-ui/util/helpers/html-templates.helper.js +4 -14
  82. package/esm2015/lib/gov-ui/util/session-storage/session-storage-utils.js +12 -48
  83. package/esm2015/lib/gov-ui/validators/checkboxes-be-checked.validator.js +5 -24
  84. package/esm2015/lib/gov-ui/validators/date.validator.js +3 -20
  85. package/esm2015/lib/gov-ui/validators/index.js +2 -7
  86. package/esm2015/lib/gov-ui/validators/public_api.js +4 -9
  87. package/esm2015/lib/gov-ui/validators/radio-group.validator.js +3 -15
  88. package/esm2015/lib/models/case-share.model.js +1 -26
  89. package/esm2015/lib/models/contact-details.model.js +7 -31
  90. package/esm2015/lib/models/due-date.model.js +7 -14
  91. package/esm2015/lib/models/feature-user.js +1 -16
  92. package/esm2015/lib/models/filter.model.js +1 -112
  93. package/esm2015/lib/models/idle-config.model.js +1 -20
  94. package/esm2015/lib/models/index.js +6 -18
  95. package/esm2015/lib/models/location.model.js +1 -108
  96. package/esm2015/lib/models/person.model.js +17 -92
  97. package/esm2015/lib/models/public_api.js +4 -11
  98. package/esm2015/lib/models/search-options.model.js +1 -22
  99. package/esm2015/lib/models/tcDocument.model.js +1 -18
  100. package/esm2015/lib/models/timeout-notification.model.js +1 -18
  101. package/esm2015/lib/models/user-details.model.js +1 -22
  102. package/esm2015/lib/models/user.model.js +1 -25
  103. package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +19 -92
  104. package/esm2015/lib/services/cookie/cookie.service.js +19 -78
  105. package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +16 -51
  106. package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +11 -35
  107. package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +21 -101
  108. package/esm2015/lib/services/filter/filter.service.js +11 -63
  109. package/esm2015/lib/services/find-person/find-person.service.js +25 -130
  110. package/esm2015/lib/services/google-analytics/google-analytics.service.js +21 -70
  111. package/esm2015/lib/services/google-tag-manager/google-tag-manager.service.js +23 -71
  112. package/esm2015/lib/services/index.js +2 -7
  113. package/esm2015/lib/services/loading/loading.service.js +11 -48
  114. package/esm2015/lib/services/locations/location.service.js +22 -35
  115. package/esm2015/lib/services/manage-session/manage-session.services.js +21 -70
  116. package/esm2015/lib/services/public-api.js +13 -18
  117. package/esm2015/lib/services/role-guard/role.guard.js +24 -61
  118. package/esm2015/lib/services/role-guard/role.service.js +11 -28
  119. package/esm2015/lib/services/session-storage/session-storage.service.js +12 -24
  120. package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +20 -82
  121. package/esm2015/lib/window.js +1 -10
  122. package/esm2015/public-api.js +8 -13
  123. package/esm5/hmcts-rpx-xui-common-lib.js +2 -7
  124. package/esm5/lib/components/accessibility/accessibility.component.js +10 -15
  125. package/esm5/lib/components/checkbox-list/checkbox-list.component.js +57 -232
  126. package/esm5/lib/components/contact-details/contact-details.component.js +14 -22
  127. package/esm5/lib/components/cookie-banner/cookie-banner.component.js +36 -106
  128. package/esm5/lib/components/due-date/due-date.component.js +29 -142
  129. package/esm5/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +27 -33
  130. package/esm5/lib/components/find-location/find-location.component.js +71 -167
  131. package/esm5/lib/components/find-person/find-person.component.js +97 -193
  132. package/esm5/lib/components/generic-filter/generic-filter-utils.js +13 -57
  133. package/esm5/lib/components/generic-filter/generic-filter.component.js +83 -408
  134. package/esm5/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +19 -32
  135. package/esm5/lib/components/index.js +2 -7
  136. package/esm5/lib/components/invite-user-form/invite-user-form.component.js +23 -37
  137. package/esm5/lib/components/invite-user-permissions/invite-user-permission.component.js +32 -34
  138. package/esm5/lib/components/loading-spinner/loading-spinner.component.js +14 -21
  139. package/esm5/lib/components/pagination/pagination.component.js +28 -45
  140. package/esm5/lib/components/public_api.js +33 -33
  141. package/esm5/lib/components/search-judicials/search-judicials.component.js +78 -198
  142. package/esm5/lib/components/search-location/search-location.component.js +84 -207
  143. package/esm5/lib/components/search-venue/search-venue.component.js +71 -199
  144. package/esm5/lib/components/selected-case/selected-case.component.js +72 -279
  145. package/esm5/lib/components/selected-case-confirm/selected-case-confirm.component.js +22 -61
  146. package/esm5/lib/components/selected-case-list/selected-case-list.component.js +39 -82
  147. package/esm5/lib/components/service-message/service-message.component.js +22 -36
  148. package/esm5/lib/components/service-messages/service-messages.component.js +30 -91
  149. package/esm5/lib/components/share-case/share-case.component.js +52 -138
  150. package/esm5/lib/components/share-case-confirm/share-case-confirm.component.js +25 -49
  151. package/esm5/lib/components/tab/tab.component.js +18 -41
  152. package/esm5/lib/components/tc-confirm/tc-confirm.component.js +19 -32
  153. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +10 -15
  154. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +10 -15
  155. package/esm5/lib/components/terms-and-conditions/terms-and-conditions.component.js +14 -22
  156. package/esm5/lib/components/user-details/user-details.component.js +48 -71
  157. package/esm5/lib/components/user-list/user-list.component.js +18 -32
  158. package/esm5/lib/components/user-select/user-select.component.js +27 -92
  159. package/esm5/lib/directives/feature-toggle/feature-toggle.directive.js +21 -70
  160. package/esm5/lib/directives/index.js +2 -7
  161. package/esm5/lib/directives/let/let.directive.js +15 -51
  162. package/esm5/lib/directives/public-api.js +3 -8
  163. package/esm5/lib/exui-common-lib.module.js +22 -28
  164. package/esm5/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +22 -37
  165. package/esm5/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +16 -22
  166. package/esm5/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +32 -89
  167. package/esm5/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +17 -24
  168. package/esm5/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +18 -31
  169. package/esm5/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +23 -43
  170. package/esm5/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +21 -27
  171. package/esm5/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +24 -45
  172. package/esm5/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +13 -21
  173. package/esm5/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +18 -44
  174. package/esm5/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +16 -22
  175. package/esm5/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +26 -37
  176. package/esm5/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +31 -51
  177. package/esm5/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +21 -32
  178. package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +18 -25
  179. package/esm5/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +28 -71
  180. package/esm5/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +16 -27
  181. package/esm5/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +41 -60
  182. package/esm5/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +28 -36
  183. package/esm5/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +16 -34
  184. package/esm5/lib/gov-ui/components/index.js +2 -7
  185. package/esm5/lib/gov-ui/components/public_api.js +21 -7
  186. package/esm5/lib/gov-ui/directives/index.js +2 -0
  187. package/esm5/lib/gov-ui/directives/public_api.js +2 -0
  188. package/esm5/lib/gov-ui/directives/remove-host.directive.js +10 -29
  189. package/esm5/lib/gov-ui/gov-ui.service.js +9 -14
  190. package/esm5/lib/gov-ui/index.js +2 -7
  191. package/esm5/lib/gov-ui/models/banner-data-model.js +1 -16
  192. package/esm5/lib/gov-ui/models/checkboxes-model.js +1 -22
  193. package/esm5/lib/gov-ui/models/error-messages-model.js +1 -16
  194. package/esm5/lib/gov-ui/models/gov-ui-config-model.js +1 -36
  195. package/esm5/lib/gov-ui/models/index.js +1 -7
  196. package/esm5/lib/gov-ui/models/isession-storage.interface.js +1 -24
  197. package/esm5/lib/gov-ui/models/public_api.js +1 -10
  198. package/esm5/lib/gov-ui/public_api.js +5 -9
  199. package/esm5/lib/gov-ui/util/helpers/html-templates.helper.js +3 -34
  200. package/esm5/lib/gov-ui/util/session-storage/session-storage-utils.js +12 -48
  201. package/esm5/lib/gov-ui/validators/checkboxes-be-checked.validator.js +5 -24
  202. package/esm5/lib/gov-ui/validators/date.validator.js +3 -20
  203. package/esm5/lib/gov-ui/validators/index.js +2 -7
  204. package/esm5/lib/gov-ui/validators/public_api.js +4 -9
  205. package/esm5/lib/gov-ui/validators/radio-group.validator.js +3 -15
  206. package/esm5/lib/models/case-share.model.js +1 -26
  207. package/esm5/lib/models/contact-details.model.js +7 -31
  208. package/esm5/lib/models/due-date.model.js +7 -14
  209. package/esm5/lib/models/feature-user.js +1 -16
  210. package/esm5/lib/models/filter.model.js +1 -112
  211. package/esm5/lib/models/idle-config.model.js +1 -20
  212. package/esm5/lib/models/index.js +6 -18
  213. package/esm5/lib/models/location.model.js +1 -108
  214. package/esm5/lib/models/person.model.js +17 -92
  215. package/esm5/lib/models/public_api.js +4 -11
  216. package/esm5/lib/models/search-options.model.js +1 -22
  217. package/esm5/lib/models/tcDocument.model.js +1 -18
  218. package/esm5/lib/models/timeout-notification.model.js +1 -18
  219. package/esm5/lib/models/user-details.model.js +1 -22
  220. package/esm5/lib/models/user.model.js +1 -25
  221. package/esm5/lib/services/case-sharing-state/case-sharing-state.service.js +27 -132
  222. package/esm5/lib/services/cookie/cookie.service.js +21 -104
  223. package/esm5/lib/services/feature-toggle/feature-toggle.guard.js +13 -61
  224. package/esm5/lib/services/feature-toggle/feature-toggle.service.js +12 -70
  225. package/esm5/lib/services/feature-toggle/launch-darkly.service.js +21 -142
  226. package/esm5/lib/services/filter/filter.service.js +15 -101
  227. package/esm5/lib/services/find-person/find-person.service.js +27 -152
  228. package/esm5/lib/services/google-analytics/google-analytics.service.js +21 -78
  229. package/esm5/lib/services/google-tag-manager/google-tag-manager.service.js +23 -79
  230. package/esm5/lib/services/index.js +2 -7
  231. package/esm5/lib/services/loading/loading.service.js +14 -69
  232. package/esm5/lib/services/locations/location.service.js +11 -50
  233. package/esm5/lib/services/manage-session/manage-session.services.js +20 -73
  234. package/esm5/lib/services/public-api.js +13 -18
  235. package/esm5/lib/services/role-guard/role.guard.js +22 -60
  236. package/esm5/lib/services/role-guard/role.service.js +10 -28
  237. package/esm5/lib/services/session-storage/session-storage.service.js +12 -61
  238. package/esm5/lib/services/timeout-notifications/timeout-notifications.service.js +19 -111
  239. package/esm5/lib/window.js +1 -10
  240. package/esm5/public-api.js +8 -13
  241. package/fesm2015/hmcts-rpx-xui-common-lib.js +3152 -4924
  242. package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
  243. package/fesm5/hmcts-rpx-xui-common-lib.js +3458 -6178
  244. package/fesm5/hmcts-rpx-xui-common-lib.js.map +1 -1
  245. package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
  246. package/lib/components/checkbox-list/checkbox-list.component.d.ts +6 -5
  247. package/lib/components/due-date/due-date.component.d.ts +4 -4
  248. package/lib/components/find-location/find-location.component.d.ts +4 -2
  249. package/lib/components/generic-filter/generic-filter.component.d.ts +4 -2
  250. package/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.d.ts +1 -1
  251. package/lib/components/invite-user-form/invite-user-form.component.d.ts +2 -2
  252. package/lib/components/public_api.d.ts +9 -4
  253. package/lib/components/search-judicials/search-judicials.component.d.ts +1 -1
  254. package/lib/components/search-location/search-location.component.d.ts +4 -2
  255. package/lib/components/search-venue/search-venue.component.d.ts +1 -1
  256. package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +1 -1
  257. package/lib/directives/let/let.directive.d.ts +1 -1
  258. package/lib/exui-common-lib.module.d.ts +1 -1
  259. package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +1 -1
  260. package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +1 -1
  261. package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +1 -1
  262. package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +1 -1
  263. package/lib/gov-ui/components/public_api.d.ts +19 -0
  264. package/lib/gov-ui/directives/index.d.ts +1 -0
  265. package/lib/gov-ui/directives/public_api.d.ts +1 -0
  266. package/lib/gov-ui/public_api.d.ts +2 -1
  267. package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
  268. package/lib/services/loading/loading.service.d.ts +2 -2
  269. package/lib/services/role-guard/role.service.d.ts +2 -1
  270. package/lib/window.d.ts +2 -2
  271. package/package.json +2 -6
@@ -1,8 +1,4 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/services/find-person/find-person.service.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
1
+ import { __decorate, __metadata } from "tslib";
6
2
  import { HttpClient } from '@angular/common/http';
7
3
  import { Injectable } from '@angular/core';
8
4
  import { of } from 'rxjs';
@@ -18,67 +14,30 @@ var FindAPersonService = /** @class */ (function () {
18
14
  this.http = http;
19
15
  this.sessionStorageService = sessionStorageService;
20
16
  }
21
- /**
22
- * @param {?} searchOptions
23
- * @return {?}
24
- */
25
- FindAPersonService.prototype.find = /**
26
- * @param {?} searchOptions
27
- * @return {?}
28
- */
29
- function (searchOptions) {
17
+ FindAPersonService.prototype.find = function (searchOptions) {
30
18
  var _this = this;
31
- /** @type {?} */
32
19
  var userInfoStr = this.sessionStorageService.getItem('userDetails');
33
20
  if (userInfoStr && !searchOptions.userIncluded) {
34
- /** @type {?} */
35
21
  var userInfo = JSON.parse(userInfoStr);
36
22
  this.userId = userInfo.id ? userInfo.id : userInfo.uid;
37
23
  }
38
24
  this.assignedUser = searchOptions.assignedUser ? searchOptions.assignedUser : null;
39
25
  return this.http.post('/workallocation2/findPerson', { searchOptions: searchOptions })
40
- .pipe(map((/**
41
- * @param {?} judiciary
42
- * @return {?}
43
- */
44
- function (judiciary) { return judiciary.filter((/**
45
- * @param {?} judge
46
- * @return {?}
47
- */
48
- function (judge) { return !([_this.assignedUser, _this.userId].includes(judge.id)); })); })));
26
+ .pipe(map(function (judiciary) { return judiciary.filter(function (judge) { return !([_this.assignedUser, _this.userId].includes(judge.id)); }); }));
49
27
  };
50
- /**
51
- * @param {?} searchOptions
52
- * @return {?}
53
- */
54
- FindAPersonService.prototype.findCaseworkers = /**
55
- * @param {?} searchOptions
56
- * @return {?}
57
- */
58
- function (searchOptions) {
28
+ FindAPersonService.prototype.findCaseworkers = function (searchOptions) {
59
29
  var _this = this;
60
- /** @type {?} */
61
30
  var userInfoStr = this.sessionStorageService.getItem('userDetails');
62
31
  if (userInfoStr) {
63
- /** @type {?} */
64
32
  var userInfo = JSON.parse(userInfoStr);
65
33
  this.userId = userInfo.id ? userInfo.id : userInfo.uid;
66
34
  }
67
35
  this.assignedUser = searchOptions.assignedUser ? searchOptions.assignedUser : null;
68
- /** @type {?} */
69
36
  var fullServices = searchOptions.services;
70
- /** @type {?} */
71
37
  var storedServices = [];
72
- /** @type {?} */
73
38
  var newServices = [];
74
- /** @type {?} */
75
39
  var storedCaseworkersByService = [];
76
- fullServices.forEach((/**
77
- * @param {?} serviceId
78
- * @return {?}
79
- */
80
- function (serviceId) {
81
- /** @type {?} */
40
+ fullServices.forEach(function (serviceId) {
82
41
  var serviceKey = getSessionStorageKeyForServiceId(serviceId);
83
42
  if (_this.sessionStorageService.getItem(serviceKey)) {
84
43
  storedServices.push(serviceId);
@@ -87,58 +46,28 @@ var FindAPersonService = /** @class */ (function () {
87
46
  else {
88
47
  newServices.push(serviceId);
89
48
  }
90
- }));
49
+ });
91
50
  // if all services are stored then return the stored caseworkers by service
92
51
  if (storedServices.length === fullServices.length) {
93
- /** @type {?} */
94
52
  var storedCaseworkers = getAllCaseworkersFromServices(storedCaseworkersByService);
95
53
  return of(this.searchInCaseworkers(storedCaseworkers, searchOptions));
96
54
  }
97
55
  // all serviceIds passed in as node layer getting used anyway and caseworkers also stored there
98
- return this.http.post('/workallocation2/retrieveCaseWorkersForServices', { fullServices: fullServices }).pipe(tap((/**
99
- * @param {?} caseworkersByService
100
- * @return {?}
101
- */
102
- function (caseworkersByService) {
103
- caseworkersByService.forEach((/**
104
- * @param {?} caseworkerListByService
105
- * @return {?}
106
- */
107
- function (caseworkerListByService) {
56
+ return this.http.post('/workallocation2/retrieveCaseWorkersForServices', { fullServices: fullServices }).pipe(tap(function (caseworkersByService) {
57
+ caseworkersByService.forEach(function (caseworkerListByService) {
108
58
  // for any new service, ensure that they are then stored in the session
109
59
  if (newServices.includes(caseworkerListByService.service)) {
110
60
  setCaseworkers(caseworkerListByService.service, caseworkerListByService.caseworkers, _this.sessionStorageService);
111
61
  }
112
- }));
113
- })), map((/**
114
- * @param {?} caseworkersByService
115
- * @return {?}
116
- */
117
- function (caseworkersByService) {
118
- /** @type {?} */
62
+ });
63
+ }), map(function (caseworkersByService) {
119
64
  var givenCaseworkers = getAllCaseworkersFromServices(caseworkersByService);
120
65
  return _this.searchInCaseworkers(givenCaseworkers, searchOptions);
121
- })));
66
+ }));
122
67
  };
123
- /**
124
- * @param {?} caseworkers
125
- * @param {?} roleCategory
126
- * @return {?}
127
- */
128
- FindAPersonService.prototype.mapCaseworkers = /**
129
- * @param {?} caseworkers
130
- * @param {?} roleCategory
131
- * @return {?}
132
- */
133
- function (caseworkers, roleCategory) {
134
- /** @type {?} */
68
+ FindAPersonService.prototype.mapCaseworkers = function (caseworkers, roleCategory) {
135
69
  var people = [];
136
- caseworkers.forEach((/**
137
- * @param {?} caseworker
138
- * @return {?}
139
- */
140
- function (caseworker) {
141
- /** @type {?} */
70
+ caseworkers.forEach(function (caseworker) {
142
71
  var thisPerson = {
143
72
  email: caseworker.email,
144
73
  name: caseworker.firstName + " " + caseworker.lastName,
@@ -148,91 +77,37 @@ var FindAPersonService = /** @class */ (function () {
148
77
  if (caseworker.roleCategory === roleCategory || roleCategory === RoleCategory.ALL) {
149
78
  people.push(thisPerson);
150
79
  }
151
- }));
80
+ });
152
81
  return people;
153
82
  };
154
- /**
155
- * @param {?} caseworkers
156
- * @param {?} searchOptions
157
- * @return {?}
158
- */
159
- FindAPersonService.prototype.searchInCaseworkers = /**
160
- * @param {?} caseworkers
161
- * @param {?} searchOptions
162
- * @return {?}
163
- */
164
- function (caseworkers, searchOptions) {
83
+ FindAPersonService.prototype.searchInCaseworkers = function (caseworkers, searchOptions) {
165
84
  var _this = this;
166
- /** @type {?} */
167
85
  var roleCategory = RoleCategory.ALL;
168
86
  if (!(searchOptions.userRole === PersonRole.ALL)) {
169
87
  roleCategory = searchOptions.userRole === PersonRole.CASEWORKER ? RoleCategory.CASEWORKER : RoleCategory.ADMIN;
170
88
  }
171
- /** @type {?} */
172
89
  var searchTerm = searchOptions && searchOptions.searchTerm ? searchOptions.searchTerm.toLowerCase() : '';
173
- /** @type {?} */
174
90
  var people = caseworkers ? this.mapCaseworkers(caseworkers, roleCategory) : [];
175
- /** @type {?} */
176
- var finalPeopleList = people.filter((/**
177
- * @param {?} person
178
- * @return {?}
179
- */
180
- function (person) { return person && person.name && person.name.toLowerCase().includes(searchTerm); }));
181
- return searchOptions.userIncluded ? finalPeopleList.filter((/**
182
- * @param {?} person
183
- * @return {?}
184
- */
185
- function (person) { return person && person.id !== _this.assignedUser; }))
186
- : finalPeopleList.filter((/**
187
- * @param {?} person
188
- * @return {?}
189
- */
190
- function (person) { return person && person.id !== _this.userId && person.id !== _this.assignedUser; }));
91
+ var finalPeopleList = people.filter(function (person) { return person && person.name && person.name.toLowerCase().includes(searchTerm); });
92
+ return searchOptions.userIncluded ? finalPeopleList.filter(function (person) { return person && person.id !== _this.assignedUser; })
93
+ : finalPeopleList.filter(function (person) { return person && person.id !== _this.userId && person.id !== _this.assignedUser; });
191
94
  };
192
- /**
193
- * @param {?} value
194
- * @param {?} serviceId
195
- * @return {?}
196
- */
197
- FindAPersonService.prototype.searchJudicial = /**
198
- * @param {?} value
199
- * @param {?} serviceId
200
- * @return {?}
201
- */
202
- function (value, serviceId) {
95
+ FindAPersonService.prototype.searchJudicial = function (value, serviceId) {
203
96
  return this.http.post('api/prd/judicial/getJudicialUsersSearch', { searchString: value, serviceCode: serviceId });
204
97
  };
205
98
  FindAPersonService.caseworkersKey = 'caseworkers';
206
- FindAPersonService.decorators = [
207
- { type: Injectable, args: [{
208
- providedIn: 'root'
209
- },] }
210
- ];
211
- /** @nocollapse */
212
99
  FindAPersonService.ctorParameters = function () { return [
213
100
  { type: HttpClient },
214
101
  { type: SessionStorageService }
215
102
  ]; };
216
- /** @nocollapse */ FindAPersonService.ngInjectableDef = i0.defineInjectable({ factory: function FindAPersonService_Factory() { return new FindAPersonService(i0.inject(i1.HttpClient), i0.inject(i2.SessionStorageService)); }, token: FindAPersonService, providedIn: "root" });
103
+ FindAPersonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FindAPersonService_Factory() { return new FindAPersonService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.SessionStorageService)); }, token: FindAPersonService, providedIn: "root" });
104
+ FindAPersonService = __decorate([
105
+ Injectable({
106
+ providedIn: 'root'
107
+ }),
108
+ __metadata("design:paramtypes", [HttpClient, SessionStorageService])
109
+ ], FindAPersonService);
217
110
  return FindAPersonService;
218
111
  }());
219
112
  export { FindAPersonService };
220
- if (false) {
221
- /** @type {?} */
222
- FindAPersonService.caseworkersKey;
223
- /** @type {?} */
224
- FindAPersonService.prototype.userId;
225
- /** @type {?} */
226
- FindAPersonService.prototype.assignedUser;
227
- /**
228
- * @type {?}
229
- * @private
230
- */
231
- FindAPersonService.prototype.http;
232
- /**
233
- * @type {?}
234
- * @private
235
- */
236
- FindAPersonService.prototype.sessionStorageService;
237
- }
238
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1wZXJzb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZmluZC1wZXJzb24vZmluZC1wZXJzb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBYSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLGdDQUFnQyxFQUNoQyxjQUFjLEVBQ2YsTUFBTSx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLEVBS0wsVUFBVSxFQUNWLFlBQVksRUFFYixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQzs7OztBQUVqRjtJQVNFLDRCQUE2QixJQUFnQixFQUFtQixxQkFBNEM7UUFBL0UsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFtQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBQzVHLENBQUM7Ozs7O0lBRU0saUNBQUk7Ozs7SUFBWCxVQUFZLGFBQTRCO1FBQXhDLGlCQVNDOztZQVJPLFdBQVcsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUNyRSxJQUFJLFdBQVcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUU7O2dCQUN4QyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7WUFDeEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFB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OztJQUFyQixVQUFzQixLQUFhLEVBQUUsU0FBaUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBc0IseUNBQXlDLEVBQ2xGLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBNUZhLGlDQUFjLEdBQVcsYUFBYSxDQUFDOztnQkFMdEQsVUFBVSxTQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7OztnQkF0Qk8sVUFBVTtnQkFrQlYscUJBQXFCOzs7NkJBbEI3QjtDQXNIQyxBQWxHRCxJQWtHQztTQS9GWSxrQkFBa0I7OztJQUU3QixrQ0FBcUQ7O0lBQ3JELG9DQUFzQjs7SUFDdEIsMENBQTRCOzs7OztJQUVoQixrQ0FBaUM7Ozs7O0lBQUUsbURBQTZEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyxcbiAgZ2V0U2Vzc2lvblN0b3JhZ2VLZXlGb3JTZXJ2aWNlSWQsXG4gIHNldENhc2V3b3JrZXJzXG59IGZyb20gJy4uLy4uL2dvdi11aS91dGlsL3Nlc3Npb24tc3RvcmFnZS9zZXNzaW9uLXN0b3JhZ2UtdXRpbHMnO1xuaW1wb3J0IHtcbiAgQ2FzZXdvcmtlcixcbiAgQ2FzZXdvcmtlcnNCeVNlcnZpY2UsXG4gIEp1ZGljaWFsVXNlck1vZGVsLFxuICBQZXJzb24sXG4gIFBlcnNvblJvbGUsXG4gIFJvbGVDYXRlZ29yeSxcbiAgU2VhcmNoT3B0aW9uc1xufSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtTZXNzaW9uU3RvcmFnZVNlcnZpY2V9IGZyb20gJy4uL3Nlc3Npb24tc3RvcmFnZS9zZXNzaW9uLXN0b3JhZ2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZpbmRBUGVyc29uU2VydmljZSB7XG5cbiAgcHVibGljIHN0YXRpYyBjYXNld29ya2Vyc0tleTogc3RyaW5nID0gJ2Nhc2V3b3JrZXJzJztcbiAgcHVibGljIHVzZXJJZDogc3RyaW5nO1xuICBwdWJsaWMgYXNzaWduZWRVc2VyOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIHJlYWRvbmx5IHNlc3Npb25TdG9yYWdlU2VydmljZTogU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlKSB7XG4gIH1cblxuICBwdWJsaWMgZmluZChzZWFyY2hPcHRpb25zOiBTZWFyY2hPcHRpb25zKTogT2JzZXJ2YWJsZTxQZXJzb25bXT4ge1xuICAgIGNvbnN0IHVzZXJJbmZvU3RyID0gdGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSgndXNlckRldGFpbHMnKTtcbiAgICBpZiAodXNlckluZm9TdHIgJiYgIXNlYXJjaE9wdGlvbnMudXNlckluY2x1ZGVkKSB7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IEpTT04ucGFyc2UodXNlckluZm9TdHIpO1xuICAgICAgdGhpcy51c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICB0aGlzLmFzc2lnbmVkVXNlciA9IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyID8gc2VhcmNoT3B0aW9ucy5hc3NpZ25lZFVzZXIgOiBudWxsO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxQZXJzb25bXT4oJy93b3JrYWxsb2NhdGlvbjIvZmluZFBlcnNvbicsIHsgc2VhcmNoT3B0aW9ucyB9KVxuICAgICAgLnBpcGUobWFwKGp1ZGljaWFyeSA9PiBqdWRpY2lhcnkuZmlsdGVyKGp1ZGdlID0+ICEoW3RoaXMuYXNzaWduZWRVc2VyLCB0aGlzLnVzZXJJZF0uaW5jbHVkZXMoanVkZ2UuaWQpKSkpKTtcbiAgfVxuXG4gIHB1YmxpYyBmaW5kQ2FzZXdvcmtlcnMoc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IE9ic2VydmFibGU8UGVyc29uW10+IHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgaWYgKHVzZXJJbmZvU3RyKSB7XG4gICAgICBjb25zdCB1c2VySW5mbyA9IEpTT04ucGFyc2UodXNlckluZm9TdHIpO1xuICAgICAgdGhpcy51c2VySWQgPSB1c2VySW5mby5pZCA/IHVzZXJJbmZvLmlkIDogdXNlckluZm8udWlkO1xuICAgIH1cbiAgICB0aGlzLmFzc2lnbmVkVXNlciA9IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyID8gc2VhcmNoT3B0aW9ucy5hc3NpZ25lZFVzZXIgOiBudWxsO1xuICAgIGNvbnN0IGZ1bGxTZXJ2aWNlcyA9IHNlYXJjaE9wdGlvbnMuc2VydmljZXM7XG4gICAgY29uc3Qgc3RvcmVkU2VydmljZXMgPSBbXTtcbiAgICBjb25zdCBuZXdTZXJ2aWNlczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBzdG9yZWRDYXNld29ya2Vyc0J5U2VydmljZTogQ2FzZXdvcmtlcnNCeVNlcnZpY2VbXSA9IFtdO1xuICAgIGZ1bGxTZXJ2aWNlcy5mb3JFYWNoKHNlcnZpY2VJZCA9PiB7XG4gICAgICBjb25zdCBzZXJ2aWNlS2V5ID0gZ2V0U2Vzc2lvblN0b3JhZ2VLZXlGb3JTZXJ2aWNlSWQoc2VydmljZUlkKTtcbiAgICAgIGlmICh0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZS5nZXRJdGVtKHNlcnZpY2VLZXkpKSB7XG4gICAgICAgIHN0b3JlZFNlcnZpY2VzLnB1c2goc2VydmljZUlkKTtcbiAgICAgICAgc3RvcmVkQ2FzZXdvcmtlcnNCeVNlcnZpY2UucHVzaCh7IHNlcnZpY2U6IHNlcnZpY2VJZCwgY2FzZXdvcmtlcnM6IEpTT04ucGFyc2UodGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbShzZXJ2aWNlS2V5KSkgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdTZXJ2aWNlcy5wdXNoKHNlcnZpY2VJZCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gaWYgYWxsIHNlcnZpY2VzIGFyZSBzdG9yZWQgdGhlbiByZXR1cm4gdGhlIHN0b3JlZCBjYXNld29ya2VycyBieSBzZXJ2aWNlXG4gICAgaWYgKHN0b3JlZFNlcnZpY2VzLmxlbmd0aCA9PT0gZnVsbFNlcnZpY2VzLmxlbmd0aCkge1xuICAgICAgY29uc3Qgc3RvcmVkQ2FzZXdvcmtlcnMgPSBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyhzdG9yZWRDYXNld29ya2Vyc0J5U2VydmljZSk7XG4gICAgICByZXR1cm4gb2YodGhpcy5zZWFyY2hJbkNhc2V3b3JrZXJzKHN0b3JlZENhc2V3b3JrZXJzLCBzZWFyY2hPcHRpb25zKSk7XG4gICAgfVxuICAgIC8vIGFsbCBzZXJ2aWNlSWRzIHBhc3NlZCBpbiBhcyBub2RlIGxheWVyIGdldHRpbmcgdXNlZCBhbnl3YXkgYW5kIGNhc2V3b3JrZXJzIGFsc28gc3RvcmVkIHRoZXJlXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PENhc2V3b3JrZXJzQnlTZXJ2aWNlW10+KCcvd29ya2FsbG9jYXRpb24yL3JldHJpZXZlQ2FzZVdvcmtlcnNGb3JTZXJ2aWNlcycsIHsgZnVsbFNlcnZpY2VzIH0pLnBpcGUoXG4gICAgICB0YXAoY2FzZXdvcmtlcnNCeVNlcnZpY2UgPT4ge1xuICAgICAgICBjYXNld29ya2Vyc0J5U2VydmljZS5mb3JFYWNoKGNhc2V3b3JrZXJMaXN0QnlTZXJ2aWNlID0+IHtcbiAgICAgICAgICAvLyBmb3IgYW55IG5ldyBzZXJ2aWNlLCBlbnN1cmUgdGhhdCB0aGV5IGFyZSB0aGVuIHN0b3JlZCBpbiB0aGUgc2Vzc2lvblxuICAgICAgICAgIGlmIChuZXdTZXJ2aWNlcy5pbmNsdWRlcyhjYXNld29ya2VyTGlzdEJ5U2VydmljZS5zZXJ2aWNlKSkge1xuICAgICAgICAgICAgc2V0Q2FzZXdvcmtlcnMoY2FzZXdvcmtlckxpc3RCeVNlcnZpY2Uuc2VydmljZSwgY2FzZXdvcmtlckxpc3RCeVNlcnZpY2UuY2FzZXdvcmtlcnMsIHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSksXG4gICAgICBtYXAoY2FzZXdvcmtlcnNCeVNlcnZpY2UgPT4ge1xuICAgICAgICBjb25zdCBnaXZlbkNhc2V3b3JrZXJzID0gZ2V0QWxsQ2FzZXdvcmtlcnNGcm9tU2VydmljZXMoY2FzZXdvcmtlcnNCeVNlcnZpY2UpO1xuICAgICAgICByZXR1cm4gdGhpcy5zZWFyY2hJbkNhc2V3b3JrZXJzKGdpdmVuQ2FzZXdvcmtlcnMsIHNlYXJjaE9wdGlvbnMpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG1hcENhc2V3b3JrZXJzKGNhc2V3b3JrZXJzOiBDYXNld29ya2VyW10sIHJvbGVDYXRlZ29yeTogc3RyaW5nKTogUGVyc29uW10ge1xuICAgIGNvbnN0IHBlb3BsZTogUGVyc29uW10gPSBbXTtcbiAgICBjYXNld29ya2Vycy5mb3JFYWNoKChjYXNld29ya2VyKSA9PiB7XG4gICAgICBjb25zdCB0aGlzUGVyc29uOiBQZXJzb24gPSB7XG4gICAgICAgIGVtYWlsOiBjYXNld29ya2VyLmVtYWlsLFxuICAgICAgICBuYW1lOiBgJHtjYXNld29ya2VyLmZpcnN0TmFtZX0gJHtjYXNld29ya2VyLmxhc3ROYW1lfWAsXG4gICAgICAgIGlkOiBjYXNld29ya2VyLmlkYW1JZCxcbiAgICAgICAgZG9tYWluOiBjYXNld29ya2VyLnJvbGVDYXRlZ29yeSA9PT0gUm9sZUNhdGVnb3J5LkNBU0VXT1JLRVIgPyBQZXJzb25Sb2xlLkNBU0VXT1JLRVIgOiBQZXJzb25Sb2xlLkFETUlOLFxuICAgICAgICAvLyBrbm93bkFzIGNhbiBiZSBhZGRlZCBpZiByZXF1aXJlZFxuICAgICAgfTtcbiAgICAgIGlmIChjYXNld29ya2VyLnJvbGVDYXRlZ29yeSA9PT0gcm9sZUNhdGVnb3J5IHx8IHJvbGVDYXRlZ29yeSA9PT0gUm9sZUNhdGVnb3J5LkFMTCkge1xuICAgICAgICBwZW9wbGUucHVzaCh0aGlzUGVyc29uKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gcGVvcGxlO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEluQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnM6IENhc2V3b3JrZXJbXSwgc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IFBlcnNvbltdIHtcbiAgICBsZXQgcm9sZUNhdGVnb3J5ID0gUm9sZUNhdGVnb3J5LkFMTDtcbiAgICBpZiAoIShzZWFyY2hPcHRpb25zLnVzZXJSb2xlID09PSBQZXJzb25Sb2xlLkFMTCkpIHtcbiAgICAgIHJvbGVDYXRlZ29yeSA9IHNlYXJjaE9wdGlvbnMudXNlclJvbGUgPT09IFBlcnNvblJvbGUuQ0FTRVdPUktFUiA/IFJvbGVDYXRlZ29yeS5DQVNFV09SS0VSIDogUm9sZUNhdGVnb3J5LkFETUlOO1xuICAgIH1cbiAgICBjb25zdCBzZWFyY2hUZXJtID0gc2VhcmNoT3B0aW9ucyAmJiBzZWFyY2hPcHRpb25zLnNlYXJjaFRlcm0gPyBzZWFyY2hPcHRpb25zLnNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSA6ICcnO1xuICAgIGNvbnN0IHBlb3BsZSA9IGNhc2V3b3JrZXJzID8gdGhpcy5tYXBDYXNld29ya2VycyhjYXNld29ya2Vycywgcm9sZUNhdGVnb3J5KSA6IFtdO1xuICAgIGNvbnN0IGZpbmFsUGVvcGxlTGlzdCA9IHBlb3BsZS5maWx0ZXIocGVyc29uID0+IHBlcnNvbiAmJiBwZXJzb24ubmFtZSAmJiBwZXJzb24ubmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRlcm0pKTtcbiAgICByZXR1cm4gc2VhcmNoT3B0aW9ucy51c2VySW5jbHVkZWQgPyBmaW5hbFBlb3BsZUxpc3QuZmlsdGVyKHBlcnNvbiA9PiBwZXJzb24gJiYgcGVyc29uLmlkICE9PSB0aGlzLmFzc2lnbmVkVXNlcilcbiAgICAgIDogZmluYWxQZW9wbGVMaXN0LmZpbHRlcihwZXJzb24gPT4gcGVyc29uICYmIHBlcnNvbi5pZCAhPT0gdGhpcy51c2VySWQgJiYgcGVyc29uLmlkICE9PSB0aGlzLmFzc2lnbmVkVXNlcik7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoSnVkaWNpYWwodmFsdWU6IHN0cmluZywgc2VydmljZUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEp1ZGljaWFsVXNlck1vZGVsW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8SnVkaWNpYWxVc2VyTW9kZWxbXT4oJ2FwaS9wcmQvanVkaWNpYWwvZ2V0SnVkaWNpYWxVc2Vyc1NlYXJjaCcsXG4gICAgICB7IHNlYXJjaFN0cmluZzogdmFsdWUsIHNlcnZpY2VDb2RlOiBzZXJ2aWNlSWQgfSk7XG4gIH1cbn1cblxuIl19
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1wZXJzb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZmluZC1wZXJzb24vZmluZC1wZXJzb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFhLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUMsR0FBRyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFDTCw2QkFBNkIsRUFDN0IsZ0NBQWdDLEVBQ2hDLGNBQWMsRUFDZixNQUFNLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8sRUFLTCxVQUFVLEVBQ1YsWUFBWSxFQUViLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDOzs7O0FBS2pGO0lBTUUsNEJBQTZCLElBQWdCLEVBQW1CLHFCQUE0QztRQUEvRSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQW1CLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7SUFDNUcsQ0FBQztJQUVNLGlDQUFJLEdBQVgsVUFBWSxhQUE0QjtRQUF4QyxpQkFTQztRQVJDLElBQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdEUsSUFBSSxXQUFXLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFO1lBQzlDLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENB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Q0FBQyxFQUFFLEtBQUssS0FBSSxDQUFDLFlBQVksRUFBdEUsQ0FBc0UsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFFTSwyQ0FBYyxHQUFyQixVQUFzQixLQUFhLEVBQUUsU0FBaUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBc0IseUNBQXlDLEVBQ2xGLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBNUZhLGlDQUFjLEdBQVcsYUFBYSxDQUFDOztnQkFJbEIsVUFBVTtnQkFBMEMscUJBQXFCOzs7SUFOakcsa0JBQWtCO1FBSDlCLFVBQVUsQ0FBQztZQUNWLFVBQVUsRUFBRSxNQUFNO1NBQ25CLENBQUM7eUNBT21DLFVBQVUsRUFBMEMscUJBQXFCO09BTmpHLGtCQUFrQixDQStGOUI7NkJBdEhEO0NBc0hDLEFBL0ZELElBK0ZDO1NBL0ZZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SHR0cENsaWVudH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtcbiAgZ2V0QWxsQ2FzZXdvcmtlcnNGcm9tU2VydmljZXMsXG4gIGdldFNlc3Npb25TdG9yYWdlS2V5Rm9yU2VydmljZUlkLFxuICBzZXRDYXNld29ya2Vyc1xufSBmcm9tICcuLi8uLi9nb3YtdWkvdXRpbC9zZXNzaW9uLXN0b3JhZ2Uvc2Vzc2lvbi1zdG9yYWdlLXV0aWxzJztcbmltcG9ydCB7XG4gIENhc2V3b3JrZXIsXG4gIENhc2V3b3JrZXJzQnlTZXJ2aWNlLFxuICBKdWRpY2lhbFVzZXJNb2RlbCxcbiAgUGVyc29uLFxuICBQZXJzb25Sb2xlLFxuICBSb2xlQ2F0ZWdvcnksXG4gIFNlYXJjaE9wdGlvbnNcbn0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7U2Vzc2lvblN0b3JhZ2VTZXJ2aWNlfSBmcm9tICcuLi9zZXNzaW9uLXN0b3JhZ2Uvc2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGaW5kQVBlcnNvblNlcnZpY2Uge1xuXG4gIHB1YmxpYyBzdGF0aWMgY2FzZXdvcmtlcnNLZXk6IHN0cmluZyA9ICdjYXNld29ya2Vycyc7XG4gIHB1YmxpYyB1c2VySWQ6IHN0cmluZztcbiAgcHVibGljIGFzc2lnbmVkVXNlcjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSByZWFkb25seSBzZXNzaW9uU3RvcmFnZVNlcnZpY2U6IFNlc3Npb25TdG9yYWdlU2VydmljZSkge1xuICB9XG5cbiAgcHVibGljIGZpbmQoc2VhcmNoT3B0aW9uczogU2VhcmNoT3B0aW9ucyk6IE9ic2VydmFibGU8UGVyc29uW10+IHtcbiAgICBjb25zdCB1c2VySW5mb1N0ciA9IHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ3VzZXJEZXRhaWxzJyk7XG4gICAgaWYgKHVzZXJJbmZvU3RyICYmICFzZWFyY2hPcHRpb25zLnVzZXJJbmNsdWRlZCkge1xuICAgICAgY29uc3QgdXNlckluZm8gPSBKU09OLnBhcnNlKHVzZXJJbmZvU3RyKTtcbiAgICAgIHRoaXMudXNlcklkID0gdXNlckluZm8uaWQgPyB1c2VySW5mby5pZCA6IHVzZXJJbmZvLnVpZDtcbiAgICB9XG4gICAgdGhpcy5hc3NpZ25lZFVzZXIgPSBzZWFyY2hPcHRpb25zLmFzc2lnbmVkVXNlciA/IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyIDogbnVsbDtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8UGVyc29uW10+KCcvd29ya2FsbG9jYXRpb24yL2ZpbmRQZXJzb24nLCB7IHNlYXJjaE9wdGlvbnMgfSlcbiAgICAgIC5waXBlKG1hcChqdWRpY2lhcnkgPT4ganVkaWNpYXJ5LmZpbHRlcihqdWRnZSA9PiAhKFt0aGlzLmFzc2lnbmVkVXNlciwgdGhpcy51c2VySWRdLmluY2x1ZGVzKGp1ZGdlLmlkKSkpKSk7XG4gIH1cblxuICBwdWJsaWMgZmluZENhc2V3b3JrZXJzKHNlYXJjaE9wdGlvbnM6IFNlYXJjaE9wdGlvbnMpOiBPYnNlcnZhYmxlPFBlcnNvbltdPiB7XG4gICAgY29uc3QgdXNlckluZm9TdHIgPSB0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZS5nZXRJdGVtKCd1c2VyRGV0YWlscycpO1xuICAgIGlmICh1c2VySW5mb1N0cikge1xuICAgICAgY29uc3QgdXNlckluZm8gPSBKU09OLnBhcnNlKHVzZXJJbmZvU3RyKTtcbiAgICAgIHRoaXMudXNlcklkID0gdXNlckluZm8uaWQgPyB1c2VySW5mby5pZCA6IHVzZXJJbmZvLnVpZDtcbiAgICB9XG4gICAgdGhpcy5hc3NpZ25lZFVzZXIgPSBzZWFyY2hPcHRpb25zLmFzc2lnbmVkVXNlciA/IHNlYXJjaE9wdGlvbnMuYXNzaWduZWRVc2VyIDogbnVsbDtcbiAgICBjb25zdCBmdWxsU2VydmljZXMgPSBzZWFyY2hPcHRpb25zLnNlcnZpY2VzO1xuICAgIGNvbnN0IHN0b3JlZFNlcnZpY2VzID0gW107XG4gICAgY29uc3QgbmV3U2VydmljZXM6IHN0cmluZ1tdID0gW107XG4gICAgY29uc3Qgc3RvcmVkQ2FzZXdvcmtlcnNCeVNlcnZpY2U6IENhc2V3b3JrZXJzQnlTZXJ2aWNlW10gPSBbXTtcbiAgICBmdWxsU2VydmljZXMuZm9yRWFjaChzZXJ2aWNlSWQgPT4ge1xuICAgICAgY29uc3Qgc2VydmljZUtleSA9IGdldFNlc3Npb25TdG9yYWdlS2V5Rm9yU2VydmljZUlkKHNlcnZpY2VJZCk7XG4gICAgICBpZiAodGhpcy5zZXNzaW9uU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbShzZXJ2aWNlS2V5KSkge1xuICAgICAgICBzdG9yZWRTZXJ2aWNlcy5wdXNoKHNlcnZpY2VJZCk7XG4gICAgICAgIHN0b3JlZENhc2V3b3JrZXJzQnlTZXJ2aWNlLnB1c2goeyBzZXJ2aWNlOiBzZXJ2aWNlSWQsIGNhc2V3b3JrZXJzOiBKU09OLnBhcnNlKHRoaXMuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oc2VydmljZUtleSkpIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3U2VydmljZXMucHVzaChzZXJ2aWNlSWQpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIC8vIGlmIGFsbCBzZXJ2aWNlcyBhcmUgc3RvcmVkIHRoZW4gcmV0dXJuIHRoZSBzdG9yZWQgY2FzZXdvcmtlcnMgYnkgc2VydmljZVxuICAgIGlmIChzdG9yZWRTZXJ2aWNlcy5sZW5ndGggPT09IGZ1bGxTZXJ2aWNlcy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IHN0b3JlZENhc2V3b3JrZXJzID0gZ2V0QWxsQ2FzZXdvcmtlcnNGcm9tU2VydmljZXMoc3RvcmVkQ2FzZXdvcmtlcnNCeVNlcnZpY2UpO1xuICAgICAgcmV0dXJuIG9mKHRoaXMuc2VhcmNoSW5DYXNld29ya2VycyhzdG9yZWRDYXNld29ya2Vycywgc2VhcmNoT3B0aW9ucykpO1xuICAgIH1cbiAgICAvLyBhbGwgc2VydmljZUlkcyBwYXNzZWQgaW4gYXMgbm9kZSBsYXllciBnZXR0aW5nIHVzZWQgYW55d2F5IGFuZCBjYXNld29ya2VycyBhbHNvIHN0b3JlZCB0aGVyZVxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxDYXNld29ya2Vyc0J5U2VydmljZVtdPignL3dvcmthbGxvY2F0aW9uMi9yZXRyaWV2ZUNhc2VXb3JrZXJzRm9yU2VydmljZXMnLCB7IGZ1bGxTZXJ2aWNlcyB9KS5waXBlKFxuICAgICAgdGFwKGNhc2V3b3JrZXJzQnlTZXJ2aWNlID0+IHtcbiAgICAgICAgY2FzZXdvcmtlcnNCeVNlcnZpY2UuZm9yRWFjaChjYXNld29ya2VyTGlzdEJ5U2VydmljZSA9PiB7XG4gICAgICAgICAgLy8gZm9yIGFueSBuZXcgc2VydmljZSwgZW5zdXJlIHRoYXQgdGhleSBhcmUgdGhlbiBzdG9yZWQgaW4gdGhlIHNlc3Npb25cbiAgICAgICAgICBpZiAobmV3U2VydmljZXMuaW5jbHVkZXMoY2FzZXdvcmtlckxpc3RCeVNlcnZpY2Uuc2VydmljZSkpIHtcbiAgICAgICAgICAgIHNldENhc2V3b3JrZXJzKGNhc2V3b3JrZXJMaXN0QnlTZXJ2aWNlLnNlcnZpY2UsIGNhc2V3b3JrZXJMaXN0QnlTZXJ2aWNlLmNhc2V3b3JrZXJzLCB0aGlzLnNlc3Npb25TdG9yYWdlU2VydmljZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pLFxuICAgICAgbWFwKGNhc2V3b3JrZXJzQnlTZXJ2aWNlID0+IHtcbiAgICAgICAgY29uc3QgZ2l2ZW5DYXNld29ya2VycyA9IGdldEFsbENhc2V3b3JrZXJzRnJvbVNlcnZpY2VzKGNhc2V3b3JrZXJzQnlTZXJ2aWNlKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoSW5DYXNld29ya2VycyhnaXZlbkNhc2V3b3JrZXJzLCBzZWFyY2hPcHRpb25zKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBtYXBDYXNld29ya2VycyhjYXNld29ya2VyczogQ2FzZXdvcmtlcltdLCByb2xlQ2F0ZWdvcnk6IHN0cmluZyk6IFBlcnNvbltdIHtcbiAgICBjb25zdCBwZW9wbGU6IFBlcnNvbltdID0gW107XG4gICAgY2FzZXdvcmtlcnMuZm9yRWFjaCgoY2FzZXdvcmtlcikgPT4ge1xuICAgICAgY29uc3QgdGhpc1BlcnNvbjogUGVyc29uID0ge1xuICAgICAgICBlbWFpbDogY2FzZXdvcmtlci5lbWFpbCxcbiAgICAgICAgbmFtZTogYCR7Y2FzZXdvcmtlci5maXJzdE5hbWV9ICR7Y2FzZXdvcmtlci5sYXN0TmFtZX1gLFxuICAgICAgICBpZDogY2FzZXdvcmtlci5pZGFtSWQsXG4gICAgICAgIGRvbWFpbjogY2FzZXdvcmtlci5yb2xlQ2F0ZWdvcnkgPT09IFJvbGVDYXRlZ29yeS5DQVNFV09SS0VSID8gUGVyc29uUm9sZS5DQVNFV09SS0VSIDogUGVyc29uUm9sZS5BRE1JTixcbiAgICAgICAgLy8ga25vd25BcyBjYW4gYmUgYWRkZWQgaWYgcmVxdWlyZWRcbiAgICAgIH07XG4gICAgICBpZiAoY2FzZXdvcmtlci5yb2xlQ2F0ZWdvcnkgPT09IHJvbGVDYXRlZ29yeSB8fCByb2xlQ2F0ZWdvcnkgPT09IFJvbGVDYXRlZ29yeS5BTEwpIHtcbiAgICAgICAgcGVvcGxlLnB1c2godGhpc1BlcnNvbik7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHBlb3BsZTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hJbkNhc2V3b3JrZXJzKGNhc2V3b3JrZXJzOiBDYXNld29ya2VyW10sIHNlYXJjaE9wdGlvbnM6IFNlYXJjaE9wdGlvbnMpOiBQZXJzb25bXSB7XG4gICAgbGV0IHJvbGVDYXRlZ29yeSA9IFJvbGVDYXRlZ29yeS5BTEw7XG4gICAgaWYgKCEoc2VhcmNoT3B0aW9ucy51c2VyUm9sZSA9PT0gUGVyc29uUm9sZS5BTEwpKSB7XG4gICAgICByb2xlQ2F0ZWdvcnkgPSBzZWFyY2hPcHRpb25zLnVzZXJSb2xlID09PSBQZXJzb25Sb2xlLkNBU0VXT1JLRVIgPyBSb2xlQ2F0ZWdvcnkuQ0FTRVdPUktFUiA6IFJvbGVDYXRlZ29yeS5BRE1JTjtcbiAgICB9XG4gICAgY29uc3Qgc2VhcmNoVGVybSA9IHNlYXJjaE9wdGlvbnMgJiYgc2VhcmNoT3B0aW9ucy5zZWFyY2hUZXJtID8gc2VhcmNoT3B0aW9ucy5zZWFyY2hUZXJtLnRvTG93ZXJDYXNlKCkgOiAnJztcbiAgICBjb25zdCBwZW9wbGUgPSBjYXNld29ya2VycyA/IHRoaXMubWFwQ2FzZXdvcmtlcnMoY2FzZXdvcmtlcnMsIHJvbGVDYXRlZ29yeSkgOiBbXTtcbiAgICBjb25zdCBmaW5hbFBlb3BsZUxpc3QgPSBwZW9wbGUuZmlsdGVyKHBlcnNvbiA9PiBwZXJzb24gJiYgcGVyc29uLm5hbWUgJiYgcGVyc29uLm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hUZXJtKSk7XG4gICAgcmV0dXJuIHNlYXJjaE9wdGlvbnMudXNlckluY2x1ZGVkID8gZmluYWxQZW9wbGVMaXN0LmZpbHRlcihwZXJzb24gPT4gcGVyc29uICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpXG4gICAgICA6IGZpbmFsUGVvcGxlTGlzdC5maWx0ZXIocGVyc29uID0+IHBlcnNvbiAmJiBwZXJzb24uaWQgIT09IHRoaXMudXNlcklkICYmIHBlcnNvbi5pZCAhPT0gdGhpcy5hc3NpZ25lZFVzZXIpO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEp1ZGljaWFsKHZhbHVlOiBzdHJpbmcsIHNlcnZpY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxKdWRpY2lhbFVzZXJNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEp1ZGljaWFsVXNlck1vZGVsW10+KCdhcGkvcHJkL2p1ZGljaWFsL2dldEp1ZGljaWFsVXNlcnNTZWFyY2gnLFxuICAgICAgeyBzZWFyY2hTdHJpbmc6IHZhbHVlLCBzZXJ2aWNlQ29kZTogc2VydmljZUlkIH0pO1xuICB9XG59XG5cbiJdfQ==
@@ -1,8 +1,4 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/services/google-analytics/google-analytics.service.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
1
+ import { __decorate, __metadata, __param } from "tslib";
6
2
  import { DOCUMENT } from '@angular/common';
7
3
  import { Inject, Injectable } from '@angular/core';
8
4
  import { Title } from '@angular/platform-browser';
@@ -17,26 +13,16 @@ var GoogleAnalyticsService = /** @class */ (function () {
17
13
  function GoogleAnalyticsService(router, title, window, document) {
18
14
  this.router = router;
19
15
  this.title = title;
20
- this.window = (/** @type {?} */ (window));
21
- this.document = (/** @type {?} */ (document));
16
+ this.window = window;
17
+ this.document = document;
22
18
  }
23
- /**
24
- * @param {?} googleAnalyticsKey
25
- * @return {?}
26
- */
27
- GoogleAnalyticsService.prototype.init = /**
28
- * @param {?} googleAnalyticsKey
29
- * @return {?}
30
- */
31
- function (googleAnalyticsKey) {
19
+ GoogleAnalyticsService.prototype.init = function (googleAnalyticsKey) {
32
20
  this.googleAnalyticsKey = googleAnalyticsKey;
33
21
  try {
34
- /** @type {?} */
35
22
  var script1 = this.document.createElement('script');
36
23
  script1.async = true;
37
24
  script1.src = "https://www.googletagmanager.com/gtag/js?id=" + this.googleAnalyticsKey;
38
25
  this.document.head.appendChild(script1);
39
- /** @type {?} */
40
26
  var script2 = this.document.createElement('script');
41
27
  script2.innerHTML = "\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', '" + this.googleAnalyticsKey + "', {'send_page_view': false});\n ";
42
28
  this.document.head.appendChild(script2);
@@ -47,82 +33,39 @@ var GoogleAnalyticsService = /** @class */ (function () {
47
33
  }
48
34
  this.listenForRouteChanges();
49
35
  };
50
- /**
51
- * @private
52
- * @return {?}
53
- */
54
- GoogleAnalyticsService.prototype.listenForRouteChanges = /**
55
- * @private
56
- * @return {?}
57
- */
58
- function () {
36
+ GoogleAnalyticsService.prototype.listenForRouteChanges = function () {
59
37
  var _this = this;
60
38
  if (this.googleAnalyticsKey) {
61
- this.router.events.subscribe((/**
62
- * @param {?} event
63
- * @return {?}
64
- */
65
- function (event) {
39
+ this.router.events.subscribe(function (event) {
66
40
  if (event instanceof NavigationEnd) {
67
- ((/** @type {?} */ (_this.window))).gtag('config', _this.googleAnalyticsKey, {
41
+ _this.window.gtag('config', _this.googleAnalyticsKey, {
68
42
  page_path: event.urlAfterRedirects,
69
43
  page_title: _this.title.getTitle(),
70
44
  });
71
45
  }
72
- }));
46
+ });
73
47
  }
74
48
  };
75
- /**
76
- * @param {?} eventName
77
- * @param {?} params
78
- * @return {?}
79
- */
80
- GoogleAnalyticsService.prototype.event = /**
81
- * @param {?} eventName
82
- * @param {?} params
83
- * @return {?}
84
- */
85
- function (eventName, params) {
86
- ((/** @type {?} */ (this.window))).gtag('event', eventName, params);
49
+ GoogleAnalyticsService.prototype.event = function (eventName, params) {
50
+ this.window.gtag('event', eventName, params);
87
51
  };
88
- GoogleAnalyticsService.decorators = [
89
- { type: Injectable, args: [{
90
- providedIn: 'root'
91
- },] }
92
- ];
93
- /** @nocollapse */
94
52
  GoogleAnalyticsService.ctorParameters = function () { return [
95
53
  { type: Router },
96
54
  { type: Title },
97
55
  { type: undefined, decorators: [{ type: Inject, args: [windowToken,] }] },
98
56
  { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
99
57
  ]; };
100
- /** @nocollapse */ GoogleAnalyticsService.ngInjectableDef = i0.defineInjectable({ factory: function GoogleAnalyticsService_Factory() { return new GoogleAnalyticsService(i0.inject(i1.Router), i0.inject(i2.Title), i0.inject(i3.windowToken), i0.inject(i4.DOCUMENT)); }, token: GoogleAnalyticsService, providedIn: "root" });
58
+ GoogleAnalyticsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function GoogleAnalyticsService_Factory() { return new GoogleAnalyticsService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.Title), i0.ɵɵinject(i3.windowToken), i0.ɵɵinject(i4.DOCUMENT)); }, token: GoogleAnalyticsService, providedIn: "root" });
59
+ GoogleAnalyticsService = __decorate([
60
+ Injectable({
61
+ providedIn: 'root'
62
+ }),
63
+ __param(2, Inject(windowToken)),
64
+ __param(3, Inject(DOCUMENT)),
65
+ __metadata("design:paramtypes", [Router,
66
+ Title, Object, Object])
67
+ ], GoogleAnalyticsService);
101
68
  return GoogleAnalyticsService;
102
69
  }());
103
70
  export { GoogleAnalyticsService };
104
- if (false) {
105
- /**
106
- * @type {?}
107
- * @private
108
- */
109
- GoogleAnalyticsService.prototype.document;
110
- /**
111
- * @type {?}
112
- * @private
113
- */
114
- GoogleAnalyticsService.prototype.window;
115
- /** @type {?} */
116
- GoogleAnalyticsService.prototype.googleAnalyticsKey;
117
- /**
118
- * @type {?}
119
- * @private
120
- */
121
- GoogleAnalyticsService.prototype.router;
122
- /**
123
- * @type {?}
124
- * @private
125
- */
126
- GoogleAnalyticsService.prototype.title;
127
- }
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWFuYWx5dGljcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9nb29nbGUtYW5hbHl0aWNzL2dvb2dsZS1hbmFseXRpY3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFFM0M7SUFVRSxnQ0FDbUIsTUFBYyxFQUNkLEtBQVksRUFDUixNQUFXLEVBQ2QsUUFBYTtRQUhkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBSTdCLElBQUksQ0FBQyxNQUFNLEdBQUcsbUJBQUEsTUFBTSxFQUFVLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxtQkFBQSxRQUFRLEVBQVksQ0FBQztJQUV2QyxDQUFDOzs7OztJQUVNLHFDQUFJOzs7O0lBQVgsVUFBWSxrQkFBMEI7UUFDcEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDO1FBQzdDLElBQUk7O2dCQUNJLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7WUFDckQsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDckIsT0FBTyxDQUFDLEdBQUcsR0FBRyxpREFBK0MsSUFBSSxDQUFDLGtCQUFvQixDQUFDO1lBQ3ZGLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQzs7Z0JBRWxDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7WUFDckQsT0FBTyxDQUFDLFNBQVMsR0FBRyx5S0FJQSxJQUFJLENBQUMsa0JBQWtCLDJDQUMxQyxDQUFDO1lBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3pDO1FBQUMsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDbEQsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuQjtRQUNELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7Ozs7O0lBRU8sc0RBQXFCOzs7O0lBQTdCO1FBQUEsaUJBV0M7UUFWQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTOzs7O1lBQUMsVUFBQSxLQUFLO2dCQUNoQyxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUU7b0JBQ2xDLENBQUMsbUJBQUEsS0FBSSxDQUFDLE1BQU0sRUFBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFJLENBQUMsa0JBQWtCLEVBQUU7d0JBQzNELFNBQVMsRUFBRSxLQUFLLENBQUMsaUJBQWlCO3dCQUNsQyxVQUFVLEVBQUUsS0FBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7cUJBQ2xDLENBQUMsQ0FBQztpQkFDSjtZQUNILENBQUMsRUFBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs7Ozs7SUFFTSxzQ0FBSzs7Ozs7SUFBWixVQUFhLFNBQWlCLEVBQUUsTUFBVTtRQUN4QyxDQUFDLG1CQUFBLElBQUksQ0FBQyxNQUFNLEVBQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3hELENBQUM7O2dCQTNERixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQUx1QixNQUFNO2dCQURyQixLQUFLO2dEQWlCVCxNQUFNLFNBQUMsV0FBVztnREFDbEIsTUFBTSxTQUFDLFFBQVE7OztpQ0FwQnBCO0NBbUVDLEFBN0RELElBNkRDO1NBekRZLHNCQUFzQjs7Ozs7O0lBRWpDLDBDQUFvQzs7Ozs7SUFDcEMsd0NBQWdDOztJQUVoQyxvREFBa0M7Ozs7O0lBRWhDLHdDQUErQjs7Ozs7SUFDL0IsdUNBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vd2luZG93JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5cbmV4cG9ydCBjbGFzcyBHb29nbGVBbmFseXRpY3NTZXJ2aWNlIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBEb2N1bWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IFdpbmRvdztcblxuICBwdWJsaWMgZ29vZ2xlQW5hbHl0aWNzS2V5OiBzdHJpbmc7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0aXRsZTogVGl0bGUsXG4gICAgQEluamVjdCh3aW5kb3dUb2tlbikgd2luZG93OiBhbnksXG4gICAgQEluamVjdChET0NVTUVOVCkgZG9jdW1lbnQ6IGFueSxcbiAgKSB7XG4gICAgdGhpcy53aW5kb3cgPSB3aW5kb3cgYXMgV2luZG93O1xuICAgIHRoaXMuZG9jdW1lbnQgPSBkb2N1bWVudCBhcyBEb2N1bWVudDtcblxuICB9XG5cbiAgcHVibGljIGluaXQoZ29vZ2xlQW5hbHl0aWNzS2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLmdvb2dsZUFuYWx5dGljc0tleSA9IGdvb2dsZUFuYWx5dGljc0tleTtcbiAgICB0cnkge1xuICAgICAgY29uc3Qgc2NyaXB0MSA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHQxLmFzeW5jID0gdHJ1ZTtcbiAgICAgIHNjcmlwdDEuc3JjID0gYGh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tL2d0YWcvanM/aWQ9JHt0aGlzLmdvb2dsZUFuYWx5dGljc0tleX1gO1xuICAgICAgdGhpcy5kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHNjcmlwdDEpO1xuXG4gICAgICBjb25zdCBzY3JpcHQyID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIHNjcmlwdDIuaW5uZXJIVE1MID0gYFxuICAgICAgICB3aW5kb3cuZGF0YUxheWVyID0gd2luZG93LmRhdGFMYXllciB8fCBbXTtcbiAgICAgICAgZnVuY3Rpb24gZ3RhZygpe2RhdGFMYXllci5wdXNoKGFyZ3VtZW50cyk7fVxuICAgICAgICBndGFnKCdqcycsIG5ldyBEYXRlKCkpO1xuICAgICAgICBndGFnKCdjb25maWcnLCAnJHt0aGlzLmdvb2dsZUFuYWx5dGljc0tleX0nLCB7J3NlbmRfcGFnZV92aWV3JzogZmFsc2V9KTtcbiAgICAgIGA7XG4gICAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc2NyaXB0Mik7XG4gICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGFwcGVuZGluZyBnb29nbGUgYW5hbHl0aWNzJyk7XG4gICAgICBjb25zb2xlLmVycm9yKGV4KTtcbiAgICB9XG4gICAgdGhpcy5saXN0ZW5Gb3JSb3V0ZUNoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuRm9yUm91dGVDaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLmdvb2dsZUFuYWx5dGljc0tleSkge1xuICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgICAodGhpcy53aW5kb3cgYXMgYW55KS5ndGFnKCdjb25maWcnLCB0aGlzLmdvb2dsZUFuYWx5dGljc0tleSwge1xuICAgICAgICAgICAgcGFnZV9wYXRoOiBldmVudC51cmxBZnRlclJlZGlyZWN0cyxcbiAgICAgICAgICAgIHBhZ2VfdGl0bGU6IHRoaXMudGl0bGUuZ2V0VGl0bGUoKSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGV2ZW50KGV2ZW50TmFtZTogc3RyaW5nLCBwYXJhbXM6IHt9KSB7XG4gICAgKHRoaXMud2luZG93IGFzIGFueSkuZ3RhZygnZXZlbnQnLCBldmVudE5hbWUsIHBhcmFtcyk7XG4gIH1cblxufVxuIl19
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWFuYWx5dGljcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhtY3RzL3JweC14dWktY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9nb29nbGUtYW5hbHl0aWNzL2dvb2dsZS1hbmFseXRpY3Muc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7OztBQU0zQztJQU1FLGdDQUNtQixNQUFjLEVBQ2QsS0FBWSxFQUNSLE1BQVcsRUFDZCxRQUFhO1FBSGQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQU87UUFJN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFnQixDQUFDO1FBQy9CLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBb0IsQ0FBQztJQUV2QyxDQUFDO0lBRU0scUNBQUksR0FBWCxVQUFZLGtCQUEwQjtRQUNwQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUM7UUFDN0MsSUFBSTtZQUNGLElBQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RELE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ3JCLE9BQU8sQ0FBQyxHQUFHLEdBQUcsaURBQStDLElBQUksQ0FBQyxrQkFBb0IsQ0FBQztZQUN2RixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7WUFFeEMsSUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdEQsT0FBTyxDQUFDLFNBQVMsR0FBRyx5S0FJQSxJQUFJLENBQUMsa0JBQWtCLDJDQUMxQyxDQUFDO1lBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3pDO1FBQUMsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDbEQsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuQjtRQUNELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFTyxzREFBcUIsR0FBN0I7UUFBQSxpQkFXQztRQVZDLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFBLEtBQUs7Z0JBQ2hDLElBQUksS0FBSyxZQUFZLGFBQWEsRUFBRTtvQkFDakMsS0FBSSxDQUFDLE1BQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEtBQUksQ0FBQyxrQkFBa0IsRUFBRTt3QkFDM0QsU0FBUyxFQUFFLEtBQUssQ0FBQyxpQkFBaUI7d0JBQ2xDLFVBQVUsRUFBRSxLQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtxQkFDbEMsQ0FBQyxDQUFDO2lCQUNKO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFTSxzQ0FBSyxHQUFaLFVBQWEsU0FBaUIsRUFBRSxNQUFVO1FBQ3ZDLElBQUksQ0FBQyxNQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDeEQsQ0FBQzs7Z0JBaEQwQixNQUFNO2dCQUNQLEtBQUs7Z0RBQzVCLE1BQU0sU0FBQyxXQUFXO2dEQUNsQixNQUFNLFNBQUMsUUFBUTs7O0lBVlAsc0JBQXNCO1FBSmxDLFVBQVUsQ0FBQztZQUNWLFVBQVUsRUFBRSxNQUFNO1NBQ25CLENBQUM7UUFXRyxXQUFBLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNuQixXQUFBLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTt5Q0FIUSxNQUFNO1lBQ1AsS0FBSztPQVJwQixzQkFBc0IsQ0F5RGxDO2lDQW5FRDtDQW1FQyxBQXpERCxJQXlEQztTQXpEWSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgd2luZG93VG9rZW4gfSBmcm9tICcuLi8uLi93aW5kb3cnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcblxuZXhwb3J0IGNsYXNzIEdvb2dsZUFuYWx5dGljc1NlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQ6IERvY3VtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93O1xuXG4gIHB1YmxpYyBnb29nbGVBbmFseXRpY3NLZXk6IHN0cmluZztcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRpdGxlOiBUaXRsZSxcbiAgICBASW5qZWN0KHdpbmRvd1Rva2VuKSB3aW5kb3c6IGFueSxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBkb2N1bWVudDogYW55LFxuICApIHtcbiAgICB0aGlzLndpbmRvdyA9IHdpbmRvdyBhcyBXaW5kb3c7XG4gICAgdGhpcy5kb2N1bWVudCA9IGRvY3VtZW50IGFzIERvY3VtZW50O1xuXG4gIH1cblxuICBwdWJsaWMgaW5pdChnb29nbGVBbmFseXRpY3NLZXk6IHN0cmluZykge1xuICAgIHRoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5ID0gZ29vZ2xlQW5hbHl0aWNzS2V5O1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBzY3JpcHQxID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIHNjcmlwdDEuYXN5bmMgPSB0cnVlO1xuICAgICAgc2NyaXB0MS5zcmMgPSBgaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RhZy9qcz9pZD0ke3RoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5fWA7XG4gICAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc2NyaXB0MSk7XG5cbiAgICAgIGNvbnN0IHNjcmlwdDIgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgc2NyaXB0Mi5pbm5lckhUTUwgPSBgXG4gICAgICAgIHdpbmRvdy5kYXRhTGF5ZXIgPSB3aW5kb3cuZGF0YUxheWVyIHx8IFtdO1xuICAgICAgICBmdW5jdGlvbiBndGFnKCl7ZGF0YUxheWVyLnB1c2goYXJndW1lbnRzKTt9XG4gICAgICAgIGd0YWcoJ2pzJywgbmV3IERhdGUoKSk7XG4gICAgICAgIGd0YWcoJ2NvbmZpZycsICcke3RoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5fScsIHsnc2VuZF9wYWdlX3ZpZXcnOiBmYWxzZX0pO1xuICAgICAgYDtcbiAgICAgIHRoaXMuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQyKTtcbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYXBwZW5kaW5nIGdvb2dsZSBhbmFseXRpY3MnKTtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXgpO1xuICAgIH1cbiAgICB0aGlzLmxpc3RlbkZvclJvdXRlQ2hhbmdlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Gb3JSb3V0ZUNoYW5nZXMoKSB7XG4gICAgaWYgKHRoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5KSB7XG4gICAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICAgICh0aGlzLndpbmRvdyBhcyBhbnkpLmd0YWcoJ2NvbmZpZycsIHRoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5LCB7XG4gICAgICAgICAgICBwYWdlX3BhdGg6IGV2ZW50LnVybEFmdGVyUmVkaXJlY3RzLFxuICAgICAgICAgICAgcGFnZV90aXRsZTogdGhpcy50aXRsZS5nZXRUaXRsZSgpLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZXZlbnQoZXZlbnROYW1lOiBzdHJpbmcsIHBhcmFtczoge30pIHtcbiAgICAodGhpcy53aW5kb3cgYXMgYW55KS5ndGFnKCdldmVudCcsIGV2ZW50TmFtZSwgcGFyYW1zKTtcbiAgfVxuXG59XG4iXX0=
@@ -1,8 +1,4 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/services/google-tag-manager/google-tag-manager.service.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
1
+ import { __decorate, __metadata, __param } from "tslib";
6
2
  import { DOCUMENT } from '@angular/common';
7
3
  import { Inject, Injectable } from '@angular/core';
8
4
  import { Title } from '@angular/platform-browser';
@@ -17,26 +13,17 @@ var GoogleTagManagerService = /** @class */ (function () {
17
13
  function GoogleTagManagerService(router, title, window, document) {
18
14
  this.router = router;
19
15
  this.title = title;
20
- this.window = (/** @type {?} */ (window));
21
- this.document = (/** @type {?} */ (document));
16
+ this.window = window;
17
+ this.document = document;
22
18
  }
23
- /**
24
- * @param {?} googleTagManagerKey
25
- * @return {?}
26
- */
27
- GoogleTagManagerService.prototype.init = /**
28
- * @param {?} googleTagManagerKey
29
- * @return {?}
30
- */
31
- function (googleTagManagerKey) {
19
+ GoogleTagManagerService.prototype.init = function (googleTagManagerKey) {
32
20
  this.googleTagManagerKey = googleTagManagerKey;
33
21
  try {
34
- ((/** @type {?} */ (this.window))).dataLayer = ((/** @type {?} */ (this.window))).dataLayer || [];
35
- ((/** @type {?} */ (this.window))).dataLayer.push({
22
+ this.window.dataLayer = this.window.dataLayer || [];
23
+ this.window.dataLayer.push({
36
24
  'gtm.start': new Date().getTime(),
37
25
  event: 'gtm.js'
38
26
  });
39
- /** @type {?} */
40
27
  var script = this.document.createElement('script');
41
28
  script.async = true;
42
29
  script.src = "https://www.googletagmanager.com/gtm.js?id=" + this.googleTagManagerKey;
@@ -48,24 +35,12 @@ var GoogleTagManagerService = /** @class */ (function () {
48
35
  }
49
36
  this.listenForRouteChanges();
50
37
  };
51
- /**
52
- * @private
53
- * @return {?}
54
- */
55
- GoogleTagManagerService.prototype.listenForRouteChanges = /**
56
- * @private
57
- * @return {?}
58
- */
59
- function () {
38
+ GoogleTagManagerService.prototype.listenForRouteChanges = function () {
60
39
  var _this = this;
61
40
  if (this.googleTagManagerKey) {
62
- this.router.events.subscribe((/**
63
- * @param {?} event
64
- * @return {?}
65
- */
66
- function (event) {
41
+ this.router.events.subscribe(function (event) {
67
42
  if (event instanceof NavigationEnd) {
68
- ((/** @type {?} */ (_this.window))).dataLayer.push({
43
+ _this.window.dataLayer.push({
69
44
  event: 'pageview',
70
45
  page: {
71
46
  path: event.urlAfterRedirects,
@@ -73,63 +48,32 @@ var GoogleTagManagerService = /** @class */ (function () {
73
48
  }
74
49
  });
75
50
  }
76
- }));
51
+ });
77
52
  }
78
53
  };
79
- /**
80
- * @param {?} eventName
81
- * @param {?} params
82
- * @return {?}
83
- */
84
- GoogleTagManagerService.prototype.event = /**
85
- * @param {?} eventName
86
- * @param {?} params
87
- * @return {?}
88
- */
89
- function (eventName, params) {
90
- ((/** @type {?} */ (this.window))).dataLayer.push({
54
+ GoogleTagManagerService.prototype.event = function (eventName, params) {
55
+ this.window.dataLayer.push({
91
56
  event: eventName,
92
57
  params: params
93
58
  });
94
59
  };
95
- GoogleTagManagerService.decorators = [
96
- { type: Injectable, args: [{
97
- providedIn: 'root'
98
- },] }
99
- ];
100
- /** @nocollapse */
101
60
  GoogleTagManagerService.ctorParameters = function () { return [
102
61
  { type: Router },
103
62
  { type: Title },
104
63
  { type: undefined, decorators: [{ type: Inject, args: [windowToken,] }] },
105
64
  { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
106
65
  ]; };
107
- /** @nocollapse */ GoogleTagManagerService.ngInjectableDef = i0.defineInjectable({ factory: function GoogleTagManagerService_Factory() { return new GoogleTagManagerService(i0.inject(i1.Router), i0.inject(i2.Title), i0.inject(i3.windowToken), i0.inject(i4.DOCUMENT)); }, token: GoogleTagManagerService, providedIn: "root" });
66
+ GoogleTagManagerService.ɵprov = i0.ɵɵdefineInjectable({ factory: function GoogleTagManagerService_Factory() { return new GoogleTagManagerService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.Title), i0.ɵɵinject(i3.windowToken), i0.ɵɵinject(i4.DOCUMENT)); }, token: GoogleTagManagerService, providedIn: "root" });
67
+ GoogleTagManagerService = __decorate([
68
+ Injectable({
69
+ providedIn: 'root'
70
+ }),
71
+ __param(2, Inject(windowToken)),
72
+ __param(3, Inject(DOCUMENT)),
73
+ __metadata("design:paramtypes", [Router,
74
+ Title, Object, Object])
75
+ ], GoogleTagManagerService);
108
76
  return GoogleTagManagerService;
109
77
  }());
110
78
  export { GoogleTagManagerService };
111
- if (false) {
112
- /**
113
- * @type {?}
114
- * @private
115
- */
116
- GoogleTagManagerService.prototype.document;
117
- /**
118
- * @type {?}
119
- * @private
120
- */
121
- GoogleTagManagerService.prototype.window;
122
- /** @type {?} */
123
- GoogleTagManagerService.prototype.googleTagManagerKey;
124
- /**
125
- * @type {?}
126
- * @private
127
- */
128
- GoogleTagManagerService.prototype.router;
129
- /**
130
- * @type {?}
131
- * @private
132
- */
133
- GoogleTagManagerService.prototype.title;
134
- }
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLXRhZy1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2dvb2dsZS10YWctbWFuYWdlci9nb29nbGUtdGFnLW1hbmFnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFFM0M7SUFRRSxpQ0FDbUIsTUFBYyxFQUNkLEtBQVksRUFDUixNQUFXLEVBQ2QsUUFBYTtRQUhkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBSTdCLElBQUksQ0FBQyxNQUFNLEdBQUcsbUJBQUEsTUFBTSxFQUFVLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxtQkFBQSxRQUFRLEVBQVksQ0FBQztJQUN2QyxDQUFDOzs7OztJQUVNLHNDQUFJOzs7O0lBQVgsVUFBWSxtQkFBMkI7UUFDckMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLG1CQUFtQixDQUFDO1FBQy9DLElBQUk7WUFFRixDQUFDLG1CQUFBLElBQUksQ0FBQyxNQUFNLEVBQU8sQ0FBQyxDQUFDLFNBQVMsR0FBRyxDQUFDLG1CQUFBLElBQUksQ0FBQyxNQUFNLEVBQU8sQ0FBQyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7WUFDdEUsQ0FBQyxtQkFBQSxJQUFJLENBQUMsTUFBTSxFQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO2dCQUNsQyxXQUFXLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUU7Z0JBQ2pDLEtBQUssRUFBRSxRQUFRO2FBQ2hCLENBQUMsQ0FBQzs7Z0JBRUcsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQztZQUNwRCxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUNwQixNQUFNLENBQUMsR0FBRyxHQUFHLGdEQUE4QyxJQUFJLENBQUMsbUJBQXFCLENBQUM7WUFDdEYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBRXhDO1FBQUMsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7WUFDcEQsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuQjtRQUNELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7Ozs7O0lBRU8sdURBQXFCOzs7O0lBQTdCO1FBQUEsaUJBY0M7UUFiQyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTOzs7O1lBQUMsVUFBQSxLQUFLO2dCQUNoQyxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUU7b0JBQ2xDLENBQUMsbUJBQUEsS0FBSSxDQUFDLE1BQU0sRUFBTyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQzt3QkFDbEMsS0FBSyxFQUFFLFVBQVU7d0JBQ2pCLElBQUksRUFBRTs0QkFDSixJQUFJLEVBQUUsS0FBSyxDQUFDLGlCQUFpQjs0QkFDN0IsS0FBSyxFQUFFLEtBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO3lCQUM3QjtxQkFDRixDQUFDLENBQUM7aUJBQ0o7WUFDSCxDQUFDLEVBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7Ozs7O0lBRU0sdUNBQUs7Ozs7O0lBQVosVUFBYSxTQUFpQixFQUFFLE1BQVU7UUFDeEMsQ0FBQyxtQkFBQSxJQUFJLENBQUMsTUFBTSxFQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ2xDLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE1BQU0sUUFBQTtTQUNQLENBQUMsQ0FBQztJQUNMLENBQUM7O2dCQTdERixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQUx1QixNQUFNO2dCQURyQixLQUFLO2dEQWVULE1BQU0sU0FBQyxXQUFXO2dEQUNsQixNQUFNLFNBQUMsUUFBUTs7O2tDQWxCcEI7Q0FvRUMsQUE5REQsSUE4REM7U0EzRFksdUJBQXVCOzs7Ozs7SUFDbEMsMkNBQW9DOzs7OztJQUNwQyx5Q0FBZ0M7O0lBRWhDLHNEQUFtQzs7Ozs7SUFFakMseUNBQStCOzs7OztJQUMvQix3Q0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgd2luZG93VG9rZW4gfSBmcm9tICcuLi8uLi93aW5kb3cnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBHb29nbGVUYWdNYW5hZ2VyU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQ6IERvY3VtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93O1xuXG4gIHB1YmxpYyBnb29nbGVUYWdNYW5hZ2VyS2V5OiBzdHJpbmc7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0aXRsZTogVGl0bGUsXG4gICAgQEluamVjdCh3aW5kb3dUb2tlbikgd2luZG93OiBhbnksXG4gICAgQEluamVjdChET0NVTUVOVCkgZG9jdW1lbnQ6IGFueVxuICApIHtcbiAgICB0aGlzLndpbmRvdyA9IHdpbmRvdyBhcyBXaW5kb3c7XG4gICAgdGhpcy5kb2N1bWVudCA9IGRvY3VtZW50IGFzIERvY3VtZW50O1xuICB9XG5cbiAgcHVibGljIGluaXQoZ29vZ2xlVGFnTWFuYWdlcktleTogc3RyaW5nKSB7XG4gICAgdGhpcy5nb29nbGVUYWdNYW5hZ2VyS2V5ID0gZ29vZ2xlVGFnTWFuYWdlcktleTtcbiAgICB0cnkge1xuXG4gICAgICAodGhpcy53aW5kb3cgYXMgYW55KS5kYXRhTGF5ZXIgPSAodGhpcy53aW5kb3cgYXMgYW55KS5kYXRhTGF5ZXIgfHwgW107XG4gICAgICAodGhpcy53aW5kb3cgYXMgYW55KS5kYXRhTGF5ZXIucHVzaCh7XG4gICAgICAgICdndG0uc3RhcnQnOiBuZXcgRGF0ZSgpLmdldFRpbWUoKSxcbiAgICAgICAgZXZlbnQ6ICdndG0uanMnXG4gICAgICB9KTtcblxuICAgICAgY29uc3Qgc2NyaXB0ID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIHNjcmlwdC5hc3luYyA9IHRydWU7XG4gICAgICBzY3JpcHQuc3JjID0gYGh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tL2d0bS5qcz9pZD0ke3RoaXMuZ29vZ2xlVGFnTWFuYWdlcktleX1gO1xuICAgICAgdGhpcy5kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHNjcmlwdCk7XG5cbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYXBwZW5kaW5nIGdvb2dsZSB0YWcgbWFuYWdlcicpO1xuICAgICAgY29uc29sZS5lcnJvcihleCk7XG4gICAgfVxuICAgIHRoaXMubGlzdGVuRm9yUm91dGVDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkZvclJvdXRlQ2hhbmdlcygpIHtcbiAgICBpZiAodGhpcy5nb29nbGVUYWdNYW5hZ2VyS2V5KSB7XG4gICAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICAgICh0aGlzLndpbmRvdyBhcyBhbnkpLmRhdGFMYXllci5wdXNoKHtcbiAgICAgICAgICAgIGV2ZW50OiAncGFnZXZpZXcnLFxuICAgICAgICAgICAgcGFnZToge1xuICAgICAgICAgICAgICBwYXRoOiBldmVudC51cmxBZnRlclJlZGlyZWN0cyxcbiAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudGl0bGUuZ2V0VGl0bGUoKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZXZlbnQoZXZlbnROYW1lOiBzdHJpbmcsIHBhcmFtczoge30pIHtcbiAgICAodGhpcy53aW5kb3cgYXMgYW55KS5kYXRhTGF5ZXIucHVzaCh7XG4gICAgICBldmVudDogZXZlbnROYW1lLFxuICAgICAgcGFyYW1zXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLXRhZy1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvcnB4LXh1aS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2dvb2dsZS10YWctbWFuYWdlci9nb29nbGUtdGFnLW1hbmFnZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7OztBQUszQztJQUtFLGlDQUNtQixNQUFjLEVBQ2QsS0FBWSxFQUNSLE1BQVcsRUFDZCxRQUFhO1FBSGQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQU87UUFJN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFnQixDQUFDO1FBQy9CLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBb0IsQ0FBQztJQUN2QyxDQUFDO0lBRU0sc0NBQUksR0FBWCxVQUFZLG1CQUEyQjtRQUNyQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUM7UUFDL0MsSUFBSTtZQUVELElBQUksQ0FBQyxNQUFjLENBQUMsU0FBUyxHQUFJLElBQUksQ0FBQyxNQUFjLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztZQUNyRSxJQUFJLENBQUMsTUFBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0JBQ2xDLFdBQVcsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRTtnQkFDakMsS0FBSyxFQUFFLFFBQVE7YUFDaEIsQ0FBQyxDQUFDO1lBRUgsSUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckQsTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDcEIsTUFBTSxDQUFDLEdBQUcsR0FBRyxnREFBOEMsSUFBSSxDQUFDLG1CQUFxQixDQUFDO1lBQ3RGLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUV4QztRQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1lBQ3BELE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDbkI7UUFDRCxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU8sdURBQXFCLEdBQTdCO1FBQUEsaUJBY0M7UUFiQyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsVUFBQSxLQUFLO2dCQUNoQyxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUU7b0JBQ2pDLEtBQUksQ0FBQyxNQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQzt3QkFDbEMsS0FBSyxFQUFFLFVBQVU7d0JBQ2pCLElBQUksRUFBRTs0QkFDSixJQUFJLEVBQUUsS0FBSyxDQUFDLGlCQUFpQjs0QkFDN0IsS0FBSyxFQUFFLEtBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO3lCQUM3QjtxQkFDRixDQUFDLENBQUM7aUJBQ0o7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVNLHVDQUFLLEdBQVosVUFBYSxTQUFpQixFQUFFLE1BQVU7UUFDdkMsSUFBSSxDQUFDLE1BQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ2xDLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE1BQU0sUUFBQTtTQUNQLENBQUMsQ0FBQztJQUNMLENBQUM7O2dCQXBEMEIsTUFBTTtnQkFDUCxLQUFLO2dEQUM1QixNQUFNLFNBQUMsV0FBVztnREFDbEIsTUFBTSxTQUFDLFFBQVE7OztJQVRQLHVCQUF1QjtRQUhuQyxVQUFVLENBQUM7WUFDVixVQUFVLEVBQUUsTUFBTTtTQUNuQixDQUFDO1FBU0csV0FBQSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDbkIsV0FBQSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7eUNBSFEsTUFBTTtZQUNQLEtBQUs7T0FQcEIsdUJBQXVCLENBMkRuQztrQ0FwRUQ7Q0FvRUMsQUEzREQsSUEyREM7U0EzRFksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHdpbmRvd1Rva2VuIH0gZnJvbSAnLi4vLi4vd2luZG93JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgR29vZ2xlVGFnTWFuYWdlclNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBEb2N1bWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IFdpbmRvdztcblxuICBwdWJsaWMgZ29vZ2xlVGFnTWFuYWdlcktleTogc3RyaW5nO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGl0bGU6IFRpdGxlLFxuICAgIEBJbmplY3Qod2luZG93VG9rZW4pIHdpbmRvdzogYW55LFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIGRvY3VtZW50OiBhbnlcbiAgKSB7XG4gICAgdGhpcy53aW5kb3cgPSB3aW5kb3cgYXMgV2luZG93O1xuICAgIHRoaXMuZG9jdW1lbnQgPSBkb2N1bWVudCBhcyBEb2N1bWVudDtcbiAgfVxuXG4gIHB1YmxpYyBpbml0KGdvb2dsZVRhZ01hbmFnZXJLZXk6IHN0cmluZykge1xuICAgIHRoaXMuZ29vZ2xlVGFnTWFuYWdlcktleSA9IGdvb2dsZVRhZ01hbmFnZXJLZXk7XG4gICAgdHJ5IHtcblxuICAgICAgKHRoaXMud2luZG93IGFzIGFueSkuZGF0YUxheWVyID0gKHRoaXMud2luZG93IGFzIGFueSkuZGF0YUxheWVyIHx8IFtdO1xuICAgICAgKHRoaXMud2luZG93IGFzIGFueSkuZGF0YUxheWVyLnB1c2goe1xuICAgICAgICAnZ3RtLnN0YXJ0JzogbmV3IERhdGUoKS5nZXRUaW1lKCksXG4gICAgICAgIGV2ZW50OiAnZ3RtLmpzJ1xuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHNjcmlwdCA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHQuYXN5bmMgPSB0cnVlO1xuICAgICAgc2NyaXB0LnNyYyA9IGBodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JHt0aGlzLmdvb2dsZVRhZ01hbmFnZXJLZXl9YDtcbiAgICAgIHRoaXMuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO1xuXG4gICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGFwcGVuZGluZyBnb29nbGUgdGFnIG1hbmFnZXInKTtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXgpO1xuICAgIH1cbiAgICB0aGlzLmxpc3RlbkZvclJvdXRlQ2hhbmdlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Gb3JSb3V0ZUNoYW5nZXMoKSB7XG4gICAgaWYgKHRoaXMuZ29vZ2xlVGFnTWFuYWdlcktleSkge1xuICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgICAodGhpcy53aW5kb3cgYXMgYW55KS5kYXRhTGF5ZXIucHVzaCh7XG4gICAgICAgICAgICBldmVudDogJ3BhZ2V2aWV3JyxcbiAgICAgICAgICAgIHBhZ2U6IHtcbiAgICAgICAgICAgICAgcGF0aDogZXZlbnQudXJsQWZ0ZXJSZWRpcmVjdHMsXG4gICAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRpdGxlLmdldFRpdGxlKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGV2ZW50KGV2ZW50TmFtZTogc3RyaW5nLCBwYXJhbXM6IHt9KSB7XG4gICAgKHRoaXMud2luZG93IGFzIGFueSkuZGF0YUxheWVyLnB1c2goe1xuICAgICAgZXZlbnQ6IGV2ZW50TmFtZSxcbiAgICAgIHBhcmFtc1xuICAgIH0pO1xuICB9XG59XG4iXX0=