@alfresco/adf-core 7.0.0-alpha.8-13285740895 → 7.0.0-alpha.8-15717586720

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 (397) hide show
  1. package/esm2022/api/lib/adf-http-client.service.mjs +5 -5
  2. package/esm2022/api/lib/alfresco-api/alfresco-api.param-encoder.mjs +1 -1
  3. package/esm2022/api/lib/alfresco-api/alfresco-api.response-error.mjs +1 -1
  4. package/esm2022/api/lib/alfresco-api/alfresco-api.utils.mjs +2 -2
  5. package/esm2022/api/lib/types.mjs +2 -1
  6. package/esm2022/auth/authentication-interceptor/authentication.interceptor.mjs +7 -6
  7. package/esm2022/breadcrumbs/components/breadcrumb/breadcrumb.component.mjs +6 -6
  8. package/esm2022/breadcrumbs/components/breadcrumb-item/breadcrumb-item.component.mjs +6 -6
  9. package/esm2022/breadcrumbs/directives/breadcrumb-focus.directive.mjs +5 -5
  10. package/esm2022/feature-flags/lib/components/feature-flags-wrapper.mjs +3 -3
  11. package/esm2022/feature-flags/lib/components/feature-override-indicator.component.mjs +6 -6
  12. package/esm2022/feature-flags/lib/components/flags/flags.component.mjs +6 -6
  13. package/esm2022/feature-flags/lib/directives/features.directive.mjs +6 -6
  14. package/esm2022/feature-flags/lib/directives/not-features.directive.mjs +6 -6
  15. package/esm2022/feature-flags/lib/guards/is-feature-off.guard.mjs +6 -6
  16. package/esm2022/feature-flags/lib/guards/is-feature-on.guard.mjs +6 -6
  17. package/esm2022/feature-flags/lib/guards/is-flags-override-on.guard.mjs +6 -6
  18. package/esm2022/feature-flags/lib/mocks/features-service-mock.factory.mjs +1 -1
  19. package/esm2022/feature-flags/lib/services/debug-features.service.mjs +5 -5
  20. package/esm2022/feature-flags/lib/services/dummy-features.service.mjs +3 -3
  21. package/esm2022/feature-flags/lib/services/qa-features.helper.mjs +5 -5
  22. package/esm2022/feature-flags/lib/services/storage-features.service.mjs +6 -6
  23. package/esm2022/lib/about/about-extension-list/about-extension-list.component.mjs +3 -3
  24. package/esm2022/lib/about/about-license-list/about-license-list.component.mjs +3 -3
  25. package/esm2022/lib/about/about-module-list/module-list.component.mjs +3 -3
  26. package/esm2022/lib/about/about-package/package-list.component.mjs +4 -4
  27. package/esm2022/lib/about/about-panel.directive.mjs +3 -3
  28. package/esm2022/lib/about/about-repository-info/about-repository-info.component.mjs +4 -4
  29. package/esm2022/lib/about/about-server-settings/about-server-settings.component.mjs +4 -4
  30. package/esm2022/lib/about/about-status-list/about-status-list.component.mjs +3 -3
  31. package/esm2022/lib/about/about.component.mjs +3 -3
  32. package/esm2022/lib/about/about.module.mjs +4 -4
  33. package/esm2022/lib/app-config/app-config-storage-prefix.factory.mjs +9 -7
  34. package/esm2022/lib/app-config/app-config.loader.mjs +2 -1
  35. package/esm2022/lib/app-config/app-config.module.mjs +4 -4
  36. package/esm2022/lib/app-config/app-config.pipe.mjs +4 -4
  37. package/esm2022/lib/app-config/app-config.service.mjs +5 -5
  38. package/esm2022/lib/app-config/debug-app-config.service.mjs +5 -5
  39. package/esm2022/lib/auth/authentication-interceptor/auth-bearer.interceptor.mjs +11 -8
  40. package/esm2022/lib/auth/basic-auth/basic-alfresco-auth.service.mjs +5 -5
  41. package/esm2022/lib/auth/basic-auth/content-auth.mjs +6 -6
  42. package/esm2022/lib/auth/basic-auth/process-auth.mjs +6 -7
  43. package/esm2022/lib/auth/guard/auth-guard-bpm.service.mjs +1 -1
  44. package/esm2022/lib/auth/guard/auth-guard-ecm.service.mjs +1 -1
  45. package/esm2022/lib/auth/guard/auth-guard-sso-role.service.mjs +2 -2
  46. package/esm2022/lib/auth/guard/auth-guard.mjs +1 -1
  47. package/esm2022/lib/auth/guard/auth-guard.service.mjs +5 -5
  48. package/esm2022/lib/auth/models/identity-role.model.mjs +1 -1
  49. package/esm2022/lib/auth/models/redirection.model.mjs +1 -1
  50. package/esm2022/lib/auth/oidc/auth-config.service.mjs +6 -6
  51. package/esm2022/lib/auth/oidc/auth-routing.module.mjs +4 -4
  52. package/esm2022/lib/auth/oidc/auth.module.mjs +4 -4
  53. package/esm2022/lib/auth/oidc/oidc-auth.guard.mjs +1 -1
  54. package/esm2022/lib/auth/oidc/oidc-authentication.service.mjs +5 -5
  55. package/esm2022/lib/auth/oidc/redirect-auth.service.mjs +6 -6
  56. package/esm2022/lib/auth/oidc/retry-login.service.mjs +4 -4
  57. package/esm2022/lib/auth/oidc/token.interceptor.mjs +4 -4
  58. package/esm2022/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.component.mjs +5 -5
  59. package/esm2022/lib/auth/services/authentication.service.mjs +5 -5
  60. package/esm2022/lib/auth/services/base-authentication.service.mjs +1 -1
  61. package/esm2022/lib/auth/services/identity-group.service.mjs +6 -6
  62. package/esm2022/lib/auth/services/identity-role.service.mjs +5 -5
  63. package/esm2022/lib/auth/services/identity-user.service.mjs +8 -6
  64. package/esm2022/lib/auth/services/jwt-helper.service.mjs +4 -4
  65. package/esm2022/lib/auth/services/oauth2.service.mjs +5 -5
  66. package/esm2022/lib/auth/services/time-sync.service.mjs +8 -8
  67. package/esm2022/lib/auth/services/user-access.service.mjs +7 -9
  68. package/esm2022/lib/avatar/avatar.component.mjs +3 -3
  69. package/esm2022/lib/blank-page/blank-page.component.mjs +3 -3
  70. package/esm2022/lib/blank-page/blank-page.module.mjs +4 -4
  71. package/esm2022/lib/button/button.component.mjs +5 -5
  72. package/esm2022/lib/card-view/card-view.module.mjs +4 -4
  73. package/esm2022/lib/card-view/components/base-card-view.mjs +5 -5
  74. package/esm2022/lib/card-view/components/card-view/card-view.component.mjs +3 -3
  75. package/esm2022/lib/card-view/components/card-view-arrayitem/card-view-arrayitem.component.mjs +4 -4
  76. package/esm2022/lib/card-view/components/card-view-boolitem/card-view-boolitem.component.mjs +4 -4
  77. package/esm2022/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.mjs +6 -6
  78. package/esm2022/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.mjs +6 -6
  79. package/esm2022/lib/card-view/components/card-view-keyvaluepairsitem/card-view-keyvaluepairsitem.component.mjs +4 -4
  80. package/esm2022/lib/card-view/components/card-view-mapitem/card-view-mapitem.component.mjs +3 -3
  81. package/esm2022/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.mjs +4 -4
  82. package/esm2022/lib/card-view/components/card-view-selectitem/select-filter-input/select-filter-input.component.mjs +6 -6
  83. package/esm2022/lib/card-view/components/card-view-textitem/card-view-textitem.component.mjs +6 -6
  84. package/esm2022/lib/card-view/models/card-view-arrayitem.model.mjs +1 -1
  85. package/esm2022/lib/card-view/models/card-view-baseitem.model.mjs +1 -1
  86. package/esm2022/lib/card-view/models/card-view-boolitem.model.mjs +1 -1
  87. package/esm2022/lib/card-view/models/card-view-dateitem.model.mjs +1 -1
  88. package/esm2022/lib/card-view/models/card-view-datetimeitem.model.mjs +1 -1
  89. package/esm2022/lib/card-view/models/card-view-floatitem.model.mjs +1 -1
  90. package/esm2022/lib/card-view/models/card-view-intitem.model.mjs +1 -1
  91. package/esm2022/lib/card-view/models/card-view-longitem.model.mjs +1 -1
  92. package/esm2022/lib/card-view/models/card-view-mapitem.model.mjs +1 -1
  93. package/esm2022/lib/card-view/models/card-view-textitem.model.mjs +1 -1
  94. package/esm2022/lib/card-view/services/card-item-types.service.mjs +3 -3
  95. package/esm2022/lib/card-view/services/card-view-update.service.mjs +3 -3
  96. package/esm2022/lib/card-view/validators/card-view-item-float.validator.mjs +1 -1
  97. package/esm2022/lib/card-view/validators/card-view-item-int.validator.mjs +2 -2
  98. package/esm2022/lib/card-view/validators/card-view-item-length.validator.mjs +1 -1
  99. package/esm2022/lib/card-view/validators/card-view-item-long.validator.mjs +1 -1
  100. package/esm2022/lib/card-view/validators/card-view-item-match.validator.mjs +1 -1
  101. package/esm2022/lib/card-view/validators/card-view-item-minmax.validator.mjs +1 -1
  102. package/esm2022/lib/card-view/validators/card-view-item-only-positive-int.validator.mjs +4 -2
  103. package/esm2022/lib/card-view/validators/card-view-item-only-positive-long.validator.mjs +1 -1
  104. package/esm2022/lib/clipboard/clipboard.directive.mjs +8 -8
  105. package/esm2022/lib/clipboard/clipboard.module.mjs +4 -4
  106. package/esm2022/lib/clipboard/clipboard.service.mjs +6 -6
  107. package/esm2022/lib/comments/comment-list/comment-list.component.mjs +3 -3
  108. package/esm2022/lib/comments/comment-list/comment-list.module.mjs +4 -4
  109. package/esm2022/lib/comments/comments.component.mjs +4 -4
  110. package/esm2022/lib/comments/comments.module.mjs +4 -4
  111. package/esm2022/lib/common/mock/app-config.service.mock.mjs +4 -4
  112. package/esm2022/lib/common/models/log-levels.model.mjs +1 -1
  113. package/esm2022/lib/common/services/cookie.service.mjs +11 -8
  114. package/esm2022/lib/common/services/download.service.mjs +7 -6
  115. package/esm2022/lib/common/services/dynamic-component-mapper.service.mjs +1 -1
  116. package/esm2022/lib/common/services/highlight-transform.service.mjs +5 -8
  117. package/esm2022/lib/common/services/log.service.mjs +5 -5
  118. package/esm2022/lib/common/services/page-title.service.mjs +5 -5
  119. package/esm2022/lib/common/services/sort-by-category.service.mjs +4 -4
  120. package/esm2022/lib/common/services/storage.service.mjs +5 -5
  121. package/esm2022/lib/common/services/thumbnail.service.mjs +6 -6
  122. package/esm2022/lib/common/services/url.service.mjs +5 -5
  123. package/esm2022/lib/common/services/user-preferences.service.mjs +5 -5
  124. package/esm2022/lib/common/utils/date-fns-adapter.mjs +6 -6
  125. package/esm2022/lib/common/utils/date-fns-utils.mjs +1 -1
  126. package/esm2022/lib/common/utils/datetime-fns-adapter.mjs +16 -16
  127. package/esm2022/lib/common/utils/file-utils.mjs +1 -1
  128. package/esm2022/lib/common/utils/moment-date-adapter.mjs +5 -5
  129. package/esm2022/lib/common/utils/moment-date-formats.model.mjs +1 -1
  130. package/esm2022/lib/common/utils/object-utils.mjs +9 -8
  131. package/esm2022/lib/common/utils/string-utils.mjs +2 -2
  132. package/esm2022/lib/context-menu/animations.mjs +1 -1
  133. package/esm2022/lib/context-menu/context-menu-list.component.mjs +6 -6
  134. package/esm2022/lib/context-menu/context-menu-overlay.mjs +1 -1
  135. package/esm2022/lib/context-menu/context-menu-overlay.service.mjs +9 -10
  136. package/esm2022/lib/context-menu/context-menu.directive.mjs +5 -5
  137. package/esm2022/lib/context-menu/context-menu.module.mjs +4 -4
  138. package/esm2022/lib/core.module.mjs +5 -5
  139. package/esm2022/lib/datatable/components/amount-cell/amount-cell.component.mjs +3 -3
  140. package/esm2022/lib/datatable/components/boolean-cell/boolean-cell.component.mjs +4 -4
  141. package/esm2022/lib/datatable/components/columns-selector/columns-search-filter.pipe.mjs +4 -4
  142. package/esm2022/lib/datatable/components/columns-selector/columns-selector.component.mjs +4 -4
  143. package/esm2022/lib/datatable/components/data-cell.event.mjs +1 -1
  144. package/esm2022/lib/datatable/components/data-row-action.event.mjs +1 -1
  145. package/esm2022/lib/datatable/components/datatable/datatable.component.mjs +6 -6
  146. package/esm2022/lib/datatable/components/datatable-cell/datatable-cell.component.mjs +4 -4
  147. package/esm2022/lib/datatable/components/datatable-row/datatable-row.component.mjs +6 -6
  148. package/esm2022/lib/datatable/components/date-cell/date-cell.component.mjs +4 -4
  149. package/esm2022/lib/datatable/components/empty-list/empty-list.component.mjs +14 -14
  150. package/esm2022/lib/datatable/components/filesize-cell/filesize-cell.component.mjs +3 -3
  151. package/esm2022/lib/datatable/components/icon-cell/icon-cell.component.mjs +5 -5
  152. package/esm2022/lib/datatable/components/json-cell/json-cell.component.mjs +6 -6
  153. package/esm2022/lib/datatable/components/location-cell/location-cell.component.mjs +5 -5
  154. package/esm2022/lib/datatable/components/mocks/datatable.mock.mjs +2 -2
  155. package/esm2022/lib/datatable/components/number-cell/number-cell.component.mjs +4 -4
  156. package/esm2022/lib/datatable/data/data-row-event.model.mjs +1 -1
  157. package/esm2022/lib/datatable/data/data-sorting.model.mjs +1 -1
  158. package/esm2022/lib/datatable/data/data-table.schema.mjs +5 -5
  159. package/esm2022/lib/datatable/data/object-datarow.model.mjs +1 -1
  160. package/esm2022/lib/datatable/data/object-datatable-adapter.mjs +1 -1
  161. package/esm2022/lib/datatable/data-column/data-column-header.component.mjs +5 -5
  162. package/esm2022/lib/datatable/data-column/data-column-list.component.mjs +3 -3
  163. package/esm2022/lib/datatable/data-column/data-column.component.mjs +4 -4
  164. package/esm2022/lib/datatable/datatable.module.mjs +4 -4
  165. package/esm2022/lib/datatable/directives/custom-empty-content-template.directive.mjs +3 -3
  166. package/esm2022/lib/datatable/directives/custom-loading-template.directive.mjs +3 -3
  167. package/esm2022/lib/datatable/directives/custom-no-permission-template.directive.mjs +3 -3
  168. package/esm2022/lib/datatable/directives/drop-zone.directive.mjs +5 -5
  169. package/esm2022/lib/datatable/directives/header-filter-template.directive.mjs +5 -5
  170. package/esm2022/lib/datatable/directives/loading-template.directive.mjs +5 -5
  171. package/esm2022/lib/datatable/directives/main-data-table-action-template.directive.mjs +5 -5
  172. package/esm2022/lib/datatable/directives/no-content-template.directive.mjs +5 -5
  173. package/esm2022/lib/datatable/directives/no-permission-template.directive.mjs +5 -5
  174. package/esm2022/lib/datatable/directives/resizable/resizable.directive.mjs +5 -5
  175. package/esm2022/lib/datatable/directives/resizable/resize-handle.directive.mjs +5 -5
  176. package/esm2022/lib/datatable/services/datatable.service.mjs +3 -3
  177. package/esm2022/lib/dialogs/confirm-dialog/confirm.dialog.mjs +5 -5
  178. package/esm2022/lib/dialogs/confirm-dialog/confirm.dialog.module.mjs +4 -4
  179. package/esm2022/lib/dialogs/dialog/dialog.component.mjs +6 -6
  180. package/esm2022/lib/dialogs/edit-json/edit-json.dialog.mjs +6 -6
  181. package/esm2022/lib/dialogs/edit-json/edit-json.dialog.module.mjs +23 -6
  182. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +6 -6
  183. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +4 -4
  184. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes.guard.mjs +5 -5
  185. package/esm2022/lib/directives/directive.module.mjs +4 -4
  186. package/esm2022/lib/directives/highlight.directive.mjs +5 -5
  187. package/esm2022/lib/directives/infinite-select-scroll.directive.mjs +6 -6
  188. package/esm2022/lib/directives/logout.directive.mjs +5 -5
  189. package/esm2022/lib/directives/tooltip-card/tooltip-card.component.mjs +5 -5
  190. package/esm2022/lib/directives/tooltip-card/tooltip-card.directive.mjs +5 -5
  191. package/esm2022/lib/directives/upload.directive.mjs +5 -5
  192. package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.component.mjs +5 -5
  193. package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.module.mjs +4 -4
  194. package/esm2022/lib/events/base.event.mjs +1 -1
  195. package/esm2022/lib/form/components/form-base.component.mjs +4 -4
  196. package/esm2022/lib/form/components/form-custom-button.directive.mjs +3 -3
  197. package/esm2022/lib/form/components/form-field/form-field.component.mjs +5 -5
  198. package/esm2022/lib/form/components/form-renderer.component.mjs +16 -16
  199. package/esm2022/lib/form/components/inplace-form-input/inplace-form-input.component.mjs +5 -5
  200. package/esm2022/lib/form/components/middlewares/decimal-middleware.service.mjs +4 -4
  201. package/esm2022/lib/form/components/widgets/amount/amount.widget.mjs +6 -6
  202. package/esm2022/lib/form/components/widgets/base-viewer/base-viewer.widget.mjs +5 -5
  203. package/esm2022/lib/form/components/widgets/checkbox/checkbox.widget.mjs +5 -5
  204. package/esm2022/lib/form/components/widgets/core/container-column.model.mjs +3 -2
  205. package/esm2022/lib/form/components/widgets/core/container.model.mjs +1 -1
  206. package/esm2022/lib/form/components/widgets/core/error-message.model.mjs +1 -1
  207. package/esm2022/lib/form/components/widgets/core/form-field-utils.mjs +1 -1
  208. package/esm2022/lib/form/components/widgets/core/form-field-validator.mjs +1 -1
  209. package/esm2022/lib/form/components/widgets/core/form-field.model.mjs +27 -24
  210. package/esm2022/lib/form/components/widgets/core/form-outcome-event.model.mjs +1 -1
  211. package/esm2022/lib/form/components/widgets/core/form-outcome.model.mjs +1 -1
  212. package/esm2022/lib/form/components/widgets/core/form-widget.model.mjs +1 -1
  213. package/esm2022/lib/form/components/widgets/core/form.model.mjs +18 -48
  214. package/esm2022/lib/form/components/widgets/core/tab.model.mjs +1 -1
  215. package/esm2022/lib/form/components/widgets/date/date.widget.mjs +4 -4
  216. package/esm2022/lib/form/components/widgets/date-time/date-time.widget.mjs +4 -4
  217. package/esm2022/lib/form/components/widgets/decimal/decimal.component.mjs +4 -4
  218. package/esm2022/lib/form/components/widgets/display-text/display-text.widget.mjs +6 -6
  219. package/esm2022/lib/form/components/widgets/error/error.component.mjs +5 -5
  220. package/esm2022/lib/form/components/widgets/header/header.widget.mjs +4 -4
  221. package/esm2022/lib/form/components/widgets/hyperlink/hyperlink.widget.mjs +5 -5
  222. package/esm2022/lib/form/components/widgets/json/json.widget.mjs +4 -4
  223. package/esm2022/lib/form/components/widgets/multiline-text/multiline-text.widget.mjs +4 -4
  224. package/esm2022/lib/form/components/widgets/number/number.widget.mjs +5 -5
  225. package/esm2022/lib/form/components/widgets/text/text-mask.component.mjs +7 -7
  226. package/esm2022/lib/form/components/widgets/text/text.widget.mjs +5 -5
  227. package/esm2022/lib/form/components/widgets/unknown/unknown.widget.mjs +4 -4
  228. package/esm2022/lib/form/components/widgets/widget.component.mjs +5 -5
  229. package/esm2022/lib/form/events/form-error.event.mjs +1 -1
  230. package/esm2022/lib/form/events/form-field.event.mjs +1 -1
  231. package/esm2022/lib/form/events/form-rules.event.mjs +1 -1
  232. package/esm2022/lib/form/events/form.event.mjs +1 -1
  233. package/esm2022/lib/form/events/validate-form-field.event.mjs +1 -1
  234. package/esm2022/lib/form/events/validate-form.event.mjs +1 -1
  235. package/esm2022/lib/form/form-base.module.mjs +4 -4
  236. package/esm2022/lib/form/models/form-rules.model.mjs +1 -1
  237. package/esm2022/lib/form/models/widget-visibility.model.mjs +1 -1
  238. package/esm2022/lib/form/pipes/field-style.pipe.mjs +4 -4
  239. package/esm2022/lib/form/services/form-rendering.service.mjs +4 -4
  240. package/esm2022/lib/form/services/form.service.mjs +5 -5
  241. package/esm2022/lib/form/services/widget-visibility.service.mjs +4 -4
  242. package/esm2022/lib/header/header.component.mjs +5 -5
  243. package/esm2022/lib/header/navbar/navbar-item.component.mjs +4 -4
  244. package/esm2022/lib/header/navbar/navbar.component.mjs +5 -5
  245. package/esm2022/lib/icon/icon.component.mjs +3 -3
  246. package/esm2022/lib/icon/icon.module.mjs +4 -4
  247. package/esm2022/lib/identity-user-info/identity-user-info.component.mjs +4 -4
  248. package/esm2022/lib/identity-user-info/identity-user-info.module.mjs +4 -4
  249. package/esm2022/lib/info-drawer/info-drawer-layout.component.mjs +14 -14
  250. package/esm2022/lib/info-drawer/info-drawer.component.mjs +9 -9
  251. package/esm2022/lib/info-drawer/info-drawer.module.mjs +4 -4
  252. package/esm2022/lib/language-menu/language-menu.component.mjs +6 -6
  253. package/esm2022/lib/language-menu/language-menu.module.mjs +4 -4
  254. package/esm2022/lib/language-menu/language-picker.component.mjs +5 -5
  255. package/esm2022/lib/language-menu/service/language.service.mjs +5 -5
  256. package/esm2022/lib/layout/components/header/header.component.mjs +6 -6
  257. package/esm2022/lib/layout/components/layout-container/layout-container.component.mjs +6 -6
  258. package/esm2022/lib/layout/components/sidebar-action/sidebar-action-menu.component.mjs +14 -14
  259. package/esm2022/lib/layout/components/sidenav-layout/sidenav-layout.component.mjs +6 -6
  260. package/esm2022/lib/layout/directives/sidenav-layout-content.directive.mjs +3 -3
  261. package/esm2022/lib/layout/directives/sidenav-layout-header.directive.mjs +3 -3
  262. package/esm2022/lib/layout/directives/sidenav-layout-navigation.directive.mjs +3 -3
  263. package/esm2022/lib/layout/layout.module.mjs +4 -4
  264. package/esm2022/lib/login/components/login/login.component.mjs +6 -6
  265. package/esm2022/lib/login/components/login-dialog/login-dialog.component.mjs +12 -7
  266. package/esm2022/lib/login/components/login-dialog-panel/login-dialog-panel.component.mjs +9 -5
  267. package/esm2022/lib/login/directives/login-footer.directive.mjs +5 -5
  268. package/esm2022/lib/login/directives/login-header.directive.mjs +5 -5
  269. package/esm2022/lib/login/login.module.mjs +4 -4
  270. package/esm2022/lib/login/models/login-submit.event.mjs +1 -1
  271. package/esm2022/lib/login/models/login-success.event.mjs +1 -1
  272. package/esm2022/lib/material.module.mjs +4 -4
  273. package/esm2022/lib/mock/cookie.service.mock.mjs +4 -4
  274. package/esm2022/lib/mock/data-column.mock.mjs +40 -8
  275. package/esm2022/lib/mock/event.mock.mjs +1 -1
  276. package/esm2022/lib/mock/form/form-definition-readonly.mock.mjs +3 -3
  277. package/esm2022/lib/mock/form/form-definition-visibility.mock.mjs +5 -5
  278. package/esm2022/lib/mock/form/form-definition.mock.mjs +7 -7
  279. package/esm2022/lib/mock/form/form.component.mock.mjs +5 -5
  280. package/esm2022/lib/mock/form/form.service.mock.mjs +5 -5
  281. package/esm2022/lib/mock/form/widget-visibility.service.mock.mjs +51 -83
  282. package/esm2022/lib/mock/translation.service.mock.mjs +3 -3
  283. package/esm2022/lib/models/comment.model.mjs +1 -1
  284. package/esm2022/lib/models/decimal-number.model.mjs +1 -1
  285. package/esm2022/lib/models/general-user.model.mjs +1 -1
  286. package/esm2022/lib/models/pagination.model.mjs +1 -1
  287. package/esm2022/lib/models/path.model.mjs +1 -1
  288. package/esm2022/lib/models/product-version.model.mjs +1 -1
  289. package/esm2022/lib/models/request-pagination.model.mjs +1 -1
  290. package/esm2022/lib/notifications/components/add-notification.stories.component.mjs +4 -4
  291. package/esm2022/lib/notifications/components/notification-history.component.mjs +6 -6
  292. package/esm2022/lib/notifications/helpers/notification.factory.mjs +1 -1
  293. package/esm2022/lib/notifications/notification-history.module.mjs +4 -4
  294. package/esm2022/lib/notifications/services/notification.service.mjs +7 -7
  295. package/esm2022/lib/pagination/infinite-pagination.component.mjs +6 -6
  296. package/esm2022/lib/pagination/pagination.component.mjs +5 -5
  297. package/esm2022/lib/pagination/pagination.module.mjs +4 -4
  298. package/esm2022/lib/pipes/date-time.pipe.mjs +4 -4
  299. package/esm2022/lib/pipes/decimal-number.pipe.mjs +5 -5
  300. package/esm2022/lib/pipes/file-size.pipe.mjs +5 -5
  301. package/esm2022/lib/pipes/file-type.pipe.mjs +4 -4
  302. package/esm2022/lib/pipes/format-space.pipe.mjs +4 -4
  303. package/esm2022/lib/pipes/full-name.pipe.mjs +3 -3
  304. package/esm2022/lib/pipes/localized-date.pipe.mjs +5 -5
  305. package/esm2022/lib/pipes/multi-value.pipe.mjs +4 -4
  306. package/esm2022/lib/pipes/pipe.module.mjs +4 -4
  307. package/esm2022/lib/pipes/text-highlight.pipe.mjs +4 -4
  308. package/esm2022/lib/pipes/time-ago.pipe.mjs +5 -5
  309. package/esm2022/lib/pipes/truncate.pipe.mjs +3 -3
  310. package/esm2022/lib/pipes/user-initial.pipe.mjs +5 -5
  311. package/esm2022/lib/pipes/user-like.interface.mjs +2 -1
  312. package/esm2022/lib/progress/progress.component.mjs +4 -4
  313. package/esm2022/lib/search-text/animations.mjs +1 -1
  314. package/esm2022/lib/search-text/search-text-input.component.mjs +5 -5
  315. package/esm2022/lib/search-text/search-text-input.module.mjs +4 -4
  316. package/esm2022/lib/search-text/search-trigger.directive.mjs +6 -6
  317. package/esm2022/lib/snackbar-content/snackbar-content.component.mjs +6 -6
  318. package/esm2022/lib/snackbar-content/snackbar-content.module.mjs +26 -8
  319. package/esm2022/lib/sorting-picker/sorting-picker.component.mjs +4 -4
  320. package/esm2022/lib/templates/empty-content/empty-content.component.mjs +5 -5
  321. package/esm2022/lib/templates/error-content/error-content.component.mjs +6 -6
  322. package/esm2022/lib/templates/template.module.mjs +4 -4
  323. package/esm2022/lib/testing/core.story.module.mjs +4 -4
  324. package/esm2022/lib/testing/core.testing.module.mjs +4 -4
  325. package/esm2022/lib/testing/noop-auth.module.mjs +9 -10
  326. package/esm2022/lib/testing/noop-translate.module.mjs +7 -7
  327. package/esm2022/lib/testing/unit-testing-utils.mjs +1 -1
  328. package/esm2022/lib/toolbar/toolbar-divider.component.mjs +3 -3
  329. package/esm2022/lib/toolbar/toolbar-title.component.mjs +5 -5
  330. package/esm2022/lib/toolbar/toolbar.component.mjs +5 -5
  331. package/esm2022/lib/toolbar/toolbar.module.mjs +4 -4
  332. package/esm2022/lib/translation/translate-loader.service.mjs +5 -5
  333. package/esm2022/lib/translation/translation.service.mjs +6 -6
  334. package/esm2022/lib/viewer/components/download-prompt-dialog/download-prompt-dialog.component.mjs +3 -3
  335. package/esm2022/lib/viewer/components/img-viewer/img-viewer.component.mjs +5 -5
  336. package/esm2022/lib/viewer/components/media-player/media-player.component.mjs +5 -5
  337. package/esm2022/lib/viewer/components/pdf-viewer/pdf-viewer.component.mjs +6 -6
  338. package/esm2022/lib/viewer/components/pdf-viewer-password-dialog/pdf-viewer-password-dialog.mjs +5 -5
  339. package/esm2022/lib/viewer/components/pdf-viewer-thumb/pdf-viewer-thumb.component.mjs +5 -5
  340. package/esm2022/lib/viewer/components/pdf-viewer-thumbnails/pdf-viewer-thumbnails.component.mjs +6 -6
  341. package/esm2022/lib/viewer/components/txt-viewer/txt-viewer.component.mjs +5 -5
  342. package/esm2022/lib/viewer/components/unknown-format/unknown-format.component.mjs +3 -3
  343. package/esm2022/lib/viewer/components/viewer-more-actions.component.mjs +5 -5
  344. package/esm2022/lib/viewer/components/viewer-open-with.component.mjs +5 -5
  345. package/esm2022/lib/viewer/components/viewer-render/viewer-render.component.mjs +6 -6
  346. package/esm2022/lib/viewer/components/viewer-sidebar.component.mjs +5 -5
  347. package/esm2022/lib/viewer/components/viewer-toolbar-actions.component.mjs +5 -5
  348. package/esm2022/lib/viewer/components/viewer-toolbar-custom-actions.component.mjs +5 -5
  349. package/esm2022/lib/viewer/components/viewer-toolbar.component.mjs +5 -5
  350. package/esm2022/lib/viewer/components/viewer.component.mjs +6 -6
  351. package/esm2022/lib/viewer/directives/viewer-extension.directive.mjs +5 -5
  352. package/esm2022/lib/viewer/services/rendering-queue.services.mjs +4 -4
  353. package/esm2022/lib/viewer/services/view-util.service.mjs +5 -5
  354. package/esm2022/lib/viewer/viewer.module.mjs +4 -4
  355. package/esm2022/shell/lib/components/shell/shell.component.mjs +6 -6
  356. package/esm2022/shell/lib/shell.module.mjs +5 -5
  357. package/esm2022/shell/lib/shell.routes.mjs +1 -1
  358. package/fesm2022/adf-core.mjs +1282 -1296
  359. package/fesm2022/adf-core.mjs.map +1 -1
  360. package/fesm2022/alfresco-adf-core-api.mjs +7 -6
  361. package/fesm2022/alfresco-adf-core-api.mjs.map +1 -1
  362. package/fesm2022/alfresco-adf-core-auth.mjs +6 -5
  363. package/fesm2022/alfresco-adf-core-auth.mjs.map +1 -1
  364. package/fesm2022/alfresco-adf-core-breadcrumbs.mjs +15 -15
  365. package/fesm2022/alfresco-adf-core-breadcrumbs.mjs.map +1 -1
  366. package/fesm2022/alfresco-adf-core-feature-flags.mjs +57 -57
  367. package/fesm2022/alfresco-adf-core-feature-flags.mjs.map +1 -1
  368. package/fesm2022/alfresco-adf-core-shell.mjs +10 -10
  369. package/fesm2022/alfresco-adf-core-shell.mjs.map +1 -1
  370. package/lib/card-view/components/card-view-textitem/card-view-textitem.component.scss +3 -3
  371. package/lib/form/components/form-renderer.component.d.ts +1 -1
  372. package/lib/form/components/form-renderer.component.scss +28 -26
  373. package/lib/form/components/widgets/core/container-column.model.d.ts +1 -2
  374. package/lib/form/components/widgets/core/form-field.model.d.ts +0 -1
  375. package/lib/form/components/widgets/core/form.model.d.ts +1 -8
  376. package/lib/form/components/widgets/display-text/display-text.widget.scss +0 -1
  377. package/lib/login/components/login/login.component.scss +4 -0
  378. package/lib/notifications/components/notification-history.component.scss +0 -1
  379. package/lib/prebuilt-themes/adf-blue-orange.css +1 -1
  380. package/lib/prebuilt-themes/adf-blue-purple.css +1 -1
  381. package/lib/prebuilt-themes/adf-cyan-orange.css +1 -1
  382. package/lib/prebuilt-themes/adf-cyan-purple.css +1 -1
  383. package/lib/prebuilt-themes/adf-green-orange.css +1 -1
  384. package/lib/prebuilt-themes/adf-green-purple.css +1 -1
  385. package/lib/prebuilt-themes/adf-indigo-pink.css +1 -1
  386. package/lib/prebuilt-themes/adf-pink-bluegrey.css +1 -1
  387. package/lib/prebuilt-themes/adf-purple-green.css +1 -1
  388. package/lib/styles/_mat-selectors.scss +0 -2
  389. package/lib/styles/material.theme.scss +0 -4
  390. package/lib/testing/noop-auth.module.d.ts +1 -1
  391. package/package.json +23 -23
  392. package/schematics/migrations/package.json +62 -0
  393. package/schematics/migrations/schematics/migrations/7_0_0/index.js.map +1 -1
  394. package/schematics/migrations/schematics/migrations/collection.json +8 -8
  395. package/esm2022/lib/form/components/form-section/form-section.component.mjs +0 -46
  396. package/lib/form/components/form-section/form-section.component.d.ts +0 -27
  397. package/lib/form/components/form-section/form-section.component.scss +0 -18
