@hmcts/rpx-xui-common-lib 2.1.1-angular-upgrade-11 → 2.1.4-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 (287) hide show
  1. package/bundles/hmcts-rpx-xui-common-lib.umd.js +3443 -8190
  2. package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +1 -1
  3. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +1 -15
  4. package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
  5. package/esm2015/hmcts-rpx-xui-common-lib.js +4 -71
  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 +4 -65
  10. package/esm2015/lib/components/due-date/due-date.component.js +2 -97
  11. package/esm2015/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +7 -21
  12. package/esm2015/lib/components/find-location/find-location.component.js +15 -120
  13. package/esm2015/lib/components/find-person/find-person.component.js +9 -150
  14. package/esm2015/lib/components/generic-filter/generic-filter-utils.js +11 -55
  15. package/esm2015/lib/components/generic-filter/generic-filter.component.js +40 -283
  16. package/esm2015/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +3 -18
  17. package/esm2015/lib/components/invite-user-form/invite-user-form.component.js +2 -22
  18. package/esm2015/lib/components/invite-user-permissions/invite-user-permission.component.js +2 -21
  19. package/esm2015/lib/components/loading-spinner/loading-spinner.component.js +3 -12
  20. package/esm2015/lib/components/pagination/pagination.component.js +2 -24
  21. package/esm2015/lib/components/search-judicials/search-judicials.component.js +10 -133
  22. package/esm2015/lib/components/search-location/search-location.component.js +28 -160
  23. package/esm2015/lib/components/search-venue/search-venue.component.js +12 -135
  24. package/esm2015/lib/components/selected-case/selected-case.component.js +20 -176
  25. package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +3 -41
  26. package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +3 -52
  27. package/esm2015/lib/components/service-message/service-message.component.js +2 -20
  28. package/esm2015/lib/components/service-messages/service-messages.component.js +7 -65
  29. package/esm2015/lib/components/share-case/share-case.component.js +6 -87
  30. package/esm2015/lib/components/share-case-confirm/share-case-confirm.component.js +4 -37
  31. package/esm2015/lib/components/tab/tab.component.js +2 -26
  32. package/esm2015/lib/components/tc-confirm/tc-confirm.component.js +2 -17
  33. package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +2 -8
  34. package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +2 -8
  35. package/esm2015/lib/components/terms-and-conditions/terms-and-conditions.component.js +2 -12
  36. package/esm2015/lib/components/user-details/user-details.component.js +2 -39
  37. package/esm2015/lib/components/user-list/user-list.component.js +2 -32
  38. package/esm2015/lib/components/user-select/user-select.component.js +5 -52
  39. package/esm2015/lib/directives/feature-toggle/feature-toggle.directive.js +3 -56
  40. package/esm2015/lib/directives/let/let.directive.js +1 -39
  41. package/esm2015/lib/exui-common-lib.module.js +23 -15
  42. package/esm2015/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +2 -22
  43. package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +2 -13
  44. package/esm2015/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +4 -54
  45. package/esm2015/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +2 -14
  46. package/esm2015/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +2 -17
  47. package/esm2015/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +2 -24
  48. package/esm2015/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +2 -16
  49. package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +2 -22
  50. package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +2 -12
  51. package/esm2015/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +6 -24
  52. package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +2 -13
  53. package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +2 -21
  54. package/esm2015/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +2 -32
  55. package/esm2015/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +2 -18
  56. package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +2 -14
  57. package/esm2015/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +2 -44
  58. package/esm2015/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +2 -16
  59. package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +2 -36
  60. package/esm2015/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +2 -23
  61. package/esm2015/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +2 -22
  62. package/esm2015/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +3 -30
  63. package/esm2015/lib/gov-ui/directives/remove-host.directive.js +1 -22
  64. package/esm2015/lib/gov-ui/models/banner-data-model.js +2 -16
  65. package/esm2015/lib/gov-ui/models/checkboxes-model.js +2 -22
  66. package/esm2015/lib/gov-ui/models/error-messages-model.js +2 -16
  67. package/esm2015/lib/gov-ui/models/gov-ui-config-model.js +2 -36
  68. package/esm2015/lib/gov-ui/models/index.js +2 -7
  69. package/esm2015/lib/gov-ui/models/isession-storage.interface.js +2 -24
  70. package/esm2015/lib/gov-ui/models/public_api.js +5 -10
  71. package/esm2015/lib/gov-ui/util/helpers/html-templates.helper.js +4 -14
  72. package/esm2015/lib/gov-ui/util/session-storage/session-storage-utils.js +12 -48
  73. package/esm2015/lib/models/case-share.model.js +2 -26
  74. package/esm2015/lib/models/contact-details.model.js +7 -31
  75. package/esm2015/lib/models/due-date.model.js +7 -14
  76. package/esm2015/lib/models/feature-user.js +1 -16
  77. package/esm2015/lib/models/filter.model.js +1 -116
  78. package/esm2015/lib/models/idle-config.model.js +2 -20
  79. package/esm2015/lib/models/index.js +15 -19
  80. package/esm2015/lib/models/location.model.js +7 -108
  81. package/esm2015/lib/models/pagination.model.js +2 -18
  82. package/esm2015/lib/models/person.model.js +17 -92
  83. package/esm2015/lib/models/public_api.js +6 -11
  84. package/esm2015/lib/models/search-options.model.js +2 -22
  85. package/esm2015/lib/models/tcDocument.model.js +2 -18
  86. package/esm2015/lib/models/timeout-notification.model.js +2 -18
  87. package/esm2015/lib/models/user-details.model.js +2 -22
  88. package/esm2015/lib/models/user.model.js +2 -25
  89. package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +9 -84
  90. package/esm2015/lib/services/cookie/cookie.service.js +8 -71
  91. package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +4 -43
  92. package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +2 -28
  93. package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +12 -94
  94. package/esm2015/lib/services/filter/filter.service.js +2 -56
  95. package/esm2015/lib/services/find-person/find-person.service.js +16 -124
  96. package/esm2015/lib/services/google-analytics/google-analytics.service.js +8 -63
  97. package/esm2015/lib/services/google-tag-manager/google-tag-manager.service.js +10 -64
  98. package/esm2015/lib/services/loading/loading.service.js +2 -41
  99. package/esm2015/lib/services/locations/location.service.js +14 -30
  100. package/esm2015/lib/services/manage-session/manage-session.services.js +10 -63
  101. package/esm2015/lib/services/role-guard/role.guard.js +12 -53
  102. package/esm2015/lib/services/role-guard/role.service.js +2 -21
  103. package/esm2015/lib/services/session-storage/session-storage.service.js +3 -17
  104. package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +9 -75
  105. package/esm2015/lib/window.js +1 -10
  106. package/esm2015/public-api.js +76 -13
  107. package/fesm2015/hmcts-rpx-xui-common-lib.js +2217 -6108
  108. package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
  109. package/hmcts-rpx-xui-common-lib.d.ts +2 -64
  110. package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
  111. package/lib/components/checkbox-list/checkbox-list.component.d.ts +6 -5
  112. package/lib/components/due-date/due-date.component.d.ts +4 -4
  113. package/lib/components/find-location/find-location.component.d.ts +7 -4
  114. package/lib/components/generic-filter/generic-filter.component.d.ts +4 -2
  115. package/lib/components/invite-user-form/invite-user-form.component.d.ts +1 -1
  116. package/lib/components/search-judicials/search-judicials.component.d.ts +1 -1
  117. package/lib/components/search-location/search-location.component.d.ts +9 -4
  118. package/lib/components/search-venue/search-venue.component.d.ts +1 -1
  119. package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +1 -1
  120. package/lib/directives/let/let.directive.d.ts +1 -1
  121. package/lib/exui-common-lib.module.d.ts +0 -33
  122. package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +1 -1
  123. package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +1 -1
  124. package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +1 -1
  125. package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +1 -1
  126. package/lib/models/filter.model.d.ts +2 -0
  127. package/lib/models/index.d.ts +1 -0
  128. package/lib/models/location.model.d.ts +11 -0
  129. package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
  130. package/lib/services/loading/loading.service.d.ts +2 -2
  131. package/lib/services/locations/location.service.d.ts +2 -2
  132. package/lib/services/role-guard/role.service.d.ts +2 -1
  133. package/lib/window.d.ts +1 -1
  134. package/package.json +6 -19
  135. package/public-api.d.ts +78 -7
  136. package/esm2015/lib/components/index.js +0 -7
  137. package/esm2015/lib/components/public_api.js +0 -33
  138. package/esm2015/lib/directives/index.js +0 -7
  139. package/esm2015/lib/directives/public-api.js +0 -8
  140. package/esm2015/lib/gov-ui/components/index.js +0 -7
  141. package/esm2015/lib/gov-ui/components/public_api.js +0 -7
  142. package/esm2015/lib/gov-ui/gov-ui.service.js +0 -19
  143. package/esm2015/lib/gov-ui/index.js +0 -7
  144. package/esm2015/lib/gov-ui/public_api.js +0 -12
  145. package/esm2015/lib/gov-ui/validators/checkboxes-be-checked.validator.js +0 -37
  146. package/esm2015/lib/gov-ui/validators/date.validator.js +0 -32
  147. package/esm2015/lib/gov-ui/validators/index.js +0 -7
  148. package/esm2015/lib/gov-ui/validators/public_api.js +0 -12
  149. package/esm2015/lib/gov-ui/validators/radio-group.validator.js +0 -27
  150. package/esm2015/lib/services/index.js +0 -7
  151. package/esm2015/lib/services/public-api.js +0 -25
  152. package/esm5/hmcts-rpx-xui-common-lib.js +0 -74
  153. package/esm5/lib/components/accessibility/accessibility.component.js +0 -22
  154. package/esm5/lib/components/checkbox-list/checkbox-list.component.js +0 -391
  155. package/esm5/lib/components/contact-details/contact-details.component.js +0 -29
  156. package/esm5/lib/components/cookie-banner/cookie-banner.component.js +0 -154
  157. package/esm5/lib/components/due-date/due-date.component.js +0 -254
  158. package/esm5/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +0 -45
  159. package/esm5/lib/components/find-location/find-location.component.js +0 -279
  160. package/esm5/lib/components/find-person/find-person.component.js +0 -286
  161. package/esm5/lib/components/generic-filter/generic-filter-utils.js +0 -66
  162. package/esm5/lib/components/generic-filter/generic-filter.component.js +0 -822
  163. package/esm5/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +0 -47
  164. package/esm5/lib/components/index.js +0 -7
  165. package/esm5/lib/components/invite-user-form/invite-user-form.component.js +0 -54
  166. package/esm5/lib/components/invite-user-permissions/invite-user-permission.component.js +0 -46
  167. package/esm5/lib/components/loading-spinner/loading-spinner.component.js +0 -29
  168. package/esm5/lib/components/pagination/pagination.component.js +0 -58
  169. package/esm5/lib/components/public_api.js +0 -33
  170. package/esm5/lib/components/search-judicials/search-judicials.component.js +0 -291
  171. package/esm5/lib/components/search-location/search-location.component.js +0 -302
  172. package/esm5/lib/components/search-venue/search-venue.component.js +0 -290
  173. package/esm5/lib/components/selected-case/selected-case.component.js +0 -430
  174. package/esm5/lib/components/selected-case-confirm/selected-case-confirm.component.js +0 -84
  175. package/esm5/lib/components/selected-case-list/selected-case-list.component.js +0 -109
  176. package/esm5/lib/components/service-message/service-message.component.js +0 -46
  177. package/esm5/lib/components/service-messages/service-messages.component.js +0 -122
  178. package/esm5/lib/components/share-case/share-case.component.js +0 -223
  179. package/esm5/lib/components/share-case-confirm/share-case-confirm.component.js +0 -70
  180. package/esm5/lib/components/tab/tab.component.js +0 -51
  181. package/esm5/lib/components/tc-confirm/tc-confirm.component.js +0 -42
  182. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +0 -22
  183. package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +0 -22
  184. package/esm5/lib/components/terms-and-conditions/terms-and-conditions.component.js +0 -29
  185. package/esm5/lib/components/user-details/user-details.component.js +0 -92
  186. package/esm5/lib/components/user-list/user-list.component.js +0 -76
  187. package/esm5/lib/components/user-select/user-select.component.js +0 -131
  188. package/esm5/lib/directives/feature-toggle/feature-toggle.directive.js +0 -104
  189. package/esm5/lib/directives/index.js +0 -7
  190. package/esm5/lib/directives/let/let.directive.js +0 -78
  191. package/esm5/lib/directives/public-api.js +0 -8
  192. package/esm5/lib/exui-common-lib.module.js +0 -178
  193. package/esm5/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +0 -56
  194. package/esm5/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +0 -36
  195. package/esm5/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +0 -135
  196. package/esm5/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +0 -37
  197. package/esm5/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -49
  198. package/esm5/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +0 -65
  199. package/esm5/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +0 -40
  200. package/esm5/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +0 -66
  201. package/esm5/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +0 -34
  202. package/esm5/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +0 -67
  203. package/esm5/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +0 -36
  204. package/esm5/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +0 -52
  205. package/esm5/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +0 -77
  206. package/esm5/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +0 -50
  207. package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +0 -38
  208. package/esm5/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +0 -108
  209. package/esm5/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +0 -40
  210. package/esm5/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +0 -87
  211. package/esm5/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +0 -51
  212. package/esm5/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +0 -49
  213. package/esm5/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +0 -46
  214. package/esm5/lib/gov-ui/components/index.js +0 -7
  215. package/esm5/lib/gov-ui/components/public_api.js +0 -7
  216. package/esm5/lib/gov-ui/directives/remove-host.directive.js +0 -52
  217. package/esm5/lib/gov-ui/gov-ui.service.js +0 -22
  218. package/esm5/lib/gov-ui/index.js +0 -7
  219. package/esm5/lib/gov-ui/models/banner-data-model.js +0 -16
  220. package/esm5/lib/gov-ui/models/checkboxes-model.js +0 -22
  221. package/esm5/lib/gov-ui/models/error-messages-model.js +0 -16
  222. package/esm5/lib/gov-ui/models/gov-ui-config-model.js +0 -36
  223. package/esm5/lib/gov-ui/models/index.js +0 -7
  224. package/esm5/lib/gov-ui/models/isession-storage.interface.js +0 -24
  225. package/esm5/lib/gov-ui/models/public_api.js +0 -13
  226. package/esm5/lib/gov-ui/public_api.js +0 -12
  227. package/esm5/lib/gov-ui/util/helpers/html-templates.helper.js +0 -57
  228. package/esm5/lib/gov-ui/util/session-storage/session-storage-utils.js +0 -58
  229. package/esm5/lib/gov-ui/validators/checkboxes-be-checked.validator.js +0 -38
  230. package/esm5/lib/gov-ui/validators/date.validator.js +0 -32
  231. package/esm5/lib/gov-ui/validators/index.js +0 -7
  232. package/esm5/lib/gov-ui/validators/public_api.js +0 -12
  233. package/esm5/lib/gov-ui/validators/radio-group.validator.js +0 -27
  234. package/esm5/lib/models/case-share.model.js +0 -26
  235. package/esm5/lib/models/contact-details.model.js +0 -31
  236. package/esm5/lib/models/due-date.model.js +0 -15
  237. package/esm5/lib/models/feature-user.js +0 -28
  238. package/esm5/lib/models/filter.model.js +0 -122
  239. package/esm5/lib/models/idle-config.model.js +0 -20
  240. package/esm5/lib/models/index.js +0 -19
  241. package/esm5/lib/models/location.model.js +0 -108
  242. package/esm5/lib/models/pagination.model.js +0 -18
  243. package/esm5/lib/models/person.model.js +0 -92
  244. package/esm5/lib/models/public_api.js +0 -11
  245. package/esm5/lib/models/search-options.model.js +0 -22
  246. package/esm5/lib/models/tcDocument.model.js +0 -18
  247. package/esm5/lib/models/timeout-notification.model.js +0 -18
  248. package/esm5/lib/models/user-details.model.js +0 -22
  249. package/esm5/lib/models/user.model.js +0 -25
  250. package/esm5/lib/services/case-sharing-state/case-sharing-state.service.js +0 -289
  251. package/esm5/lib/services/cookie/cookie.service.js +0 -136
  252. package/esm5/lib/services/feature-toggle/feature-toggle.guard.js +0 -89
  253. package/esm5/lib/services/feature-toggle/feature-toggle.service.js +0 -90
  254. package/esm5/lib/services/feature-toggle/launch-darkly.service.js +0 -187
  255. package/esm5/lib/services/filter/filter.service.js +0 -153
  256. package/esm5/lib/services/find-person/find-person.service.js +0 -238
  257. package/esm5/lib/services/google-analytics/google-analytics.service.js +0 -128
  258. package/esm5/lib/services/google-tag-manager/google-tag-manager.service.js +0 -135
  259. package/esm5/lib/services/index.js +0 -7
  260. package/esm5/lib/services/loading/loading.service.js +0 -109
  261. package/esm5/lib/services/locations/location.service.js +0 -82
  262. package/esm5/lib/services/manage-session/manage-session.services.js +0 -111
  263. package/esm5/lib/services/public-api.js +0 -25
  264. package/esm5/lib/services/role-guard/role.guard.js +0 -81
  265. package/esm5/lib/services/role-guard/role.service.js +0 -45
  266. package/esm5/lib/services/session-storage/session-storage.service.js +0 -96
  267. package/esm5/lib/services/timeout-notifications/timeout-notifications.service.js +0 -190
  268. package/esm5/lib/window.js +0 -13
  269. package/esm5/public-api.js +0 -16
  270. package/fesm5/hmcts-rpx-xui-common-lib.js +0 -9247
  271. package/fesm5/hmcts-rpx-xui-common-lib.js.map +0 -1
  272. package/lib/components/index.d.ts +0 -1
  273. package/lib/components/public_api.d.ts +0 -27
  274. package/lib/directives/index.d.ts +0 -1
  275. package/lib/directives/public-api.d.ts +0 -2
  276. package/lib/gov-ui/components/index.d.ts +0 -1
  277. package/lib/gov-ui/components/public_api.d.ts +0 -1
  278. package/lib/gov-ui/gov-ui.service.d.ts +0 -3
  279. package/lib/gov-ui/index.d.ts +0 -1
  280. package/lib/gov-ui/public_api.d.ts +0 -3
  281. package/lib/gov-ui/validators/checkboxes-be-checked.validator.d.ts +0 -2
  282. package/lib/gov-ui/validators/date.validator.d.ts +0 -2
  283. package/lib/gov-ui/validators/index.d.ts +0 -1
  284. package/lib/gov-ui/validators/public_api.d.ts +0 -3
  285. package/lib/gov-ui/validators/radio-group.validator.d.ts +0 -2
  286. package/lib/services/index.d.ts +0 -1
  287. package/lib/services/public-api.d.ts +0 -16