@@ -231,13 +231,13 @@ export class AppConfigService {
231
231
  });
232
232
  return result;
233
233
  }
234
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AppConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
235
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AppConfigService, providedIn: 'root' }); }
234
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AppConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
235
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AppConfigService, providedIn: 'root' }); }
236
236
  }
237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AppConfigService, decorators: [{
237
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AppConfigService, decorators: [{
238
238
  type: Injectable,
239
239
  args: [{
240
240
  providedIn: 'root'
241
241
  }]
242
- }], ctorParameters: () => [] });
243
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hcHAtY29uZmlnL2FwcC1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLEdBQUcsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQW1CLGdCQUFnQixFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUkzRiwyQkFBMkI7QUFFM0IscUNBQXFDO0FBQ3JDLE1BQU0sQ0FBTixJQUFZLGVBc0JYO0FBdEJELFdBQVksZUFBZTtJQUN2Qix5REFBc0MsQ0FBQTtJQUN0QywwQ0FBdUIsQ0FBQTtJQUN2Qix5Q0FBc0IsQ0FBQTtJQUN0QixzQ0FBbUIsQ0FBQTtJQUNuQixnREFBNkIsQ0FBQTtJQUM3QixzQ0FBbUIsQ0FBQTtJQUNuQixpREFBOEIsQ0FBQTtJQUM5Qix3Q0FBcUIsQ0FBQTtJQUNyQixvREFBaUMsQ0FBQTtJQUNqQyxvREFBaUMsQ0FBQTtJQUNqQyxzRUFBbUQsQ0FBQTtJQUNuRCx5Q0FBc0IsQ0FBQTtJQUN0Qiw2Q0FBMEIsQ0FBQTtJQUMxQiw4Q0FBMkIsQ0FBQTtJQUMzQixpRUFBOEMsQ0FBQTtJQUM5Qyw4Q0FBMkIsQ0FBQTtJQUMzQiwrREFBNEMsQ0FBQTtJQUM1QyxrRUFBK0MsQ0FBQTtJQUMvQyw4REFBMkMsQ0FBQTtJ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QUFDLENBQUM7UUFDekQsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUssTUFBTSxDQUFDO1FBQzFGLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLE1BQU0sQ0FBQztRQUN2RixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxNQUFNLENBQUM7UUFFOUUsT0FBTztZQUNILEdBQUksTUFBMkI7WUFDL0IsWUFBWTtZQUNaLFdBQVc7WUFDWCxRQUFRO1NBQ1gsQ0FBQztJQUNOLENBQUM7SUFFTyxZQUFZLENBQUMsR0FBVyxFQUFFLFFBQTZCO1FBQzNELElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQztRQUVqQixRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQzVCLE1BQU0sSUFBSSxHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQy9DLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7OEdBL01RLGdCQUFnQjtrSEFBaEIsZ0JBQWdCLGNBRmIsTUFBTTs7MkZBRVQsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JqZWN0VXRpbHMgfSBmcm9tICcuLi9jb21tb24vdXRpbHMvb2JqZWN0LXV0aWxzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFeHRlbnNpb25Db25maWcsIEV4dGVuc2lvblNlcnZpY2UsIG1lcmdlT2JqZWN0cyB9IGZyb20gJ0BhbGZyZXNjby9hZGYtZXh0ZW5zaW9ucyc7XG5pbXBvcnQgeyBPcGVuaWRDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vYXV0aC9pbnRlcmZhY2VzL29wZW5pZC1jb25maWd1cmF0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBPYXV0aENvbmZpZ01vZGVsIH0gZnJvbSAnLi4vYXV0aC9tb2RlbHMvb2F1dGgtY29uZmlnLm1vZGVsJztcblxuLyogc3BlbGxjaGVja2VyOiBkaXNhYmxlICovXG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zaGFkb3dcbmV4cG9ydCBlbnVtIEFwcENvbmZpZ1ZhbHVlcyB7XG4gICAgQVBQX0NPTkZJR19MQU5HVUFHRVNfS0VZID0gJ2xhbmd1YWdlcycsXG4gICAgUFJPVklERVJTID0gJ3Byb3ZpZGVycycsXG4gICAgT0FVVEhDT05GSUcgPSAnb2F1dGgyJyxcbiAgICBFQ01IT1NUID0gJ2VjbUhvc3QnLFxuICAgIEJBU0VTSEFSRVVSTCA9ICdiYXNlU2hhcmVVcmwnLFxuICAgIEJQTUhPU1QgPSAnYnBtSG9zdCcsXG4gICAgSURFTlRJVFlfSE9TVCA9ICdpZGVudGl0eUhvc3QnLFxuICAgIEFVVEhUWVBFID0gJ2F1dGhUeXBlJyxcbiAgICBDT05URVhUUk9PVEVDTSA9ICdjb250ZXh0Um9vdEVjbScsXG4gICAgQ09OVEVYVFJPT1RCUE0gPSAnY29udGV4dFJvb3RCcG0nLFxuICAgIEFMRlJFU0NPX1JFUE9TSVRPUllfTkFNRSA9ICdhbGZyZXNjb1JlcG9zaXRvcnlOYW1lJyxcbiAgICBMT0dfTEVWRUwgPSAnbG9nTGV2ZWwnLFxuICAgIExPR0lOX1JPVVRFID0gJ2xvZ2luUm91dGUnLFxuICAgIERJU0FCTEVDU1JGID0gJ2Rpc2FibGVDU1JGJyxcbiAgICBBVVRIX1dJVEhfQ1JFREVOVElBTFMgPSAnYXV0aC53aXRoQ3JlZGVudGlhbHMnLFxuICAgIEFQUExJQ0FUSU9OID0gJ2FwcGxpY2F0aW9uJyxcbiAgICBTVE9SQUdFX1BSRUZJWCA9ICdhcHBsaWNhdGlvbi5zdG9yYWdlUHJlZml4JyxcbiAgICBOT1RJRllfRFVSQVRJT04gPSAnbm90aWZpY2F0aW9uRGVmYXVsdER1cmF0aW9uJyxcbiAgICBDT05URU5UX1RJQ0tFVF9TVE9SQUdFX0xBQkVMID0gJ3RpY2tldC1FQ00nLFxuICAgIFBST0NFU1NfVElDS0VUX1NUT1JBR0VfTEFCRUwgPSAndGlja2V0LUJQTScsXG4gICAgVU5TQVZFRF9DSEFOR0VTX01PREFMX0hJRERFTiA9ICd1bnNhdmVkX2NoYW5nZXNfX21vZGFsX2hpZGRlbidcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNoYWRvd1xuZXhwb3J0IGVudW0gU3RhdHVzIHtcbiAgICBJTklUID0gJ2luaXQnLFxuICAgIExPQURJTkcgPSAnbG9hZGluZycsXG4gICAgTE9BREVEID0gJ2xvYWRlZCdcbn1cblxuLyogc3BlbGxjaGVja2VyOiBlbmFibGUgKi9cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBcHBDb25maWdTZXJ2aWNlIHtcbiAgICBwcm90ZWN0ZWQgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgICBwcm90ZWN0ZWQgZXh0ZW5zaW9uU2VydmljZSA9IGluamVjdChFeHRlbnNpb25TZXJ2aWNlKTtcblxuICAgIGNvbmZpZzogYW55ID0ge1xuICAgICAgICBhcHBsaWNhdGlvbjoge1xuICAgICAgICAgICAgbmFtZTogJ0FsZnJlc2NvIEFERiBBcHBsaWNhdGlvbidcbiAgICAgICAgfSxcbiAgICAgICAgZWNtSG9zdDogJ2h0dHA6Ly97aG9zdG5hbWV9ezpwb3J0fS9lY20nLFxuICAgICAgICBicG1Ib3N0OiAnaHR0cDovL3tob3N0bmFtZX17OnBvcnR9L2JwbScsXG4gICAgICAgIGxvZ0xldmVsOiAnc2lsZW50J1xuICAgIH07XG5cbiAgICBzdGF0dXM6IFN0YXR1cyA9IFN0YXR1cy5JTklUO1xuICAgIHByb3RlY3RlZCBvbkxvYWRTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PGFueT47XG4gICAgb25Mb2FkOiBPYnNlcnZhYmxlPGFueT47XG5cbiAgICBnZXQgaXNMb2FkZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gU3RhdHVzLkxPQURFRDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5vbkxvYWRTdWJqZWN0ID0gbmV3IFJlcGxheVN1YmplY3QoKTtcbiAgICAgICAgdGhpcy5vbkxvYWQgPSB0aGlzLm9uTG9hZFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgICAgICAgdGhpcy5leHRlbnNpb25TZXJ2aWNlLnNldHVwJC5zdWJzY3JpYmUoKGNvbmZpZykgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbkV4dGVuc2lvbnNMb2FkZWQoY29uZmlnKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVxdWVzdHMgbm90aWZpY2F0aW9uIG9mIGEgcHJvcGVydHkgdmFsdWUgd2hlbiBpdCBpcyBsb2FkZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcHJvcGVydHkgVGhlIGRlc2lyZWQgcHJvcGVydHkgdmFsdWVcbiAgICAgKiBAcmV0dXJucyBQcm9wZXJ0eSB2YWx1ZSwgd2hlbiBsb2FkZWRcbiAgICAgKi9cbiAgICBzZWxlY3QocHJvcGVydHk6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLm9uTG9hZFN1YmplY3QucGlwZShcbiAgICAgICAgICAgIG1hcCgoY29uZmlnKSA9PiBPYmplY3RVdGlscy5nZXRWYWx1ZShjb25maWcsIHByb3BlcnR5KSksXG4gICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgdmFsdWUgb2YgYSBuYW1lZCBwcm9wZXJ0eS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBrZXkgTmFtZSBvZiB0aGUgcHJvcGVydHlcbiAgICAgKiBAcGFyYW0gZGVmYXVsdFZhbHVlIFZhbHVlIHRvIHJldHVybiBpZiB0aGUga2V5IGlzIG5vdCBmb3VuZFxuICAgICAqIEByZXR1cm5zIFZhbHVlIG9mIHRoZSBwcm9wZXJ0eVxuICAgICAqL1xuICAgIGdldDxUPihrZXk6IHN0cmluZywgZGVmYXVsdFZhbHVlPzogVCk6IFQge1xuICAgICAgICBsZXQgcmVzdWx0OiBhbnkgPSBPYmplY3RVdGlscy5nZXRWYWx1ZSh0aGlzLmNvbmZpZywga2V5KTtcbiAgICAgICAgaWYgKHR5cGVvZiByZXN1bHQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICBjb25zdCBrZXl3b3JkcyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgICAgICAgICBrZXl3b3Jkcy5zZXQoJ2hvc3RuYW1lJywgdGhpcy5nZXRMb2NhdGlvbkhvc3RuYW1lKCkpO1xuICAgICAgICAgICAga2V5d29yZHMuc2V0KCc6cG9ydCcsIHRoaXMuZ2V0TG9jYXRpb25Qb3J0KCc6JykpO1xuICAgICAgICAgICAga2V5d29yZHMuc2V0KCdwb3J0JywgdGhpcy5nZXRMb2NhdGlvblBvcnQoKSk7XG4gICAgICAgICAgICBrZXl3b3Jkcy5zZXQoJ3Byb3RvY29sJywgdGhpcy5nZXRMb2NhdGlvblByb3RvY29sKCkpO1xuICAgICAgICAgICAgcmVzdWx0ID0gdGhpcy5mb3JtYXRTdHJpbmcocmVzdWx0LCBrZXl3b3Jkcyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZW9mIHJlc3VsdCA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIHJlc3VsdCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkocmVzdWx0KS5yZXBsYWNlKC97aG9zdG5hbWV9L2csIHRoaXMuZ2V0TG9jYXRpb25Ib3N0bmFtZSgpKSk7XG4gICAgICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHJlc3VsdCkucmVwbGFjZSgvezpwb3J0fS9nLCB0aGlzLmdldExvY2F0aW9uUG9ydCgnOicpKSk7XG4gICAgICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHJlc3VsdCkucmVwbGFjZSgve3Byb3RvY29sfS9nLCB0aGlzLmdldExvY2F0aW9uUHJvdG9jb2woKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJlc3VsdCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBsb2NhdGlvbi5wcm90b2NvbCB2YWx1ZS5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIFRoZSBsb2NhdGlvbi5wcm90b2NvbCBzdHJpbmdcbiAgICAgKi9cbiAgICBnZXRMb2NhdGlvblByb3RvY29sKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBsb2NhdGlvbi5wcm90b2NvbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBsb2NhdGlvbi5ob3N0bmFtZSBwcm9wZXJ0eS5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIFZhbHVlIG9mIHRoZSBwcm9wZXJ0eVxuICAgICAqL1xuICAgIGdldExvY2F0aW9uSG9zdG5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGxvY2F0aW9uLmhvc3RuYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGxvY2F0aW9uLnBvcnQgcHJvcGVydHkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcHJlZml4IFRleHQgYWRkZWQgYmVmb3JlIHBvcnQgdmFsdWVcbiAgICAgKiBAcmV0dXJucyBQb3J0IHdpdGggcHJlZml4XG4gICAgICovXG4gICAgZ2V0TG9jYXRpb25Qb3J0KHByZWZpeDogc3RyaW5nID0gJycpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gbG9jYXRpb24ucG9ydCA/IHByZWZpeCArIGxvY2F0aW9uLnBvcnQgOiAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Mb2FkZWQoKSB7XG4gICAgICAgIHRoaXMub25Mb2FkU3ViamVjdC5uZXh0KHRoaXMuY29uZmlnKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25EYXRhTG9hZGVkKCkge1xuICAgICAgICB0aGlzLm9uTG9hZFN1YmplY3QubmV4dCh0aGlzLmNvbmZpZyk7XG5cbiAgICAgICAgdGhpcy5leHRlbnNpb25TZXJ2aWNlLnNldHVwJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoY29uZmlnKSA9PiB0aGlzLm9uRXh0ZW5zaW9uc0xvYWRlZChjb25maWcpKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25FeHRlbnNpb25zTG9hZGVkKGNvbmZpZzogRXh0ZW5zaW9uQ29uZmlnKSB7XG4gICAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbUNvbmZpZyA9IGNvbmZpZy5hcHBDb25maWc7XG5cbiAgICAgICAgICAgIGlmIChjdXN0b21Db25maWcpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZyA9IG1lcmdlT2JqZWN0cyh0aGlzLmNvbmZpZywgY3VzdG9tQ29uZmlnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvYWRzIHRoZSBjb25maWcgZmlsZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjYWxsYmFjayBhbiBvcHRpb25hbCBjYWxsYmFjayB0byBleGVjdXRlIHdoZW4gY29uZmlndXJhdGlvbiBpcyBsb2FkZWRcbiAgICAgKiBAcmV0dXJucyBOb3RpZmljYXRpb24gd2hlbiBsb2FkaW5nIGlzIGNvbXBsZXRlXG4gICAgICovXG4gICAgbG9hZChjYWxsYmFjaz86ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb25maWdVcmwgPSBgYXBwLmNvbmZpZy5qc29uP3Y9JHtEYXRlLm5vdygpfWA7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLnN0YXR1cyA9PT0gU3RhdHVzLklOSVQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXR1cyA9IFN0YXR1cy5MT0FESU5HO1xuICAgICAgICAgICAgICAgIHRoaXMuaHR0cC5nZXQoY29uZmlnVXJsKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhdHVzID0gU3RhdHVzLkxPQURFRDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jb25maWcsIGRhdGEgfHwge30pO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s/LigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShkYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25EYXRhTG9hZGVkKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdhcHAuY29uZmlnLmpzb24gY29udGFpbnMgdmFsaWRhdGlvbiBlcnJvcnMnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUodGhpcy5jb25maWcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5zdGF0dXMgPT09IFN0YXR1cy5MT0FERUQpIHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHRoaXMuY29uZmlnKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5zdGF0dXMgPT09IFN0YXR1cy5MT0FESU5HKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkxvYWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLmNvbmZpZyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGwgdGhlIGRpc2NvdmVyeSBBUEkgdG8gZmV0Y2ggY29uZmlndXJhdGlvblxuICAgICAqXG4gICAgICogQHBhcmFtIGhvc3RJZHAgaG9zdCBhZGRyZXNzXG4gICAgICogQHJldHVybnMgRGlzY292ZXJ5IGNvbmZpZ3VyYXRpb25cbiAgICAgKi9cbiAgICBsb2FkV2VsbEtub3duKGhvc3RJZHA6IHN0cmluZyk6IFByb21pc2U8T3BlbmlkQ29uZmlndXJhdGlvbj4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5odHRwLmdldDxPcGVuaWRDb25maWd1cmF0aW9uPihgJHtob3N0SWRwfS8ud2VsbC1rbm93bi9vcGVuaWQtY29uZmlndXJhdGlvbmApLnN1YnNjcmliZSh7XG4gICAgICAgICAgICAgICAgbmV4dDogKHJlczogT3BlbmlkQ29uZmlndXJhdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHJlcyk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ2hvc3RJZHAgbm90IGNvcnJlY3RseSBjb25maWd1cmVkIG9yIHVucmVhY2hhYmxlJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPQXV0aDIgY29uZmlndXJhdGlvblxuICAgICAqXG4gICAgICogQHJldHVybnMgYXV0aCBjb25maWcgbW9kZWxcbiAgICAgKi9cbiAgICBnZXQgb2F1dGgyKCk6IE9hdXRoQ29uZmlnTW9kZWwge1xuICAgICAgICBjb25zdCBjb25maWcgPSB0aGlzLmdldChBcHBDb25maWdWYWx1ZXMuT0FVVEhDT05GSUcsIHt9KTtcbiAgICAgICAgY29uc3QgaW1wbGljaXRGbG93ID0gY29uZmlnWydpbXBsaWNpdEZsb3cnXSA9PT0gdHJ1ZSB8fCBjb25maWdbJ2ltcGxpY2l0RmxvdyddID09PSAndHJ1ZSc7XG4gICAgICAgIGNvbnN0IHNpbGVudExvZ2luID0gY29uZmlnWydzaWxlbnRMb2dpbiddID09PSB0cnVlIHx8IGNvbmZpZ1snc2lsZW50TG9naW4nXSA9PT0gJ3RydWUnO1xuICAgICAgICBjb25zdCBjb2RlRmxvdyA9IGNvbmZpZ1snY29kZUZsb3cnXSA9PT0gdHJ1ZSB8fCBjb25maWdbJ2NvZGVGbG93J10gPT09ICd0cnVlJztcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uKGNvbmZpZyBhcyBPYXV0aENvbmZpZ01vZGVsKSxcbiAgICAgICAgICAgIGltcGxpY2l0RmxvdyxcbiAgICAgICAgICAgIHNpbGVudExvZ2luLFxuICAgICAgICAgICAgY29kZUZsb3dcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvcm1hdFN0cmluZyhzdHI6IHN0cmluZywga2V5d29yZHM6IE1hcDxzdHJpbmcsIHN0cmluZz4pOiBzdHJpbmcge1xuICAgICAgICBsZXQgcmVzdWx0ID0gc3RyO1xuXG4gICAgICAgIGtleXdvcmRzLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGV4cHIgPSBuZXcgUmVnRXhwKCd7JyArIGtleSArICd9JywgJ2dtJyk7XG4gICAgICAgICAgICByZXN1bHQgPSByZXN1bHQucmVwbGFjZShleHByLCB2YWx1ZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxufVxuIl19
242
+ }], ctorParameters: function () { return []; } });
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hcHAtY29uZmlnL2FwcC1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLEdBQUcsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQW1CLGdCQUFnQixFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUkzRiwyQkFBMkI7QUFFM0IscUNBQXFDO0FBQ3JDLE1BQU0sQ0FBTixJQUFZLGVBc0JYO0FBdEJELFdBQVksZUFBZTtJQUN2Qix5REFBc0MsQ0FBQTtJQUN0QywwQ0FBdUIsQ0FBQTtJQUN2Qix5Q0FBc0IsQ0FBQTtJQUN0QixzQ0FBbUIsQ0FBQTtJQUNuQixnREFBNkIsQ0FBQTtJQUM3QixzQ0FBbUIsQ0FBQTtJQUNuQixpREFBOEIsQ0FBQTtJQUM5Qix3Q0FBcUIsQ0FBQTtJQUNyQixvREFBaUMsQ0FBQTtJQUNqQyxvREFBaUMsQ0FBQTtJQUNqQyxzRUFBbUQsQ0FBQTtJQUNuRCx5Q0FBc0IsQ0FBQTtJQUN0Qiw2Q0FBMEIsQ0FBQTtJQUMxQiw4Q0FBMkIsQ0FBQTtJQUMzQixpRUFBOEMsQ0FBQTtJQUM5Qyw4Q0FBMkIsQ0FBQTtJQUMzQiwrREFBNEMsQ0FBQTtJQUM1QyxrRUFBK0MsQ0FBQTtJQUMvQyw4REFBMkMsQ0FBQTtJ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Q0FBQyxLQUFLLE1BQU0sQ0FBQztRQUMxRixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxNQUFNLENBQUM7UUFDdkYsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssTUFBTSxDQUFDO1FBRTlFLE9BQU87WUFDSCxHQUFJLE1BQTJCO1lBQy9CLFlBQVk7WUFDWixXQUFXO1lBQ1gsUUFBUTtTQUNYLENBQUM7SUFDTixDQUFDO0lBRU8sWUFBWSxDQUFDLEdBQVcsRUFBRSxRQUE2QjtRQUMzRCxJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFFakIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUM1QixNQUFNLElBQUksR0FBRyxJQUFJLE1BQU0sQ0FBQyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMvQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDOzhHQS9NUSxnQkFBZ0I7a0hBQWhCLGdCQUFnQixjQUZiLE1BQU07OzJGQUVULGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9iamVjdFV0aWxzIH0gZnJvbSAnLi4vY29tbW9uL3V0aWxzL29iamVjdC11dGlscyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRXh0ZW5zaW9uQ29uZmlnLCBFeHRlbnNpb25TZXJ2aWNlLCBtZXJnZU9iamVjdHMgfSBmcm9tICdAYWxmcmVzY28vYWRmLWV4dGVuc2lvbnMnO1xuaW1wb3J0IHsgT3BlbmlkQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2F1dGgvaW50ZXJmYWNlcy9vcGVuaWQtY29uZmlndXJhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgT2F1dGhDb25maWdNb2RlbCB9IGZyb20gJy4uL2F1dGgvbW9kZWxzL29hdXRoLWNvbmZpZy5tb2RlbCc7XG5cbi8qIHNwZWxsY2hlY2tlcjogZGlzYWJsZSAqL1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2hhZG93XG5leHBvcnQgZW51bSBBcHBDb25maWdWYWx1ZXMge1xuICAgIEFQUF9DT05GSUdfTEFOR1VBR0VTX0tFWSA9ICdsYW5ndWFnZXMnLFxuICAgIFBST1ZJREVSUyA9ICdwcm92aWRlcnMnLFxuICAgIE9BVVRIQ09ORklHID0gJ29hdXRoMicsXG4gICAgRUNNSE9TVCA9ICdlY21Ib3N0JyxcbiAgICBCQVNFU0hBUkVVUkwgPSAnYmFzZVNoYXJlVXJsJyxcbiAgICBCUE1IT1NUID0gJ2JwbUhvc3QnLFxuICAgIElERU5USVRZX0hPU1QgPSAnaWRlbnRpdHlIb3N0JyxcbiAgICBBVVRIVFlQRSA9ICdhdXRoVHlwZScsXG4gICAgQ09OVEVYVFJPT1RFQ00gPSAnY29udGV4dFJvb3RFY20nLFxuICAgIENPTlRFWFRST09UQlBNID0gJ2NvbnRleHRSb290QnBtJyxcbiAgICBBTEZSRVNDT19SRVBPU0lUT1JZX05BTUUgPSAnYWxmcmVzY29SZXBvc2l0b3J5TmFtZScsXG4gICAgTE9HX0xFVkVMID0gJ2xvZ0xldmVsJyxcbiAgICBMT0dJTl9ST1VURSA9ICdsb2dpblJvdXRlJyxcbiAgICBESVNBQkxFQ1NSRiA9ICdkaXNhYmxlQ1NSRicsXG4gICAgQVVUSF9XSVRIX0NSRURFTlRJQUxTID0gJ2F1dGgud2l0aENyZWRlbnRpYWxzJyxcbiAgICBBUFBMSUNBVElPTiA9ICdhcHBsaWNhdGlvbicsXG4gICAgU1RPUkFHRV9QUkVGSVggPSAnYXBwbGljYXRpb24uc3RvcmFnZVByZWZpeCcsXG4gICAgTk9USUZZX0RVUkFUSU9OID0gJ25vdGlmaWNhdGlvbkRlZmF1bHREdXJhdGlvbicsXG4gICAgQ09OVEVOVF9USUNLRVRfU1RPUkFHRV9MQUJFTCA9ICd0aWNrZXQtRUNNJyxcbiAgICBQUk9DRVNTX1RJQ0tFVF9TVE9SQUdFX0xBQkVMID0gJ3RpY2tldC1CUE0nLFxuICAgIFVOU0FWRURfQ0hBTkdFU19NT0RBTF9ISURERU4gPSAndW5zYXZlZF9jaGFuZ2VzX19tb2RhbF9oaWRkZW4nXG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zaGFkb3dcbmV4cG9ydCBlbnVtIFN0YXR1cyB7XG4gICAgSU5JVCA9ICdpbml0JyxcbiAgICBMT0FESU5HID0gJ2xvYWRpbmcnLFxuICAgIExPQURFRCA9ICdsb2FkZWQnXG59XG5cbi8qIHNwZWxsY2hlY2tlcjogZW5hYmxlICovXG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXBwQ29uZmlnU2VydmljZSB7XG4gICAgcHJvdGVjdGVkIGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gICAgcHJvdGVjdGVkIGV4dGVuc2lvblNlcnZpY2UgPSBpbmplY3QoRXh0ZW5zaW9uU2VydmljZSk7XG5cbiAgICBjb25maWc6IGFueSA9IHtcbiAgICAgICAgYXBwbGljYXRpb246IHtcbiAgICAgICAgICAgIG5hbWU6ICdBbGZyZXNjbyBBREYgQXBwbGljYXRpb24nXG4gICAgICAgIH0sXG4gICAgICAgIGVjbUhvc3Q6ICdodHRwOi8ve2hvc3RuYW1lfXs6cG9ydH0vZWNtJyxcbiAgICAgICAgYnBtSG9zdDogJ2h0dHA6Ly97aG9zdG5hbWV9ezpwb3J0fS9icG0nLFxuICAgICAgICBsb2dMZXZlbDogJ3NpbGVudCdcbiAgICB9O1xuXG4gICAgc3RhdHVzOiBTdGF0dXMgPSBTdGF0dXMuSU5JVDtcbiAgICBwcm90ZWN0ZWQgb25Mb2FkU3ViamVjdDogUmVwbGF5U3ViamVjdDxhbnk+O1xuICAgIG9uTG9hZDogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gICAgZ2V0IGlzTG9hZGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFN0YXR1cy5MT0FERUQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMub25Mb2FkU3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0KCk7XG4gICAgICAgIHRoaXMub25Mb2FkID0gdGhpcy5vbkxvYWRTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgICAgIHRoaXMuZXh0ZW5zaW9uU2VydmljZS5zZXR1cCQuc3Vic2NyaWJlKChjb25maWcpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25FeHRlbnNpb25zTG9hZGVkKGNvbmZpZyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlcXVlc3RzIG5vdGlmaWNhdGlvbiBvZiBhIHByb3BlcnR5IHZhbHVlIHdoZW4gaXQgaXMgbG9hZGVkLlxuICAgICAqXG4gICAgICogQHBhcmFtIHByb3BlcnR5IFRoZSBkZXNpcmVkIHByb3BlcnR5IHZhbHVlXG4gICAgICogQHJldHVybnMgUHJvcGVydHkgdmFsdWUsIHdoZW4gbG9hZGVkXG4gICAgICovXG4gICAgc2VsZWN0KHByb3BlcnR5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vbkxvYWRTdWJqZWN0LnBpcGUoXG4gICAgICAgICAgICBtYXAoKGNvbmZpZykgPT4gT2JqZWN0VXRpbHMuZ2V0VmFsdWUoY29uZmlnLCBwcm9wZXJ0eSkpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHZhbHVlIG9mIGEgbmFtZWQgcHJvcGVydHkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ga2V5IE5hbWUgb2YgdGhlIHByb3BlcnR5XG4gICAgICogQHBhcmFtIGRlZmF1bHRWYWx1ZSBWYWx1ZSB0byByZXR1cm4gaWYgdGhlIGtleSBpcyBub3QgZm91bmRcbiAgICAgKiBAcmV0dXJucyBWYWx1ZSBvZiB0aGUgcHJvcGVydHlcbiAgICAgKi9cbiAgICBnZXQ8VD4oa2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZT86IFQpOiBUIHtcbiAgICAgICAgbGV0IHJlc3VsdDogYW55ID0gT2JqZWN0VXRpbHMuZ2V0VmFsdWUodGhpcy5jb25maWcsIGtleSk7XG4gICAgICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgY29uc3Qga2V5d29yZHMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuICAgICAgICAgICAga2V5d29yZHMuc2V0KCdob3N0bmFtZScsIHRoaXMuZ2V0TG9jYXRpb25Ib3N0bmFtZSgpKTtcbiAgICAgICAgICAgIGtleXdvcmRzLnNldCgnOnBvcnQnLCB0aGlzLmdldExvY2F0aW9uUG9ydCgnOicpKTtcbiAgICAgICAgICAgIGtleXdvcmRzLnNldCgncG9ydCcsIHRoaXMuZ2V0TG9jYXRpb25Qb3J0KCkpO1xuICAgICAgICAgICAga2V5d29yZHMuc2V0KCdwcm90b2NvbCcsIHRoaXMuZ2V0TG9jYXRpb25Qcm90b2NvbCgpKTtcbiAgICAgICAgICAgIHJlc3VsdCA9IHRoaXMuZm9ybWF0U3RyaW5nKHJlc3VsdCwga2V5d29yZHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiByZXN1bHQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHJlc3VsdCkucmVwbGFjZSgve2hvc3RuYW1lfS9nLCB0aGlzLmdldExvY2F0aW9uSG9zdG5hbWUoKSkpO1xuICAgICAgICAgICAgcmVzdWx0ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShyZXN1bHQpLnJlcGxhY2UoL3s6cG9ydH0vZywgdGhpcy5nZXRMb2NhdGlvblBvcnQoJzonKSkpO1xuICAgICAgICAgICAgcmVzdWx0ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShyZXN1bHQpLnJlcGxhY2UoL3twcm90b2NvbH0vZywgdGhpcy5nZXRMb2NhdGlvblByb3RvY29sKCkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChyZXN1bHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgbG9jYXRpb24ucHJvdG9jb2wgdmFsdWUuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBUaGUgbG9jYXRpb24ucHJvdG9jb2wgc3RyaW5nXG4gICAgICovXG4gICAgZ2V0TG9jYXRpb25Qcm90b2NvbCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gbG9jYXRpb24ucHJvdG9jb2w7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgbG9jYXRpb24uaG9zdG5hbWUgcHJvcGVydHkuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBWYWx1ZSBvZiB0aGUgcHJvcGVydHlcbiAgICAgKi9cbiAgICBnZXRMb2NhdGlvbkhvc3RuYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBsb2NhdGlvbi5ob3N0bmFtZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBsb2NhdGlvbi5wb3J0IHByb3BlcnR5LlxuICAgICAqXG4gICAgICogQHBhcmFtIHByZWZpeCBUZXh0IGFkZGVkIGJlZm9yZSBwb3J0IHZhbHVlXG4gICAgICogQHJldHVybnMgUG9ydCB3aXRoIHByZWZpeFxuICAgICAqL1xuICAgIGdldExvY2F0aW9uUG9ydChwcmVmaXg6IHN0cmluZyA9ICcnKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGxvY2F0aW9uLnBvcnQgPyBwcmVmaXggKyBsb2NhdGlvbi5wb3J0IDogJyc7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uTG9hZGVkKCkge1xuICAgICAgICB0aGlzLm9uTG9hZFN1YmplY3QubmV4dCh0aGlzLmNvbmZpZyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uRGF0YUxvYWRlZCgpIHtcbiAgICAgICAgdGhpcy5vbkxvYWRTdWJqZWN0Lm5leHQodGhpcy5jb25maWcpO1xuXG4gICAgICAgIHRoaXMuZXh0ZW5zaW9uU2VydmljZS5zZXR1cCQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGNvbmZpZykgPT4gdGhpcy5vbkV4dGVuc2lvbnNMb2FkZWQoY29uZmlnKSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uRXh0ZW5zaW9uc0xvYWRlZChjb25maWc6IEV4dGVuc2lvbkNvbmZpZykge1xuICAgICAgICBpZiAoY29uZmlnKSB7XG4gICAgICAgICAgICBjb25zdCBjdXN0b21Db25maWcgPSBjb25maWcuYXBwQ29uZmlnO1xuXG4gICAgICAgICAgICBpZiAoY3VzdG9tQ29uZmlnKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maWcgPSBtZXJnZU9iamVjdHModGhpcy5jb25maWcsIGN1c3RvbUNvbmZpZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyB0aGUgY29uZmlnIGZpbGUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY2FsbGJhY2sgYW4gb3B0aW9uYWwgY2FsbGJhY2sgdG8gZXhlY3V0ZSB3aGVuIGNvbmZpZ3VyYXRpb24gaXMgbG9hZGVkXG4gICAgICogQHJldHVybnMgTm90aWZpY2F0aW9uIHdoZW4gbG9hZGluZyBpcyBjb21wbGV0ZVxuICAgICAqL1xuICAgIGxvYWQoY2FsbGJhY2s/OiAoLi4uYXJnczogYW55W10pID0+IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29uZmlnVXJsID0gYGFwcC5jb25maWcuanNvbj92PSR7RGF0ZS5ub3coKX1gO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5zdGF0dXMgPT09IFN0YXR1cy5JTklUKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0dXMgPSBTdGF0dXMuTE9BRElORztcbiAgICAgICAgICAgICAgICB0aGlzLmh0dHAuZ2V0KGNvbmZpZ1VybCkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICAgICAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YXR1cyA9IFN0YXR1cy5MT0FERUQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuY29uZmlnLCBkYXRhIHx8IHt9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrPy4oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRGF0YUxvYWRlZCgpO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignYXBwLmNvbmZpZy5qc29uIGNvbnRhaW5zIHZhbGlkYXRpb24gZXJyb3JzJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHRoaXMuY29uZmlnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuc3RhdHVzID09PSBTdGF0dXMuTE9BREVEKSB7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLmNvbmZpZyk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuc3RhdHVzID09PSBTdGF0dXMuTE9BRElORykge1xuICAgICAgICAgICAgICAgIHRoaXMub25Mb2FkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUodGhpcy5jb25maWcpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxsIHRoZSBkaXNjb3ZlcnkgQVBJIHRvIGZldGNoIGNvbmZpZ3VyYXRpb25cbiAgICAgKlxuICAgICAqIEBwYXJhbSBob3N0SWRwIGhvc3QgYWRkcmVzc1xuICAgICAqIEByZXR1cm5zIERpc2NvdmVyeSBjb25maWd1cmF0aW9uXG4gICAgICovXG4gICAgbG9hZFdlbGxLbm93bihob3N0SWRwOiBzdHJpbmcpOiBQcm9taXNlPE9wZW5pZENvbmZpZ3VyYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaHR0cC5nZXQ8T3BlbmlkQ29uZmlndXJhdGlvbj4oYCR7aG9zdElkcH0vLndlbGwta25vd24vb3BlbmlkLWNvbmZpZ3VyYXRpb25gKS5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgICAgIG5leHQ6IChyZXM6IE9wZW5pZENvbmZpZ3VyYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShyZXMpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdob3N0SWRwIG5vdCBjb3JyZWN0bHkgY29uZmlndXJlZCBvciB1bnJlYWNoYWJsZScpO1xuICAgICAgICAgICAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT0F1dGgyIGNvbmZpZ3VyYXRpb25cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGF1dGggY29uZmlnIG1vZGVsXG4gICAgICovXG4gICAgZ2V0IG9hdXRoMigpOiBPYXV0aENvbmZpZ01vZGVsIHtcbiAgICAgICAgY29uc3QgY29uZmlnID0gdGhpcy5nZXQoQXBwQ29uZmlnVmFsdWVzLk9BVVRIQ09ORklHLCB7fSk7XG4gICAgICAgIGNvbnN0IGltcGxpY2l0RmxvdyA9IGNvbmZpZ1snaW1wbGljaXRGbG93J10gPT09IHRydWUgfHwgY29uZmlnWydpbXBsaWNpdEZsb3cnXSA9PT0gJ3RydWUnO1xuICAgICAgICBjb25zdCBzaWxlbnRMb2dpbiA9IGNvbmZpZ1snc2lsZW50TG9naW4nXSA9PT0gdHJ1ZSB8fCBjb25maWdbJ3NpbGVudExvZ2luJ10gPT09ICd0cnVlJztcbiAgICAgICAgY29uc3QgY29kZUZsb3cgPSBjb25maWdbJ2NvZGVGbG93J10gPT09IHRydWUgfHwgY29uZmlnWydjb2RlRmxvdyddID09PSAndHJ1ZSc7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLihjb25maWcgYXMgT2F1dGhDb25maWdNb2RlbCksXG4gICAgICAgICAgICBpbXBsaWNpdEZsb3csXG4gICAgICAgICAgICBzaWxlbnRMb2dpbixcbiAgICAgICAgICAgIGNvZGVGbG93XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb3JtYXRTdHJpbmcoc3RyOiBzdHJpbmcsIGtleXdvcmRzOiBNYXA8c3RyaW5nLCBzdHJpbmc+KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHJlc3VsdCA9IHN0cjtcblxuICAgICAgICBrZXl3b3Jkcy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBleHByID0gbmV3IFJlZ0V4cCgneycgKyBrZXkgKyAnfScsICdnbScpO1xuICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LnJlcGxhY2UoZXhwciwgdmFsdWUpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbn1cbiJdfQ==
@@ -35,10 +35,10 @@ export class DebugAppConfigService extends AppConfigService {
35
35
  return this.storage.getItem(key) || super.get(key, defaultValue);
36
36
  }
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DebugAppConfigService, deps: [{ token: i1.StorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
39
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DebugAppConfigService }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DebugAppConfigService, deps: [{ token: i1.StorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
39
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DebugAppConfigService }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DebugAppConfigService, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DebugAppConfigService, decorators: [{
42
42
  type: Injectable
43
- }], ctorParameters: () => [{ type: i1.StorageService }] });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWctYXBwLWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hcHAtY29uZmlnL2RlYnVnLWFwcC1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUd6RSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZ0JBQWdCO0lBQ3ZELFlBQW9CLE9BQXVCO1FBQ3ZDLEtBQUssRUFBRSxDQUFDO1FBRFEsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7SUFFM0MsQ0FBQztJQUVELEdBQUcsQ0FBSSxHQUFXLEVBQUUsWUFBZ0I7UUFDaEMsSUFBSSxHQUFHLEtBQUssZUFBZSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUksR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ3BGLENBQUM7YUFBTSxJQUFJLEdBQUcsS0FBSyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0MsT0FBTyxTQUFTLENBQUM7UUFDckIsQ0FBQzthQUFNLENBQUM7WUFDSixPQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBUyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUksR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ2pGLENBQUM7SUFDTCxDQUFDOzhHQWJRLHFCQUFxQjtrSEFBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL2NvbW1vbi9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSwgQXBwQ29uZmlnVmFsdWVzIH0gZnJvbSAnLi9hcHAtY29uZmlnLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGVidWdBcHBDb25maWdTZXJ2aWNlIGV4dGVuZHMgQXBwQ29uZmlnU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yYWdlOiBTdG9yYWdlU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGdldDxUPihrZXk6IHN0cmluZywgZGVmYXVsdFZhbHVlPzogVCk6IFQge1xuICAgICAgICBpZiAoa2V5ID09PSBBcHBDb25maWdWYWx1ZXMuT0FVVEhDT05GSUcpIHtcbiAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKHRoaXMuc3RvcmFnZS5nZXRJdGVtKGtleSkpIHx8IHN1cGVyLmdldDxUPihrZXksIGRlZmF1bHRWYWx1ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSBBcHBDb25maWdWYWx1ZXMuQVBQTElDQVRJT04pIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gKHRoaXMuc3RvcmFnZS5nZXRJdGVtKGtleSkgYXMgYW55KSB8fCBzdXBlci5nZXQ8VD4oa2V5LCBkZWZhdWx0VmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
43
+ }], ctorParameters: function () { return [{ type: i1.StorageService }]; } });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWctYXBwLWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hcHAtY29uZmlnL2RlYnVnLWFwcC1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUd6RSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZ0JBQWdCO0lBQ3ZELFlBQW9CLE9BQXVCO1FBQ3ZDLEtBQUssRUFBRSxDQUFDO1FBRFEsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7SUFFM0MsQ0FBQztJQUVELEdBQUcsQ0FBSSxHQUFXLEVBQUUsWUFBZ0I7UUFDaEMsSUFBSSxHQUFHLEtBQUssZUFBZSxDQUFDLFdBQVcsRUFBRTtZQUNyQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFJLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztTQUNuRjthQUFNLElBQUksR0FBRyxLQUFLLGVBQWUsQ0FBQyxXQUFXLEVBQUU7WUFDNUMsT0FBTyxTQUFTLENBQUM7U0FDcEI7YUFBTTtZQUNILE9BQVEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFTLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBSSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDaEY7SUFDTCxDQUFDOzhHQWJRLHFCQUFxQjtrSEFBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL2NvbW1vbi9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSwgQXBwQ29uZmlnVmFsdWVzIH0gZnJvbSAnLi9hcHAtY29uZmlnLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGVidWdBcHBDb25maWdTZXJ2aWNlIGV4dGVuZHMgQXBwQ29uZmlnU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yYWdlOiBTdG9yYWdlU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGdldDxUPihrZXk6IHN0cmluZywgZGVmYXVsdFZhbHVlPzogVCk6IFQge1xuICAgICAgICBpZiAoa2V5ID09PSBBcHBDb25maWdWYWx1ZXMuT0FVVEhDT05GSUcpIHtcbiAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKHRoaXMuc3RvcmFnZS5nZXRJdGVtKGtleSkpIHx8IHN1cGVyLmdldDxUPihrZXksIGRlZmF1bHRWYWx1ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSBBcHBDb25maWdWYWx1ZXMuQVBQTElDQVRJT04pIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gKHRoaXMuc3RvcmFnZS5nZXRJdGVtKGtleSkgYXMgYW55KSB8fCBzdXBlci5nZXQ8VD4oa2V5LCBkZWZhdWx0VmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -36,12 +36,15 @@ export class AuthBearerInterceptor {
36
36
  const requestUrl = req.url;
37
37
  const shallPass = this.excludedUrlsRegex.some((regex) => regex.test(requestUrl));
38
38
  if (shallPass) {
39
- return next.handle(req).pipe(catchError((error) => observableThrowError(error)));
39
+ return next.handle(req)
40
+ .pipe(catchError((error) => observableThrowError(error)));
40
41
  }
41
- return this.authenticationService.addTokenToHeader(requestUrl, req.headers).pipe(mergeMap((headersWithBearer) => {
42
+ return this.authenticationService.addTokenToHeader(requestUrl, req.headers)
43
+ .pipe(mergeMap((headersWithBearer) => {
42
44
  const headerWithContentType = this.appendJsonContentType(headersWithBearer, req.body);
43
45
  const kcReq = req.clone({ headers: headerWithContentType });
44
- return next.handle(kcReq).pipe(catchError((error) => observableThrowError(error)));
46
+ return next.handle(kcReq)
47
+ .pipe(catchError((error) => observableThrowError(error)));
45
48
  }));
46
49
  }
47
50
  appendJsonContentType(headers, reqBody) {
@@ -58,10 +61,10 @@ export class AuthBearerInterceptor {
58
61
  get bearerExcludedUrls() {
59
62
  return this._bearerExcludedUrls;
60
63
  }
61
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AuthBearerInterceptor, deps: [{ token: i1.AuthenticationService }], target: i0.ɵɵFactoryTarget.Injectable }); }
62
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AuthBearerInterceptor }); }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AuthBearerInterceptor, deps: [{ token: i1.AuthenticationService }], target: i0.ɵɵFactoryTarget.Injectable }); }
65
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AuthBearerInterceptor }); }
63
66
  }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AuthBearerInterceptor, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AuthBearerInterceptor, decorators: [{
65
68
  type: Injectable
66
- }], ctorParameters: () => [{ type: i1.AuthenticationService }] });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1iZWFyZXIuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2F1dGgvYXV0aGVudGljYXRpb24taW50ZXJjZXB0b3IvYXV0aC1iZWFyZXIuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFVBQVUsSUFBSSxvQkFBb0IsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBWTNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7OztBQUczRSxNQUFNLE9BQU8scUJBQXFCO0lBSzlCLFlBQW9CLHFCQUE0QztRQUE1QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBSnhELHdCQUFtQixHQUFzQixDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBSS9CLENBQUM7SUFFNUQscUJBQXFCO1FBQ3pCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUM3QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxNQUFNLENBQUMsbUJBQW1CLFVBQVUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RILENBQUM7SUFFRCxTQUFTLENBQ0wsR0FBcUIsRUFDckIsSUFBaUI7UUFFakIsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2pDLENBQUM7UUFFRCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDO1FBQzNCLE1BQU0sU0FBUyxHQUFZLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUMxRixJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzVFLFFBQVEsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLEVBQUU7WUFDM0IsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RGLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1lBQzVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkYsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxPQUFvQixFQUFFLE9BQVk7UUFDNUQsc0dBQXNHO1FBQ3RHLHlFQUF5RTtRQUV6RSxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUsscUJBQXFCLElBQUksQ0FBQyxDQUFDLE9BQU8sWUFBWSxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQzFGLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sWUFBWSxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ2pFLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsZ0NBQWdDLENBQUMsQ0FBQztRQUN6RSxDQUFDO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQWMsa0JBQWtCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3BDLENBQUM7OEdBcERRLHFCQUFxQjtrSEFBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyB0aHJvd0Vycm9yIGFzIG9ic2VydmFibGVUaHJvd0Vycm9yLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEh0dHBIYW5kbGVyLFxuICAgIEh0dHBJbnRlcmNlcHRvcixcbiAgICBIdHRwUmVxdWVzdCxcbiAgICBIdHRwU2VudEV2ZW50LFxuICAgIEh0dHBIZWFkZXJSZXNwb25zZSxcbiAgICBIdHRwUHJvZ3Jlc3NFdmVudCxcbiAgICBIdHRwUmVzcG9uc2UsXG4gICAgSHR0cFVzZXJFdmVudCxcbiAgICBIdHRwSGVhZGVyc1xufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtZXJnZU1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGhlbnRpY2F0aW9uLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXV0aEJlYXJlckludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgICBwcml2YXRlIF9iZWFyZXJFeGNsdWRlZFVybHM6IHJlYWRvbmx5IHN0cmluZ1tdID0gWydyZXNvdXJjZXMvJywgJ2Fzc2V0cy8nLCAnYXV0aC9yZWFsbXMnLCAnaWRwLyddO1xuXG4gICAgcHJpdmF0ZSBleGNsdWRlZFVybHNSZWdleDogUmVnRXhwW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGhlbnRpY2F0aW9uU2VydmljZTogQXV0aGVudGljYXRpb25TZXJ2aWNlKSB7fVxuXG4gICAgcHJpdmF0ZSBsb2FkRXhjbHVkZWRVcmxzUmVnZXgoKSB7XG4gICAgICAgIGNvbnN0IGV4Y2x1ZGVkVXJscyA9IHRoaXMuYmVhcmVyRXhjbHVkZWRVcmxzO1xuICAgICAgICB0aGlzLmV4Y2x1ZGVkVXJsc1JlZ2V4ID0gZXhjbHVkZWRVcmxzLm1hcCgodXJsUGF0dGVybikgPT4gbmV3IFJlZ0V4cChgXmh0dHBzPzovL1teL10rLyR7dXJsUGF0dGVybn1gLCAnaScpKSB8fCBbXTtcbiAgICB9XG5cbiAgICBpbnRlcmNlcHQoXG4gICAgICAgIHJlcTogSHR0cFJlcXVlc3Q8YW55PixcbiAgICAgICAgbmV4dDogSHR0cEhhbmRsZXJcbiAgICApOiBPYnNlcnZhYmxlPEh0dHBTZW50RXZlbnQgfCBIdHRwSGVhZGVyUmVzcG9uc2UgfCBIdHRwUHJvZ3Jlc3NFdmVudCB8IEh0dHBSZXNwb25zZTxhbnk+IHwgSHR0cFVzZXJFdmVudDxhbnk+PiB7XG4gICAgICAgIGlmICghdGhpcy5leGNsdWRlZFVybHNSZWdleCkge1xuICAgICAgICAgICAgdGhpcy5sb2FkRXhjbHVkZWRVcmxzUmVnZXgoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlcXVlc3RVcmwgPSByZXEudXJsO1xuICAgICAgICBjb25zdCBzaGFsbFBhc3M6IGJvb2xlYW4gPSB0aGlzLmV4Y2x1ZGVkVXJsc1JlZ2V4LnNvbWUoKHJlZ2V4KSA9PiByZWdleC50ZXN0KHJlcXVlc3RVcmwpKTtcbiAgICAgICAgaWYgKHNoYWxsUGFzcykge1xuICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSkucGlwZShjYXRjaEVycm9yKChlcnJvcikgPT4gb2JzZXJ2YWJsZVRocm93RXJyb3IoZXJyb3IpKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5hdXRoZW50aWNhdGlvblNlcnZpY2UuYWRkVG9rZW5Ub0hlYWRlcihyZXF1ZXN0VXJsLCByZXEuaGVhZGVycykucGlwZShcbiAgICAgICAgICAgIG1lcmdlTWFwKChoZWFkZXJzV2l0aEJlYXJlcikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlYWRlcldpdGhDb250ZW50VHlwZSA9IHRoaXMuYXBwZW5kSnNvbkNvbnRlbnRUeXBlKGhlYWRlcnNXaXRoQmVhcmVyLCByZXEuYm9keSk7XG4gICAgICAgICAgICAgICAgY29uc3Qga2NSZXEgPSByZXEuY2xvbmUoeyBoZWFkZXJzOiBoZWFkZXJXaXRoQ29udGVudFR5cGUgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKGtjUmVxKS5waXBlKGNhdGNoRXJyb3IoKGVycm9yKSA9PiBvYnNlcnZhYmxlVGhyb3dFcnJvcihlcnJvcikpKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhcHBlbmRKc29uQ29udGVudFR5cGUoaGVhZGVyczogSHR0cEhlYWRlcnMsIHJlcUJvZHk6IGFueSk6IEh0dHBIZWFkZXJzIHtcbiAgICAgICAgLy8gcHJldmVudCBhZGRpbmcgYW55IGNvbnRlbnQgdHlwZSwgdG8gcHJvcGVybHkgaGFuZGxlIGZvcm1EYXRhIHdpdGggYm91bmRhcnkgYnJvd3NlciBnZW5lcmF0ZWQgdmFsdWUsXG4gICAgICAgIC8vIGFzIGFkZGluZyBhbnkgQ29udGVudC1UeXBlIGl0cyBnb2luZyB0byBicmVhayB0aGUgdXBsb2FkIGZ1bmN0aW9uYWxpdHlcblxuICAgICAgICBpZiAoaGVhZGVycy5nZXQoJ0NvbnRlbnQtVHlwZScpID09PSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScgJiYgIShyZXFCb2R5IGluc3RhbmNlb2YgRm9ybURhdGEpKSB7XG4gICAgICAgICAgICByZXR1cm4gaGVhZGVycy5kZWxldGUoJ0NvbnRlbnQtVHlwZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFoZWFkZXJzLmdldCgnQ29udGVudC1UeXBlJykgJiYgIShyZXFCb2R5IGluc3RhbmNlb2YgRm9ybURhdGEpKSB7XG4gICAgICAgICAgICByZXR1cm4gaGVhZGVycy5zZXQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9VVRGLTgnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBoZWFkZXJzO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgYmVhcmVyRXhjbHVkZWRVcmxzKCk6IHJlYWRvbmx5IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JlYXJlckV4Y2x1ZGVkVXJscztcbiAgICB9XG59XG4iXX0=
69
+ }], ctorParameters: function () { return [{ type: i1.AuthenticationService }]; } });
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1iZWFyZXIuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2F1dGgvYXV0aGVudGljYXRpb24taW50ZXJjZXB0b3IvYXV0aC1iZWFyZXIuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFVBQVUsSUFBSSxvQkFBb0IsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7OztBQUczRSxNQUFNLE9BQU8scUJBQXFCO0lBS2hDLFlBQW9CLHFCQUE0QztRQUE1QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBSnRELHdCQUFtQixHQUFzQixDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBSWhDLENBQUM7SUFFN0QscUJBQXFCO1FBQzNCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUM3QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxNQUFNLENBQUMsbUJBQW1CLFVBQVUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BILENBQUM7SUFFRCxTQUFTLENBQUMsR0FBcUIsRUFBRSxJQUFpQjtRQUloRCxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzNCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1NBQzlCO1FBRUQsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQztRQUMzQixNQUFNLFNBQVMsR0FBWSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDMUYsSUFBSSxTQUFTLEVBQUU7WUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO2lCQUNwQixJQUFJLENBQ0gsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNuRCxDQUFDO1NBQ0w7UUFFRCxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQzthQUN4RSxJQUFJLENBQ0gsUUFBUSxDQUFDLENBQUMsaUJBQWlCLEVBQUUsRUFBRTtZQUM3QixNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEYsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBQyxDQUFDLENBQUM7WUFDM0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztpQkFDdEIsSUFBSSxDQUNILFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDcEQsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUNELENBQUM7SUFDTixDQUFDO0lBRU8scUJBQXFCLENBQUMsT0FBb0IsRUFBRSxPQUFZO1FBRTlELHNHQUFzRztRQUN0Ryx5RUFBeUU7UUFFekUsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLHFCQUFxQixJQUFJLENBQUMsQ0FBQyxPQUFPLFlBQVksUUFBUSxDQUFDLEVBQUU7WUFDekYsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ3pDO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sWUFBWSxRQUFRLENBQUMsRUFBRTtZQUNoRSxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGdDQUFnQyxDQUFDLENBQUM7U0FDeEU7UUFFRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUMsSUFBYyxrQkFBa0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDcEMsQ0FBQzs4R0E1RFEscUJBQXFCO2tIQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IHRocm93RXJyb3IgYXMgb2JzZXJ2YWJsZVRocm93RXJyb3IsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0LFxuICBIdHRwU2VudEV2ZW50LCBIdHRwSGVhZGVyUmVzcG9uc2UsIEh0dHBQcm9ncmVzc0V2ZW50LCBIdHRwUmVzcG9uc2UsIEh0dHBVc2VyRXZlbnQsIEh0dHBIZWFkZXJzXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aGVudGljYXRpb24uc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBdXRoQmVhcmVySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICAgIHByaXZhdGUgX2JlYXJlckV4Y2x1ZGVkVXJsczogcmVhZG9ubHkgc3RyaW5nW10gPSBbJ3Jlc291cmNlcy8nLCAnYXNzZXRzLycsICdhdXRoL3JlYWxtcycsICdpZHAvJ107XG5cbiAgICBwcml2YXRlIGV4Y2x1ZGVkVXJsc1JlZ2V4OiBSZWdFeHBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGhlbnRpY2F0aW9uU2VydmljZTogQXV0aGVudGljYXRpb25TZXJ2aWNlKSB7IH1cblxuICBwcml2YXRlIGxvYWRFeGNsdWRlZFVybHNSZWdleCgpIHtcbiAgICBjb25zdCBleGNsdWRlZFVybHMgPSB0aGlzLmJlYXJlckV4Y2x1ZGVkVXJscztcbiAgICB0aGlzLmV4Y2x1ZGVkVXJsc1JlZ2V4ID0gZXhjbHVkZWRVcmxzLm1hcCgodXJsUGF0dGVybikgPT4gbmV3IFJlZ0V4cChgXmh0dHBzPzovL1teL10rLyR7dXJsUGF0dGVybn1gLCAnaScpKSB8fCBbXTtcbiAgfVxuXG4gIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTpcbiAgICBPYnNlcnZhYmxlPEh0dHBTZW50RXZlbnQgfCBIdHRwSGVhZGVyUmVzcG9uc2UgfCBIdHRwUHJvZ3Jlc3NFdmVudCB8IEh0dHBSZXNwb25zZTxhbnk+IHwgSHR0cFVzZXJFdmVudDxhbnk+PiB7XG5cblxuICAgIGlmICghdGhpcy5leGNsdWRlZFVybHNSZWdleCkge1xuICAgICAgdGhpcy5sb2FkRXhjbHVkZWRVcmxzUmVnZXgoKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0VXJsID0gcmVxLnVybDtcbiAgICBjb25zdCBzaGFsbFBhc3M6IGJvb2xlYW4gPSB0aGlzLmV4Y2x1ZGVkVXJsc1JlZ2V4LnNvbWUoKHJlZ2V4KSA9PiByZWdleC50ZXN0KHJlcXVlc3RVcmwpKTtcbiAgICBpZiAoc2hhbGxQYXNzKSB7XG4gICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gb2JzZXJ2YWJsZVRocm93RXJyb3IoZXJyb3IpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmF1dGhlbnRpY2F0aW9uU2VydmljZS5hZGRUb2tlblRvSGVhZGVyKHJlcXVlc3RVcmwsIHJlcS5oZWFkZXJzKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1lcmdlTWFwKChoZWFkZXJzV2l0aEJlYXJlcikgPT4ge1xuICAgICAgICAgIGNvbnN0IGhlYWRlcldpdGhDb250ZW50VHlwZSA9IHRoaXMuYXBwZW5kSnNvbkNvbnRlbnRUeXBlKGhlYWRlcnNXaXRoQmVhcmVyLCByZXEuYm9keSk7XG4gICAgICAgICAgY29uc3Qga2NSZXEgPSByZXEuY2xvbmUoeyBoZWFkZXJzOiBoZWFkZXJXaXRoQ29udGVudFR5cGV9KTtcbiAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUoa2NSZXEpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IG9ic2VydmFibGVUaHJvd0Vycm9yKGVycm9yKSlcbiAgICAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBlbmRKc29uQ29udGVudFR5cGUoaGVhZGVyczogSHR0cEhlYWRlcnMsIHJlcUJvZHk6IGFueSk6IEh0dHBIZWFkZXJzIHtcblxuICAgIC8vIHByZXZlbnQgYWRkaW5nIGFueSBjb250ZW50IHR5cGUsIHRvIHByb3Blcmx5IGhhbmRsZSBmb3JtRGF0YSB3aXRoIGJvdW5kYXJ5IGJyb3dzZXIgZ2VuZXJhdGVkIHZhbHVlLFxuICAgIC8vIGFzIGFkZGluZyBhbnkgQ29udGVudC1UeXBlIGl0cyBnb2luZyB0byBicmVhayB0aGUgdXBsb2FkIGZ1bmN0aW9uYWxpdHlcblxuICAgIGlmIChoZWFkZXJzLmdldCgnQ29udGVudC1UeXBlJykgPT09ICdtdWx0aXBhcnQvZm9ybS1kYXRhJyAmJiAhKHJlcUJvZHkgaW5zdGFuY2VvZiBGb3JtRGF0YSkpIHtcbiAgICAgICAgcmV0dXJuIGhlYWRlcnMuZGVsZXRlKCdDb250ZW50LVR5cGUnKTtcbiAgICB9XG5cbiAgICBpZiAoIWhlYWRlcnMuZ2V0KCdDb250ZW50LVR5cGUnKSAmJiAhKHJlcUJvZHkgaW5zdGFuY2VvZiBGb3JtRGF0YSkpIHtcbiAgICAgICAgcmV0dXJuIGhlYWRlcnMuc2V0KCdDb250ZW50LVR5cGUnLCAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PVVURi04Jyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGhlYWRlcnM7XG4gIH1cblxuICAgIHByb3RlY3RlZCBnZXQgYmVhcmVyRXhjbHVkZWRVcmxzKCk6IHJlYWRvbmx5IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JlYXJlckV4Y2x1ZGVkVXJscztcbiAgICB9XG5cbn1cbiJdfQ==
@@ -344,13 +344,13 @@ export class BasicAlfrescoAuthService extends BaseAuthenticationService {
344
344
  getContentServicesTicket() {
345
345
  return 'Basic ' + btoa(this.contentAuth.getToken());
346
346
  }
347
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: BasicAlfrescoAuthService, deps: [{ token: i1.AppConfigService }, { token: i2.CookieService }, { token: i3.ContentAuth }, { token: i4.ProcessAuth }], target: i0.ɵɵFactoryTarget.Injectable }); }
348
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: BasicAlfrescoAuthService, providedIn: 'root' }); }
347
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: BasicAlfrescoAuthService, deps: [{ token: i1.AppConfigService }, { token: i2.CookieService }, { token: i3.ContentAuth }, { token: i4.ProcessAuth }], target: i0.ɵɵFactoryTarget.Injectable }); }
348
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: BasicAlfrescoAuthService, providedIn: 'root' }); }
349
349
  }
350
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: BasicAlfrescoAuthService, decorators: [{
350
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: BasicAlfrescoAuthService, decorators: [{
351
351
  type: Injectable,
352
352
  args: [{
353
353
  providedIn: 'root'
354
354
  }]
355
- }], ctorParameters: () => [{ type: i1.AppConfigService }, { type: i2.CookieService }, { type: i3.ContentAuth }, { type: i4.ProcessAuth }] });
356
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtYWxmcmVzY28tYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hdXRoL2Jhc2ljLWF1dGgvYmFzaWMtYWxmcmVzY28tYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXhGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUV4QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7O0FBR3BGLE1BQU0sc0JBQXNCLEdBQUcsc0JBQXNCLENBQUM7QUFDdEQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO0FBS25ELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSx5QkFBeUI7SUFVbkUsWUFBWSxTQUEyQixFQUFFLE1BQXFCLEVBQVUsV0FBd0IsRUFBVSxXQUF3QjtRQUM5SCxLQUFLLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRDJDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFUeEgsZ0JBQVcsR0FBcUIsSUFBSSxDQUFDO1FB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QUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BJLENBQUM7SUFFTyx3QkFBd0I7UUFDNUIsT0FBTyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDOzhHQXpXUSx3QkFBd0I7a0hBQXhCLHdCQUF3QixjQUZyQixNQUFNOzsyRkFFVCx3QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlLCBBcHBDb25maWdWYWx1ZXMgfSBmcm9tICcuLi8uLi9hcHAtY29uZmlnL2FwcC1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvYXV0aGVudGljYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24vc2VydmljZXMvY29va2llLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29udGVudEF1dGggfSBmcm9tICcuL2NvbnRlbnQtYXV0aCc7XG5pbXBvcnQgeyBQcm9jZXNzQXV0aCB9IGZyb20gJy4vcHJvY2Vzcy1hdXRoJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJlZGlyZWN0aW9uTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvcmVkaXJlY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgQmFzZUF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Jhc2UtYXV0aGVudGljYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuY29uc3QgUkVNRU1CRVJfTUVfQ09PS0lFX0tFWSA9ICdBTEZSRVNDT19SRU1FTUJFUl9NRSc7XG5jb25zdCBSRU1FTUJFUl9NRV9VTlRJTCA9IDEwMDAgKiA2MCAqIDYwICogMjQgKiAzMDtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBCYXNpY0FsZnJlc2NvQXV0aFNlcnZpY2UgZXh0ZW5kcyBCYXNlQXV0aGVudGljYXRpb25TZXJ2aWNlIHtcbiAgICBwcm90ZWN0ZWQgcmVkaXJlY3RVcmw6IFJlZGlyZWN0aW9uTW9kZWwgPSBudWxsO1xuXG4gICAgYXV0aGVudGljYXRpb25zOiBBdXRoZW50aWNhdGlvbiA9IHtcbiAgICAgICAgYmFzaWNBdXRoOiB7XG4gICAgICAgICAgICB0aWNrZXQ6ICcnXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdiYXNpYydcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IoYXBwQ29uZmlnOiBBcHBDb25maWdTZXJ2aWNlLCBjb29raWU6IENvb2tpZVNlcnZpY2UsIHByaXZhdGUgY29udGVudEF1dGg6IENvbnRlbnRBdXRoLCBwcml2YXRlIHByb2Nlc3NBdXRoOiBQcm9jZXNzQXV0aCkge1xuICAgICAgICBzdXBlcihhcHBDb25maWcsIGNvb2tpZSk7XG5cbiAgICAgICAgdGhpcy5hcHBDb25maWcub25Mb2FkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNPYXV0aCgpICYmIHRoaXMuaXNMb2dnZWRJbigpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXF1aXJlQWxmVGlja2V0KClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkxvZ2luLm5leHQoJ2xvZ2dlZC1pbicpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50QXV0aC5pbnZhbGlkYXRlU2Vzc2lvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkxvZ291dC5uZXh0KCdsb2dvdXQnKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuY29udGVudEF1dGgub25Mb2dvdXQucGlwZShcbiAgICAgICAgICAgIG1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTG9nb3V0Lm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5jb250ZW50QXV0aC5vbkxvZ2luLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkxvZ2luLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5jb250ZW50QXV0aC5vbkVycm9yLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5wcm9jZXNzQXV0aC5vbkxvZ291dC5waXBlKFxuICAgICAgICAgICAgbWFwKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub25Mb2dvdXQubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnByb2Nlc3NBdXRoLm9uTG9naW4ucGlwZShcbiAgICAgICAgICAgIG1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTG9naW4ubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnByb2Nlc3NBdXRoLm9uRXJyb3IucGlwZShcbiAgICAgICAgICAgIG1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uRXJyb3IubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgdGhlIHVzZXIgaW4uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdXNlcm5hbWUgVXNlcm5hbWUgZm9yIHRoZSBsb2dpblxuICAgICAqIEBwYXJhbSBwYXNzd29yZCBQYXNzd29yZCBmb3IgdGhlIGxvZ2luXG4gICAgICogQHBhcmFtIHJlbWVtYmVyTWUgU3RvcmVzIHRoZSB1c2VyJ3MgbG9naW4gZGV0YWlscyBpZiB0cnVlXG4gICAgICogQHJldHVybnMgT2JqZWN0IHdpdGggYXV0aCB0eXBlIChcIkVDTVwiLCBcIkJQTVwiIG9yIFwiQUxMXCIpIGFuZCBhdXRoIHRpY2tldFxuICAgICAqL1xuICAgIGxvZ2luKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcsIHJlbWVtYmVyTWU6IGJvb2xlYW4gPSBmYWxzZSk6IE9ic2VydmFibGU8eyB0eXBlOiBzdHJpbmc7IHRpY2tldDogYW55IH0+IHtcbiAgICAgICAgcmV0dXJuIGZyb20odGhpcy5leGVjdXRlTG9naW4odXNlcm5hbWUsIHBhc3N3b3JkKSkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVJlbWVtYmVyTWVDb29raWUocmVtZW1iZXJNZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkxvZ2luLm5leHQocmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IHRoaXMuYXBwQ29uZmlnLmdldChBcHBDb25maWdWYWx1ZXMuUFJPVklERVJTKSxcbiAgICAgICAgICAgICAgICAgICAgdGlja2V0OiByZXNwb25zZVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4gdGhpcy5oYW5kbGVFcnJvcihlcnIpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGxvZ2luIEFsZnJlc2NvIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIHVzZXJuYW1lIHVzZXJuYW1lIHRvIGxvZ2luXG4gICAgICogQHBhcmFtIHBhc3N3b3JkIHBhc3N3b3JkIHRvIGxvZ2luXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7bmV3IGF1dGhlbnRpY2F0aW9uIHRpY2tldH0gaWYgcmVzb2x2ZWQgYW5kIHtlcnJvcn0gaWYgcmVqZWN0ZWQuXG4gICAgICovXG4gICAgYXN5bmMgZXhlY3V0ZUxvZ2luKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBpZiAoIXRoaXMuaXNDcmVkZW50aWFsVmFsaWQodXNlcm5hbWUpIHx8ICF0aGlzLmlzQ3JlZGVudGlhbFZhbGlkKHBhc3N3b3JkKSkge1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignbWlzc2luZyB1c2VybmFtZSBvciBwYXNzd29yZCcpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh1c2VybmFtZSkge1xuICAgICAgICAgICAgdXNlcm5hbWUgPSB1c2VybmFtZS50cmltKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pc0JQTVByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJvY2Vzc0F1dGgubG9naW4odXNlcm5hbWUsIHBhc3N3b3JkKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0VDTVByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY29udGVudEF1dGgubG9naW4odXNlcm5hbWUsIHBhc3N3b3JkKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0FMTFByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmxvZ2luQlBNRUNNKHVzZXJuYW1lLCBwYXNzd29yZCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdVbmtub3duIGNvbmZpZ3VyYXRpb24nKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGxvZ2luQlBNRUNNKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCBjb250ZW50UHJvbWlzZSA9IHRoaXMuY29udGVudEF1dGgubG9naW4odXNlcm5hbWUsIHBhc3N3b3JkKTtcbiAgICAgICAgY29uc3QgcHJvY2Vzc1Byb21pc2UgPSB0aGlzLnByb2Nlc3NBdXRoLmxvZ2luKHVzZXJuYW1lLCBwYXNzd29yZCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIFByb21pc2UuYWxsKFtjb250ZW50UHJvbWlzZSwgcHJvY2Vzc1Byb21pc2VdKS50aGVuKFxuICAgICAgICAgICAgICAgIChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dpbi5uZXh0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50QXV0aC5pbnZhbGlkYXRlU2Vzc2lvbigpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NBdXRoLmludmFsaWRhdGVTZXNzaW9uKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRXJyb3IubmV4dCgndW5hdXRob3JpemVkJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIHdoZXRoZXIgdGhlIFwicmVtZW1iZXIgbWVcIiBjb29raWUgd2FzIHNldCBvciBub3QuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBUcnVlIGlmIHNldCwgZmFsc2Ugb3RoZXJ3aXNlXG4gICAgICovXG4gICAgaXNSZW1lbWJlck1lU2V0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb29raWUuZ2V0SXRlbShSRU1FTUJFUl9NRV9DT09LSUVfS0VZKSAhPT0gbnVsbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTYXZlcyB0aGUgXCJyZW1lbWJlciBtZVwiIGNvb2tpZSBhcyBlaXRoZXIgYSBsb25nLWxpZmUgY29va2llIG9yIGEgc2Vzc2lvbiBjb29raWUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVtZW1iZXJNZSBFbmFibGVzIGEgbG9uZy1saWZlIGNvb2tpZVxuICAgICAqL1xuICAgIHNhdmVSZW1lbWJlck1lQ29va2llKHJlbWVtYmVyTWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgbGV0IGV4cGlyYXRpb24gPSBudWxsO1xuXG4gICAgICAgIGlmIChyZW1lbWJlck1lKSB7XG4gICAgICAgICAgICBleHBpcmF0aW9uID0gbmV3IERhdGUoKTtcbiAgICAgICAgICAgIGNvbnN0IHRpbWUgPSBleHBpcmF0aW9uLmdldFRpbWUoKTtcbiAgICAgICAgICAgIGNvbnN0IGV4cGlyZVRpbWUgPSB0aW1lICsgUkVNRU1CRVJfTUVfVU5USUw7XG4gICAgICAgICAgICBleHBpcmF0aW9uLnNldFRpbWUoZXhwaXJlVGltZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb29raWUuc2V0SXRlbShSRU1FTUJFUl9NRV9DT09LSUVfS0VZLCAnMScsIGV4cGlyYXRpb24sIG51bGwpO1xuICAgIH1cblxuICAgIGlzQ3JlZGVudGlhbFZhbGlkKGNyZWRlbnRpYWw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gY3JlZGVudGlhbCAhPT0gdW5kZWZpbmVkICYmIGNyZWRlbnRpYWwgIT09IG51bGwgJiYgY3JlZGVudGlhbCAhPT0gJyc7XG4gICAgfVxuXG4gICAgZ2V0VG9rZW4oKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuaXNCUE1Qcm92aWRlcigpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQXV0aC5nZXRUb2tlbigpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuaXNFQ01Qcm92aWRlcigpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXV0aC5nZXRUb2tlbigpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuaXNBTExQcm92aWRlcigpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXV0aC5nZXRUb2tlbigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKiBAcmV0dXJucyBjb250ZW50IGF1dGggdG9rZW5cbiAgICAgKi9cbiAgICBnZXRUaWNrZXRFY20oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudEF1dGguZ2V0VG9rZW4oKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqIEByZXR1cm5zIHByb2Nlc3MgYXV0aCB0b2tlblxuICAgICAqL1xuICAgIGdldFRpY2tldEJwbSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQXV0aC5nZXRUb2tlbigpO1xuICAgIH1cblxuICAgIGlzQnBtTG9nZ2VkSW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NBdXRoLmlzTG9nZ2VkSW4oKTtcbiAgICB9XG5cbiAgICBpc0VjbUxvZ2dlZEluKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXV0aC5pc0xvZ2dlZEluKCk7XG4gICAgfVxuXG4gICAgaXNMb2dnZWRJbigpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgYXV0aFdpdGhDcmVkZW50aWFscyA9IHRoaXMuaXNLZXJiZXJvc0VuYWJsZWQoKTtcblxuICAgICAgICBpZiAodGhpcy5pc0JQTVByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NBdXRoLmlzTG9nZ2VkSW4oKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzRUNNUHJvdmlkZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIGF1dGhXaXRoQ3JlZGVudGlhbHMgPyB0cnVlIDogdGhpcy5jb250ZW50QXV0aC5pc0xvZ2dlZEluKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0FMTFByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHJldHVybiBhdXRoV2l0aENyZWRlbnRpYWxzID8gdHJ1ZSA6IHRoaXMuY29udGVudEF1dGguaXNMb2dnZWRJbigpICYmIHRoaXMucHJvY2Vzc0F1dGguaXNMb2dnZWRJbigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbG9nb3V0IEFsZnJlc2NvIEFQSVxuICAgICAqXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7bG9nb3V0fSBpZiByZXNvbHZlZCBhbmQge2Vycm9yfSBpZiByZWplY3RlZC5cbiAgICAgKi9cbiAgICBhc3luYyBsb2dvdXQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNCUE1Qcm92aWRlcigpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQXV0aC5sb2dvdXQoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzRUNNUHJvdmlkZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudEF1dGgubG9nb3V0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0FMTFByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmxvZ291dEJQTUVDTSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxvZ291dEJQTUVDTSgpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCBjb250ZW50UHJvbWlzZSA9IHRoaXMuY29udGVudEF1dGgubG9nb3V0KCk7XG4gICAgICAgIGNvbnN0IHByb2Nlc3NQcm9taXNlID0gdGhpcy5wcm9jZXNzQXV0aC5sb2dvdXQoKTtcblxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgUHJvbWlzZS5hbGwoW2NvbnRlbnRQcm9taXNlLCBwcm9jZXNzUHJvbWlzZV0pLnRoZW4oXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnRBdXRoLnRpY2tldCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9jZXNzQXV0aC50aWNrZXQgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dvdXQubmV4dCgnbG9nb3V0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoJ2xvZ291dCcpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT09IDQwMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvci5uZXh0KCdlcnJvcicpO1xuICAgICAgICAgICAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICAvLyBkbyBub3RoaW5nXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgVVJMIHRvIHJlZGlyZWN0IHRvIGFmdGVyIGxvZ2luLlxuICAgICAqXG4gICAgICogQHJldHVybnMgVGhlIHJlZGlyZWN0IFVSTFxuICAgICAqL1xuICAgIGdldFJlZGlyZWN0KCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHByb3ZpZGVyID0gdGhpcy5hcHBDb25maWcuZ2V0PHN0cmluZz4oQXBwQ29uZmlnVmFsdWVzLlBST1ZJREVSUyk7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc1ZhbGlkUmVkaXJlY3Rpb24ocHJvdmlkZXIpID8gdGhpcy5yZWRpcmVjdFVybC51cmwgOiBudWxsO1xuICAgIH1cblxuICAgIHNldFJlZGlyZWN0KHVybD86IFJlZGlyZWN0aW9uTW9kZWwpIHtcbiAgICAgICAgdGhpcy5yZWRpcmVjdFVybCA9IHVybDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhc1ZhbGlkUmVkaXJlY3Rpb24ocHJvdmlkZXI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWRpcmVjdFVybCAmJiAodGhpcy5yZWRpcmVjdFVybC5wcm92aWRlciA9PT0gcHJvdmlkZXIgfHwgdGhpcy5oYXNTZWxlY3RlZFByb3ZpZGVyQWxsKHByb3ZpZGVyKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNTZWxlY3RlZFByb3ZpZGVyQWxsKHByb3ZpZGVyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVkaXJlY3RVcmwgJiYgKHRoaXMucmVkaXJlY3RVcmwucHJvdmlkZXIgPT09ICdBTEwnIHx8IHByb3ZpZGVyID09PSAnQUxMJyk7XG4gICAgfVxuXG4gICAgZ2V0QnBtVXNlcm5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0F1dGguZ2V0VXNlcm5hbWUoKTtcbiAgICB9XG5cbiAgICBnZXRFY21Vc2VybmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXV0aC5nZXRVc2VybmFtZSgpO1xuICAgIH1cblxuICAgIGdldFVzZXJuYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmlzQlBNUHJvdmlkZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0F1dGguZ2V0VXNlcm5hbWUoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzRUNNUHJvdmlkZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudEF1dGguZ2V0VXNlcm5hbWUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnRBdXRoLmdldFVzZXJuYW1lKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEb2VzIGtlcmJlcm9zIGVuYWJsZWQ/XG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBUcnVlIGlmIGVuYWJsZWQsIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuICAgIGlzS2VyYmVyb3NFbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBDb25maWcuZ2V0PGJvb2xlYW4+KEFwcENvbmZpZ1ZhbHVlcy5BVVRIX1dJVEhfQ1JFREVOVElBTFMsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBnZXRBdXRoSGVhZGVycyhyZXF1ZXN0VXJsOiBzdHJpbmcsIGhlYWRlcjogSHR0cEhlYWRlcnMpOiBIdHRwSGVhZGVycyB7XG4gICAgICAgIHJldHVybiB0aGlzLmFkZEJhc2ljQXV0aChyZXF1ZXN0VXJsLCBoZWFkZXIpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYWRkQmFzaWNBdXRoKHJlcXVlc3RVcmw6IHN0cmluZywgaGVhZGVyOiBIdHRwSGVhZGVycyk6IEh0dHBIZWFkZXJzIHtcbiAgICAgICAgaWYgKHRoaXMuaXNLZXJiZXJvc0VuYWJsZWQoKSkge1xuICAgICAgICAgICAgcmV0dXJuIGhlYWRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRpY2tldCA9IHRoaXMuZ2V0VGlja2V0RWNtQmFzZTY0KHJlcXVlc3RVcmwpO1xuXG4gICAgICAgIGlmICghdGlja2V0KSB7XG4gICAgICAgICAgICByZXR1cm4gaGVhZGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGhlYWRlci5zZXQoJ0F1dGhvcml6YXRpb24nLCB0aWNrZXQpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlcXVpcmVBbGZUaWNrZXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnRBdXRoLnJlcXVpcmVBbGZUaWNrZXQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBCUE0gdGlja2V0IGZyb20gdGhlIFN0b3JhZ2UgaW4gQmFzZSA2NCBmb3JtYXQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVxdWVzdFVybCB0aGUgcmVxdWVzdCB1cmxcbiAgICAgKiBAcmV0dXJucyBUaGUgdGlja2V0IG9yIGBudWxsYCBpZiBub25lIHdhcyBmb3VuZFxuICAgICAqL1xuICAgIGdldFRpY2tldEVjbUJhc2U2NChyZXF1ZXN0VXJsOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgbGV0IHRpY2tldCA9IG51bGw7XG5cbiAgICAgICAgY29uc3QgYnBtUm9vdCA9IGAvJHt0aGlzLmFwcENvbmZpZy5nZXQ8c3RyaW5nPihBcHBDb25maWdWYWx1ZXMuQ09OVEVYVFJPT1RCUE0pIHx8ICdhY3Rpdml0aS1hcHAnfS9gO1xuICAgICAgICBjb25zdCBlY21Sb290ID0gYC8ke3RoaXMuYXBwQ29uZmlnLmdldDxzdHJpbmc+KEFwcENvbmZpZ1ZhbHVlcy5DT05URVhUUk9PVEVDTSkgfHwgJ2FsZnJlc2NvJ30vYDtcblxuICAgICAgICBpZiAocmVxdWVzdFVybD8uaW5jbHVkZXMoZWNtUm9vdCkgJiYgIXJlcXVlc3RVcmwuaW5jbHVkZXMoYnBtUm9vdCkpIHtcbiAgICAgICAgICAgIHRpY2tldCA9IHRoaXMuZ2V0Q29udGVudFNlcnZpY2VzVGlja2V0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAocmVxdWVzdFVybD8uaW5jbHVkZXMoYnBtUm9vdCkgJiYgIXJlcXVlc3RVcmwuaW5jbHVkZXMoZWNtUm9vdCkpIHtcbiAgICAgICAgICAgIHRpY2tldCA9IHRoaXMuZ2V0UHJvY2Vzc1NlcnZpY2VzVGlja2V0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAocmVxdWVzdFVybD8uaW5jbHVkZXMoZWNtUm9vdCkgJiYgcmVxdWVzdFVybC5pbmNsdWRlcyhicG1Sb290KSkge1xuICAgICAgICAgICAgdGlja2V0ID0gcmVxdWVzdFVybC5pbmRleE9mKGVjbVJvb3QpIDwgcmVxdWVzdFVybC5pbmRleE9mKGJwbVJvb3QpID8gdGhpcy5nZXRDb250ZW50U2VydmljZXNUaWNrZXQoKSA6IHRoaXMuZ2V0UHJvY2Vzc1NlcnZpY2VzVGlja2V0KCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRpY2tldDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFByb2Nlc3NTZXJ2aWNlc1RpY2tldCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQXV0aC5nZXRUb2tlbigpPy5zdGFydHNXaXRoKCdCYXNpYyAnKSA/IHRoaXMucHJvY2Vzc0F1dGguZ2V0VG9rZW4oKSA6ICdCYXNpYyAnICsgdGhpcy5wcm9jZXNzQXV0aC5nZXRUb2tlbigpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q29udGVudFNlcnZpY2VzVGlja2V0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnQmFzaWMgJyArIGJ0b2EodGhpcy5jb250ZW50QXV0aC5nZXRUb2tlbigpKTtcbiAgICB9XG59XG4iXX0=
355
+ }], ctorParameters: function () { return [{ type: i1.AppConfigService }, { type: i2.CookieService }, { type: i3.ContentAuth }, { type: i4.ProcessAuth }]; } });
356
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtYWxmcmVzY28tYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hdXRoL2Jhc2ljLWF1dGgvYmFzaWMtYWxmcmVzY28tYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXhGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUV4QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7O0FBR3BGLE1BQU0sc0JBQXNCLEdBQUcsc0JBQXNCLENBQUM7QUFDdEQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO0FBS25ELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSx5QkFBeUI7SUFVbkUsWUFBWSxTQUEyQixFQUFFLE1BQXFCLEVBQVUsV0FBd0IsRUFBVSxXQUF3QjtRQUM5SCxLQUFLLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRDJDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFUeEgsZ0JBQVcsR0FBcUIsSUFBSSxDQUFDO1FB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OlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlLCBBcHBDb25maWdWYWx1ZXMgfSBmcm9tICcuLi8uLi9hcHAtY29uZmlnL2FwcC1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvYXV0aGVudGljYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24vc2VydmljZXMvY29va2llLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29udGVudEF1dGggfSBmcm9tICcuL2NvbnRlbnQtYXV0aCc7XG5pbXBvcnQgeyBQcm9jZXNzQXV0aCB9IGZyb20gJy4vcHJvY2Vzcy1hdXRoJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJlZGlyZWN0aW9uTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvcmVkaXJlY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgQmFzZUF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Jhc2UtYXV0aGVudGljYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuY29uc3QgUkVNRU1CRVJfTUVfQ09PS0lFX0tFWSA9ICdBTEZSRVNDT19SRU1FTUJFUl9NRSc7XG5jb25zdCBSRU1FTUJFUl9NRV9VTlRJTCA9IDEwMDAgKiA2MCAqIDYwICogMjQgKiAzMDtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBCYXNpY0FsZnJlc2NvQXV0aFNlcnZpY2UgZXh0ZW5kcyBCYXNlQXV0aGVudGljYXRpb25TZXJ2aWNlIHtcbiAgICBwcm90ZWN0ZWQgcmVkaXJlY3RVcmw6IFJlZGlyZWN0aW9uTW9kZWwgPSBudWxsO1xuXG4gICAgYXV0aGVudGljYXRpb25zOiBBdXRoZW50aWNhdGlvbiA9IHtcbiAgICAgICAgYmFzaWNBdXRoOiB7XG4gICAgICAgICAgICB0aWNrZXQ6ICcnXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdiYXNpYydcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IoYXBwQ29uZmlnOiBBcHBDb25maWdTZXJ2aWNlLCBjb29raWU6IENvb2tpZVNlcnZpY2UsIHByaXZhdGUgY29udGVudEF1dGg6IENvbnRlbnRBdXRoLCBwcml2YXRlIHByb2Nlc3NBdXRoOiBQcm9jZXNzQXV0aCkge1xuICAgICAgICBzdXBlcihhcHBDb25maWcsIGNvb2tpZSk7XG5cbiAgICAgICAgdGhpcy5hcHBDb25maWcub25Mb2FkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNPYXV0aCgpICYmIHRoaXMuaXNMb2dnZWRJbigpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXF1aXJlQWxmVGlja2V0KClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkxvZ2luLm5leHQoJ2xvZ2dlZC1pbicpO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50QXV0aC5pbnZhbGlkYXRlU2Vzc2lvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkxvZ291dC5uZXh0KCdsb2dvdXQnKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuY29udGVudEF1dGgub25Mb2dvdXQucGlwZShcbiAgICAgICAgICAgIG1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTG9nb3V0Lm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5jb250ZW50QXV0aC5vbkxvZ2luLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkxvZ2luLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5jb250ZW50QXV0aC5vbkVycm9yLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5wcm9jZXNzQXV0aC5vbkxvZ291dC5waXBlKFxuICAgICAgICAgICAgbWFwKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub25Mb2dvdXQubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnByb2Nlc3NBdXRoLm9uTG9naW4ucGlwZShcbiAgICAgICAgICAgIG1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTG9naW4ubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnByb2Nlc3NBdXRoLm9uRXJyb3IucGlwZShcbiAgICAgICAgICAgIG1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uRXJyb3IubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgdGhlIHVzZXIgaW4uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdXNlcm5hbWUgVXNlcm5hbWUgZm9yIHRoZSBsb2dpblxuICAgICAqIEBwYXJhbSBwYXNzd29yZCBQYXNzd29yZCBmb3IgdGhlIGxvZ2luXG4gICAgICogQHBhcmFtIHJlbWVtYmVyTWUgU3RvcmVzIHRoZSB1c2VyJ3MgbG9naW4gZGV0YWlscyBpZiB0cnVlXG4gICAgICogQHJldHVybnMgT2JqZWN0IHdpdGggYXV0aCB0eXBlIChcIkVDTVwiLCBcIkJQTVwiIG9yIFwiQUxMXCIpIGFuZCBhdXRoIHRpY2tldFxuICAgICAqL1xuICAgIGxvZ2luKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcsIHJlbWVtYmVyTWU6IGJvb2xlYW4gPSBmYWxzZSk6IE9ic2VydmFibGU8eyB0eXBlOiBzdHJpbmc7IHRpY2tldDogYW55IH0+IHtcbiAgICAgICAgcmV0dXJuIGZyb20odGhpcy5leGVjdXRlTG9naW4odXNlcm5hbWUsIHBhc3N3b3JkKSkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVJlbWVtYmVyTWVDb29raWUocmVtZW1iZXJNZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkxvZ2luLm5leHQocmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IHRoaXMuYXBwQ29uZmlnLmdldChBcHBDb25maWdWYWx1ZXMuUFJPVklERVJTKSxcbiAgICAgICAgICAgICAgICAgICAgdGlja2V0OiByZXNwb25zZVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4gdGhpcy5oYW5kbGVFcnJvcihlcnIpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGxvZ2luIEFsZnJlc2NvIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIHVzZXJuYW1lIHVzZXJuYW1lIHRvIGxvZ2luXG4gICAgICogQHBhcmFtIHBhc3N3b3JkIHBhc3N3b3JkIHRvIGxvZ2luXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7bmV3IGF1dGhlbnRpY2F0aW9uIHRpY2tldH0gaWYgcmVzb2x2ZWQgYW5kIHtlcnJvcn0gaWYgcmVqZWN0ZWQuXG4gICAgICovXG4gICAgYXN5bmMgZXhlY3V0ZUxvZ2luKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBpZiAoIXRoaXMuaXNDcmVkZW50aWFsVmFsaWQodXNlcm5hbWUpIHx8ICF0aGlzLmlzQ3JlZGVudGlhbFZhbGlkKHBhc3N3b3JkKSkge1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignbWlzc2luZyB1c2VybmFtZSBvciBwYXNzd29yZCcpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh1c2VybmFtZSkge1xuICAgICAgICAgICAgdXNlcm5hbWUgPSB1c2VybmFtZS50cmltKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pc0JQTVByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJvY2Vzc0F1dGgubG9naW4odXNlcm5hbWUsIHBhc3N3b3JkKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0VDTVByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY29udGVudEF1dGgubG9naW4odXNlcm5hbWUsIHBhc3N3b3JkKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0FMTFByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmxvZ2luQlBNRUNNKHVzZXJuYW1lLCBwYXNzd29yZCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdVbmtub3duIGNvbmZpZ3VyYXRpb24nKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGxvZ2luQlBNRUNNKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCBjb250ZW50UHJvbWlzZSA9IHRoaXMuY29udGVudEF1dGgubG9naW4odXNlcm5hbWUsIHBhc3N3b3JkKTtcbiAgICAgICAgY29uc3QgcHJvY2Vzc1Byb21pc2UgPSB0aGlzLnByb2Nlc3NBdXRoLmxvZ2luKHVzZXJuYW1lLCBwYXNzd29yZCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIFByb21pc2UuYWxsKFtjb250ZW50UHJvbWlzZSwgcHJvY2Vzc1Byb21pc2VdKS50aGVuKFxuICAgICAgICAgICAgICAgIChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dpbi5uZXh0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50QXV0aC5pbnZhbGlkYXRlU2Vzc2lvbigpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NBdXRoLmludmFsaWRhdGVTZXNzaW9uKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRXJyb3IubmV4dCgndW5hdXRob3JpemVkJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIHdoZXRoZXIgdGhlIFwicmVtZW1iZXIgbWVcIiBjb29raWUgd2FzIHNldCBvciBub3QuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBUcnVlIGlmIHNldCwgZmFsc2Ugb3RoZXJ3aXNlXG4gICAgICovXG4gICAgaXNSZW1lbWJlck1lU2V0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb29raWUuZ2V0SXRlbShSRU1FTUJFUl9NRV9DT09LSUVfS0VZKSAhPT0gbnVsbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTYXZlcyB0aGUgXCJyZW1lbWJlciBtZVwiIGNvb2tpZSBhcyBlaXRoZXIgYSBsb25nLWxpZmUgY29va2llIG9yIGEgc2Vzc2lvbiBjb29raWUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVtZW1iZXJNZSBFbmFibGVzIGEgbG9uZy1saWZlIGNvb2tpZVxuICAgICAqL1xuICAgIHNhdmVSZW1lbWJlck1lQ29va2llKHJlbWVtYmVyTWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgbGV0IGV4cGlyYXRpb24gPSBudWxsO1xuXG4gICAgICAgIGlmIChyZW1lbWJlck1lKSB7XG4gICAgICAgICAgICBleHBpcmF0aW9uID0gbmV3IERhdGUoKTtcbiAgICAgICAgICAgIGNvbnN0IHRpbWUgPSBleHBpcmF0aW9uLmdldFRpbWUoKTtcbiAgICAgICAgICAgIGNvbnN0IGV4cGlyZVRpbWUgPSB0aW1lICsgUkVNRU1CRVJfTUVfVU5USUw7XG4gICAgICAgICAgICBleHBpcmF0aW9uLnNldFRpbWUoZXhwaXJlVGltZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb29raWUuc2V0SXRlbShSRU1FTUJFUl9NRV9DT09LSUVfS0VZLCAnMScsIGV4cGlyYXRpb24sIG51bGwpO1xuICAgIH1cblxuICAgIGlzQ3JlZGVudGlhbFZhbGlkKGNyZWRlbnRpYWw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gY3JlZGVudGlhbCAhPT0gdW5kZWZpbmVkICYmIGNyZWRlbnRpYWwgIT09IG51bGwgJiYgY3JlZGVudGlhbCAhPT0gJyc7XG4gICAgfVxuXG4gICAgZ2V0VG9rZW4oKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuaXNCUE1Qcm92aWRlcigpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQXV0aC5nZXRUb2tlbigpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuaXNFQ01Qcm92aWRlcigpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXV0aC5nZXRUb2tlbigpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuaXNBTExQcm92aWRlcigpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXV0aC5nZXRUb2tlbigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKiBAcmV0dXJucyBjb250ZW50IGF1dGggdG9rZW5cbiAgICAgKi9cbiAgICBnZXRUaWNrZXRFY20oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudEF1dGguZ2V0VG9rZW4oKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqIEByZXR1cm5zIHByb2Nlc3MgYXV0aCB0b2tlblxuICAgICAqL1xuICAgIGdldFRpY2tldEJwbSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQXV0aC5nZXRUb2tlbigpO1xuICAgIH1cblxuICAgIGlzQnBtTG9nZ2VkSW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NBdXRoLmlzTG9nZ2VkSW4oKTtcbiAgICB9XG5cbiAgICBpc0VjbUxvZ2dlZEluKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXV0aC5pc0xvZ2dlZEluKCk7XG4gICAgfVxuXG4gICAgaXNMb2dnZWRJbigpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgYXV0aFdpdGhDcmVkZW50aWFscyA9IHRoaXMuaXNLZXJiZXJvc0VuYWJsZWQoKTtcblxuICAgICAgICBpZiAodGhpcy5pc0JQTVByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NBdXRoLmlzTG9nZ2VkSW4oKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzRUNNUHJvdmlkZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIGF1dGhXaXRoQ3JlZGVudGlhbHMgPyB0cnVlIDogdGhpcy5jb250ZW50QXV0aC5pc0xvZ2dlZEluKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0FMTFByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHJldHVybiBhdXRoV2l0aENyZWRlbnRpYWxzID8gdHJ1ZSA6IHRoaXMuY29udGVudEF1dGguaXNMb2dnZWRJbigpICYmIHRoaXMucHJvY2Vzc0F1dGguaXNMb2dnZWRJbigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbG9nb3V0IEFsZnJlc2NvIEFQSVxuICAgICAqXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7bG9nb3V0fSBpZiByZXNvbHZlZCBhbmQge2Vycm9yfSBpZiByZWplY3RlZC5cbiAgICAgKi9cbiAgICBhc3luYyBsb2dvdXQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNCUE1Qcm92aWRlcigpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQXV0aC5sb2dvdXQoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzRUNNUHJvdmlkZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudEF1dGgubG9nb3V0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0FMTFByb3ZpZGVyKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmxvZ291dEJQTUVDTSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxvZ291dEJQTUVDTSgpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICBjb25zdCBjb250ZW50UHJvbWlzZSA9IHRoaXMuY29udGVudEF1dGgubG9nb3V0KCk7XG4gICAgICAgIGNvbnN0IHByb2Nlc3NQcm9taXNlID0gdGhpcy5wcm9jZXNzQXV0aC5sb2dvdXQoKTtcblxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgUHJvbWlzZS5hbGwoW2NvbnRlbnRQcm9taXNlLCBwcm9jZXNzUHJvbWlzZV0pLnRoZW4oXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnRBdXRoLnRpY2tldCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9jZXNzQXV0aC50aWNrZXQgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dvdXQubmV4dCgnbG9nb3V0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoJ2xvZ291dCcpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT09IDQwMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvci5uZXh0KCdlcnJvcicpO1xuICAgICAgICAgICAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICAvLyBkbyBub3RoaW5nXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgVVJMIHRvIHJlZGlyZWN0IHRvIGFmdGVyIGxvZ2luLlxuICAgICAqXG4gICAgICogQHJldHVybnMgVGhlIHJlZGlyZWN0IFVSTFxuICAgICAqL1xuICAgIGdldFJlZGlyZWN0KCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHByb3ZpZGVyID0gdGhpcy5hcHBDb25maWcuZ2V0PHN0cmluZz4oQXBwQ29uZmlnVmFsdWVzLlBST1ZJREVSUyk7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc1ZhbGlkUmVkaXJlY3Rpb24ocHJvdmlkZXIpID8gdGhpcy5yZWRpcmVjdFVybC51cmwgOiBudWxsO1xuICAgIH1cblxuICAgIHNldFJlZGlyZWN0KHVybD86IFJlZGlyZWN0aW9uTW9kZWwpIHtcbiAgICAgICAgdGhpcy5yZWRpcmVjdFVybCA9IHVybDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhc1ZhbGlkUmVkaXJlY3Rpb24ocHJvdmlkZXI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWRpcmVjdFVybCAmJiAodGhpcy5yZWRpcmVjdFVybC5wcm92aWRlciA9PT0gcHJvdmlkZXIgfHwgdGhpcy5oYXNTZWxlY3RlZFByb3ZpZGVyQWxsKHByb3ZpZGVyKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNTZWxlY3RlZFByb3ZpZGVyQWxsKHByb3ZpZGVyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVkaXJlY3RVcmwgJiYgKHRoaXMucmVkaXJlY3RVcmwucHJvdmlkZXIgPT09ICdBTEwnIHx8IHByb3ZpZGVyID09PSAnQUxMJyk7XG4gICAgfVxuXG4gICAgZ2V0QnBtVXNlcm5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0F1dGguZ2V0VXNlcm5hbWUoKTtcbiAgICB9XG5cbiAgICBnZXRFY21Vc2VybmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50QXV0aC5nZXRVc2VybmFtZSgpO1xuICAgIH1cblxuICAgIGdldFVzZXJuYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmlzQlBNUHJvdmlkZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0F1dGguZ2V0VXNlcm5hbWUoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzRUNNUHJvdmlkZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29udGVudEF1dGguZ2V0VXNlcm5hbWUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnRBdXRoLmdldFVzZXJuYW1lKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEb2VzIGtlcmJlcm9zIGVuYWJsZWQ/XG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBUcnVlIGlmIGVuYWJsZWQsIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuICAgIGlzS2VyYmVyb3NFbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBDb25maWcuZ2V0PGJvb2xlYW4+KEFwcENvbmZpZ1ZhbHVlcy5BVVRIX1dJVEhfQ1JFREVOVElBTFMsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBnZXRBdXRoSGVhZGVycyhyZXF1ZXN0VXJsOiBzdHJpbmcsIGhlYWRlcjogSHR0cEhlYWRlcnMpOiBIdHRwSGVhZGVycyB7XG4gICAgICAgIHJldHVybiB0aGlzLmFkZEJhc2ljQXV0aChyZXF1ZXN0VXJsLCBoZWFkZXIpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYWRkQmFzaWNBdXRoKHJlcXVlc3RVcmw6IHN0cmluZywgaGVhZGVyOiBIdHRwSGVhZGVycyk6IEh0dHBIZWFkZXJzIHtcbiAgICAgICAgaWYgKHRoaXMuaXNLZXJiZXJvc0VuYWJsZWQoKSkge1xuICAgICAgICAgICAgcmV0dXJuIGhlYWRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRpY2tldCA9IHRoaXMuZ2V0VGlja2V0RWNtQmFzZTY0KHJlcXVlc3RVcmwpO1xuXG4gICAgICAgIGlmICghdGlja2V0KSB7XG4gICAgICAgICAgICByZXR1cm4gaGVhZGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGhlYWRlci5zZXQoJ0F1dGhvcml6YXRpb24nLCB0aWNrZXQpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlcXVpcmVBbGZUaWNrZXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnRBdXRoLnJlcXVpcmVBbGZUaWNrZXQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBCUE0gdGlja2V0IGZyb20gdGhlIFN0b3JhZ2UgaW4gQmFzZSA2NCBmb3JtYXQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVxdWVzdFVybCB0aGUgcmVxdWVzdCB1cmxcbiAgICAgKiBAcmV0dXJucyBUaGUgdGlja2V0IG9yIGBudWxsYCBpZiBub25lIHdhcyBmb3VuZFxuICAgICAqL1xuICAgIGdldFRpY2tldEVjbUJhc2U2NChyZXF1ZXN0VXJsOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgbGV0IHRpY2tldCA9IG51bGw7XG5cbiAgICAgICAgY29uc3QgYnBtUm9vdCA9IGAvJHt0aGlzLmFwcENvbmZpZy5nZXQ8c3RyaW5nPihBcHBDb25maWdWYWx1ZXMuQ09OVEVYVFJPT1RCUE0pIHx8ICdhY3Rpdml0aS1hcHAnfS9gO1xuICAgICAgICBjb25zdCBlY21Sb290ID0gYC8ke3RoaXMuYXBwQ29uZmlnLmdldDxzdHJpbmc+KEFwcENvbmZpZ1ZhbHVlcy5DT05URVhUUk9PVEVDTSkgfHwgJ2FsZnJlc2NvJ30vYDtcblxuICAgICAgICBpZiAocmVxdWVzdFVybD8uaW5jbHVkZXMoZWNtUm9vdCkgJiYgIXJlcXVlc3RVcmwuaW5jbHVkZXMoYnBtUm9vdCkpIHtcbiAgICAgICAgICAgIHRpY2tldCA9IHRoaXMuZ2V0Q29udGVudFNlcnZpY2VzVGlja2V0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAocmVxdWVzdFVybD8uaW5jbHVkZXMoYnBtUm9vdCkgJiYgIXJlcXVlc3RVcmwuaW5jbHVkZXMoZWNtUm9vdCkpIHtcbiAgICAgICAgICAgIHRpY2tldCA9IHRoaXMuZ2V0UHJvY2Vzc1NlcnZpY2VzVGlja2V0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAocmVxdWVzdFVybD8uaW5jbHVkZXMoZWNtUm9vdCkgJiYgcmVxdWVzdFVybC5pbmNsdWRlcyhicG1Sb290KSkge1xuICAgICAgICAgICAgdGlja2V0ID0gcmVxdWVzdFVybC5pbmRleE9mKGVjbVJvb3QpIDwgcmVxdWVzdFVybC5pbmRleE9mKGJwbVJvb3QpID8gdGhpcy5nZXRDb250ZW50U2VydmljZXNUaWNrZXQoKSA6IHRoaXMuZ2V0UHJvY2Vzc1NlcnZpY2VzVGlja2V0KCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRpY2tldDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFByb2Nlc3NTZXJ2aWNlc1RpY2tldCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQXV0aC5nZXRUb2tlbigpPy5zdGFydHNXaXRoKCdCYXNpYyAnKSA/IHRoaXMucHJvY2Vzc0F1dGguZ2V0VG9rZW4oKSA6ICdCYXNpYyAnICsgdGhpcy5wcm9jZXNzQXV0aC5nZXRUb2tlbigpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q29udGVudFNlcnZpY2VzVGlja2V0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnQmFzaWMgJyArIGJ0b2EodGhpcy5jb250ZW50QXV0aC5nZXRUb2tlbigpKTtcbiAgICB9XG59XG4iXX0=
@@ -165,7 +165,7 @@ export class ContentAuth {
165
165
  }