@@ -1,302 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/components/search-location/search-location.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';
7
- import { AbstractControl, FormBuilder, FormGroup } from '@angular/forms';
8
- import { debounceTime, filter, map, mergeMap, tap } from 'rxjs/operators';
9
- import { LocationService } from '../../services/locations/location.service';
10
- var SearchLocationComponent = /** @class */ (function () {
11
- function SearchLocationComponent(locationService, fb, cd) {
12
- this.locationService = locationService;
13
- this.fb = fb;
14
- this.cd = cd;
15
- this.disabled = null;
16
- this.singleMode = false;
17
- this.locationType = '';
18
- this.serviceIds = '';
19
- this.submitted = true;
20
- this.delay = 500;
21
- this.showAutocomplete = false;
22
- this.locations = [];
23
- this.locationSelected = new EventEmitter();
24
- this.locationInputChanged = new EventEmitter();
25
- this.searchLocationChanged = new EventEmitter();
26
- this.minSearchCharacters = 3;
27
- this.term = '';
28
- this.pSelectedLocations = [];
29
- this.pReset = true;
30
- this.form = this.fb.group({
31
- searchTerm: ['']
32
- });
33
- }
34
- Object.defineProperty(SearchLocationComponent.prototype, "reset", {
35
- get: /**
36
- * @return {?}
37
- */
38
- function () {
39
- return this.pReset;
40
- },
41
- set: /**
42
- * @param {?} value
43
- * @return {?}
44
- */
45
- function (value) {
46
- this.pReset = value;
47
- this.resetSearchTerm();
48
- },
49
- enumerable: true,
50
- configurable: true
51
- });
52
- Object.defineProperty(SearchLocationComponent.prototype, "selectedLocations", {
53
- get: /**
54
- * @return {?}
55
- */
56
- function () {
57
- return this.pSelectedLocations;
58
- },
59
- set: /**
60
- * @param {?} value
61
- * @return {?}
62
- */
63
- function (value) {
64
- this.pSelectedLocations = value;
65
- },
66
- enumerable: true,
67
- configurable: true
68
- });
69
- /**
70
- * @return {?}
71
- */
72
- SearchLocationComponent.prototype.ngOnInit = /**
73
- * @return {?}
74
- */
75
- function () {
76
- if (this.singleMode && this.selectedLocations.length > 0) {
77
- /** @type {?} */
78
- var location_1 = this.selectedLocations[0];
79
- this.form.controls.searchTerm.patchValue(location_1.site_name, { emitEvent: false, onlySelf: true });
80
- }
81
- this.search();
82
- };
83
- /**
84
- * @param {?} term
85
- * @return {?}
86
- */
87
- SearchLocationComponent.prototype.filter = /**
88
- * @param {?} term
89
- * @return {?}
90
- */
91
- function (term) {
92
- var _this = this;
93
- this.getLocations(term).pipe(map((/**
94
- * @param {?} locations
95
- * @return {?}
96
- */
97
- function (locations) { return _this.removeSelectedLocations(locations); })));
98
- };
99
- /**
100
- * @param {?} location
101
- * @return {?}
102
- */
103
- SearchLocationComponent.prototype.onSelectionChange = /**
104
- * @param {?} location
105
- * @return {?}
106
- */
107
- function (location) {
108
- this.form.controls.searchTerm.patchValue(location.site_name, { emitEvent: false, onlySelf: true });
109
- this.locationSelected.emit(location);
110
- };
111
- /**
112
- * @return {?}
113
- */
114
- SearchLocationComponent.prototype.search = /**
115
- * @return {?}
116
- */
117
- function () {
118
- var _this = this;
119
- this.form.controls.searchTerm.valueChanges
120
- .pipe(tap((/**
121
- * @param {?} term
122
- * @return {?}
123
- */
124
- function (term) { return _this.locationInputChanged.next(term); })), tap((/**
125
- * @return {?}
126
- */
127
- function () { return _this.locations = []; })), tap((/**
128
- * @param {?} term
129
- * @return {?}
130
- */
131
- function (term) { return _this.term = term; })), filter((/**
132
- * @param {?} term
133
- * @return {?}
134
- */
135
- function (term) { return !!term && term.length >= _this.minSearchCharacters; })), debounceTime(this.delay), mergeMap((/**
136
- * @param {?} value
137
- * @return {?}
138
- */
139
- function (value) { return _this.getLocations(value); })), map((/**
140
- * @param {?} locations
141
- * @return {?}
142
- */
143
- function (locations) { return _this.removeSelectedLocations(locations); }))).subscribe((/**
144
- * @param {?} locations
145
- * @return {?}
146
- */
147
- function (locations) {
148
- _this.locations = locations;
149
- _this.cd.markForCheck();
150
- if (locations.length === 1 && _this.term === locations[0].site_name && !_this.singleMode) {
151
- _this.locationSelected.emit(locations[0]);
152
- _this.showAutocomplete = false;
153
- return;
154
- }
155
- _this.showAutocomplete = true;
156
- }));
157
- };
158
- /**
159
- * @return {?}
160
- */
161
- SearchLocationComponent.prototype.onInput = /**
162
- * @return {?}
163
- */
164
- function () {
165
- this.searchLocationChanged.emit();
166
- };
167
- /**
168
- * @param {?} term
169
- * @return {?}
170
- */
171
- SearchLocationComponent.prototype.getLocations = /**
172
- * @param {?} term
173
- * @return {?}
174
- */
175
- function (term) {
176
- return this.locationService.getAllLocations(this.serviceIds, this.locationType, term);
177
- };
178
- /**
179
- * @return {?}
180
- */
181
- SearchLocationComponent.prototype.resetSearchTerm = /**
182
- * @return {?}
183
- */
184
- function () {
185
- this.form.controls.searchTerm.patchValue('', { emitEvent: false, onlySelf: true });
186
- };
187
- /**
188
- * @private
189
- * @param {?} locations
190
- * @return {?}
191
- */
192
- SearchLocationComponent.prototype.removeSelectedLocations = /**
193
- * @private
194
- * @param {?} locations
195
- * @return {?}
196
- */
197
- function (locations) {
198
- var _this = this;
199
- if (this.singleMode) {
200
- return locations;
201
- }
202
- return locations.filter((/**
203
- * @param {?} location
204
- * @return {?}
205
- */
206
- function (location) { return !_this.selectedLocations.map((/**
207
- * @param {?} selectedLocation
208
- * @return {?}
209
- */
210
- function (selectedLocation) { return selectedLocation.epimms_id; })).includes(location.epimms_id) && location.site_name; }));
211
- };
212
- SearchLocationComponent.decorators = [
213
- { type: Component, args: [{
214
- selector: 'exui-search-location',
215
- 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",
216
- 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:rgba(0,0,0,.256863) 0 2px 6px;left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline{position:relative}.autocomplete__option{border-bottom:solid #b1b4b6;border-width:1px 0;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}"]
217
- }] }
218
- ];
219
- /** @nocollapse */
220
- SearchLocationComponent.ctorParameters = function () { return [
221
- { type: LocationService },
222
- { type: FormBuilder },
223
- { type: ChangeDetectorRef }
224
- ]; };
225
- SearchLocationComponent.propDecorators = {
226
- control: [{ type: Input }],
227
- disabled: [{ type: Input }],
228
- singleMode: [{ type: Input }],
229
- locationType: [{ type: Input }],
230
- serviceIds: [{ type: Input }],
231
- submitted: [{ type: Input }],
232
- delay: [{ type: Input }],
233
- form: [{ type: Input }],
234
- showAutocomplete: [{ type: Input }],
235
- locations: [{ type: Input }],
236
- locationSelected: [{ type: Output }],
237
- locationInputChanged: [{ type: Output }],
238
- searchLocationChanged: [{ type: Output }],
239
- reset: [{ type: Input }],
240
- selectedLocations: [{ type: Input }]
241
- };
242
- return SearchLocationComponent;
243
- }());
244
- export { SearchLocationComponent };
245
- if (false) {
246
- /** @type {?} */
247
- SearchLocationComponent.prototype.control;
248
- /** @type {?} */
249
- SearchLocationComponent.prototype.disabled;
250
- /** @type {?} */
251
- SearchLocationComponent.prototype.singleMode;
252
- /** @type {?} */
253
- SearchLocationComponent.prototype.locationType;
254
- /** @type {?} */
255
- SearchLocationComponent.prototype.serviceIds;
256
- /** @type {?} */
257
- SearchLocationComponent.prototype.submitted;
258
- /** @type {?} */
259
- SearchLocationComponent.prototype.delay;
260
- /** @type {?} */
261
- SearchLocationComponent.prototype.form;
262
- /** @type {?} */
263
- SearchLocationComponent.prototype.showAutocomplete;
264
- /** @type {?} */
265
- SearchLocationComponent.prototype.locations;
266
- /** @type {?} */
267
- SearchLocationComponent.prototype.locationSelected;
268
- /** @type {?} */
269
- SearchLocationComponent.prototype.locationInputChanged;
270
- /** @type {?} */
271
- SearchLocationComponent.prototype.searchLocationChanged;
272
- /** @type {?} */
273
- SearchLocationComponent.prototype.minSearchCharacters;
274
- /** @type {?} */
275
- SearchLocationComponent.prototype.term;
276
- /**
277
- * @type {?}
278
- * @private
279
- */
280
- SearchLocationComponent.prototype.pSelectedLocations;
281
- /**
282
- * @type {?}
283
- * @private
284
- */
285
- SearchLocationComponent.prototype.pReset;
286
- /**
287
- * @type {?}
288
- * @private
289
- */
290
- SearchLocationComponent.prototype.locationService;
291
- /**
292
- * @type {?}
293
- * @private
294
- */
295
- SearchLocationComponent.prototype.fb;
296
- /**
297
- * @type {?}
298
- * @private
299
- */
300
- SearchLocationComponent.prototype.cd;
301
- }
302
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWxvY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9zZWFyY2gtbG9jYXRpb24vc2VhcmNoLWxvY2F0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFDLGVBQWUsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFDLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4RSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFFMUU7SUF3QkUsaUNBQTZCLGVBQWdDLEVBQW1CLEVBQWUsRUFBbUIsRUFBcUI7UUFBMUcsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQW1CLE9BQUUsR0FBRixFQUFFLENBQWE7UUFBbUIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFqQnZILGFBQVEsR0FBWSxJQUFJLENBQUM7UUFDekIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUMxQixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBQ3hCLGNBQVMsR0FBYSxJQUFJLENBQUM7UUFDM0IsVUFBSyxHQUFZLEdBQUcsQ0FBQztRQUVyQixxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMsY0FBUyxHQUE0QixFQUFFLENBQUM7UUFDdkMscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFDN0QseUJBQW9CLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFDeEUsMEJBQXFCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFDdEUsd0JBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLFNBQUksR0FBVyxFQUFFLENBQUM7UUFDakIsdUJBQWtCLEdBQVUsRUFBRSxDQUFDO1FBQy9CLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFHN0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUM7U0FDakIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHNCQUFXLDBDQUFLOzs7O1FBQWhCO1lBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3JCLENBQUM7Ozs7O1FBRUQsVUFDaUIsS0FBYztZQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsQ0FBQzs7O09BTkE7SUFRRCxzQkFBVyxzREFBaUI7Ozs7UUFBNUI7WUFDRSxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUNqQyxDQUFDOzs7OztRQUVELFVBQzZCLEtBQVk7WUFDdkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztRQUVsQyxDQUFDOzs7T0FOQTs7OztJQVFNLDBDQUFROzs7SUFBZjtRQUNFLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTs7Z0JBQ2xELFVBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsVUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7U0FDbEc7UUFDRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQzs7Ozs7SUFFTSx3Q0FBTTs7OztJQUFiLFVBQWMsSUFBWTtRQUExQixpQkFLQztRQUpDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUMxQixHQUFHOzs7O1FBQUMsVUFBQyxTQUFTLElBQUssT0FBQSxLQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLEVBQXZDLENBQXVDLEVBQ3pELENBQ0YsQ0FBQztJQUNKLENBQUM7Ozs7O0lBRU0sbURBQWlCOzs7O0lBQXhCLFVBQXlCLFFBQStCO1FBQ3RELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFDakcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxDQUFDOzs7O0lBRU0sd0NBQU07OztJQUFiO1FBQUEsaUJBb0JDO1FBbkJDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZO2FBQ3ZDLElBQUksQ0FDSCxHQUFHOzs7O1FBQUMsVUFBQyxJQUFJLElBQUssT0FBQSxLQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFwQyxDQUFvQyxFQUFDLEVBQ25ELEdBQUc7OztRQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsRUFBbkIsQ0FBbUIsRUFBQyxFQUM5QixHQUFHOzs7O1FBQUMsVUFBQyxJQUFJLElBQUssT0FBQSxLQUFJLENBQUMsSUFBSSxHQUFHLElBQUksRUFBaEIsQ0FBZ0IsRUFBQyxFQUMvQixNQUFNOzs7O1FBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksS0FBSSxDQUFDLG1CQUFtQixFQUFqRCxDQUFpRCxFQUFDLEVBQ2pFLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQ3hCLFFBQVE7Ozs7UUFBQyxVQUFBLEtBQUssSUFBSSxPQUFBLEtBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQXhCLENBQXdCLEVBQUMsRUFDM0MsR0FBRzs7OztRQUFDLFVBQUMsU0FBUyxJQUFLLE9BQUEsS0FBSSxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxFQUF2QyxDQUF1QyxFQUFDLENBQzVELENBQUMsU0FBUzs7OztRQUFDLFVBQUEsU0FBUztZQUNyQixLQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztZQUMzQixLQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZCLElBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksS0FBSSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSSxDQUFDLFVBQVUsRUFBRTtnQkFDdEYsS0FBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekMsS0FBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztnQkFDOUIsT0FBTzthQUNSO1lBQ0QsS0FBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztRQUMvQixDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7Ozs7SUFFTSx5Q0FBTzs7O0lBQWQ7UUFDRSxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEMsQ0FBQzs7Ozs7SUFFTSw4Q0FBWTs7OztJQUFuQixVQUFvQixJQUFZO1FBQzlCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hGLENBQUM7Ozs7SUFFTSxpREFBZTs7O0lBQXRCO1FBQ0UsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUUsRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO0lBQ25GLENBQUM7Ozs7OztJQUVPLHlEQUF1Qjs7Ozs7SUFBL0IsVUFBZ0MsU0FBa0M7UUFBbEUsaUJBT0M7UUFOQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxPQUFPLFNBQVMsQ0FBQyxNQUFNOzs7O1FBQ3JCLFVBQUEsUUFBUSxJQUFJLE9BQUEsQ0FBQyxLQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRzs7OztRQUFDLFVBQUEsZ0JBQWdCLElBQUksT0FBQSxnQkFBZ0IsQ0FBQyxTQUFTLEVBQTFCLENBQTBCLEVBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQTlILENBQThILEVBQzNJLENBQUM7SUFDSixDQUFDOztnQkEvR0YsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLGt2QkFBK0M7O2lCQUVoRDs7OztnQkFOTyxlQUFlO2dCQUpFLFdBQVc7Z0JBRDVCLGlCQUFpQjs7OzBCQWF0QixLQUFLOzJCQUNMLEtBQUs7NkJBQ0wsS0FBSzsrQkFDTCxLQUFLOzZCQUNMLEtBQUs7NEJBQ0wsS0FBSzt3QkFDTCxLQUFLO3VCQUNMLEtBQUs7bUNBQ0wsS0FBSzs0QkFDTCxLQUFLO21DQUNMLE1BQU07dUNBQ04sTUFBTTt3Q0FDTixNQUFNO3dCQWdCTixLQUFLO29DQVVMLEtBQUs7O0lBb0VSLDhCQUFDO0NBQUEsQUFoSEQsSUFnSEM7U0EzR1ksdUJBQXVCOzs7SUFDbEMsMENBQXlDOztJQUN6QywyQ0FBeUM7O0lBQ3pDLDZDQUE0Qzs7SUFDNUMsK0NBQTBDOztJQUMxQyw2Q0FBd0M7O0lBQ3hDLDRDQUEyQzs7SUFDM0Msd0NBQXFDOztJQUNyQyx1Q0FBZ0M7O0lBQ2hDLG1EQUFrRDs7SUFDbEQsNENBQXdEOztJQUN4RCxtREFBOEU7O0lBQzlFLHVEQUF5Rjs7SUFDekYsd0RBQXNGOztJQUN0RixzREFBd0M7O0lBQ3hDLHVDQUF5Qjs7Ozs7SUFDekIscURBQXVDOzs7OztJQUN2Qyx5Q0FBK0I7Ozs7O0lBRW5CLGtEQUFpRDs7Ozs7SUFBRSxxQ0FBZ0M7Ozs7O0lBQUUscUNBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtMb2NhdGlvbkJ5RVBJTU1TTW9kZWx9IGZyb20gJy4uLy4uL21vZGVscy9sb2NhdGlvbi5tb2RlbCc7XG5pbXBvcnQge0xvY2F0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9jYXRpb25zL2xvY2F0aW9uLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdleHVpLXNlYXJjaC1sb2NhdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2gtbG9jYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWFyY2gtbG9jYXRpb24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hMb2NhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBjb250cm9sOiBBYnN0cmFjdENvbnRyb2w7XG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbiA9IG51bGw7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaW5nbGVNb2RlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBsb2NhdGlvblR5cGU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgc2VydmljZUlkczogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJtaXR0ZWQ/OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgcHVibGljIGRlbGF5PzogbnVtYmVyID0gNTAwO1xuICBASW5wdXQoKSBwdWJsaWMgZm9ybTogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBwdWJsaWMgc2hvd0F1dG9jb21wbGV0ZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgbG9jYXRpb25zOiBMb2NhdGlvbkJ5RVBJTU1TTW9kZWxbXSA9IFtdO1xuICBAT3V0cHV0KCkgcHVibGljIGxvY2F0aW9uU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPExvY2F0aW9uQnlFUElNTVNNb2RlbD4oKTtcbiAgQE91dHB1dCgpIHB1YmxpYyBsb2NhdGlvbklucHV0Q2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHB1YmxpYyBzZWFyY2hMb2NhdGlvbkNoYW5nZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgcHVibGljIHJlYWRvbmx5IG1pblNlYXJjaENoYXJhY3RlcnMgPSAzO1xuICBwdWJsaWMgdGVybTogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgcFNlbGVjdGVkTG9jYXRpb25zOiBhbnlbXSA9IFtdO1xuICBwcml2YXRlIHBSZXNldDogYm9vbGVhbiA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblNlcnZpY2U6IExvY2F0aW9uU2VydmljZSwgcHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsIHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBzZWFyY2hUZXJtOiBbJyddXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc2V0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnBSZXNldDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcmVzZXQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnBSZXNldCA9IHZhbHVlO1xuICAgIHRoaXMucmVzZXRTZWFyY2hUZXJtKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkTG9jYXRpb25zKCk6IGFueVtdIHtcbiAgICByZXR1cm4gdGhpcy5wU2VsZWN0ZWRMb2NhdGlvbnM7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNlbGVjdGVkTG9jYXRpb25zKHZhbHVlOiBhbnlbXSkge1xuICAgIHRoaXMucFNlbGVjdGVkTG9jYXRpb25zID0gdmFsdWU7XG5cbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zaW5nbGVNb2RlICYmIHRoaXMuc2VsZWN0ZWRMb2NhdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgbG9jYXRpb24gPSB0aGlzLnNlbGVjdGVkTG9jYXRpb25zWzBdO1xuICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLnNlYXJjaFRlcm0ucGF0Y2hWYWx1ZShsb2NhdGlvbi5zaXRlX25hbWUsIHtlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZX0pO1xuICAgIH1cbiAgICB0aGlzLnNlYXJjaCgpO1xuICB9XG5cbiAgcHVibGljIGZpbHRlcih0ZXJtOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmdldExvY2F0aW9ucyh0ZXJtKS5waXBlKFxuICAgICAgbWFwKChsb2NhdGlvbnMpID0+IHRoaXMucmVtb3ZlU2VsZWN0ZWRMb2NhdGlvbnMobG9jYXRpb25zKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25TZWxlY3Rpb25DaGFuZ2UobG9jYXRpb246IExvY2F0aW9uQnlFUElNTVNNb2RlbCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybS5jb250cm9scy5zZWFyY2hUZXJtLnBhdGNoVmFsdWUobG9jYXRpb24uc2l0ZV9uYW1lLCB7ZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWV9KTtcbiAgICB0aGlzLmxvY2F0aW9uU2VsZWN0ZWQuZW1pdChsb2NhdGlvbik7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybS5jb250cm9scy5zZWFyY2hUZXJtLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgodGVybSkgPT4gdGhpcy5sb2NhdGlvbklucHV0Q2hhbmdlZC5uZXh0KHRlcm0pKSxcbiAgICAgICAgdGFwKCgpID0+IHRoaXMubG9jYXRpb25zID0gW10pLFxuICAgICAgICB0YXAoKHRlcm0pID0+IHRoaXMudGVybSA9IHRlcm0pLFxuICAgICAgICBmaWx0ZXIodGVybSA9PiAhIXRlcm0gJiYgdGVybS5sZW5ndGggPj0gdGhpcy5taW5TZWFyY2hDaGFyYWN0ZXJzKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKHRoaXMuZGVsYXkpLFxuICAgICAgICBtZXJnZU1hcCh2YWx1ZSA9PiB0aGlzLmdldExvY2F0aW9ucyh2YWx1ZSkpLFxuICAgICAgICBtYXAoKGxvY2F0aW9ucykgPT4gdGhpcy5yZW1vdmVTZWxlY3RlZExvY2F0aW9ucyhsb2NhdGlvbnMpKVxuICAgICAgKS5zdWJzY3JpYmUobG9jYXRpb25zID0+IHtcbiAgICAgIHRoaXMubG9jYXRpb25zID0gbG9jYXRpb25zO1xuICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIGlmIChsb2NhdGlvbnMubGVuZ3RoID09PSAxICYmIHRoaXMudGVybSA9PT0gbG9jYXRpb25zWzBdLnNpdGVfbmFtZSAmJiAhdGhpcy5zaW5nbGVNb2RlKSB7XG4gICAgICAgIHRoaXMubG9jYXRpb25TZWxlY3RlZC5lbWl0KGxvY2F0aW9uc1swXSk7XG4gICAgICAgIHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9IGZhbHNlO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLnNob3dBdXRvY29tcGxldGUgPSB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uSW5wdXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hMb2NhdGlvbkNoYW5nZWQuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIGdldExvY2F0aW9ucyh0ZXJtOiBzdHJpbmcpOiBPYnNlcnZhYmxlPExvY2F0aW9uQnlFUElNTVNNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMubG9jYXRpb25TZXJ2aWNlLmdldEFsbExvY2F0aW9ucyh0aGlzLnNlcnZpY2VJZHMsIHRoaXMubG9jYXRpb25UeXBlLCB0ZXJtKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldFNlYXJjaFRlcm0oKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtLmNvbnRyb2xzLnNlYXJjaFRlcm0ucGF0Y2hWYWx1ZSgnJywge2VtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlfSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZVNlbGVjdGVkTG9jYXRpb25zKGxvY2F0aW9uczogTG9jYXRpb25CeUVQSU1NU01vZGVsW10pOiBMb2NhdGlvbkJ5RVBJTU1TTW9kZWxbXSB7XG4gICAgaWYgKHRoaXMuc2luZ2xlTW9kZSkge1xuICAgICAgcmV0dXJuIGxvY2F0aW9ucztcbiAgICB9XG4gICAgcmV0dXJuIGxvY2F0aW9ucy5maWx0ZXIoXG4gICAgICBsb2NhdGlvbiA9PiAhdGhpcy5zZWxlY3RlZExvY2F0aW9ucy5tYXAoc2VsZWN0ZWRMb2NhdGlvbiA9PiBzZWxlY3RlZExvY2F0aW9uLmVwaW1tc19pZCkuaW5jbHVkZXMobG9jYXRpb24uZXBpbW1zX2lkKSAmJiBsb2NhdGlvbi5zaXRlX25hbWVcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -1,290 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: lib/components/search-venue/search-venue.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
7
- import { AbstractControl, FormArray, FormBuilder, FormControl } from '@angular/forms';
8
- import { Subject } from 'rxjs';
9
- import { debounceTime, mergeMap } from 'rxjs/operators';
10
- import { LocationService } from '../../services/locations/location.service';
11
- var SearchVenueComponent = /** @class */ (function () {
12
- function SearchVenueComponent(locationService, fb) {
13
- this.locationService = locationService;
14
- this.disabled = null;
15
- this.locationType = '';
16
- this.serviceIds = '';
17
- this.submitted = true;
18
- this.showAutocomplete = false;
19
- this.locationChanged = new EventEmitter();
20
- this.minSearchCharacters = 3;
21
- this.keyUpSubject$ = new Subject();
22
- this.readyAfterContent = false;
23
- this.searchInProgress = false;
24
- this.findLocationFormGroup = fb.group({
25
- findLocationFormControl: [null],
26
- locationSelectedFormControl: [null]
27
- });
28
- this.selectedLocations = [];
29
- }
30
- /**
31
- * @return {?}
32
- */
33
- SearchVenueComponent.prototype.ngAfterContentInit = /**
34
- * @return {?}
35
- */
36
- function () {
37
- this.readyAfterContent = true;
38
- };
39
- /**
40
- * @return {?}
41
- */
42
- SearchVenueComponent.prototype.ngOnInit = /**
43
- * @return {?}
44
- */
45
- function () {
46
- var _this = this;
47
- this.displayedLocations = [];
48
- if (this.control) {
49
- if (this.findLocationFormGroup && this.findLocationFormGroup.controls) {
50
- this.findLocationFormGroup.controls.locationSelectedFormControl = this.control;
51
- }
52
- }
53
- this.keyUpSubject$.pipe(debounceTime(500)).subscribe((/**
54
- * @param {?} searchValue
55
- * @return {?}
56
- */
57
- function (searchValue) { return _this.search((/** @type {?} */ (searchValue))); }));
58
- };
59
- /**
60
- * @return {?}
61
- */
62
- SearchVenueComponent.prototype.onKeyDown = /**
63
- * @return {?}
64
- */
65
- function () {
66
- this.locationChanged.emit();
67
- };
68
- /**
69
- * @param {?} event
70
- * @return {?}
71
- */
72
- SearchVenueComponent.prototype.onKeyUp = /**
73
- * @param {?} event
74
- * @return {?}
75
- */
76
- function (event) {
77
- this.showAutocomplete = false;
78
- this.keyUpSubject$.next(event.target.value);
79
- };
80
- /**
81
- * @return {?}
82
- */
83
- SearchVenueComponent.prototype.onFocus = /**
84
- * @return {?}
85
- */
86
- function () {
87
- this.showAutocomplete = false;
88
- };
89
- Object.defineProperty(SearchVenueComponent.prototype, "displayedLocationsDuplicationFiltered", {
90
- get: /**
91
- * @return {?}
92
- */
93
- function () {
94
- var _this = this;
95
- return this.displayedLocations.filter((/**
96
- * @param {?} location
97
- * @return {?}
98
- */
99
- function (location) { return !_this.selectedLocations.map((/**
100
- * @param {?} selectedLocation
101
- * @return {?}
102
- */
103
- function (selectedLocation) { return selectedLocation.epimms_id; })).includes(location.epimms_id) && location.court_name; }));
104
- },
105
- enumerable: true,
106
- configurable: true
107
- });
108
- /**
109
- * @param {?} term
110
- * @return {?}
111
- */
112
- SearchVenueComponent.prototype.filter = /**
113
- * @param {?} term
114
- * @return {?}
115
- */
116
- function (term) {
117
- var _this = this;
118
- this.searchLocations(term).pipe(mergeMap((/**
119
- * @param {?} apiData
120
- * @return {?}
121
- */
122
- function (apiData) {
123
- /** @type {?} */
124
- var apiFilter = apiData.filter((/**
125
- * @param {?} apiLocation
126
- * @return {?}
127
- */
128
- function (apiLocation) { return !_this.selectedLocations.map((/**
129
- * @param {?} selectedLocation
130
- * @return {?}
131
- */
132
- function (selectedLocation) { return selectedLocation.epimms_id; })).includes(apiLocation.epimms_id); }));
133
- _this.displayedLocations = apiFilter;
134
- _this.searchInProgress = false;
135
- return apiFilter;
136
- }))).subscribe((/**
137
- * @param {?} location
138
- * @return {?}
139
- */
140
- function (location) {
141
- if (term === location.court_name) {
142
- _this.findLocationFormGroup.controls.locationSelectedFormControl.setValue(location);
143
- _this.displayedLocations = [];
144
- _this.locationChanged.emit(location);
145
- _this.showAutocomplete = false;
146
- }
147
- _this.searchInProgress = false;
148
- }));
149
- };
150
- /**
151
- * @param {?=} selection
152
- * @return {?}
153
- */
154
- SearchVenueComponent.prototype.onSelectionChange = /**
155
- * @param {?=} selection
156
- * @return {?}
157
- */
158
- function (selection) {
159
- if (this.findLocationFormGroup.controls.findLocationFormControl instanceof FormArray) {
160
- ((/** @type {?} */ (this.findLocationFormGroup.controls.locationSelectedFormControl))).push(new FormControl(selection.epimms_id));
161
- }
162
- else {
163
- this.findLocationFormGroup.controls.locationSelectedFormControl.setValue(selection);
164
- }
165
- this.locationChanged.emit(selection);
166
- };
167
- /**
168
- * @param {?} currentValue
169
- * @return {?}
170
- */
171
- SearchVenueComponent.prototype.search = /**
172
- * @param {?} currentValue
173
- * @return {?}
174
- */
175
- function (currentValue) {
176
- this.searchInProgress = true;
177
- this.showAutocomplete = !!currentValue && (currentValue.length >= this.minSearchCharacters);
178
- if (!currentValue || !currentValue.length) {
179
- this.findLocationFormGroup.controls.locationSelectedFormControl.markAsPristine();
180
- this.findLocationFormGroup.controls.locationSelectedFormControl.reset();
181
- }
182
- if (this.showAutocomplete) {
183
- this.filter(currentValue);
184
- }
185
- else {
186
- this.searchInProgress = false;
187
- }
188
- };
189
- /**
190
- * @param {?} selectedLocation
191
- * @return {?}
192
- */
193
- SearchVenueComponent.prototype.getDisplayName = /**
194
- * @param {?} selectedLocation
195
- * @return {?}
196
- */
197
- function (selectedLocation) {
198
- return selectedLocation.court_name;
199
- };
200
- /**
201
- * @param {?} term
202
- * @return {?}
203
- */
204
- SearchVenueComponent.prototype.searchLocations = /**
205
- * @param {?} term
206
- * @return {?}
207
- */
208
- function (term) {
209
- return this.locationService.searchLocations(this.serviceIds, this.locationType, term);
210
- };
211
- /**
212
- * @return {?}
213
- */
214
- SearchVenueComponent.prototype.getControlCourtNameValue = /**
215
- * @return {?}
216
- */
217
- function () {
218
- return this.findLocationFormGroup && this.findLocationFormGroup.controls && this.findLocationFormGroup.controls.locationSelectedFormControl.value ?
219
- ((/** @type {?} */ (this.findLocationFormGroup.controls.locationSelectedFormControl.value))).court_name : '';
220
- };
221
- SearchVenueComponent.decorators = [
222
- { type: Component, args: [{
223
- selector: 'xuilib-search-venue',
224
- template: "<div class=\"auto-complete-container\">\n <div *ngIf=\"readyAfterContent\" class=\"autocomplete__wrapper\">\n <input\n [formControl]=\"findLocationFormGroup.controls.findLocationFormControl\"\n [matAutocomplete]=\"autoSearchLocation\"\n (keydown)=\"onKeyDown()\"\n (keyup)=\"onKeyUp($event)\"\n (focus)=\"onFocus()\"\n class=\"autocomplete__input autocomplete__input--default search-box\"\n [attr.disabled]=\"!disabled ? null: disabled\"\n [value]=\"getControlCourtNameValue()\"\n #inputSelectedLocation>\n <mat-autocomplete class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #autoSearchLocation=\"matAutocomplete\">\n <mat-option *ngFor=\"let location of displayedLocationsDuplicationFiltered\"\n [value]=\"getDisplayName(location)\"\n (onSelectionChange)=\"onSelectionChange(location)\"\n [ngClass]=\"{'hide-autocomplete': !showAutocomplete}\">\n {{ getDisplayName(location) }}\n </mat-option>\n <mat-option *ngIf=\"!displayedLocationsDuplicationFiltered?.length && showAutocomplete && !searchInProgress\">{{ 'No results found' }}</mat-option>\n </mat-autocomplete>\n </div>\n</div>\n",
225
- styles: [".autocomplete__input{-webkit-appearance:none;border:2px solid #0b0c0c;border-radius:0;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;margin-bottom:0;width:100%;background-color:transparent;position:relative}.autocomplete__hint{color:#b1b4b6;position:absolute}.autocomplete__input--default{padding:5px}.autocomplete__input--focused{outline:#fd0 solid 3px;outline-offset:0;box-shadow:inset 0 0 0 2px}.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:rgba(0,0,0,.256863) 0 2px 6px;left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline{position:relative}.autocomplete__option{border-bottom:solid #b1b4b6;border-width:1px 0;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}"]
226
- }] }
227
- ];
228
- /** @nocollapse */
229
- SearchVenueComponent.ctorParameters = function () { return [
230
- { type: LocationService },
231
- { type: FormBuilder }
232
- ]; };
233
- SearchVenueComponent.propDecorators = {
234
- control: [{ type: Input }],
235
- disabled: [{ type: Input }],
236
- locationType: [{ type: Input }],
237
- selectedLocations: [{ type: Input }],
238
- serviceIds: [{ type: Input }],
239
- submitted: [{ type: Input }],
240
- autoCompleteInputBox: [{ type: ViewChild, args: ['inputSelectedLocation', { read: ElementRef, static: false },] }],
241
- showAutocomplete: [{ type: Input }],
242
- displayedLocations: [{ type: Input }],
243
- locationChanged: [{ type: Output }]
244
- };
245
- return SearchVenueComponent;
246
- }());
247
- export { SearchVenueComponent };
248
- if (false) {
249
- /** @type {?} */
250
- SearchVenueComponent.prototype.control;
251
- /** @type {?} */
252
- SearchVenueComponent.prototype.disabled;
253
- /** @type {?} */
254
- SearchVenueComponent.prototype.locationType;
255
- /** @type {?} */
256
- SearchVenueComponent.prototype.selectedLocations;
257
- /** @type {?} */
258
- SearchVenueComponent.prototype.serviceIds;
259
- /** @type {?} */
260
- SearchVenueComponent.prototype.submitted;
261
- /** @type {?} */
262
- SearchVenueComponent.prototype.autoCompleteInputBox;
263
- /** @type {?} */
264
- SearchVenueComponent.prototype.findLocationFormGroup;
265
- /** @type {?} */
266
- SearchVenueComponent.prototype.showAutocomplete;
267
- /** @type {?} */
268
- SearchVenueComponent.prototype.displayedLocations;
269
- /** @type {?} */
270
- SearchVenueComponent.prototype.locationChanged;
271
- /** @type {?} */
272
- SearchVenueComponent.prototype.selectedLocation;
273
- /**
274
- * @type {?}
275
- * @private
276
- */
277
- SearchVenueComponent.prototype.minSearchCharacters;
278
- /** @type {?} */
279
- SearchVenueComponent.prototype.keyUpSubject$;
280
- /** @type {?} */
281
- SearchVenueComponent.prototype.readyAfterContent;
282
- /** @type {?} */
283
- SearchVenueComponent.prototype.searchInProgress;
284
- /**
285
- * @type {?}
286
- * @private
287
- */
288
- SearchVenueComponent.prototype.locationService;
289
- }
290
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXZlbnVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BobWN0cy9ycHgteHVpLWNvbW1vbi1saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9zZWFyY2gtdmVudWUvc2VhcmNoLXZlbnVlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBbUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFDLGVBQWUsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBQy9GLE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLFlBQVksRUFBRSxRQUFRLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFFMUU7SUF1QkUsOEJBQTZCLGVBQWdDLEVBQUUsRUFBZTtRQUFqRCxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFoQjdDLGFBQVEsR0FBWSxJQUFJLENBQUM7UUFDekIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFFMUIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixjQUFTLEdBQWEsSUFBSSxDQUFDO1FBRzNCLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUVqQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO1FBRTVELHdCQUFtQixHQUFHLENBQUMsQ0FBQztRQUNsQyxrQkFBYSxHQUFvQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQy9DLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUNuQyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFHdkMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFD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RUFBRTttQ0FFdEUsS0FBSztxQ0FDTCxLQUFLO2tDQUNMLE1BQU07O0lBd0dULDJCQUFDO0NBQUEsQUF4SEQsSUF3SEM7U0FuSFksb0JBQW9COzs7SUFDL0IsdUNBQXlDOztJQUN6Qyx3Q0FBeUM7O0lBQ3pDLDRDQUEwQzs7SUFDMUMsaURBQTJEOztJQUMzRCwwQ0FBd0M7O0lBQ3hDLHlDQUEyQzs7SUFDM0Msb0RBQW1JOztJQUNuSSxxREFBd0M7O0lBQ3hDLGdEQUFrRDs7SUFDbEQsa0RBQTREOztJQUM1RCwrQ0FBNkU7O0lBQzdFLGdEQUErQzs7Ozs7SUFDL0MsbURBQXlDOztJQUN6Qyw2Q0FBc0Q7O0lBQ3RELGlEQUEwQzs7SUFDMUMsZ0RBQXlDOzs7OztJQUU3QiwrQ0FBaUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBtZXJnZU1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtMb2NhdGlvbkJ5RVBJTU1TTW9kZWx9IGZyb20gJy4uLy4uL21vZGVscy9sb2NhdGlvbi5tb2RlbCc7XG5pbXBvcnQge0xvY2F0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9jYXRpb25zL2xvY2F0aW9uLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd4dWlsaWItc2VhcmNoLXZlbnVlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC12ZW51ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC12ZW51ZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaFZlbnVlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0IHtcbiAgQElucHV0KCkgcHVibGljIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIGxvY2F0aW9uVHlwZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RlZExvY2F0aW9uczogTG9jYXRpb25CeUVQSU1NU01vZGVsW107XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXJ2aWNlSWRzOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHN1Ym1pdHRlZD86IGJvb2xlYW4gPSB0cnVlO1xuICBAVmlld0NoaWxkKCdpbnB1dFNlbGVjdGVkTG9jYXRpb24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogZmFsc2UgfSkgcHVibGljIGF1dG9Db21wbGV0ZUlucHV0Qm94OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICBwdWJsaWMgZmluZExvY2F0aW9uRm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93QXV0b2NvbXBsZXRlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNwbGF5ZWRMb2NhdGlvbnM6IExvY2F0aW9uQnlFUElNTVNNb2RlbFtdO1xuICBAT3V0cHV0KCkgcHVibGljIGxvY2F0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8TG9jYXRpb25CeUVQSU1NU01vZGVsPigpO1xuICBwdWJsaWMgc2VsZWN0ZWRMb2NhdGlvbjogTG9jYXRpb25CeUVQSU1NU01vZGVsO1xuICBwcml2YXRlIHJlYWRvbmx5IG1pblNlYXJjaENoYXJhY3RlcnMgPSAzO1xuICBwdWJsaWMga2V5VXBTdWJqZWN0JDogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3QoKTtcbiAgcHVibGljIHJlYWR5QWZ0ZXJDb250ZW50OiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBzZWFyY2hJblByb2dyZXNzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblNlcnZpY2U6IExvY2F0aW9uU2VydmljZSwgZmI6IEZvcm1CdWlsZGVyKSB7XG4gICAgdGhpcy5maW5kTG9jYXRpb25Gb3JtR3JvdXAgPSBmYi5ncm91cCh7XG4gICAgICBmaW5kTG9jYXRpb25Gb3JtQ29udHJvbDogW251bGxdLFxuICAgICAgbG9jYXRpb25TZWxlY3RlZEZvcm1Db250cm9sOiBbbnVsbF1cbiAgICB9KTtcbiAgICB0aGlzLnNlbGVjdGVkTG9jYXRpb25zID0gW107XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVhZHlBZnRlckNvbnRlbnQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGlzcGxheWVkTG9jYXRpb25zID0gW107XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgaWYgKHRoaXMuZmluZExvY2F0aW9uRm9ybUdyb3VwICYmIHRoaXMuZmluZExvY2F0aW9uRm9ybUdyb3VwLmNvbnRyb2xzKSB7XG4gICAgICAgIHRoaXMuZmluZExvY2F0aW9uRm9ybUdyb3VwLmNvbnRyb2xzLmxvY2F0aW9uU2VsZWN0ZWRGb3JtQ29udHJvbCA9IHRoaXMuY29udHJvbDtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5rZXlVcFN1YmplY3QkLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpLnN1YnNjcmliZShzZWFyY2hWYWx1ZSA9PiB0aGlzLnNlYXJjaChzZWFyY2hWYWx1ZSBhcyBzdHJpbmcpKTtcbiAgfVxuXG4gIHB1YmxpYyBvbktleURvd24oKTogdm9pZCB7XG4gICAgdGhpcy5sb2NhdGlvbkNoYW5nZWQuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIG9uS2V5VXAoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9IGZhbHNlO1xuICAgIHRoaXMua2V5VXBTdWJqZWN0JC5uZXh0KGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgb25Gb2N1cygpIHtcbiAgICB0aGlzLnNob3dBdXRvY29tcGxldGUgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzcGxheWVkTG9jYXRpb25zRHVwbGljYXRpb25GaWx0ZXJlZCgpOiBMb2NhdGlvbkJ5RVBJTU1TTW9kZWxbXSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheWVkTG9jYXRpb25zLmZpbHRlcihcbiAgICAgIGxvY2F0aW9uID0+ICF0aGlzLnNlbGVjdGVkTG9jYXRpb25zLm1hcChzZWxlY3RlZExvY2F0aW9uID0+IHNlbGVjdGVkTG9jYXRpb24uZXBpbW1zX2lkKS5pbmNsdWRlcyhsb2NhdGlvbi5lcGltbXNfaWQpICYmIGxvY2F0aW9uLmNvdXJ0X25hbWVcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGZpbHRlcih0ZXJtOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaExvY2F0aW9ucyh0ZXJtKS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKGFwaURhdGE6IExvY2F0aW9uQnlFUElNTVNNb2RlbFtdKSA9PiB7XG4gICAgICAgIGNvbnN0IGFwaUZpbHRlciA9IGFwaURhdGEuZmlsdGVyKFxuICAgICAgICAgIGFwaUxvY2F0aW9uID0+ICF0aGlzLnNlbGVjdGVkTG9jYXRpb25zLm1hcChzZWxlY3RlZExvY2F0aW9uID0+IHNlbGVjdGVkTG9jYXRpb24uZXBpbW1zX2lkKS5pbmNsdWRlcyhhcGlMb2NhdGlvbi5lcGltbXNfaWQpXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuZGlzcGxheWVkTG9jYXRpb25zID0gYXBpRmlsdGVyO1xuICAgICAgICB0aGlzLnNlYXJjaEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgcmV0dXJuIGFwaUZpbHRlcjtcbiAgICAgIH0pXG4gICAgKS5zdWJzY3JpYmUobG9jYXRpb24gPT4ge1xuICAgICAgaWYgKHRlcm0gPT09IGxvY2F0aW9uLmNvdXJ0X25hbWUpIHtcbiAgICAgICAgdGhpcy5maW5kTG9jYXRpb25Gb3JtR3JvdXAuY29udHJvbHMubG9jYXRpb25TZWxlY3RlZEZvcm1Db250cm9sLnNldFZhbHVlKGxvY2F0aW9uKTtcbiAgICAgICAgdGhpcy5kaXNwbGF5ZWRMb2NhdGlvbnMgPSBbXTtcbiAgICAgICAgdGhpcy5sb2NhdGlvbkNoYW5nZWQuZW1pdChsb2NhdGlvbik7XG4gICAgICAgIHRoaXMuc2hvd0F1dG9jb21wbGV0ZSA9IGZhbHNlO1xuICAgICAgfVxuICAgICAgdGhpcy5zZWFyY2hJblByb2dyZXNzID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25TZWxlY3Rpb25DaGFuZ2Uoc2VsZWN0aW9uPzogTG9jYXRpb25CeUVQSU1NU01vZGVsKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZmluZExvY2F0aW9uRm9ybUdyb3VwLmNvbnRyb2xzLmZpbmRMb2NhdGlvbkZvcm1Db250cm9sIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAodGhpcy5maW5kTG9jYXRpb25Gb3JtR3JvdXAuY29udHJvbHMubG9jYXRpb25TZWxlY3RlZEZvcm1Db250cm9sIGFzIEZvcm1BcnJheSkucHVzaChuZXcgRm9ybUNvbnRyb2woc2VsZWN0aW9uLmVwaW1tc19pZCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZpbmRMb2NhdGlvbkZvcm1Hcm91cC5jb250cm9scy5sb2NhdGlvblNlbGVjdGVkRm9ybUNvbnRyb2wuc2V0VmFsdWUoc2VsZWN0aW9uKTtcbiAgICB9XG4gICAgdGhpcy5sb2NhdGlvbkNoYW5nZWQuZW1pdChzZWxlY3Rpb24pO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaChjdXJyZW50VmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoSW5Qcm9ncmVzcyA9IHRydWU7XG4gICAgdGhpcy5zaG93QXV0b2NvbXBsZXRlID0gISFjdXJyZW50VmFsdWUgJiYgKGN1cnJlbnRWYWx1ZS5sZW5ndGggPj0gdGhpcy5taW5TZWFyY2hDaGFyYWN0ZXJzKTtcbiAgICBpZiAoIWN1cnJlbnRWYWx1ZSB8fCAhY3VycmVudFZhbHVlLmxlbmd0aCkge1xuICAgICAgdGhpcy5maW5kTG9jYXRpb25Gb3JtR3JvdXAuY29udHJvbHMubG9jYXRpb25TZWxlY3RlZEZvcm1Db250cm9sLm1hcmtBc1ByaXN0aW5lKCk7XG4gICAgICB0aGlzLmZpbmRMb2NhdGlvbkZvcm1Hcm91cC5jb250cm9scy5sb2NhdGlvblNlbGVjdGVkRm9ybUNvbnRyb2wucmVzZXQoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuc2hvd0F1dG9jb21wbGV0ZSkge1xuICAgICAgdGhpcy5maWx0ZXIoY3VycmVudFZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWFyY2hJblByb2dyZXNzID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldERpc3BsYXlOYW1lKHNlbGVjdGVkTG9jYXRpb246IExvY2F0aW9uQnlFUElNTVNNb2RlbCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHNlbGVjdGVkTG9jYXRpb24uY291cnRfbmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hMb2NhdGlvbnModGVybTogc3RyaW5nKTogT2JzZXJ2YWJsZTxMb2NhdGlvbkJ5RVBJTU1TTW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmxvY2F0aW9uU2VydmljZS5zZWFyY2hMb2NhdGlvbnModGhpcy5zZXJ2aWNlSWRzLCB0aGlzLmxvY2F0aW9uVHlwZSwgdGVybSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q29udHJvbENvdXJ0TmFtZVZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZmluZExvY2F0aW9uRm9ybUdyb3VwICYmIHRoaXMuZmluZExvY2F0aW9uRm9ybUdyb3VwLmNvbnRyb2xzICYmIHRoaXMuZmluZExvY2F0aW9uRm9ybUdyb3VwLmNvbnRyb2xzLmxvY2F0aW9uU2VsZWN0ZWRGb3JtQ29udHJvbC52YWx1ZSA/XG4gICAgICAodGhpcy5maW5kTG9jYXRpb25Gb3JtR3JvdXAuY29udHJvbHMubG9jYXRpb25TZWxlY3RlZEZvcm1Db250cm9sLnZhbHVlIGFzIExvY2F0aW9uQnlFUElNTVNNb2RlbCkuY291cnRfbmFtZSA6ICcnO1xuICB9XG59XG4iXX0=