166
166
  createTicket(ticketBodyCreate) {
167
167
  if (ticketBodyCreate === null || ticketBodyCreate === undefined) {
168
- this.onError.next(`Missing param ticketBodyCreate`);
168
+ this.onError.next((`Missing param ticketBodyCreate`));
169
169
  throw new Error(`Missing param ticketBodyCreate`);
170
170
  }
171
171
  return this.adfHttpClient.post(this.basePath + '/tickets', { bodyParam: ticketBodyCreate });
@@ -177,13 +177,13 @@ export class ContentAuth {
177
177
  deleteTicket() {
178
178
  return this.adfHttpClient.delete(this.basePath + '/tickets/-me-');
179
179
  }
180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ContentAuth, deps: [{ token: i1.AppConfigService }, { token: i2.AdfHttpClient }, { token: i3.StorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
181
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ContentAuth, providedIn: 'root' }); }
180
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ContentAuth, deps: [{ token: i1.AppConfigService }, { token: i2.AdfHttpClient }, { token: i3.StorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
181
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ContentAuth, providedIn: 'root' }); }
182
182
  }
183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ContentAuth, decorators: [{
183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ContentAuth, decorators: [{
184
184
  type: Injectable,
185
185
  args: [{
186
186
  providedIn: 'root'
187
187
  }]
188
- }], ctorParameters: () => [{ type: i1.AppConfigService }, { type: i2.AdfHttpClient }, { type: i3.StorageService }] });
189
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1hdXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hdXRoL2Jhc2ljLWF1dGgvY29udGVudC1hdXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBa0I5QyxNQUFNLE9BQU8sV0FBVztJQWlCcEIsSUFBSSxRQUFRO1FBQ1IsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBUyxlQUFlLENBQUMsY0FBYyxDQUFDLElBQUksVUFBVSxDQUFDO1FBQ3ZHLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBUyxlQUFlLENBQUMsT0FBTyxDQUFDLEdBQUcsR0FBRyxHQUFHLGNBQWMsR0FBRyxpREFBaUQsQ0FBQztJQUNqSixDQUFDO0lBRUQsWUFBb0IsZ0JBQWtDLEVBQVUsYUFBNEIsRUFBVSxjQUE4QjtRQUFoSCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFyQnBJLFlBQU8sR0FBRyxJQUFJLGFBQWEsQ0FBTSxDQUFDLENBQUMsQ0FBQztRQUNwQyxhQUFRLEdBQUcsSUFBSSxhQUFhLENBQU0sQ0FBQyxDQUFDLENBQUM7UUFDckMsWUFBTyxHQUFHLElBQUksT0FB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aEMsQ0FBQztJQUVELFlBQVksQ0FBQyxnQkFBNEI7UUFDckMsSUFBSSxnQkFBZ0IsS0FBSyxJQUFJLElBQUksZ0JBQWdCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDOUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztZQUVwRCxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxLQUFLLENBQUMsZ0JBQWdCO1FBQ2xCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELFlBQVk7UUFDUixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLENBQUM7SUFDdEUsQ0FBQzs4R0EvS1EsV0FBVztrSEFBWCxXQUFXLGNBRlIsTUFBTTs7MkZBRVQsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFkZkh0dHBDbGllbnQgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUvYXBpJztcbmltcG9ydCB7IEFwcENvbmZpZ1NlcnZpY2UsIEFwcENvbmZpZ1ZhbHVlcyB9IGZyb20gJy4uLy4uL2FwcC1jb25maWcvYXBwLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tbW9uL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBSZXBsYXlTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvYXV0aGVudGljYXRpb24uaW50ZXJmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBUaWNrZXRCb2R5IHtcbiAgICB1c2VySWQ/OiBzdHJpbmc7XG4gICAgcGFzc3dvcmQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGlja2V0RW50cnkge1xuICAgIGVudHJ5OiB7XG4gICAgICAgIGlkPzogc3RyaW5nO1xuICAgICAgICB1c2VySWQ/OiBzdHJpbmc7XG4gICAgfTtcbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDb250ZW50QXV0aCB7XG4gICAgb25Mb2dpbiA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSk7XG4gICAgb25Mb2dvdXQgPSBuZXcgUmVwbGF5U3ViamVjdDxhbnk+KDEpO1xuICAgIG9uRXJyb3IgPSBuZXcgU3ViamVjdDxhbnk+KCk7XG5cbiAgICB0aWNrZXQ6IHN0cmluZztcbiAgICBjb25maWcgPSB7XG4gICAgICAgIHRpY2tldEVjbTogbnVsbFxuICAgIH07XG5cbiAgICBhdXRoZW50aWNhdGlvbnM6IEF1dGhlbnRpY2F0aW9uID0ge1xuICAgICAgICBiYXNpY0F1dGg6IHtcbiAgICAgICAgICAgIHRpY2tldDogJydcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ2Jhc2ljJ1xuICAgIH07XG5cbiAgICBnZXQgYmFzZVBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY29udGV4dFJvb3RFY20gPSB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuZ2V0PHN0cmluZz4oQXBwQ29uZmlnVmFsdWVzLkNPTlRFWFRST09URUNNKSB8fCAnYWxmcmVzY28nO1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBDb25maWdTZXJ2aWNlLmdldDxzdHJpbmc+KEFwcENvbmZpZ1ZhbHVlcy5FQ01IT1NUKSArICcvJyArIGNvbnRleHRSb290RWNtICsgJy9hcGkvLWRlZmF1bHQtL3B1YmxpYy9hdXRoZW50aWNhdGlvbi92ZXJzaW9ucy8xJztcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcENvbmZpZ1NlcnZpY2U6IEFwcENvbmZpZ1NlcnZpY2UsIHByaXZhdGUgYWRmSHR0cENsaWVudDogQWRmSHR0cENsaWVudCwgcHJpdmF0ZSBzdG9yYWdlU2VydmljZTogU3RvcmFnZVNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy5hcHBDb25maWdTZXJ2aWNlLm9uTG9hZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXRDb25maWcoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDb25maWcoKSB7XG4gICAgICAgIGlmICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oQXBwQ29uZmlnVmFsdWVzLkNPTlRFTlRfVElDS0VUX1NUT1JBR0VfTEFCRUwpKSB7XG4gICAgICAgICAgICB0aGlzLnNldFRpY2tldCh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oQXBwQ29uZmlnVmFsdWVzLkNPTlRFTlRfVElDS0VUX1NUT1JBR0VfTEFCRUwpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNhdmVVc2VybmFtZSh1c2VybmFtZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnQUNTX1VTRVJOQU1FJywgdXNlcm5hbWUpO1xuICAgIH1cblxuICAgIGdldFVzZXJuYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKCdBQ1NfVVNFUk5BTUUnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBsb2dpbiBBbGZyZXNjbyBBUElcbiAgICAgKlxuICAgICAqIEBwYXJhbSB1c2VybmFtZSB1c2VybmFtZSB0byBsb2dpblxuICAgICAqIEBwYXJhbSBwYXNzd29yZCBwYXNzd29yZCB0byBsb2dpblxuICAgICAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJldHVybnMge25ldyBhdXRoZW50aWNhdGlvbiB0aWNrZXR9IGlmIHJlc29sdmVkIGFuZCB7ZXJyb3J9IGlmIHJlamVjdGVkLlxuICAgICAqL1xuICAgIGxvZ2luKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudXNlcm5hbWUgPSB1c2VybmFtZTtcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnBhc3N3b3JkID0gcGFzc3dvcmQ7XG5cbiAgICAgICAgY29uc3QgbG9naW5SZXF1ZXN0OiBhbnkgPSB7fTtcblxuICAgICAgICBsb2dpblJlcXVlc3QudXNlcklkID0gdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnVzZXJuYW1lO1xuICAgICAgICBsb2dpblJlcXVlc3QucGFzc3dvcmQgPSB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgucGFzc3dvcmQ7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlVGlja2V0KGxvZ2luUmVxdWVzdClcbiAgICAgICAgICAgICAgICAudGhlbigoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKHVzZXJuYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRUaWNrZXQoZGF0YS5lbnRyeS5pZCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dpbi5uZXh0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZGF0YS5lbnRyeS5pZCk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKCcnKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgndW5hdXRob3JpemVkJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgnZm9yYmlkZGVuJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2ZvcmJpZGRlbicpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbG9nb3V0IEFsZnJlc2NvIEFQSVxuICAgICAqXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7IGF1dGhlbnRpY2F0aW9uIHRpY2tldH0gaWYgcmVzb2x2ZWQgYW5kIHtlcnJvcn0gaWYgcmVqZWN0ZWQuXG4gICAgICovXG4gICAgbG9nb3V0KCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKCcnKTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlVGlja2V0KCkudGhlbihcbiAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW52YWxpZGF0ZVNlc3Npb24oKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmVtaXQoJ2xvZ291dCcpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uTG9nb3V0Lm5leHQoJ2xvZ291dCcpO1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCdsb2dvdXQnKTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCd1bmF1dGhvcml6ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvci5uZXh0KCd1bmF1dGhvcml6ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgnZXJyb3InKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBjdXJyZW50IFRpY2tldFxuICAgICAqXG4gICAgICogQHBhcmFtIHRpY2tldCBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIHRpY2tldFxuICAgICAqL1xuICAgIHNldFRpY2tldCh0aWNrZXQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudXNlcm5hbWUgPSAnUk9MRV9USUNLRVQnO1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgucGFzc3dvcmQgPSB0aWNrZXQ7XG4gICAgICAgIHRoaXMuY29uZmlnLnRpY2tldEVjbSA9IHRpY2tldDtcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKEFwcENvbmZpZ1ZhbHVlcy5DT05URU5UX1RJQ0tFVF9TVE9SQUdFX0xBQkVMLCB0aWNrZXQpO1xuICAgICAgICB0aGlzLnRpY2tldCA9IHRpY2tldDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcmV0dXJucyB0aGUgY3VycmVudCBUaWNrZXRcbiAgICAgKi9cbiAgICBnZXRUb2tlbigpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXRoaXMudGlja2V0KSB7XG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IubmV4dCgnZXJyb3InKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnRpY2tldDtcbiAgICB9XG5cbiAgICBpbnZhbGlkYXRlU2Vzc2lvbigpIHtcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5yZW1vdmVJdGVtKEFwcENvbmZpZ1ZhbHVlcy5DT05URU5UX1RJQ0tFVF9TVE9SQUdFX0xBQkVMKTtcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnVzZXJuYW1lID0gbnVsbDtcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnBhc3N3b3JkID0gbnVsbDtcbiAgICAgICAgdGhpcy5jb25maWcudGlja2V0RWNtID0gbnVsbDtcbiAgICAgICAgdGhpcy50aWNrZXQgPSBudWxsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIElmIHRoZSBjbGllbnQgaXMgbG9nZ2VkIGluIHJldHVybiB0cnVlXG4gICAgICovXG4gICAgaXNMb2dnZWRJbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy50aWNrZXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgcmV0dXJuIHRoZSBBdXRoZW50aWNhdGlvblxuICAgICAqL1xuICAgIGdldEF1dGhlbnRpY2F0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5hdXRoZW50aWNhdGlvbnM7XG4gICAgfVxuXG4gICAgY3JlYXRlVGlja2V0KHRpY2tldEJvZHlDcmVhdGU6IFRpY2tldEJvZHkpOiBQcm9taXNlPFRpY2tldEVudHJ5PiB7XG4gICAgICAgIGlmICh0aWNrZXRCb2R5Q3JlYXRlID09PSBudWxsIHx8IHRpY2tldEJvZHlDcmVhdGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoYE1pc3NpbmcgcGFyYW0gdGlja2V0Qm9keUNyZWF0ZWApO1xuXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1pc3NpbmcgcGFyYW0gdGlja2V0Qm9keUNyZWF0ZWApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYWRmSHR0cENsaWVudC5wb3N0KHRoaXMuYmFzZVBhdGggKyAnL3RpY2tldHMnLCB7IGJvZHlQYXJhbTogdGlja2V0Qm9keUNyZWF0ZSB9KTtcbiAgICB9XG5cbiAgICBhc3luYyByZXF1aXJlQWxmVGlja2V0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB0aWNrZXQgPSBhd2FpdCB0aGlzLmFkZkh0dHBDbGllbnQuZ2V0KHRoaXMuYmFzZVBhdGggKyAnL3RpY2tldHMvLW1lLScpO1xuICAgICAgICB0aGlzLnNldFRpY2tldCh0aWNrZXQuZW50cnkuaWQpO1xuICAgIH1cblxuICAgIGRlbGV0ZVRpY2tldCgpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGZIdHRwQ2xpZW50LmRlbGV0ZSh0aGlzLmJhc2VQYXRoICsgJy90aWNrZXRzLy1tZS0nKTtcbiAgICB9XG59XG4iXX0=
188
+ }], ctorParameters: function () { return [{ type: i1.AppConfigService }, { type: i2.AdfHttpClient }, { type: i3.StorageService }]; } });
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1hdXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hdXRoL2Jhc2ljLWF1dGgvY29udGVudC1hdXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBa0I5QyxNQUFNLE9BQU8sV0FBVztJQWtCcEIsSUFBSSxRQUFRO1FBQ1IsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBUyxlQUFlLENBQUMsY0FBYyxDQUFDLElBQUksVUFBVSxDQUFDO1FBQ3ZHLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBUyxlQUFlLENBQUMsT0FBTyxDQUFDLEdBQUcsR0FBRyxHQUFHLGNBQWMsR0FBRyxpREFBaUQsQ0FBQztJQUNqSixDQUFDO0lBRUQsWUFBb0IsZ0JBQWtDLEVBQ2xDLGFBQTRCLEVBQzVCLGNBQThCO1FBRjlCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBdkJsRCxZQUFPLEdBQUcsSUFBSSxhQUFhLENBQU0sQ0FBQyxDQUFDLENBQUM7UUFDcEMsYUFBUSxHQUFHLElBQUksYUFBYSxDQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxJQUFJ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SSxJQUFJLGdCQUFnQixLQUFLLFNBQVMsRUFBRTtZQUM3RCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLGdDQUFnQyxDQUFDLENBQUMsQ0FBQztZQUV0RCxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDckQ7UUFFRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxFQUFFLEVBQUMsU0FBUyxFQUFFLGdCQUFnQixFQUFDLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQsS0FBSyxDQUFDLGdCQUFnQjtRQUNsQixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxZQUFZO1FBQ1IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7OEdBbExRLFdBQVc7a0hBQVgsV0FBVyxjQUZSLE1BQU07OzJGQUVULFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBZGZIdHRwQ2xpZW50IH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlL2FwaSc7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlLCBBcHBDb25maWdWYWx1ZXMgfSBmcm9tICcuLi8uLi9hcHAtY29uZmlnL2FwcC1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL2NvbW1vbi9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb24gfSBmcm9tICcuLi9pbnRlcmZhY2VzL2F1dGhlbnRpY2F0aW9uLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGlja2V0Qm9keSB7XG4gICAgdXNlcklkPzogc3RyaW5nO1xuICAgIHBhc3N3b3JkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRpY2tldEVudHJ5IHtcbiAgICBlbnRyeToge1xuICAgICAgICBpZD86IHN0cmluZztcbiAgICAgICAgdXNlcklkPzogc3RyaW5nO1xuICAgIH07XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudEF1dGgge1xuXG4gICAgb25Mb2dpbiA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSk7XG4gICAgb25Mb2dvdXQgPSBuZXcgUmVwbGF5U3ViamVjdDxhbnk+KDEpO1xuICAgIG9uRXJyb3IgPSBuZXcgU3ViamVjdDxhbnk+KCk7XG5cbiAgICB0aWNrZXQ6IHN0cmluZztcbiAgICBjb25maWcgPSB7XG4gICAgICAgIHRpY2tldEVjbTogbnVsbFxuICAgIH07XG5cbiAgICBhdXRoZW50aWNhdGlvbnM6IEF1dGhlbnRpY2F0aW9uID0ge1xuICAgICAgICBiYXNpY0F1dGg6IHtcbiAgICAgICAgICAgIHRpY2tldDogJydcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ2Jhc2ljJ1xuICAgIH07XG5cbiAgICBnZXQgYmFzZVBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY29udGV4dFJvb3RFY20gPSB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuZ2V0PHN0cmluZz4oQXBwQ29uZmlnVmFsdWVzLkNPTlRFWFRST09URUNNKSB8fCAnYWxmcmVzY28nO1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBDb25maWdTZXJ2aWNlLmdldDxzdHJpbmc+KEFwcENvbmZpZ1ZhbHVlcy5FQ01IT1NUKSArICcvJyArIGNvbnRleHRSb290RWNtICsgJy9hcGkvLWRlZmF1bHQtL3B1YmxpYy9hdXRoZW50aWNhdGlvbi92ZXJzaW9ucy8xJztcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcENvbmZpZ1NlcnZpY2U6IEFwcENvbmZpZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBhZGZIdHRwQ2xpZW50OiBBZGZIdHRwQ2xpZW50LFxuICAgICAgICAgICAgICAgIHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMuYXBwQ29uZmlnU2VydmljZS5vbkxvYWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0Q29uZmlnKCkge1xuICAgICAgICBpZiAodGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKEFwcENvbmZpZ1ZhbHVlcy5DT05URU5UX1RJQ0tFVF9TVE9SQUdFX0xBQkVMKSkge1xuICAgICAgICAgICAgdGhpcy5zZXRUaWNrZXQodGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKEFwcENvbmZpZ1ZhbHVlcy5DT05URU5UX1RJQ0tFVF9TVE9SQUdFX0xBQkVMKSk7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHNhdmVVc2VybmFtZSh1c2VybmFtZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnQUNTX1VTRVJOQU1FJywgdXNlcm5hbWUpO1xuICAgIH1cblxuICAgIGdldFVzZXJuYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKCdBQ1NfVVNFUk5BTUUnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBsb2dpbiBBbGZyZXNjbyBBUElcbiAgICAgKlxuICAgICAqIEBwYXJhbSB1c2VybmFtZSB1c2VybmFtZSB0byBsb2dpblxuICAgICAqIEBwYXJhbSBwYXNzd29yZCBwYXNzd29yZCB0byBsb2dpblxuICAgICAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJldHVybnMge25ldyBhdXRoZW50aWNhdGlvbiB0aWNrZXR9IGlmIHJlc29sdmVkIGFuZCB7ZXJyb3J9IGlmIHJlamVjdGVkLlxuICAgICAqL1xuICAgIGxvZ2luKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudXNlcm5hbWUgPSB1c2VybmFtZTtcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnBhc3N3b3JkID0gcGFzc3dvcmQ7XG5cbiAgICAgICAgY29uc3QgbG9naW5SZXF1ZXN0OiBhbnkgPSB7fTtcblxuICAgICAgICBsb2dpblJlcXVlc3QudXNlcklkID0gdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnVzZXJuYW1lO1xuICAgICAgICBsb2dpblJlcXVlc3QucGFzc3dvcmQgPSB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgucGFzc3dvcmQ7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlVGlja2V0KGxvZ2luUmVxdWVzdClcbiAgICAgICAgICAgICAgICAudGhlbigoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKHVzZXJuYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRUaWNrZXQoZGF0YS5lbnRyeS5pZCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dpbi5uZXh0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZGF0YS5lbnRyeS5pZCk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKCcnKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgndW5hdXRob3JpemVkJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgnZm9yYmlkZGVuJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2ZvcmJpZGRlbicpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbG9nb3V0IEFsZnJlc2NvIEFQSVxuICAgICAqXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7IGF1dGhlbnRpY2F0aW9uIHRpY2tldH0gaWYgcmVzb2x2ZWQgYW5kIHtlcnJvcn0gaWYgcmVqZWN0ZWQuXG4gICAgICovXG4gICAgbG9nb3V0KCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKCcnKTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlVGlja2V0KCkudGhlbihcbiAgICAgICAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW52YWxpZGF0ZVNlc3Npb24oKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmVtaXQoJ2xvZ291dCcpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uTG9nb3V0Lm5leHQoJ2xvZ291dCcpO1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCdsb2dvdXQnKTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCd1bmF1dGhvcml6ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvci5uZXh0KCd1bmF1dGhvcml6ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgnZXJyb3InKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgY3VycmVudCBUaWNrZXRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB0aWNrZXQgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSB0aWNrZXRcbiAgICAgKi9cbiAgICBzZXRUaWNrZXQodGlja2V0OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnVzZXJuYW1lID0gJ1JPTEVfVElDS0VUJztcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnBhc3N3b3JkID0gdGlja2V0O1xuICAgICAgICB0aGlzLmNvbmZpZy50aWNrZXRFY20gPSB0aWNrZXQ7XG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbShBcHBDb25maWdWYWx1ZXMuQ09OVEVOVF9USUNLRVRfU1RPUkFHRV9MQUJFTCwgdGlja2V0KTtcbiAgICAgICAgdGhpcy50aWNrZXQgPSB0aWNrZXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgdGhlIGN1cnJlbnQgVGlja2V0XG4gICAgICovXG4gICAgZ2V0VG9rZW4oKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCF0aGlzLnRpY2tldCkge1xuICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy50aWNrZXQ7XG4gICAgfVxuXG4gICAgaW52YWxpZGF0ZVNlc3Npb24oKSB7XG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UucmVtb3ZlSXRlbShBcHBDb25maWdWYWx1ZXMuQ09OVEVOVF9USUNLRVRfU1RPUkFHRV9MQUJFTCk7XG4gICAgICAgIHRoaXMuYXV0aGVudGljYXRpb25zLmJhc2ljQXV0aC51c2VybmFtZSA9IG51bGw7XG4gICAgICAgIHRoaXMuYXV0aGVudGljYXRpb25zLmJhc2ljQXV0aC5wYXNzd29yZCA9IG51bGw7XG4gICAgICAgIHRoaXMuY29uZmlnLnRpY2tldEVjbSA9IG51bGw7XG4gICAgICAgIHRoaXMudGlja2V0ID0gbnVsbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcmV0dXJucyBJZiB0aGUgY2xpZW50IGlzIGxvZ2dlZCBpbiByZXR1cm4gdHJ1ZVxuICAgICAqL1xuICAgIGlzTG9nZ2VkSW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudGlja2V0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIHJldHVybiB0aGUgQXV0aGVudGljYXRpb25cbiAgICAgKi9cbiAgICBnZXRBdXRoZW50aWNhdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXV0aGVudGljYXRpb25zO1xuICAgIH1cblxuICAgIGNyZWF0ZVRpY2tldCh0aWNrZXRCb2R5Q3JlYXRlOiBUaWNrZXRCb2R5KTogUHJvbWlzZTxUaWNrZXRFbnRyeT4ge1xuICAgICAgICBpZiAodGlja2V0Qm9keUNyZWF0ZSA9PT0gbnVsbCB8fCB0aWNrZXRCb2R5Q3JlYXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMub25FcnJvci5uZXh0KChgTWlzc2luZyBwYXJhbSB0aWNrZXRCb2R5Q3JlYXRlYCkpO1xuXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1pc3NpbmcgcGFyYW0gdGlja2V0Qm9keUNyZWF0ZWApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYWRmSHR0cENsaWVudC5wb3N0KHRoaXMuYmFzZVBhdGggKyAnL3RpY2tldHMnLCB7Ym9keVBhcmFtOiB0aWNrZXRCb2R5Q3JlYXRlfSk7XG4gICAgfVxuXG4gICAgYXN5bmMgcmVxdWlyZUFsZlRpY2tldCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgdGlja2V0ID0gYXdhaXQgdGhpcy5hZGZIdHRwQ2xpZW50LmdldCh0aGlzLmJhc2VQYXRoICsgJy90aWNrZXRzLy1tZS0nKTtcbiAgICAgICAgdGhpcy5zZXRUaWNrZXQodGlja2V0LmVudHJ5LmlkKTtcbiAgICB9XG5cbiAgICBkZWxldGVUaWNrZXQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRmSHR0cENsaWVudC5kZWxldGUodGhpcy5iYXNlUGF0aCArICcvdGlja2V0cy8tbWUtJyk7XG4gICAgfVxuXG59XG4iXX0=
@@ -39,8 +39,7 @@ export class ProcessAuth {
39
39
  ticketBpm: null
40
40
  };
41
41
  this.authentications = {
42
- basicAuth: { ticket: '' },
43
- type: 'activiti'
42
+ basicAuth: { ticket: '' }, type: 'activiti'
44
43
  };
45
44
  this.appConfigService.onLoad.subscribe(() => {
46
45
  this.setConfig();
@@ -181,13 +180,13 @@ export class ProcessAuth {
181
180
  isLoggedIn() {
182
181
  return !!this.ticket;
183
182
  }
184
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ProcessAuth, deps: [{ token: i1.AppConfigService }, { token: i2.AdfHttpClient }, { token: i3.StorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
185
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ProcessAuth, providedIn: 'root' }); }
183
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ProcessAuth, deps: [{ token: i1.AppConfigService }, { token: i2.AdfHttpClient }, { token: i3.StorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
184
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ProcessAuth, providedIn: 'root' }); }
186
185
  }
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ProcessAuth, decorators: [{
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ProcessAuth, decorators: [{
188
187
  type: Injectable,
189
188
  args: [{
190
189
  providedIn: 'root'
191
190
  }]
192
- }], ctorParameters: () => [{ type: i1.AppConfigService }, { type: i2.AdfHttpClient }, { type: i3.StorageService }] });
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1hdXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hdXRoL2Jhc2ljLWF1dGgvcHJvY2Vzcy1hdXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBSzlDLE1BQU0sT0FBTyxXQUFXO0lBZXBCLElBQUksUUFBUTtRQUNSLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQVMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLGNBQWMsQ0FBQztRQUMzRyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQVMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsR0FBRyxjQUFjLENBQUM7SUFDN0YsQ0FBQztJQUVELFlBQW9CLGdCQUFrQyxFQUFVLGFBQTRCLEVBQVUsY0FBOEI7UUFBaEgscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBbkJwSSxZQUFPLEdBQUcsSUFBSSxhQUFhLENBQU0sQ0FBQyxDQUFDLENBQUM7UUFDcEMsYUFBUSxHQUFHLElBQUksYUFBYSxDQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBTyxDQUFDO1FB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b3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFkZkh0dHBDbGllbnQgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUvYXBpJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9hdXRoZW50aWNhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSwgQXBwQ29uZmlnVmFsdWVzIH0gZnJvbSAnLi4vLi4vYXBwLWNvbmZpZy9hcHAtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24vc2VydmljZXMvc3RvcmFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IFJlcGxheVN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZXNzQXV0aCB7XG4gICAgb25Mb2dpbiA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSk7XG4gICAgb25Mb2dvdXQgPSBuZXcgUmVwbGF5U3ViamVjdDxhbnk+KDEpO1xuICAgIG9uRXJyb3IgPSBuZXcgU3ViamVjdDxhbnk+KCk7XG5cbiAgICB0aWNrZXQ6IHN0cmluZztcbiAgICBjb25maWcgPSB7XG4gICAgICAgIHRpY2tldEJwbTogbnVsbFxuICAgIH07XG5cbiAgICBhdXRoZW50aWNhdGlvbnM6IEF1dGhlbnRpY2F0aW9uID0ge1xuICAgICAgICBiYXNpY0F1dGg6IHsgdGlja2V0OiAnJyB9LFxuICAgICAgICB0eXBlOiAnYWN0aXZpdGknXG4gICAgfTtcblxuICAgIGdldCBiYXNlUGF0aCgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBjb250ZXh0Um9vdEJwbSA9IHRoaXMuYXBwQ29uZmlnU2VydmljZS5nZXQ8c3RyaW5nPihBcHBDb25maWdWYWx1ZXMuQ09OVEVYVFJPT1RCUE0pIHx8ICdhY3Rpdml0aS1hcHAnO1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBDb25maWdTZXJ2aWNlLmdldDxzdHJpbmc+KEFwcENvbmZpZ1ZhbHVlcy5CUE1IT1NUKSArICcvJyArIGNvbnRleHRSb290QnBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZSwgcHJpdmF0ZSBhZGZIdHRwQ2xpZW50OiBBZGZIdHRwQ2xpZW50LCBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSkge1xuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2Uub25Mb2FkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldENvbmZpZygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENvbmZpZygpIHtcbiAgICAgICAgdGhpcy50aWNrZXQgPSB1bmRlZmluZWQ7XG5cbiAgICAgICAgdGhpcy5zZXRUaWNrZXQodGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKEFwcENvbmZpZ1ZhbHVlcy5QUk9DRVNTX1RJQ0tFVF9TVE9SQUdFX0xBQkVMKSk7XG4gICAgfVxuXG4gICAgc2F2ZVVzZXJuYW1lKHVzZXJuYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKCdBUFNfVVNFUk5BTUUnLCB1c2VybmFtZSk7XG4gICAgfVxuXG4gICAgZ2V0VXNlcm5hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ0FQU19VU0VSTkFNRScpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGxvZ2luIEFjdGl2aXRpIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIHVzZXJuYW1lIFVzZXJuYW1lIHRvIGxvZ2luXG4gICAgICogQHBhcmFtIHBhc3N3b3JkIFBhc3N3b3JkIHRvIGxvZ2luXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7bmV3IGF1dGhlbnRpY2F0aW9uIHRpY2tldH0gaWYgcmVzb2x2ZWQgYW5kIHtlcnJvcn0gaWYgcmVqZWN0ZWQuXG4gICAgICovXG4gICAgbG9naW4odXNlcm5hbWU6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHRoaXMuYXV0aGVudGljYXRpb25zLmJhc2ljQXV0aC51c2VybmFtZSA9IHVzZXJuYW1lO1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgucGFzc3dvcmQgPSBwYXNzd29yZDtcblxuICAgICAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICAgICAgaGVhZGVyUGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnLFxuICAgICAgICAgICAgICAgICdDYWNoZS1Db250cm9sJzogJ25vLWNhY2hlJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZvcm1QYXJhbXM6IHtcbiAgICAgICAgICAgICAgICBqX3VzZXJuYW1lOiB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudXNlcm5hbWUsXG4gICAgICAgICAgICAgICAgal9wYXNzd29yZDogdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgIF9zcHJpbmdfc2VjdXJpdHlfcmVtZW1iZXJfbWU6IHRydWUsXG4gICAgICAgICAgICAgICAgc3VibWl0OiAnTG9naW4nXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnLFxuICAgICAgICAgICAgYWNjZXB0OiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBwcm9taXNlOiBhbnkgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQucG9zdCh0aGlzLmJhc2VQYXRoICsgJy9hcHAvYXV0aGVudGljYXRpb24nLCBvcHRpb25zKS50aGVuKFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zYXZlVXNlcm5hbWUodXNlcm5hbWUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0aWNrZXQgPSB0aGlzLmJhc2ljQXV0aCh0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudXNlcm5hbWUsIHRoaXMuYXV0aGVudGljYXRpb25zLmJhc2ljQXV0aC5wYXNzd29yZCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VGlja2V0KHRpY2tldCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dpbi5uZXh0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCdsb2dnZWQtaW4nKTtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0aWNrZXQpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKCcnKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgndW5hdXRob3JpemVkJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgnZm9yYmlkZGVuJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2ZvcmJpZGRlbicpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gcHJvbWlzZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBsb2dvdXQgQWxmcmVzY28gQVBJXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXR1cm5zIHtuZXcgYXV0aGVudGljYXRpb24gdGlja2V0fSBpZiByZXNvbHZlZCBhbmQge2Vycm9yfSBpZiByZWplY3RlZC5cbiAgICAgKi9cbiAgICBhc3luYyBsb2dvdXQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgdGhpcy5zYXZlVXNlcm5hbWUoJycpO1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmdldCh0aGlzLmJhc2VQYXRoICsgYC9hcHAvbG9nb3V0YCwge30pLnRoZW4oXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmludmFsaWRhdGVTZXNzaW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dvdXQubmV4dCgnbG9nb3V0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCdsb2dvdXQnKTtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgnbG9nb3V0Jyk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgndW5hdXRob3JpemVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRXJyb3IubmV4dCgndW5hdXRob3JpemVkJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmVtaXQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvci5uZXh0KCdlcnJvcicpO1xuICAgICAgICAgICAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGJhc2ljQXV0aCh1c2VybmFtZTogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3Qgc3RyOiBhbnkgPSB1c2VybmFtZSArICc6JyArIHBhc3N3b3JkO1xuXG4gICAgICAgIGxldCBiYXNlNjQ7XG5cbiAgICAgICAgaWYgKHR5cGVvZiBCdWZmZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGJhc2U2NCA9IEJ1ZmZlci5mcm9tKHN0ci50b1N0cmluZygpLCAnYmluYXJ5JykudG9TdHJpbmcoJ2Jhc2U2NCcpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYmFzZTY0ID0gYnRvYShzdHIpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGBCYXNpYyAke2Jhc2U2NH1gO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgY3VycmVudCBUaWNrZXRcbiAgICAgKlxuICAgICAqIEBwYXJhbSB0aWNrZXQgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSB0aWNrZXRcbiAgICAgKi9cbiAgICBzZXRUaWNrZXQodGlja2V0OiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRpY2tldCAmJiB0aWNrZXQgIT09ICdudWxsJykge1xuICAgICAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnRpY2tldCA9IHRpY2tldDtcbiAgICAgICAgICAgIHRoaXMuYXV0aGVudGljYXRpb25zLmJhc2ljQXV0aC5wYXNzd29yZCA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZy50aWNrZXRCcG0gPSB0aWNrZXQ7XG4gICAgICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0oQXBwQ29uZmlnVmFsdWVzLlBST0NFU1NfVElDS0VUX1NUT1JBR0VfTEFCRUwsIHRpY2tldCk7XG4gICAgICAgICAgICB0aGlzLnRpY2tldCA9IHRpY2tldDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGludmFsaWRhdGVTZXNzaW9uKCkge1xuICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZUl0ZW0oQXBwQ29uZmlnVmFsdWVzLlBST0NFU1NfVElDS0VUX1NUT1JBR0VfTEFCRUwpO1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudGlja2V0ID0gbnVsbDtcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnBhc3N3b3JkID0gbnVsbDtcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnVzZXJuYW1lID0gbnVsbDtcbiAgICAgICAgdGhpcy5jb25maWcudGlja2V0QnBtID0gbnVsbDtcbiAgICAgICAgdGhpcy50aWNrZXQgPSBudWxsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIHRoZSBjdXJyZW50IFRpY2tldFxuICAgICAqL1xuICAgIGdldFRva2VuKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICghdGhpcy50aWNrZXQpIHtcbiAgICAgICAgICAgIHRoaXMub25FcnJvci5uZXh0KCdlcnJvcicpO1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy50aWNrZXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgSWYgdGhlIGNsaWVudCBpcyBsb2dnZWQgaW4gcmV0dXJuIHRydWVcbiAgICAgKi9cbiAgICBpc0xvZ2dlZEluKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnRpY2tldDtcbiAgICB9XG59XG4iXX0=
191
+ }], ctorParameters: function () { return [{ type: i1.AppConfigService }, { type: i2.AdfHttpClient }, { type: i3.StorageService }]; } });
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1hdXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hdXRoL2Jhc2ljLWF1dGgvcHJvY2Vzcy1hdXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBTTlDLE1BQU0sT0FBTyxXQUFXO0lBZXBCLElBQUksUUFBUTtRQUNSLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQVMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLGNBQWMsQ0FBQztRQUMzRyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQVMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsR0FBRyxjQUFjLENBQUM7SUFDN0YsQ0FBQztJQUVELFlBQW9CLGdCQUFrQyxFQUNsQyxhQUE0QixFQUM1QixjQUE4QjtRQUY5QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQXBCbEQsWUFBTyxHQUFHLElBQUksYUFBYSxDQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLGFBQVEsR0FBRyxJQUFJLGFBQWEsQ0FBTSxDQUFDLENBQUMsQ0FBQztRQUNyQyxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FB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Y0FBYyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsNEJBQTRCLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbEYsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7U0FDeEI7SUFDTCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUM3QyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQy9DLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7T0FFRztJQUNILFFBQVE7UUFDSixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzNCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVTtRQUNOLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDekIsQ0FBQzs4R0FwTFEsV0FBVztrSEFBWCxXQUFXLGNBRlIsTUFBTTs7MkZBRVQsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFkZkh0dHBDbGllbnQgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUvYXBpJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9hdXRoZW50aWNhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSwgQXBwQ29uZmlnVmFsdWVzIH0gZnJvbSAnLi4vLi4vYXBwLWNvbmZpZy9hcHAtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24vc2VydmljZXMvc3RvcmFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IFJlcGxheVN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFByb2Nlc3NBdXRoIHtcblxuICAgIG9uTG9naW4gPSBuZXcgUmVwbGF5U3ViamVjdDxhbnk+KDEpO1xuICAgIG9uTG9nb3V0ID0gbmV3IFJlcGxheVN1YmplY3Q8YW55PigxKTtcbiAgICBvbkVycm9yID0gbmV3IFN1YmplY3Q8YW55PigpO1xuXG4gICAgdGlja2V0OiBzdHJpbmc7XG4gICAgY29uZmlnID0ge1xuICAgICAgICB0aWNrZXRCcG06IG51bGxcbiAgICB9O1xuXG4gICAgYXV0aGVudGljYXRpb25zOiBBdXRoZW50aWNhdGlvbiA9IHtcbiAgICAgICAgYmFzaWNBdXRoOiB7dGlja2V0OiAnJ30sIHR5cGU6ICdhY3Rpdml0aSdcbiAgICB9O1xuXG4gICAgZ2V0IGJhc2VQYXRoKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGNvbnRleHRSb290QnBtID0gdGhpcy5hcHBDb25maWdTZXJ2aWNlLmdldDxzdHJpbmc+KEFwcENvbmZpZ1ZhbHVlcy5DT05URVhUUk9PVEJQTSkgfHwgJ2FjdGl2aXRpLWFwcCc7XG4gICAgICAgIHJldHVybiB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuZ2V0PHN0cmluZz4oQXBwQ29uZmlnVmFsdWVzLkJQTUhPU1QpICsgJy8nICsgY29udGV4dFJvb3RCcG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhcHBDb25maWdTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgYWRmSHR0cENsaWVudDogQWRmSHR0cENsaWVudCxcbiAgICAgICAgICAgICAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSkge1xuICAgICAgICB0aGlzLmFwcENvbmZpZ1NlcnZpY2Uub25Mb2FkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldENvbmZpZygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENvbmZpZygpIHtcbiAgICAgICAgdGhpcy50aWNrZXQgPSB1bmRlZmluZWQ7XG5cbiAgICAgICAgdGhpcy5zZXRUaWNrZXQodGhpcy5zdG9yYWdlU2VydmljZS5nZXRJdGVtKEFwcENvbmZpZ1ZhbHVlcy5QUk9DRVNTX1RJQ0tFVF9TVE9SQUdFX0xBQkVMKSk7XG4gICAgfVxuXG4gICAgc2F2ZVVzZXJuYW1lKHVzZXJuYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKCdBUFNfVVNFUk5BTUUnLCB1c2VybmFtZSk7XG4gICAgfVxuXG4gICAgZ2V0VXNlcm5hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oJ0FQU19VU0VSTkFNRScpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGxvZ2luIEFjdGl2aXRpIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIHVzZXJuYW1lIFVzZXJuYW1lIHRvIGxvZ2luXG4gICAgICogQHBhcmFtIHBhc3N3b3JkIFBhc3N3b3JkIHRvIGxvZ2luXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7bmV3IGF1dGhlbnRpY2F0aW9uIHRpY2tldH0gaWYgcmVzb2x2ZWQgYW5kIHtlcnJvcn0gaWYgcmVqZWN0ZWQuXG4gICAgICovXG4gICAgbG9naW4odXNlcm5hbWU6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHRoaXMuYXV0aGVudGljYXRpb25zLmJhc2ljQXV0aC51c2VybmFtZSA9IHVzZXJuYW1lO1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgucGFzc3dvcmQgPSBwYXNzd29yZDtcblxuICAgICAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICAgICAgaGVhZGVyUGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnLFxuICAgICAgICAgICAgICAgICdDYWNoZS1Db250cm9sJzogJ25vLWNhY2hlJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZvcm1QYXJhbXM6IHtcbiAgICAgICAgICAgICAgICBqX3VzZXJuYW1lOiB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudXNlcm5hbWUsXG4gICAgICAgICAgICAgICAgal9wYXNzd29yZDogdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnBhc3N3b3JkLFxuICAgICAgICAgICAgICAgIF9zcHJpbmdfc2VjdXJpdHlfcmVtZW1iZXJfbWU6IHRydWUsXG4gICAgICAgICAgICAgICAgc3VibWl0OiAnTG9naW4nXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnLFxuICAgICAgICAgICAgYWNjZXB0OiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBwcm9taXNlOiBhbnkgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQucG9zdCh0aGlzLmJhc2VQYXRoICsgJy9hcHAvYXV0aGVudGljYXRpb24nLCBvcHRpb25zKS50aGVuKFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zYXZlVXNlcm5hbWUodXNlcm5hbWUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0aWNrZXQgPSB0aGlzLmJhc2ljQXV0aCh0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudXNlcm5hbWUsIHRoaXMuYXV0aGVudGljYXRpb25zLmJhc2ljQXV0aC5wYXNzd29yZCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VGlja2V0KHRpY2tldCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25Mb2dpbi5uZXh0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCdzdWNjZXNzJyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCdsb2dnZWQtaW4nKTtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0aWNrZXQpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKCcnKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgndW5hdXRob3JpemVkJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgnZm9yYmlkZGVuJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2ZvcmJpZGRlbicpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHByb21pc2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbG9nb3V0IEFsZnJlc2NvIEFQSVxuICAgICAqXG4gICAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmV0dXJucyB7bmV3IGF1dGhlbnRpY2F0aW9uIHRpY2tldH0gaWYgcmVzb2x2ZWQgYW5kIHtlcnJvcn0gaWYgcmVqZWN0ZWQuXG4gICAgICovXG4gICAgYXN5bmMgbG9nb3V0KCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHRoaXMuc2F2ZVVzZXJuYW1lKCcnKTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5nZXQodGhpcy5iYXNlUGF0aCArIGAvYXBwL2xvZ291dGAsIHt9KS50aGVuKFxuICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnZhbGlkYXRlU2Vzc2lvbigpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uTG9nb3V0Lm5leHQoJ2xvZ291dCcpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZkh0dHBDbGllbnQuZW1pdCgnbG9nb3V0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoJ2xvZ291dCcpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT09IDQwMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGZIdHRwQ2xpZW50LmVtaXQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRmSHR0cENsaWVudC5lbWl0KCdlcnJvcicpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRXJyb3IubmV4dCgnZXJyb3InKTtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgYmFzaWNBdXRoKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBzdHI6IGFueSA9IHVzZXJuYW1lICsgJzonICsgcGFzc3dvcmQ7XG5cbiAgICAgICAgbGV0IGJhc2U2NDtcblxuICAgICAgICBpZiAodHlwZW9mIEJ1ZmZlciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgYmFzZTY0ID0gQnVmZmVyLmZyb20oc3RyLnRvU3RyaW5nKCksICdiaW5hcnknKS50b1N0cmluZygnYmFzZTY0Jyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBiYXNlNjQgPSBidG9hKHN0cik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYEJhc2ljICR7YmFzZTY0fWA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBjdXJyZW50IFRpY2tldFxuICAgICAqXG4gICAgICogQHBhcmFtIHRpY2tldCBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIHRpY2tldFxuICAgICAqL1xuICAgIHNldFRpY2tldCh0aWNrZXQ6IHN0cmluZykge1xuICAgICAgICBpZiAodGlja2V0ICYmIHRpY2tldCAhPT0gJ251bGwnKSB7XG4gICAgICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudGlja2V0ID0gdGlja2V0O1xuICAgICAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbnMuYmFzaWNBdXRoLnBhc3N3b3JkID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLnRpY2tldEJwbSA9IHRpY2tldDtcbiAgICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbShBcHBDb25maWdWYWx1ZXMuUFJPQ0VTU19USUNLRVRfU1RPUkFHRV9MQUJFTCwgdGlja2V0KTtcbiAgICAgICAgICAgIHRoaXMudGlja2V0ID0gdGlja2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW52YWxpZGF0ZVNlc3Npb24oKSB7XG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UucmVtb3ZlSXRlbShBcHBDb25maWdWYWx1ZXMuUFJPQ0VTU19USUNLRVRfU1RPUkFHRV9MQUJFTCk7XG4gICAgICAgIHRoaXMuYXV0aGVudGljYXRpb25zLmJhc2ljQXV0aC50aWNrZXQgPSBudWxsO1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgucGFzc3dvcmQgPSBudWxsO1xuICAgICAgICB0aGlzLmF1dGhlbnRpY2F0aW9ucy5iYXNpY0F1dGgudXNlcm5hbWUgPSBudWxsO1xuICAgICAgICB0aGlzLmNvbmZpZy50aWNrZXRCcG0gPSBudWxsO1xuICAgICAgICB0aGlzLnRpY2tldCA9IG51bGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgdGhlIGN1cnJlbnQgVGlja2V0XG4gICAgICovXG4gICAgZ2V0VG9rZW4oKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCF0aGlzLnRpY2tldCkge1xuICAgICAgICAgICAgdGhpcy5vbkVycm9yLm5leHQoJ2Vycm9yJyk7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnRpY2tldDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcmV0dXJucyBJZiB0aGUgY2xpZW50IGlzIGxvZ2dlZCBpbiByZXR1cm4gdHJ1ZVxuICAgICAqL1xuICAgIGlzTG9nZ2VkSW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudGlja2V0O1xuICAgIH1cbn1cbiJdfQ==