@alauda-fe/common 1.4.31-beta.2 → 1.4.31-prod.0

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 (640) hide show
  1. package/abnormal-page/abnormal-page.component.d.ts.map +1 -0
  2. package/abnormal-page/abnormal-page.module.d.ts.map +1 -0
  3. package/abnormal-page/public-api.d.ts.map +1 -0
  4. package/alauda-fe-common.d.ts.map +1 -0
  5. package/api/acp-common-api.service.d.ts.map +1 -0
  6. package/api/api-compatible.interceptor.d.ts.map +1 -0
  7. package/api/api-gateway.interceptor.d.ts.map +1 -0
  8. package/api/api-gateway.service.d.ts.map +1 -0
  9. package/api/auth-api.service.d.ts.map +1 -0
  10. package/api/cluster-version.service.d.ts.map +1 -0
  11. package/api/crypto.interceptor.d.ts.map +1 -0
  12. package/api/helpers.d.ts.map +1 -0
  13. package/api/k8s-api-resource.service.d.ts.map +1 -0
  14. package/api/k8s-api.service.d.ts.map +1 -0
  15. package/api/page-visibility.service.d.ts.map +1 -0
  16. package/api/platform-ui.service.d.ts.map +1 -0
  17. package/api/product.service.d.ts.map +1 -0
  18. package/api/project-api.service.d.ts.map +1 -0
  19. package/api/public-api.d.ts.map +1 -0
  20. package/api/resource-update.service.d.ts.map +1 -0
  21. package/api/types.d.ts.map +1 -0
  22. package/array-form-table/base-string-map-form.component.d.ts.map +1 -0
  23. package/array-form-table/form/component.d.ts +1 -1
  24. package/array-form-table/form/component.d.ts.map +1 -0
  25. package/array-form-table/form/module.d.ts.map +1 -0
  26. package/array-form-table/key-value-form/component.d.ts.map +1 -0
  27. package/array-form-table/key-value-table/component.d.ts.map +1 -0
  28. package/array-form-table/public-api.d.ts.map +1 -0
  29. package/array-form-table/string-array-form/component.d.ts.map +1 -0
  30. package/async-data/async-data-loader.d.ts.map +1 -0
  31. package/async-data/async-data.module.d.ts.map +1 -0
  32. package/async-data/error-page/component.d.ts.map +1 -0
  33. package/async-data/page-state/component.d.ts.map +1 -0
  34. package/async-data/public-api.d.ts.map +1 -0
  35. package/async-data/types.d.ts.map +1 -0
  36. package/authorization/app-init-url.d.ts.map +1 -0
  37. package/authorization/authorization.d.ts +3 -12
  38. package/authorization/authorization.d.ts.map +1 -0
  39. package/authorization/constants.d.ts +2 -0
  40. package/authorization/constants.d.ts.map +1 -0
  41. package/authorization/guard.service.d.ts.map +1 -0
  42. package/authorization/interceptor.service.d.ts +5 -3
  43. package/authorization/interceptor.service.d.ts.map +1 -0
  44. package/authorization/public-api.d.ts +1 -0
  45. package/authorization/public-api.d.ts.map +1 -0
  46. package/authorization/runtime.d.ts +33 -0
  47. package/authorization/runtime.d.ts.map +1 -0
  48. package/authorization/session-manage.service.d.ts +0 -2
  49. package/authorization/session-manage.service.d.ts.map +1 -0
  50. package/authorization/state.service.d.ts +7 -12
  51. package/authorization/state.service.d.ts.map +1 -0
  52. package/authorization/storage-token.d.ts.map +1 -0
  53. package/authorization/token-client.d.ts +48 -0
  54. package/business/notification-disabled-container/component.d.ts.map +1 -0
  55. package/business/notification-disabled-container/public-api.d.ts.map +1 -0
  56. package/business/public-api.d.ts.map +1 -0
  57. package/business/resource-select/base-list.d.ts.map +1 -0
  58. package/business/resource-select/context.service.d.ts.map +1 -0
  59. package/business/resource-select/exports/cluster-list/component.d.ts +1 -1
  60. package/business/resource-select/exports/cluster-list/component.d.ts.map +1 -0
  61. package/business/resource-select/exports/cluster-selector/component.d.ts.map +1 -0
  62. package/business/resource-select/exports/icon/component.d.ts.map +1 -0
  63. package/business/resource-select/exports/mesh-group-selector/component.d.ts.map +1 -0
  64. package/business/resource-select/exports/namespace-list/component.d.ts.map +1 -0
  65. package/business/resource-select/exports/namespace-page/component.d.ts.map +1 -0
  66. package/business/resource-select/exports/namespace-selector/component.d.ts.map +1 -0
  67. package/business/resource-select/exports/project-list/component.d.ts.map +1 -0
  68. package/business/resource-select/exports/project-page/component.d.ts.map +1 -0
  69. package/business/resource-select/exports/project-selector/component.d.ts.map +1 -0
  70. package/business/resource-select/helpers.directive.d.ts.map +1 -0
  71. package/business/resource-select/internals/data-grid/component.d.ts.map +1 -0
  72. package/business/resource-select/internals/meshgroup-list/component.d.ts.map +1 -0
  73. package/business/resource-select/internals/no-data/component.d.ts.map +1 -0
  74. package/business/resource-select/internals/resource-dashboard/component.d.ts.map +1 -0
  75. package/business/resource-select/internals/selector-popup/component.d.ts.map +1 -0
  76. package/business/resource-select/internals/selector-popup/ref.d.ts.map +1 -0
  77. package/business/resource-select/internals/selector-popup/service.d.ts.map +1 -0
  78. package/business/resource-select/module.d.ts.map +1 -0
  79. package/business/resource-select/project.service.d.ts.map +1 -0
  80. package/business/resource-select/public-api.d.ts.map +1 -0
  81. package/business/resource-select/types.d.ts.map +1 -0
  82. package/business/resource-select/utils.d.ts.map +1 -0
  83. package/chart/chart.module.d.ts.map +1 -0
  84. package/chart/chart.service.d.ts.map +1 -0
  85. package/chart/common/axis/axis-label.component.d.ts.map +1 -0
  86. package/chart/common/axis/x-axis-ticks.component.d.ts.map +1 -0
  87. package/chart/common/axis/x-axis.component.d.ts.map +1 -0
  88. package/chart/common/axis/x-plot-lines.component.d.ts.map +1 -0
  89. package/chart/common/axis/y-axis-ticks.component.d.ts.map +1 -0
  90. package/chart/common/axis/y-axis.component.d.ts.map +1 -0
  91. package/chart/common/axis/y-plot-lines.component.d.ts.map +1 -0
  92. package/chart/common/chart/chart.component.d.ts.map +1 -0
  93. package/chart/common/legend/legend.component.d.ts.map +1 -0
  94. package/chart/common/public-api.d.ts.map +1 -0
  95. package/chart/common/range-area/range-area.component.d.ts.map +1 -0
  96. package/chart/common/reference-area/reference-area.component.d.ts.map +1 -0
  97. package/chart/common/series/area-series.component.d.ts.map +1 -0
  98. package/chart/common/series/bar-path.component.d.ts.map +1 -0
  99. package/chart/common/series/bar-series.component.d.ts.map +1 -0
  100. package/chart/common/series/line-series.component.d.ts.map +1 -0
  101. package/chart/common/series/series.component.d.ts.map +1 -0
  102. package/chart/common/tooltip/tooltip.component.d.ts.map +1 -0
  103. package/chart/constants.d.ts.map +1 -0
  104. package/chart/custom-template/dropdown-legend.d.ts.map +1 -0
  105. package/chart/public-api.d.ts.map +1 -0
  106. package/chart/types.d.ts.map +1 -0
  107. package/chart/utils.d.ts.map +1 -0
  108. package/code/code-display-dialog/component.d.ts.map +1 -0
  109. package/code/code-editor-configs.d.ts.map +1 -0
  110. package/code/code.module.d.ts.map +1 -0
  111. package/code/k8s-yaml-display-dialog/component.d.ts.map +1 -0
  112. package/code/managed-fields-folder.util.d.ts.map +1 -0
  113. package/code/public-api.d.ts.map +1 -0
  114. package/code/resource-yaml-display/component.d.ts.map +1 -0
  115. package/code/resource-yaml-editor/component.d.ts.map +1 -0
  116. package/code/yaml-examples.d.ts.map +1 -0
  117. package/code/yaml-sidebar/component.d.ts.map +1 -0
  118. package/code/yaml-sidebar/types.d.ts.map +1 -0
  119. package/core/abstract/base-form-container.d.ts.map +1 -0
  120. package/core/abstract/base-nested-form-control.d.ts +1 -1
  121. package/core/abstract/base-nested-form-control.d.ts.map +1 -0
  122. package/core/abstract/public-api.d.ts.map +1 -0
  123. package/core/components/public-api.d.ts.map +1 -0
  124. package/core/components/tree/module.d.ts.map +1 -0
  125. package/core/components/tree/node/component.d.ts.map +1 -0
  126. package/core/components/tree/outlet.d.ts.map +1 -0
  127. package/core/components/tree/padding.d.ts.map +1 -0
  128. package/core/components/tree/toggle.d.ts.map +1 -0
  129. package/core/components/tree/tree/component.d.ts.map +1 -0
  130. package/core/constants/constants.d.ts.map +1 -0
  131. package/core/constants/patterns.d.ts.map +1 -0
  132. package/core/constants/public-api.d.ts.map +1 -0
  133. package/core/constants/status-icons.d.ts.map +1 -0
  134. package/core/constants/timezones.d.ts.map +1 -0
  135. package/core/constants/tokens.d.ts.map +1 -0
  136. package/core/directives/aui-code-editor.directive.d.ts.map +1 -0
  137. package/core/directives/click-outside.directive.d.ts.map +1 -0
  138. package/core/directives/declare.directive.d.ts.map +1 -0
  139. package/core/directives/disabled.directive.d.ts.map +1 -0
  140. package/core/directives/feature-gate.directive.d.ts.map +1 -0
  141. package/core/directives/intercept-deactivate.directive.d.ts.map +1 -0
  142. package/core/directives/last-form-item.directive.d.ts.map +1 -0
  143. package/core/directives/page-header-content.directive.d.ts.map +1 -0
  144. package/core/directives/public-api.d.ts.map +1 -0
  145. package/core/directives/readonly-field.directive.d.ts.map +1 -0
  146. package/core/directives/resize.directive.d.ts.map +1 -0
  147. package/core/directives/scroll-border-observer.directive.d.ts.map +1 -0
  148. package/core/directives/scroll-to-first-invalid.directive.d.ts.map +1 -0
  149. package/core/guards/feature.guard.d.ts.map +1 -0
  150. package/core/guards/intercept-deactivate.guard.d.ts.map +1 -0
  151. package/core/guards/leave-edit-page.guard.d.ts.map +1 -0
  152. package/core/guards/project-namespace.guard.d.ts.map +1 -0
  153. package/core/guards/public-api.d.ts.map +1 -0
  154. package/core/module.d.ts.map +1 -0
  155. package/core/pipes/calc.pipe.d.ts.map +1 -0
  156. package/core/pipes/cron-human-readable.pipe.d.ts.map +1 -0
  157. package/core/pipes/crontab-next.pipe.d.ts.map +1 -0
  158. package/core/pipes/duration.pipe.d.ts.map +1 -0
  159. package/core/pipes/field-not-available.pipe.d.ts.map +1 -0
  160. package/core/pipes/img-header.pipe.d.ts.map +1 -0
  161. package/core/pipes/img-theme.pipe.d.ts.map +1 -0
  162. package/core/pipes/k8s-util.pipe.d.ts.map +1 -0
  163. package/core/pipes/k8s-util.pipe.module.d.ts.map +1 -0
  164. package/core/pipes/keyvalue.pipe.d.ts.map +1 -0
  165. package/core/pipes/marked.pipe.d.ts.map +1 -0
  166. package/core/pipes/minimum-format.pipe.d.ts.map +1 -0
  167. package/core/pipes/page-env.pipe.d.ts.map +1 -0
  168. package/core/pipes/parse-json-translate.pipe.d.ts.map +1 -0
  169. package/core/pipes/parse-json.pipe.d.ts.map +1 -0
  170. package/core/pipes/public-api.d.ts.map +1 -0
  171. package/core/pipes/pure.pipe.d.ts.map +1 -0
  172. package/core/pipes/pure.pipe.module.d.ts.map +1 -0
  173. package/core/pipes/safe.pipe.d.ts.map +1 -0
  174. package/core/pipes/sanitize.pipe.d.ts.map +1 -0
  175. package/core/pipes/time.pipe.d.ts.map +1 -0
  176. package/core/pipes/timezone-display.pipe.d.ts.map +1 -0
  177. package/core/public-api.d.ts.map +1 -0
  178. package/core/services/aui-paginator-intl.service.d.ts.map +1 -0
  179. package/core/services/aui-tooltip-copy-intl.service.d.ts.map +1 -0
  180. package/core/services/context.service.d.ts.map +1 -0
  181. package/core/services/custom-code-editor-intl.service.d.ts.map +1 -0
  182. package/core/services/disaster-recovery.service.d.ts.map +1 -0
  183. package/core/services/encode-url-param.interceptor.d.ts.map +1 -0
  184. package/core/services/feature-gate.service.d.ts.map +1 -0
  185. package/core/services/form-row-duplicate/form-row-duplicate.service.d.ts.map +1 -0
  186. package/core/services/intercept-deactivate.service.d.ts.map +1 -0
  187. package/core/services/k8s-util.service.d.ts.map +1 -0
  188. package/core/services/kubernetes-schema.service.d.ts.map +1 -0
  189. package/core/services/on-resize.service.d.ts.map +1 -0
  190. package/core/services/plugin-util.service.d.ts.map +1 -0
  191. package/core/services/public-api.d.ts.map +1 -0
  192. package/core/services/silently-navigate.service.d.ts.map +1 -0
  193. package/core/services/time.service.d.ts.map +1 -0
  194. package/core/services/ui-state.service.d.ts.map +1 -0
  195. package/core/services/workspace-helper.service.d.ts.map +1 -0
  196. package/core/services/yaml-util.service.d.ts.map +1 -0
  197. package/core/types/commons.d.ts.map +1 -0
  198. package/core/types/helpers.d.ts.map +1 -0
  199. package/core/types/k8s/core.d.ts.map +1 -0
  200. package/core/types/k8s/crd.d.ts.map +1 -0
  201. package/core/types/k8s/public-api.d.ts.map +1 -0
  202. package/core/types/k8s/raw.d.ts.map +1 -0
  203. package/core/types/openapi.d.ts.map +1 -0
  204. package/core/types/public-api.d.ts.map +1 -0
  205. package/core/types/resource-definitions.d.ts.map +1 -0
  206. package/core/types/schema.d.ts.map +1 -0
  207. package/core/utils/browser.d.ts.map +1 -0
  208. package/core/utils/cache-store.d.ts.map +1 -0
  209. package/core/utils/color-helpers.d.ts.map +1 -0
  210. package/core/utils/common.d.ts.map +1 -0
  211. package/core/utils/create-recursive-filter.d.ts.map +1 -0
  212. package/core/utils/cron-util.d.ts.map +1 -0
  213. package/core/utils/decorators.d.ts.map +1 -0
  214. package/core/utils/dev-helpers.d.ts.map +1 -0
  215. package/core/utils/disabled-state.d.ts.map +1 -0
  216. package/core/utils/format-number.d.ts.map +1 -0
  217. package/core/utils/k8s-util.d.ts.map +1 -0
  218. package/core/utils/local-storage-constants.d.ts.map +1 -0
  219. package/core/utils/node.d.ts.map +1 -0
  220. package/core/utils/observable.d.ts.map +1 -0
  221. package/core/utils/operators.d.ts.map +1 -0
  222. package/core/utils/public-api.d.ts.map +1 -0
  223. package/core/utils/request-pool.d.ts.map +1 -0
  224. package/core/utils/resources.d.ts.map +1 -0
  225. package/core/utils/router.d.ts.map +1 -0
  226. package/core/utils/sort-fn.d.ts.map +1 -0
  227. package/core/utils/tree.d.ts.map +1 -0
  228. package/core/utils/unit.d.ts.map +1 -0
  229. package/core/utils/version.d.ts +1 -1
  230. package/core/utils/version.d.ts.map +1 -0
  231. package/core/utils/with-load-state.d.ts.map +1 -0
  232. package/core/utils/workload.d.ts.map +1 -0
  233. package/core/utils/workspace.d.ts.map +1 -0
  234. package/core/utils/yaml.d.ts.map +1 -0
  235. package/custom-columns-setting/component.d.ts.map +1 -0
  236. package/custom-columns-setting/public-api.d.ts.map +1 -0
  237. package/disabled-container/disabled-container.component.d.ts.map +1 -0
  238. package/disabled-container/disabled-container.module.d.ts.map +1 -0
  239. package/disabled-container/public-api.d.ts.map +1 -0
  240. package/editable/editable.component.d.ts.map +1 -0
  241. package/editable/editable.directive.d.ts.map +1 -0
  242. package/editable/editable.type.d.ts.map +1 -0
  243. package/editable/public-api.d.ts.map +1 -0
  244. package/editable-text/component.d.ts.map +1 -0
  245. package/editable-text/module.d.ts.map +1 -0
  246. package/editable-text/public-api.d.ts.map +1 -0
  247. package/effect-directive/coerce-number.directive.d.ts.map +1 -0
  248. package/effect-directive/e2e-attribute-binding.directive.d.ts.map +1 -0
  249. package/effect-directive/event.directive.d.ts.map +1 -0
  250. package/effect-directive/min-max.directive.d.ts.map +1 -0
  251. package/effect-directive/module.d.ts.map +1 -0
  252. package/effect-directive/public-api.d.ts.map +1 -0
  253. package/effect-directive/trim.directive.d.ts.map +1 -0
  254. package/effect-directive/validators.directive.d.ts.map +1 -0
  255. package/esm2022/abnormal-page/abnormal-page.component.mjs +6 -2
  256. package/esm2022/abnormal-page/abnormal-page.module.mjs +1 -6
  257. package/esm2022/authorization/authorization.mjs +82 -51
  258. package/esm2022/authorization/constants.mjs +3 -1
  259. package/esm2022/authorization/interceptor.service.mjs +67 -45
  260. package/esm2022/authorization/public-api.mjs +2 -1
  261. package/esm2022/authorization/runtime.mjs +96 -0
  262. package/esm2022/authorization/session-manage.service.mjs +3 -5
  263. package/esm2022/authorization/state.service.mjs +23 -64
  264. package/esm2022/authorization/token-client.mjs +101 -0
  265. package/esm2022/business/resource-select/exports/cluster-list/component.mjs +3 -2
  266. package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +7 -2
  267. package/esm2022/business/resource-select/exports/icon/component.mjs +4 -2
  268. package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +8 -2
  269. package/esm2022/business/resource-select/exports/namespace-list/component.mjs +12 -2
  270. package/esm2022/business/resource-select/exports/project-list/component.mjs +3 -2
  271. package/esm2022/business/resource-select/internals/data-grid/component.mjs +12 -2
  272. package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +3 -2
  273. package/esm2022/business/resource-select/internals/no-data/component.mjs +6 -2
  274. package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +6 -2
  275. package/esm2022/business/resource-select/module.mjs +6 -26
  276. package/esm2022/chart/chart.module.mjs +6 -13
  277. package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +4 -2
  278. package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +4 -2
  279. package/esm2022/chart/common/series/area-series.component.mjs +4 -2
  280. package/esm2022/chart/common/series/bar-path.component.mjs +4 -2
  281. package/esm2022/chart/common/series/line-series.component.mjs +4 -2
  282. package/esm2022/chart/common/tooltip/tooltip.component.mjs +7 -2
  283. package/esm2022/chart/custom-template/dropdown-legend.mjs +6 -2
  284. package/esm2022/core/constants/tokens.mjs +12 -12
  285. package/esm2022/editable-text/component.mjs +6 -2
  286. package/esm2022/editable-text/module.mjs +1 -6
  287. package/esm2022/exec/module.mjs +1 -9
  288. package/esm2022/exec/placeholder/component.mjs +4 -2
  289. package/esm2022/exec/terminal/component.mjs +6 -2
  290. package/esm2022/exec/terminal-group/component.mjs +7 -2
  291. package/esm2022/feature-gate-forbidden/component/component.mjs +7 -2
  292. package/esm2022/feature-gate-forbidden/module.mjs +1 -7
  293. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +5 -2
  294. package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +1 -5
  295. package/esm2022/graph-canvas/components/graph-canvas.component.mjs +5 -2
  296. package/esm2022/graph-canvas/graph-canvas.module.mjs +1 -5
  297. package/esm2022/help-document/component.mjs +9 -2
  298. package/esm2022/help-document/module.mjs +1 -9
  299. package/esm2022/iframe-config/config.service.mjs +8 -2
  300. package/esm2022/k8s-resource-list/footer/component.mjs +5 -2
  301. package/esm2022/k8s-resource-list/k8s-resource-list.module.mjs +1 -5
  302. package/esm2022/license/license-error/component.mjs +11 -2
  303. package/esm2022/license/license-error/module.mjs +1 -11
  304. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +11 -2
  305. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +8 -2
  306. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.module.mjs +1 -12
  307. package/esm2022/page-scaffold/page/page.component.mjs +5 -2
  308. package/esm2022/page-scaffold/page/page.module.mjs +1 -4
  309. package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +4 -2
  310. package/esm2022/page-scaffold/page-header/account-menu/module.mjs +1 -5
  311. package/esm2022/page-scaffold/page-header/common-layout/common-layout.module.mjs +1 -11
  312. package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +7 -2
  313. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +9 -2
  314. package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +5 -2
  315. package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +7 -2
  316. package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +9 -2
  317. package/esm2022/page-scaffold/page-header/header-notify/header-notify.module.mjs +1 -12
  318. package/esm2022/page-scaffold/page-header/header-notify/notify.service.mjs +1 -1
  319. package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +7 -2
  320. package/esm2022/page-scaffold/page-header/help-menu/module.mjs +1 -7
  321. package/esm2022/page-scaffold/page-header/module.mjs +1 -4
  322. package/esm2022/pie-derivative-chart/pie-derivative-chart.module.mjs +6 -9
  323. package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +9 -2
  324. package/esm2022/searchable-selector/component.mjs +8 -2
  325. package/esm2022/searchable-selector/module.mjs +1 -9
  326. package/esm2022/skeleton/item/component.mjs +4 -2
  327. package/esm2022/skeleton/module.mjs +1 -5
  328. package/esm2022/skeleton/nav-skeleton/component.mjs +4 -2
  329. package/esm2022/table/component.mjs +13 -2
  330. package/esm2022/table/module.mjs +1 -10
  331. package/esm2022/view-chart/custom-template/dropdown-legend.mjs +6 -2
  332. package/esm2022/view-chart/view-chart.component.mjs +6 -2
  333. package/esm2022/view-chart/view-chart.module.mjs +6 -8
  334. package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +6 -2
  335. package/esm2022/view-zchart/view-zchart.component.mjs +5 -2
  336. package/esm2022/view-zchart/view-zchart.module.mjs +6 -8
  337. package/exec/constants.d.ts.map +1 -0
  338. package/exec/module.d.ts +1 -1
  339. package/exec/module.d.ts.map +1 -0
  340. package/exec/placeholder/component.d.ts.map +1 -0
  341. package/exec/public-api.d.ts.map +1 -0
  342. package/exec/service.d.ts.map +1 -0
  343. package/exec/terminal/component.d.ts.map +1 -0
  344. package/exec/terminal-group/component.d.ts.map +1 -0
  345. package/exec/types.d.ts.map +1 -0
  346. package/feature-gate-forbidden/component/component.d.ts.map +1 -0
  347. package/feature-gate-forbidden/module.d.ts.map +1 -0
  348. package/feature-gate-forbidden/public-api.d.ts.map +1 -0
  349. package/form/directives/value-trace.directive.d.ts.map +1 -0
  350. package/form/errors-mapper/base-errors-mapper.d.ts.map +1 -0
  351. package/form/errors-mapper/default-errors-mapper.service.d.ts.map +1 -0
  352. package/form/errors-mapper/errors-mapper-component/component.d.ts.map +1 -0
  353. package/form/errors-mapper/errors-mapper.directive.d.ts.map +1 -0
  354. package/form/errors-mapper/errors-mapper.module.d.ts.map +1 -0
  355. package/form/errors-mapper/public-api.d.ts.map +1 -0
  356. package/form/errors-mapper/types.d.ts.map +1 -0
  357. package/form/labels-editor/component.d.ts.map +1 -0
  358. package/form/public-api.d.ts.map +1 -0
  359. package/form/taints-editor/component.d.ts.map +1 -0
  360. package/form/upload-file/component.d.ts.map +1 -0
  361. package/form/utils.d.ts.map +1 -0
  362. package/form/validators/async-function-validator.directive.d.ts +1 -1
  363. package/form/validators/async-function-validator.directive.d.ts.map +1 -0
  364. package/form/validators/dns1123-subdomain.d.ts.map +1 -0
  365. package/form/validators/function-validator.directive.d.ts.map +1 -0
  366. package/form/validators/maxlength-minlength-validator.directive.d.ts.map +1 -0
  367. package/form/validators/module.d.ts.map +1 -0
  368. package/form/validators/not-be-validator.directive.d.ts.map +1 -0
  369. package/form/validators/one-of-validator.directive.d.ts.map +1 -0
  370. package/form/validators/public-api.d.ts.map +1 -0
  371. package/form/validators/resource-limit.d.ts.map +1 -0
  372. package/form/validators/strong-password/public-api.d.ts.map +1 -0
  373. package/form/validators/strong-password/strong-password-tooltip/component.d.ts.map +1 -0
  374. package/form/validators/strong-password/strong-password-validator.directive.d.ts.map +1 -0
  375. package/form/validators/strong-password/strong-password-validator.module.d.ts.map +1 -0
  376. package/form/validators/utils.d.ts.map +1 -0
  377. package/graph-canvas/components/graph-actions.component.d.ts.map +1 -0
  378. package/graph-canvas/components/graph-canvas.component.d.ts.map +1 -0
  379. package/graph-canvas/components/graph-link.component.d.ts.map +1 -0
  380. package/graph-canvas/components/graph-links.component.d.ts.map +1 -0
  381. package/graph-canvas/components/graph-node.directive.d.ts.map +1 -0
  382. package/graph-canvas/graph-canvas.module.d.ts.map +1 -0
  383. package/graph-canvas/graph-store.service.d.ts.map +1 -0
  384. package/graph-canvas/public-api.d.ts.map +1 -0
  385. package/graph-canvas/types.d.ts.map +1 -0
  386. package/graph-canvas/utils.d.ts.map +1 -0
  387. package/grid-layout/components/grid/component.d.ts.map +1 -0
  388. package/grid-layout/components/grid-items/component.d.ts.map +1 -0
  389. package/grid-layout/constant.d.ts.map +1 -0
  390. package/grid-layout/directives/drag-handler.directive.d.ts.map +1 -0
  391. package/grid-layout/directives/placeholder.directive.d.ts.map +1 -0
  392. package/grid-layout/directives/remove-handler.directive.d.ts.map +1 -0
  393. package/grid-layout/directives/resize-handler.directive.d.ts.map +1 -0
  394. package/grid-layout/grid-layout.service.d.ts.map +1 -0
  395. package/grid-layout/grid-placeholder.service.d.ts.map +1 -0
  396. package/grid-layout/module.d.ts.map +1 -0
  397. package/grid-layout/public-api.d.ts.map +1 -0
  398. package/grid-layout/type.d.ts.map +1 -0
  399. package/grid-layout/utils/client-rect.utils.d.ts.map +1 -0
  400. package/grid-layout/utils/grid.utils.d.ts.map +1 -0
  401. package/grid-layout/utils/mouse.utils.d.ts.map +1 -0
  402. package/grid-layout/utils/operator.d.ts.map +1 -0
  403. package/grid-layout/utils/react-grid-layout.utils.d.ts.map +1 -0
  404. package/grid-layout/utils/scroll.utils.d.ts.map +1 -0
  405. package/help-document/component.d.ts.map +1 -0
  406. package/help-document/directive.d.ts.map +1 -0
  407. package/help-document/module.d.ts.map +1 -0
  408. package/help-document/public-api.d.ts.map +1 -0
  409. package/help-document/service.d.ts.map +1 -0
  410. package/iframe-config/config.service.d.ts.map +1 -0
  411. package/iframe-config/constants.d.ts.map +1 -0
  412. package/iframe-config/public-api.d.ts.map +1 -0
  413. package/k8s-resource-list/footer/component.d.ts.map +1 -0
  414. package/k8s-resource-list/k8s-resource-list.d.ts.map +1 -0
  415. package/k8s-resource-list/k8s-resource-list.module.d.ts.map +1 -0
  416. package/k8s-resource-list/k8s-resource-paged-list.d.ts.map +1 -0
  417. package/k8s-resource-list/public-api.d.ts.map +1 -0
  418. package/k8s-resource-list/types.d.ts.map +1 -0
  419. package/k8s-resource-list/utils.d.ts.map +1 -0
  420. package/k8s-shared/constants.d.ts.map +1 -0
  421. package/k8s-shared/k8s-resource-translate-key.pipe.d.ts.map +1 -0
  422. package/k8s-shared/k8s-shared-util.service.d.ts.map +1 -0
  423. package/k8s-shared/public-api.d.ts.map +1 -0
  424. package/k8s-shared/resource-mark/k8s-resource-mark.component.d.ts.map +1 -0
  425. package/k8s-shared/resource-mark/util.d.ts.map +1 -0
  426. package/k8s-shared/update-description-dialog/component.d.ts.map +1 -0
  427. package/k8s-shared/update-display-name-dialog/component.d.ts.map +1 -0
  428. package/k8s-shared/update-key-value-dialog/component.d.ts.map +1 -0
  429. package/lazy-component/lazy-load-component.d.ts.map +1 -0
  430. package/lazy-component/public-api.d.ts.map +1 -0
  431. package/lazy-component/visibility.service.d.ts.map +1 -0
  432. package/license/license-api.d.ts.map +1 -0
  433. package/license/license-error/component.d.ts.map +1 -0
  434. package/license/license-error/module.d.ts.map +1 -0
  435. package/license/license.guard.d.ts.map +1 -0
  436. package/license/license.service.d.ts.map +1 -0
  437. package/license/license.type.d.ts.map +1 -0
  438. package/license/public-api.d.ts.map +1 -0
  439. package/list-display/component.d.ts.map +1 -0
  440. package/list-display/public-api.d.ts.map +1 -0
  441. package/metric-chart/common-chart.service.d.ts.map +1 -0
  442. package/metric-chart/helpers.d.ts.map +1 -0
  443. package/metric-chart/metric-chart.component.d.ts.map +1 -0
  444. package/metric-chart/metric-chart.module.d.ts.map +1 -0
  445. package/metric-chart/metric-time-pick.d.ts.map +1 -0
  446. package/metric-chart/public-api.d.ts.map +1 -0
  447. package/metric-chart/types.d.ts.map +1 -0
  448. package/metric-chart/utils.d.ts.map +1 -0
  449. package/multi-search/action-input/component.d.ts.map +1 -0
  450. package/multi-search/form/component.d.ts.map +1 -0
  451. package/multi-search/multi-search-tags/component.d.ts.map +1 -0
  452. package/multi-search/public-api.d.ts.map +1 -0
  453. package/multi-search/types.d.ts.map +1 -0
  454. package/multi-search/utils.d.ts.map +1 -0
  455. package/mutable/element.d.ts.map +1 -0
  456. package/mutable/mosaic/mosaic.component.d.ts.map +1 -0
  457. package/mutable/mosaic/mosaic.directive.d.ts.map +1 -0
  458. package/mutable/mutable.directive.d.ts.map +1 -0
  459. package/mutable/mutable.module.d.ts.map +1 -0
  460. package/mutable/public-api.d.ts.map +1 -0
  461. package/mutable/util.d.ts.map +1 -0
  462. package/notification/errors-mapper.d.ts.map +1 -0
  463. package/notification/feedback-notification/component.d.ts.map +1 -0
  464. package/notification/helpers.d.ts.map +1 -0
  465. package/notification/notification-util.service.d.ts.map +1 -0
  466. package/notification/public-api.d.ts.map +1 -0
  467. package/notification/resource-error.interceptor.d.ts.map +1 -0
  468. package/overview-banner/overview-banner.component.d.ts.map +1 -0
  469. package/overview-banner/overview-banner.module.d.ts.map +1 -0
  470. package/overview-banner/overview-banner.types.d.ts.map +1 -0
  471. package/overview-banner/public-api.d.ts.map +1 -0
  472. package/package.json +1 -1
  473. package/page-guard/component/component.d.ts.map +1 -0
  474. package/page-guard/component/helper-directives.d.ts.map +1 -0
  475. package/page-guard/component/page-guard.type.d.ts.map +1 -0
  476. package/page-guard/module.d.ts.map +1 -0
  477. package/page-guard/public-api.d.ts.map +1 -0
  478. package/page-scaffold/module.d.ts.map +1 -0
  479. package/page-scaffold/navigation/breadcrumb/breadcrumb-slot.directive.d.ts.map +1 -0
  480. package/page-scaffold/navigation/breadcrumb/breadcrumb.component.d.ts.map +1 -0
  481. package/page-scaffold/navigation/breadcrumb/breadcrumb.service.d.ts.map +1 -0
  482. package/page-scaffold/navigation/breadcrumb/module.d.ts.map +1 -0
  483. package/page-scaffold/navigation/breadcrumb/public-api.d.ts.map +1 -0
  484. package/page-scaffold/navigation/lottie-icons/animation-data.d.ts.map +1 -0
  485. package/page-scaffold/navigation/lottie-icons/lottie-icon.directive.d.ts.map +1 -0
  486. package/page-scaffold/navigation/lottie-icons/module.d.ts.map +1 -0
  487. package/page-scaffold/navigation/lottie-icons/public-api.d.ts.map +1 -0
  488. package/page-scaffold/navigation/lottie-icons/replace-lottie-colors.d.ts.map +1 -0
  489. package/page-scaffold/navigation/module.d.ts.map +1 -0
  490. package/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.d.ts.map +1 -0
  491. package/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.d.ts.map +1 -0
  492. package/page-scaffold/navigation/nav-menu/nav-menu.component.d.ts.map +1 -0
  493. package/page-scaffold/navigation/nav-menu/nav-menu.module.d.ts.map +1 -0
  494. package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts.map +1 -0
  495. package/page-scaffold/navigation/nav-menu/public-api.d.ts.map +1 -0
  496. package/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.d.ts.map +1 -0
  497. package/page-scaffold/navigation/navconfig-loader/public-api.d.ts.map +1 -0
  498. package/page-scaffold/navigation/public-api.d.ts.map +1 -0
  499. package/page-scaffold/navigation/utils.d.ts.map +1 -0
  500. package/page-scaffold/page/context.service.d.ts.map +1 -0
  501. package/page-scaffold/page/helper-directives.d.ts.map +1 -0
  502. package/page-scaffold/page/notices/maintenance.component.d.ts.map +1 -0
  503. package/page-scaffold/page/notices/notice.component.d.ts.map +1 -0
  504. package/page-scaffold/page/page.component.d.ts.map +1 -0
  505. package/page-scaffold/page/page.module.d.ts.map +1 -0
  506. package/page-scaffold/page/public-api.d.ts.map +1 -0
  507. package/page-scaffold/page-header/account-menu/component/component.d.ts +0 -17
  508. package/page-scaffold/page-header/account-menu/component/component.d.ts.map +1 -0
  509. package/page-scaffold/page-header/account-menu/module.d.ts.map +1 -0
  510. package/page-scaffold/page-header/account-menu/public-api.d.ts.map +1 -0
  511. package/page-scaffold/page-header/common-layout/common-layout.module.d.ts.map +1 -0
  512. package/page-scaffold/page-header/common-layout/context.service.d.ts.map +1 -0
  513. package/page-scaffold/page-header/common-layout/namespace-select/component.d.ts.map +1 -0
  514. package/page-scaffold/page-header/common-layout/product-select/component.d.ts.map +1 -0
  515. package/page-scaffold/page-header/common-layout/product-select/service.d.ts.map +1 -0
  516. package/page-scaffold/page-header/common-layout/project-select/base-selection.d.ts.map +1 -0
  517. package/page-scaffold/page-header/common-layout/public-api.d.ts.map +1 -0
  518. package/page-scaffold/page-header/common-layout/store.service.d.ts.map +1 -0
  519. package/page-scaffold/page-header/common-layout/utils.d.ts.map +1 -0
  520. package/page-scaffold/page-header/component.d.ts.map +1 -0
  521. package/page-scaffold/page-header/enterprise-support-status/component.d.ts.map +1 -0
  522. package/page-scaffold/page-header/header-notify/component/header-notify.component.d.ts.map +1 -0
  523. package/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.d.ts.map +1 -0
  524. package/page-scaffold/page-header/header-notify/header-notify.module.d.ts.map +1 -0
  525. package/page-scaffold/page-header/header-notify/notify.service.d.ts.map +1 -0
  526. package/page-scaffold/page-header/header-notify/public-api.d.ts.map +1 -0
  527. package/page-scaffold/page-header/header-notify/utils.d.ts.map +1 -0
  528. package/page-scaffold/page-header/help-menu/component/component.d.ts.map +1 -0
  529. package/page-scaffold/page-header/help-menu/module.d.ts.map +1 -0
  530. package/page-scaffold/page-header/help-menu/public-api.d.ts.map +1 -0
  531. package/page-scaffold/page-header/module.d.ts.map +1 -0
  532. package/page-scaffold/page-header/public-api.d.ts.map +1 -0
  533. package/page-scaffold/public-api.d.ts.map +1 -0
  534. package/permission/constants.d.ts.map +1 -0
  535. package/permission/helpers.d.ts.map +1 -0
  536. package/permission/k8s-permission.service.d.ts.map +1 -0
  537. package/permission/permission.guard.d.ts.map +1 -0
  538. package/permission/public-api.d.ts.map +1 -0
  539. package/permission/types.d.ts.map +1 -0
  540. package/pie-derivative-chart/donut-status/component.d.ts.map +1 -0
  541. package/pie-derivative-chart/indicator-color.directive.d.ts.map +1 -0
  542. package/pie-derivative-chart/numerical-limit.pipe.d.ts.map +1 -0
  543. package/pie-derivative-chart/pie-derivative-chart.module.d.ts.map +1 -0
  544. package/pie-derivative-chart/public-api.d.ts.map +1 -0
  545. package/pie-derivative-chart/radial-bar/radial-bar-chart.component.d.ts.map +1 -0
  546. package/pie-derivative-chart/units.d.ts.map +1 -0
  547. package/pod-status/component.d.ts.map +1 -0
  548. package/pod-status/public-api.d.ts.map +1 -0
  549. package/pod-status/status.d.ts.map +1 -0
  550. package/pod-status/typings.d.ts.map +1 -0
  551. package/public-api.d.ts.map +1 -0
  552. package/searchable-selector/component.d.ts.map +1 -0
  553. package/searchable-selector/module.d.ts.map +1 -0
  554. package/searchable-selector/public-api.d.ts.map +1 -0
  555. package/skeleton/item/component.d.ts.map +1 -0
  556. package/skeleton/module.d.ts.map +1 -0
  557. package/skeleton/nav-skeleton/component.d.ts.map +1 -0
  558. package/skeleton/public-api.d.ts.map +1 -0
  559. package/table/component.d.ts.map +1 -0
  560. package/table/constants.d.ts.map +1 -0
  561. package/table/helper.d.ts +1 -1
  562. package/table/helper.d.ts.map +1 -0
  563. package/table/helpers.directive.d.ts.map +1 -0
  564. package/table/module.d.ts +1 -1
  565. package/table/module.d.ts.map +1 -0
  566. package/table/public-api.d.ts.map +1 -0
  567. package/table/types.d.ts.map +1 -0
  568. package/table/util.service.d.ts.map +1 -0
  569. package/translate/constants.d.ts.map +1 -0
  570. package/translate/helpers.d.ts.map +1 -0
  571. package/translate/i18n-assets-loader.d.ts.map +1 -0
  572. package/translate/i18n-config.d.ts.map +1 -0
  573. package/translate/intl-format.pipes.d.ts.map +1 -0
  574. package/translate/public-api.d.ts.map +1 -0
  575. package/translate/relative-time-manager.service.d.ts.map +1 -0
  576. package/translate/tokens.d.ts.map +1 -0
  577. package/translate/translate.directive.d.ts.map +1 -0
  578. package/translate/translate.module.d.ts.map +1 -0
  579. package/translate/translate.pipe.d.ts.map +1 -0
  580. package/translate/translate.service.d.ts.map +1 -0
  581. package/translate/types.d.ts.map +1 -0
  582. package/view-chart/custom-template/dropdown-legend.d.ts.map +1 -0
  583. package/view-chart/legend/legend.component.d.ts.map +1 -0
  584. package/view-chart/public-api.d.ts.map +1 -0
  585. package/view-chart/types.d.ts.map +1 -0
  586. package/view-chart/view-chart.component.d.ts +1 -1
  587. package/view-chart/view-chart.component.d.ts.map +1 -0
  588. package/view-chart/view-chart.module.d.ts.map +1 -0
  589. package/view-zchart/custom-template/dropdown-legend.d.ts.map +1 -0
  590. package/view-zchart/legend/legend.component.d.ts.map +1 -0
  591. package/view-zchart/public-api.d.ts.map +1 -0
  592. package/view-zchart/types.d.ts.map +1 -0
  593. package/view-zchart/units.d.ts.map +1 -0
  594. package/view-zchart/view-zchart.component.d.ts.map +1 -0
  595. package/view-zchart/view-zchart.module.d.ts.map +1 -0
  596. package/widget/card-section/card-section.component.d.ts.map +1 -0
  597. package/widget/confirm-delete/confirm-delete.component.d.ts.map +1 -0
  598. package/widget/confirm-delete/utils.d.ts.map +1 -0
  599. package/widget/current-time/component.d.ts.map +1 -0
  600. package/widget/date-range-picker/component.d.ts.map +1 -0
  601. package/widget/date-range-picker/public-api.d.ts.map +1 -0
  602. package/widget/date-range-picker/type.d.ts.map +1 -0
  603. package/widget/date-range-picker/util.d.ts.map +1 -0
  604. package/widget/field-set/column/component.d.ts.map +1 -0
  605. package/widget/field-set/group/component.d.ts.map +1 -0
  606. package/widget/field-set/index.d.ts.map +1 -0
  607. package/widget/field-set/item/component.d.ts.map +1 -0
  608. package/widget/foldable-block/component.d.ts.map +1 -0
  609. package/widget/foldable-item-in-table/component.d.ts.map +1 -0
  610. package/widget/loading-mask/loading-mask.component.d.ts.map +1 -0
  611. package/widget/password-input/component.d.ts.map +1 -0
  612. package/widget/public-api.d.ts.map +1 -0
  613. package/widget/relative-time/component.d.ts.map +1 -0
  614. package/widget/resource-label/component.d.ts.map +1 -0
  615. package/widget/resource-multi-select/component.d.ts.map +1 -0
  616. package/widget/resource-multi-select/util.d.ts.map +1 -0
  617. package/widget/search-panel/component.d.ts.map +1 -0
  618. package/widget/search-panel/helper.directive.d.ts.map +1 -0
  619. package/widget/search-panel/search-item/component.d.ts.map +1 -0
  620. package/widget/select-prefix-label/directive.d.ts.map +1 -0
  621. package/widget/status-icon/status-icon.component.d.ts.map +1 -0
  622. package/widget/tags-label/component.d.ts.map +1 -0
  623. package/widget/terminating-tag/component.d.ts.map +1 -0
  624. package/widget/text-ellipsis/component.d.ts.map +1 -0
  625. package/widget/text-tooltip/directive.d.ts.map +1 -0
  626. package/widget/text-with-url/component.d.ts.map +1 -0
  627. package/widget/widget.module.d.ts.map +1 -0
  628. package/widget/zero-state/zero-state.component.d.ts.map +1 -0
  629. package/window-channel/base-window-channel.d.ts.map +1 -0
  630. package/window-channel/directives/host-link.directive.d.ts.map +1 -0
  631. package/window-channel/host-window-channel.service.d.ts.map +1 -0
  632. package/window-channel/plugin-window-channel.service.d.ts.map +1 -0
  633. package/window-channel/public-api.d.ts.map +1 -0
  634. package/window-channel/utils.d.ts.map +1 -0
  635. package/workload-status-icon/component.d.ts.map +1 -0
  636. package/workload-status-icon/public-api.d.ts.map +1 -0
  637. package/xterm/public-api.d.ts.map +1 -0
  638. package/xterm/xterm-terminal/xterm-terminal.component.d.ts.map +1 -0
  639. package/xterm/xterm-terminal/xterm-terminal.directive.d.ts.map +1 -0
  640. package/xterm/xterm.component.d.ts.map +1 -0
@@ -6,6 +6,8 @@ import { Orientation } from '../../types';
6
6
  import { ScaleType, reduceTicks } from '../../utils';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "../../chart.service";
9
+ import * as i2 from "@angular/common";
10
+ import * as i3 from "../../../translate/translate.pipe";
9
11
  const _c0 = ["aclXAxisTicks", ""];
10
12
  function XAxisTicksComponent_ng_container_0__svg_g_1_Template(rf, ctx) { if (rf & 1) {
11
13
  i0.ɵɵnamespaceSVG();
@@ -133,7 +135,7 @@ export class XAxisTicksComponent {
133
135
  } if (rf & 2) {
134
136
  const elseTemplate_r5 = i0.ɵɵreference(2);
135
137
  i0.ɵɵproperty("ngIf", ctx.context.barOptions.orientation === ctx.orientation.VERTICAL)("ngIfElse", elseTemplate_r5);
136
- } }, encapsulation: 2, changeDetection: 0 }); }
138
+ } }, dependencies: [i2.NgForOf, i2.NgIf, i3.TranslatePipe], encapsulation: 2, changeDetection: 0 }); }
137
139
  }
138
140
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(XAxisTicksComponent, [{
139
141
  type: Component,
@@ -209,4 +211,4 @@ export class XAxisTicksComponent {
209
211
  type: Input
210
212
  }] }); })();
211
213
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(XAxisTicksComponent, { className: "XAxisTicksComponent" }); })();
212
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieC1heGlzLXRpY2tzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jaGFydC9jb21tb24vYXhpcy94LWF4aXMtdGlja3MuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBbUIsTUFBTSxhQUFhLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztJQWE3QyxBQURGLHlCQUFpRCxjQVc5QztJQUNDLFlBQ0Y7O0lBQUEsaUJBQU87SUFDUCwwQkFPUTtJQUNWLGlCQUFROzs7OztJQXBCSixjQUlDOztJQU1ELGNBQ0Y7SUFERSx5R0FDRjtJQUVFLGVBQWtCOzs7O0lBckJ4Qiw2QkFLQztJQUNDLHFGQUFpRDs7SUF1QmpELHlCQUFPO0lBQ0wsMEJBSUU7SUFDSixpQkFBUTs7OztJQTdCZ0IsY0FBVTtJQUFWLHNDQUFVO0lBeUI5QixlQUFvQjs7Ozs7SUFTdEIsQUFERix5QkFBaUQsY0FROUM7SUFDQyxZQUNGOzs7SUFDRixBQURFLGlCQUFPLEVBQ0Q7Ozs7SUFSSixjQUFpQjs7SUFNakIsY0FDRjtJQURFLCtIQUNGOzs7SUFWRixtRkFBaUQ7O0lBWWpELHlCQUFPO0lBQ0wsMEJBSUU7SUFDSixpQkFBUTs7O0lBbEJnQixzQ0FBVTtJQWM5QixlQUFvQjs7O0FBUzlCLE1BQU0sT0FBTyxtQkFBbUI7SUFPOUIsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFHRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQztRQUNoRCxPQUFPLFFBQVEsS0FBSyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLEtBQWEsQ0FBQztRQUNsQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3RDLEtBQUssR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUN4RCxJQUFJLENBQUMsZUFBZSxDQUNyQixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixLQUFLLEdBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUErQjtpQkFDbEQsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQzVCLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDL0IsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQWFELFdBQVcsQ0FBQyxTQUFpQjtRQUMzQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVU7WUFDbkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU07WUFDL0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztRQUNqQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxZQUNtQixjQUFtQyxFQUNuQyxHQUFzQjtRQUR0QixtQkFBYyxHQUFkLGNBQWMsQ0FBcUI7UUFDbkMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFuRHpDLGVBQVUsR0FBRyxRQUFRLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUE4QjFCLG9CQUFlLEdBQUcsQ0FBQyxLQUFnQixFQUFRLEVBQUU7WUFDM0MsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsTUFBTTtnQkFDOUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBd0IsQ0FBQyxTQUFTLEVBQUUsR0FBRyxHQUFHO2dCQUMxRCxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ04sT0FBTztnQkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7Z0JBQ3pCLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxTQUFTO2dCQUNwQyxDQUFDLEVBQUUsQ0FBQzthQUNHLENBQUM7UUFDWixDQUFDLENBQUM7SUFZQyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVzthQUM1QixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO2FBQ2hDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1lBQ2pCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQTZCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLElBQUk7WUFDckQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUN0QyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ1osQ0FBQztvRkF4RVUsbUJBQW1CO29FQUFuQixtQkFBbUI7WUF4QjVCLEFBdENBLHNGQUtDLHdHQWlDMEI7OztZQW5DZCxBQUZWLHNGQUVVLDZCQUVqQjs7O2lGQXlEYSxtQkFBbUI7Y0FsRS9CLFNBQVM7ZUFBQztnQkFDVCw4REFBOEQ7Z0JBQzlELFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNERUO2dCQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEO29GQUVVLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxXQUFXO2tCQUFuQixLQUFLOztrRkFISyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY2FsZVBvaW50LCBTY2FsZVRpbWUgfSBmcm9tICdkMyc7XG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IENvbnRleHRDaGFydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jaGFydC5zZXJ2aWNlJztcbmltcG9ydCB7IE9yaWVudGF0aW9uLCBUaWNrLCBUaWNrVmFsdWUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBTY2FsZVR5cGUsIHJlZHVjZVRpY2tzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdnW2FjbFhBeGlzVGlja3NdJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cIlxuICAgICAgICBjb250ZXh0LmJhck9wdGlvbnMub3JpZW50YXRpb24gPT09IG9yaWVudGF0aW9uLlZFUlRJQ0FMO1xuICAgICAgICBlbHNlIGVsc2VUZW1wbGF0ZVxuICAgICAgXCJcbiAgICA+XG4gICAgICA8c3ZnOmcgKm5nRm9yPVwibGV0IHRpY2sgb2YgdGlja3M7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICBbYXR0ci54XT1cIlxuICAgICAgICAgICAgaSA9PT0gdGlja3MubGVuZ3RoIC0gMSAmJiB0aWNrLnggPj0gY29udGV4dC5jaGFydFZpZXc/LmhlaWdodFxuICAgICAgICAgICAgICA/IHRpY2sueCAtIDVcbiAgICAgICAgICAgICAgOiB0aWNrLnhcbiAgICAgICAgICBcIlxuICAgICAgICAgIFthdHRyLnldPVwidGljay55ICsgMTZcIlxuICAgICAgICAgIGZpbGw9XCIjNjY2XCJcbiAgICAgICAgICBbYXR0ci50ZXh0LWFuY2hvcl09XCJ0ZXh0QW5jaG9yXCJcbiAgICAgICAgICBmb250LXNpemU9XCIxMVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyB0cmFuc2xhdGlvbiA/ICh0aWNrLnZhbHVlIHwgdHJhbnNsYXRlKSA6IHRpY2sudmFsdWUgfX1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8bGluZVxuICAgICAgICAgIFthdHRyLngxXT1cInRpY2sueFwiXG4gICAgICAgICAgW2F0dHIueDJdPVwidGljay54XCJcbiAgICAgICAgICBbYXR0ci55MV09XCJ0aWNrLnlcIlxuICAgICAgICAgIFthdHRyLnkyXT1cInRpY2sueSArIDZcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjFcIlxuICAgICAgICAgIHN0cm9rZT1cIiNjY2Q2ZWJcIlxuICAgICAgICA+PC9saW5lPlxuICAgICAgPC9zdmc6Zz5cbiAgICAgIDxzdmc6Zz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBbYXR0ci5kXT1cInhBeGlzTGluZVwiXG4gICAgICAgICAgc3Ryb2tlPVwiI2NjZDZlYlwiXG4gICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAvPlxuICAgICAgPC9zdmc6Zz5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVRlbXBsYXRlPlxuICAgICAgPHN2ZzpnICpuZ0Zvcj1cImxldCB0aWNrIG9mIHRpY2tzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgeD1cIi04XCJcbiAgICAgICAgICBbYXR0ci55XT1cInRpY2sueFwiXG4gICAgICAgICAgZmlsbD1cIiM2NjZcIlxuICAgICAgICAgIHRleHQtYW5jaG9yPVwiZW5kXCJcbiAgICAgICAgICBmb250LXNpemU9XCIxMVwiXG4gICAgICAgICAgYWxpZ25tZW50LWJhc2VsaW5lPVwibWlkZGxlXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHRyYW5zbGF0aW9uID8gKHRpY2sudmFsdWUgfCB0cmFuc2xhdGUgfCB0cmFuc2xhdGUpIDogdGljay52YWx1ZSB9fVxuICAgICAgICA8L3RleHQ+XG4gICAgICA8L3N2ZzpnPlxuICAgICAgPHN2ZzpnPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIFthdHRyLmRdPVwieUF4aXNMaW5lXCJcbiAgICAgICAgICBzdHJva2U9XCIjY2NkNmViXCJcbiAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2ZzpnPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBYQXhpc1RpY2tzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZGF0ZUZvcm1hdDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHRyYW5zbGF0aW9uOiBib29sZWFuO1xuXG4gIHRleHRBbmNob3IgPSAnbWlkZGxlJztcbiAgb3JpZW50YXRpb24gPSBPcmllbnRhdGlvbjtcbiAgZ2V0IGNvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dFNlcnZpY2U7XG4gIH1cblxuICB0aWNrczogVGlja1tdO1xuICBnZXQgeUF4aXNMaW5lKCkge1xuICAgIHJldHVybiBgTSR7MH0gJHswfUwkezB9ICR7dGhpcy5jb250ZXh0LmNoYXJ0Vmlldy5oZWlnaHR9WmA7XG4gIH1cblxuICBnZXQgeEF4aXNMaW5lKCkge1xuICAgIGNvbnN0IHsgd2lkdGggfSA9IHRoaXMuY29udGV4dFNlcnZpY2UuY2hhcnRWaWV3O1xuICAgIHJldHVybiBgTTAgMEwke3dpZHRofSAwWmA7XG4gIH1cblxuICBnZXRUaWNrcygpIHtcbiAgICBsZXQgdGlja3M6IFRpY2tbXTtcbiAgICBpZiAodGhpcy5jb250ZXh0LnNjYWxlVHlwZSA9PT0gU2NhbGVUeXBlLk9SRElOQUwpIHtcbiAgICAgIGNvbnN0IG1heFRpY2tzID0gdGhpcy5nZXRNYXhUaWNrcygyMCk7XG4gICAgICB0aWNrcyA9IHJlZHVjZVRpY2tzKHRoaXMuY29udGV4dC54LmRvbWFpbigpLCBtYXhUaWNrcykubWFwKFxuICAgICAgICB0aGlzLmhhbmRsZVRpY2tzRGF0YSxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRpY2tzID0gKHRoaXMuY29udGV4dC54IGFzIFNjYWxlVGltZTxudW1iZXIsIG51bWJlcj4pXG4gICAgICAgIC50aWNrcyh0aGlzLmdldE1heFRpY2tzKDEwMCkpXG4gICAgICAgIC5tYXAodGhpcy5oYW5kbGVUaWNrc0RhdGEpO1xuICAgIH1cbiAgICByZXR1cm4gdGlja3M7XG4gIH1cblxuICBoYW5kbGVUaWNrc0RhdGEgPSAodmFsdWU6IFRpY2tWYWx1ZSk6IFRpY2sgPT4ge1xuICAgIGNvbnN0IGJhbmR3aWR0aCA9IHRoaXMuY29udGV4dC5iYXJPcHRpb25zLmlzQmFuZFxuICAgICAgPyAodGhpcy5jb250ZXh0LnggYXMgU2NhbGVQb2ludDxzdHJpbmc+KS5iYW5kd2lkdGgoKSAqIDAuNVxuICAgICAgOiAwO1xuICAgIHJldHVybiB7XG4gICAgICB2YWx1ZTogdGhpcy5mb3JtYXQodmFsdWUpLFxuICAgICAgeDogdGhpcy5jb250ZXh0LngodmFsdWUpICsgYmFuZHdpZHRoLFxuICAgICAgeTogMCxcbiAgICB9IGFzIFRpY2s7XG4gIH07XG5cbiAgZ2V0TWF4VGlja3ModGlja1dpZHRoOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IHdpZHRoID0gdGhpcy5jb250ZXh0Lmhvcml6b250YWxcbiAgICAgID8gdGhpcy5jb250ZXh0LmNoYXJ0Vmlldy5oZWlnaHRcbiAgICAgIDogdGhpcy5jb250ZXh0LmNoYXJ0Vmlldy53aWR0aDtcbiAgICByZXR1cm4gTWF0aC5mbG9vcih3aWR0aCAvIHRpY2tXaWR0aCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0Q2hhcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29udGV4dFNlcnZpY2Uuc2VyaWVzRGF0YSRcbiAgICAgIC5waXBlKG1hcCgoKSA9PiB0aGlzLmdldFRpY2tzKCkpKVxuICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICB0aGlzLnRpY2tzID0gcmVzO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGZvcm1hdCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSkge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHRTZXJ2aWNlLnNjYWxlVHlwZSA9PT0gU2NhbGVUeXBlLlRJTUVcbiAgICAgID8gZGF5anModmFsdWUpLmZvcm1hdCh0aGlzLmRhdGVGb3JtYXQpXG4gICAgICA6IHZhbHVlO1xuICB9XG59XG4iXX0=
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieC1heGlzLXRpY2tzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jaGFydC9jb21tb24vYXhpcy94LWF4aXMtdGlja3MuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBbUIsTUFBTSxhQUFhLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7O0lBYTdDLEFBREYseUJBQWlELGNBVzlDO0lBQ0MsWUFDRjs7SUFBQSxpQkFBTztJQUNQLDBCQU9RO0lBQ1YsaUJBQVE7Ozs7O0lBcEJKLGNBSUM7O0lBTUQsY0FDRjtJQURFLHlHQUNGO0lBRUUsZUFBa0I7Ozs7SUFyQnhCLDZCQUtDO0lBQ0MscUZBQWlEOztJQXVCakQseUJBQU87SUFDTCwwQkFJRTtJQUNKLGlCQUFROzs7O0lBN0JnQixjQUFVO0lBQVYsc0NBQVU7SUF5QjlCLGVBQW9COzs7OztJQVN0QixBQURGLHlCQUFpRCxjQVE5QztJQUNDLFlBQ0Y7OztJQUNGLEFBREUsaUJBQU8sRUFDRDs7OztJQVJKLGNBQWlCOztJQU1qQixjQUNGO0lBREUsK0hBQ0Y7OztJQVZGLG1GQUFpRDs7SUFZakQseUJBQU87SUFDTCwwQkFJRTtJQUNKLGlCQUFROzs7SUFsQmdCLHNDQUFVO0lBYzlCLGVBQW9COzs7QUFTOUIsTUFBTSxPQUFPLG1CQUFtQjtJQU85QixJ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QUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsSUFBSTtZQUNyRCxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDWixDQUFDO29GQXhFVSxtQkFBbUI7b0VBQW5CLG1CQUFtQjtZQXhCNUIsQUF0Q0Esc0ZBS0Msd0dBaUMwQjs7O1lBbkNkLEFBRlYsc0ZBRVUsNkJBRWpCOzs7aUZBeURhLG1CQUFtQjtjQWxFL0IsU0FBUztlQUFDO2dCQUNULDhEQUE4RDtnQkFDOUQsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0RFQ7Z0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDaEQ7b0ZBRVUsVUFBVTtrQkFBbEIsS0FBSztZQUVHLFdBQVc7a0JBQW5CLEtBQUs7O2tGQUhLLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNjYWxlUG9pbnQsIFNjYWxlVGltZSB9IGZyb20gJ2QzJztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQ29udGV4dENoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2NoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgT3JpZW50YXRpb24sIFRpY2ssIFRpY2tWYWx1ZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IFNjYWxlVHlwZSwgcmVkdWNlVGlja3MgfSBmcm9tICcuLi8uLi91dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2dbYWNsWEF4aXNUaWNrc10nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiXG4gICAgICAgIGNvbnRleHQuYmFyT3B0aW9ucy5vcmllbnRhdGlvbiA9PT0gb3JpZW50YXRpb24uVkVSVElDQUw7XG4gICAgICAgIGVsc2UgZWxzZVRlbXBsYXRlXG4gICAgICBcIlxuICAgID5cbiAgICAgIDxzdmc6ZyAqbmdGb3I9XCJsZXQgdGljayBvZiB0aWNrczsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICA8dGV4dFxuICAgICAgICAgIFthdHRyLnhdPVwiXG4gICAgICAgICAgICBpID09PSB0aWNrcy5sZW5ndGggLSAxICYmIHRpY2sueCA+PSBjb250ZXh0LmNoYXJ0Vmlldz8uaGVpZ2h0XG4gICAgICAgICAgICAgID8gdGljay54IC0gNVxuICAgICAgICAgICAgICA6IHRpY2sueFxuICAgICAgICAgIFwiXG4gICAgICAgICAgW2F0dHIueV09XCJ0aWNrLnkgKyAxNlwiXG4gICAgICAgICAgZmlsbD1cIiM2NjZcIlxuICAgICAgICAgIFthdHRyLnRleHQtYW5jaG9yXT1cInRleHRBbmNob3JcIlxuICAgICAgICAgIGZvbnQtc2l6ZT1cIjExXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHRyYW5zbGF0aW9uID8gKHRpY2sudmFsdWUgfCB0cmFuc2xhdGUpIDogdGljay52YWx1ZSB9fVxuICAgICAgICA8L3RleHQ+XG4gICAgICAgIDxsaW5lXG4gICAgICAgICAgW2F0dHIueDFdPVwidGljay54XCJcbiAgICAgICAgICBbYXR0ci54Ml09XCJ0aWNrLnhcIlxuICAgICAgICAgIFthdHRyLnkxXT1cInRpY2sueVwiXG4gICAgICAgICAgW2F0dHIueTJdPVwidGljay55ICsgNlwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMVwiXG4gICAgICAgICAgc3Ryb2tlPVwiI2NjZDZlYlwiXG4gICAgICAgID48L2xpbmU+XG4gICAgICA8L3N2ZzpnPlxuICAgICAgPHN2ZzpnPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIFthdHRyLmRdPVwieEF4aXNMaW5lXCJcbiAgICAgICAgICBzdHJva2U9XCIjY2NkNmViXCJcbiAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2ZzpnPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLXRlbXBsYXRlICNlbHNlVGVtcGxhdGU+XG4gICAgICA8c3ZnOmcgKm5nRm9yPVwibGV0IHRpY2sgb2YgdGlja3M7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICB4PVwiLThcIlxuICAgICAgICAgIFthdHRyLnldPVwidGljay54XCJcbiAgICAgICAgICBmaWxsPVwiIzY2NlwiXG4gICAgICAgICAgdGV4dC1hbmNob3I9XCJlbmRcIlxuICAgICAgICAgIGZvbnQtc2l6ZT1cIjExXCJcbiAgICAgICAgICBhbGlnbm1lbnQtYmFzZWxpbmU9XCJtaWRkbGVcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgdHJhbnNsYXRpb24gPyAodGljay52YWx1ZSB8IHRyYW5zbGF0ZSB8IHRyYW5zbGF0ZSkgOiB0aWNrLnZhbHVlIH19XG4gICAgICAgIDwvdGV4dD5cbiAgICAgIDwvc3ZnOmc+XG4gICAgICA8c3ZnOmc+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgW2F0dHIuZF09XCJ5QXhpc0xpbmVcIlxuICAgICAgICAgIHN0cm9rZT1cIiNjY2Q2ZWJcIlxuICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgLz5cbiAgICAgIDwvc3ZnOmc+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFhBeGlzVGlja3NDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBkYXRlRm9ybWF0OiBzdHJpbmc7XG5cbiAgQElucHV0KCkgdHJhbnNsYXRpb246IGJvb2xlYW47XG5cbiAgdGV4dEFuY2hvciA9ICdtaWRkbGUnO1xuICBvcmllbnRhdGlvbiA9IE9yaWVudGF0aW9uO1xuICBnZXQgY29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0U2VydmljZTtcbiAgfVxuXG4gIHRpY2tzOiBUaWNrW107XG4gIGdldCB5QXhpc0xpbmUoKSB7XG4gICAgcmV0dXJuIGBNJHswfSAkezB9TCR7MH0gJHt0aGlzLmNvbnRleHQuY2hhcnRWaWV3LmhlaWdodH1aYDtcbiAgfVxuXG4gIGdldCB4QXhpc0xpbmUoKSB7XG4gICAgY29uc3QgeyB3aWR0aCB9ID0gdGhpcy5jb250ZXh0U2VydmljZS5jaGFydFZpZXc7XG4gICAgcmV0dXJuIGBNMCAwTCR7d2lkdGh9IDBaYDtcbiAgfVxuXG4gIGdldFRpY2tzKCkge1xuICAgIGxldCB0aWNrczogVGlja1tdO1xuICAgIGlmICh0aGlzLmNvbnRleHQuc2NhbGVUeXBlID09PSBTY2FsZVR5cGUuT1JESU5BTCkge1xuICAgICAgY29uc3QgbWF4VGlja3MgPSB0aGlzLmdldE1heFRpY2tzKDIwKTtcbiAgICAgIHRpY2tzID0gcmVkdWNlVGlja3ModGhpcy5jb250ZXh0LnguZG9tYWluKCksIG1heFRpY2tzKS5tYXAoXG4gICAgICAgIHRoaXMuaGFuZGxlVGlja3NEYXRhLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGlja3MgPSAodGhpcy5jb250ZXh0LnggYXMgU2NhbGVUaW1lPG51bWJlciwgbnVtYmVyPilcbiAgICAgICAgLnRpY2tzKHRoaXMuZ2V0TWF4VGlja3MoMTAwKSlcbiAgICAgICAgLm1hcCh0aGlzLmhhbmRsZVRpY2tzRGF0YSk7XG4gICAgfVxuICAgIHJldHVybiB0aWNrcztcbiAgfVxuXG4gIGhhbmRsZVRpY2tzRGF0YSA9ICh2YWx1ZTogVGlja1ZhbHVlKTogVGljayA9PiB7XG4gICAgY29uc3QgYmFuZHdpZHRoID0gdGhpcy5jb250ZXh0LmJhck9wdGlvbnMuaXNCYW5kXG4gICAgICA/ICh0aGlzLmNvbnRleHQueCBhcyBTY2FsZVBvaW50PHN0cmluZz4pLmJhbmR3aWR0aCgpICogMC41XG4gICAgICA6IDA7XG4gICAgcmV0dXJuIHtcbiAgICAgIHZhbHVlOiB0aGlzLmZvcm1hdCh2YWx1ZSksXG4gICAgICB4OiB0aGlzLmNvbnRleHQueCh2YWx1ZSkgKyBiYW5kd2lkdGgsXG4gICAgICB5OiAwLFxuICAgIH0gYXMgVGljaztcbiAgfTtcblxuICBnZXRNYXhUaWNrcyh0aWNrV2lkdGg6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLmNvbnRleHQuaG9yaXpvbnRhbFxuICAgICAgPyB0aGlzLmNvbnRleHQuY2hhcnRWaWV3LmhlaWdodFxuICAgICAgOiB0aGlzLmNvbnRleHQuY2hhcnRWaWV3LndpZHRoO1xuICAgIHJldHVybiBNYXRoLmZsb29yKHdpZHRoIC8gdGlja1dpZHRoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29udGV4dFNlcnZpY2U6IENvbnRleHRDaGFydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb250ZXh0U2VydmljZS5zZXJpZXNEYXRhJFxuICAgICAgLnBpcGUobWFwKCgpID0+IHRoaXMuZ2V0VGlja3MoKSkpXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgIHRoaXMudGlja3MgPSByZXM7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgZm9ybWF0KHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBEYXRlKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dFNlcnZpY2Uuc2NhbGVUeXBlID09PSBTY2FsZVR5cGUuVElNRVxuICAgICAgPyBkYXlqcyh2YWx1ZSkuZm9ybWF0KHRoaXMuZGF0ZUZvcm1hdClcbiAgICAgIDogdmFsdWU7XG4gIH1cbn1cbiJdfQ==
@@ -4,6 +4,8 @@ import { ContextChartService } from '../../chart.service';
4
4
  import { Orientation } from '../../types';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "../../chart.service";
7
+ import * as i2 from "@angular/common";
8
+ import * as i3 from "../../../core/pipes/pure.pipe";
7
9
  const _c0 = ["aclYAxisTicks", ""];
8
10
  function YAxisTicksComponent_ng_container_0__svg_g_1_Template(rf, ctx) { if (rf & 1) {
9
11
  i0.ɵɵnamespaceSVG();
@@ -139,7 +141,7 @@ export class YAxisTicksComponent {
139
141
  } if (rf & 2) {
140
142
  const elseTemplate_r5 = i0.ɵɵreference(2);
141
143
  i0.ɵɵproperty("ngIf", ctx.context.barOptions.orientation === ctx.orientation.VERTICAL)("ngIfElse", elseTemplate_r5);
142
- } }, encapsulation: 2, changeDetection: 0 }); }
144
+ } }, dependencies: [i2.NgForOf, i2.NgIf, i3.PurePipe], encapsulation: 2, changeDetection: 0 }); }
143
145
  }
144
146
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(YAxisTicksComponent, [{
145
147
  type: Component,
@@ -230,4 +232,4 @@ export class YAxisTicksComponent {
230
232
  type: Input
231
233
  }] }); })();
232
234
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(YAxisTicksComponent, { className: "YAxisTicksComponent" }); })();
233
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieS1heGlzLXRpY2tzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jaGFydC9jb21tb24vYXhpcy95LWF4aXMtdGlja3MuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7SUFhbEMsQUFERix5QkFBa0MsY0FRL0I7SUFDQyxZQUNGOztJQUFBLGlCQUFPO0lBU1AsQUFSQSwwQkFPUSxjQVNBO0lBQ1YsaUJBQVE7Ozs7SUF6QkosY0FBaUI7O0lBTWpCLGNBQ0Y7SUFERSxpSEFDRjtJQUlFLGVBQWtCOztJQU9sQixjQUFxQzs7OztJQTNCM0MsNkJBS0M7SUFDQyxxRkFBa0M7O0lBNkJsQyx5QkFBTztJQUNMLDBCQUlFO0lBQ0osaUJBQVE7Ozs7SUFuQ2dCLGNBQVE7SUFBUixzQ0FBUTtJQStCNUIsZUFBb0I7Ozs7O0lBa0J0QiwwQkFTUTs7Ozs7Ozs7SUFsQlIsQUFERix5QkFBaUQsY0FPOUM7SUFDQyxZQUNGOztJQUFBLGlCQUFPO0lBQ1Asa0dBU0M7SUFDSCxpQkFBUTs7Ozs7SUFsQkosY0FBa0Q7O0lBTWxELGNBQ0Y7SUFERSxpSEFDRjtJQUVHLGVBQTRCO0lBQTVCLHVEQUE0Qjs7O0lBWGpDLG1GQUFpRDs7SUFxQmpELHlCQUFPO0lBQ0wsMEJBSUU7SUFDSixpQkFBUTs7O0lBM0JnQixzQ0FBVTtJQXVCOUIsZUFBb0I7OztB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Q0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQztvRkFyRVUsbUJBQW1CO29FQUFuQixtQkFBbUI7WUFqQzVCLEFBNUNBLHNGQUtDLHdHQXVDMEI7OztZQXpDZCxBQUZWLHNGQUVVLDZCQUVqQjs7O2lGQXdFYSxtQkFBbUI7Y0FqRi9CLFNBQVM7ZUFBQztnQkFDVCw4REFBOEQ7Z0JBQzlELFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMkVUO2dCQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEO29GQUVVLGFBQWE7a0JBQXJCLEtBQUs7WUFFRyxNQUFNO2tCQUFkLEtBQUs7O2tGQUhLLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgbWVyZ2UsIG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IENvbnRleHRDaGFydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jaGFydC5zZXJ2aWNlJztcbmltcG9ydCB7IE9yaWVudGF0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdnW2FjbFlBeGlzVGlja3NdJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cIlxuICAgICAgICBjb250ZXh0LmJhck9wdGlvbnMub3JpZW50YXRpb24gPT09IG9yaWVudGF0aW9uLlZFUlRJQ0FMO1xuICAgICAgICBlbHNlIGVsc2VUZW1wbGF0ZVxuICAgICAgXCJcbiAgICA+XG4gICAgICA8c3ZnOmcgKm5nRm9yPVwibGV0IHRpY2sgb2YgdGlja3NcIj5cbiAgICAgICAgPHRleHRcbiAgICAgICAgICB4PVwiLThcIlxuICAgICAgICAgIFthdHRyLnldPVwidGljay55XCJcbiAgICAgICAgICBmaWxsPVwiIzY2NlwiXG4gICAgICAgICAgdGV4dC1hbmNob3I9XCJlbmRcIlxuICAgICAgICAgIGZvbnQtc2l6ZT1cIjExXCJcbiAgICAgICAgICBhbGlnbm1lbnQtYmFzZWxpbmU9XCJtaWRkbGVcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgdGljay52YWx1ZSB8IHB1cmU6IGNvbnZlcnNpb25NYXhpbXVtIH19e3sgc3VmZml4IH19XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPGxpbmVcbiAgICAgICAgICB4MT1cIi00XCJcbiAgICAgICAgICB4Mj1cIjBcIlxuICAgICAgICAgIFthdHRyLnkxXT1cInRpY2sueVwiXG4gICAgICAgICAgW2F0dHIueTJdPVwidGljay55XCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxXCJcbiAgICAgICAgICBzdHJva2U9XCIjY2NkNmViXCJcbiAgICAgICAgPjwvbGluZT5cbiAgICAgICAgPGxpbmVcbiAgICAgICAgICB4MT1cIjBcIlxuICAgICAgICAgIFthdHRyLngyXT1cImNvbnRleHQ/LmNoYXJ0Vmlldz8ud2lkdGhcIlxuICAgICAgICAgIFthdHRyLnkxXT1cInRpY2sueVwiXG4gICAgICAgICAgW2F0dHIueTJdPVwidGljay55XCJcbiAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxXCJcbiAgICAgICAgICBzdHJva2UtZGFzaGFycmF5PVwiNCAxXCJcbiAgICAgICAgICBzdHJva2U9XCIjZThlOGU4XCJcbiAgICAgICAgPjwvbGluZT5cbiAgICAgIDwvc3ZnOmc+XG4gICAgICA8c3ZnOmc+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgW2F0dHIuZF09XCJ5QXhpc0xpbmVcIlxuICAgICAgICAgIHN0cm9rZT1cIiNjY2Q2ZWJcIlxuICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgLz5cbiAgICAgIDwvc3ZnOmc+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgI2Vsc2VUZW1wbGF0ZT5cbiAgICAgIDxzdmc6ZyAqbmdGb3I9XCJsZXQgdGljayBvZiB0aWNrczsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICA8dGV4dFxuICAgICAgICAgIFthdHRyLnhdPVwiaSA9PT0gMCAmJiBzdWZmaXggPyB0aWNrLnggLSA1IDogdGljay54XCJcbiAgICAgICAgICBbYXR0ci55XT1cInRpY2sueSArIDE2XCJcbiAgICAgICAgICBmaWxsPVwiIzY2NlwiXG4gICAgICAgICAgW2F0dHIudGV4dC1hbmNob3JdPVwidGV4dEFuY2hvclwiXG4gICAgICAgICAgZm9udC1zaXplPVwiMTFcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgdGljay52YWx1ZSB8IHB1cmU6IGNvbnZlcnNpb25NYXhpbXVtIH19e3sgc3VmZml4IH19XG4gICAgICAgIDwvdGV4dD5cbiAgICAgICAgPGxpbmVcbiAgICAgICAgICAqbmdJZj1cImkgIT09IHRpY2tzLmxlbmd0aCAtIDFcIlxuICAgICAgICAgIFthdHRyLngxXT1cInRpY2sueFwiXG4gICAgICAgICAgW2F0dHIueDJdPVwidGljay54XCJcbiAgICAgICAgICBbYXR0ci55MV09XCIwXCJcbiAgICAgICAgICBbYXR0ci55Ml09XCItY29udGV4dD8uY2hhcnRWaWV3Py5oZWlnaHRcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjFcIlxuICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk9XCI0IDFcIlxuICAgICAgICAgIHN0cm9rZT1cIiNlOGU4ZThcIlxuICAgICAgICA+PC9saW5lPlxuICAgICAgPC9zdmc6Zz5cbiAgICAgIDxzdmc6Zz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBbYXR0ci5kXT1cInhBeGlzTGluZVwiXG4gICAgICAgICAgc3Ryb2tlPVwiI2NjZDZlYlwiXG4gICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAvPlxuICAgICAgPC9zdmc6Zz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgWUF4aXNUaWNrc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgaW50ZXJ2YWxXaWR0aCA9IDQwO1xuXG4gIEBJbnB1dCgpIHN1ZmZpeDogc3RyaW5nO1xuXG4gIHRpY2tzOiBBcnJheTx7IHZhbHVlOiBudW1iZXI7IHk6IG51bWJlcjsgeDogbnVtYmVyIH0+O1xuICBvcmllbnRhdGlvbiA9IE9yaWVudGF0aW9uO1xuICB0ZXh0QW5jaG9yID0gJ21pZGRsZSc7XG5cbiAgZGVzdHJveSQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBnZXQgeUF4aXNMaW5lKCkge1xuICAgIHJldHVybiBgTSR7MH0gJHswfUwkezB9ICR7dGhpcy5jb250ZXh0LmNoYXJ0Vmlldy5oZWlnaHR9WmA7XG4gIH1cblxuICBnZXQgeEF4aXNMaW5lKCkge1xuICAgIGNvbnN0IHsgd2lkdGggfSA9IHRoaXMuY29udGV4dC5jaGFydFZpZXc7XG4gICAgcmV0dXJuIGBNMCAwTCR7d2lkdGh9IDBaYDtcbiAgfVxuXG4gIGdldFRpY2tzKCkge1xuICAgIGNvbnN0IHRpY2tzID0gdGhpcy5jb250ZXh0LnkudGlja3ModGhpcy5nZXRNYXhUaWNrcyh0aGlzLmludGVydmFsV2lkdGgpKTtcbiAgICByZXR1cm4gdGlja3MubWFwKHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IHRoaXMuY29udGV4dC55KHZhbHVlKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHZhbHVlLFxuICAgICAgICB5OiB0aGlzLmNvbnRleHQuaG9yaXpvbnRhbCA/IDAgOiByZXMsXG4gICAgICAgIHg6IHJlcyxcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICBnZXRNYXhUaWNrcyh0aWNrSGVpZ2h0OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IGhlaWdodCA9IHRoaXMuY29udGV4dC5ob3Jpem9udGFsXG4gICAgICA/IHRoaXMuY29udGV4dC5jaGFydFZpZXcud2lkdGhcbiAgICAgIDogdGhpcy5jb250ZXh0LmNoYXJ0Vmlldy5oZWlnaHQ7XG4gICAgcmV0dXJuIE1hdGguZmxvb3IoaGVpZ2h0IC8gdGlja0hlaWdodCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29udGV4dDogQ29udGV4dENoYXJ0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudGlja3MgPSB0aGlzLmdldFRpY2tzKCk7XG4gICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgbWVyZ2UodGhpcy5jb250ZXh0LnNlcmllc0RhdGEkLCB0aGlzLmNvbnRleHQubGVnZW5kQ2hhbmdlJCQpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQkKSxcbiAgICAgICAgbWFwKCgpID0+IHRoaXMuZ2V0VGlja3MoKSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgIHRoaXMudGlja3MgPSByZXM7XG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSk7XG4gIH1cblxuICBjb252ZXJzaW9uTWF4aW11bSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgY29uc3QgdW5pdCA9ICdrJztcbiAgICBpZiAodmFsdWUgPj0gMTAwMCkge1xuICAgICAgY29uc3QgbnVtID0gKyh2YWx1ZSAvIDEwMDApLnRvRml4ZWQoMik7XG4gICAgICByZXR1cm4gYCR7bnVtfSR7dW5pdH1gO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkJC5uZXh0KCk7XG4gIH1cbn1cbiJdfQ==
235
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieS1heGlzLXRpY2tzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jaGFydC9jb21tb24vYXhpcy95LWF4aXMtdGlja3MuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7OztJQWFsQyxBQURGLHlCQUFrQyxjQVEvQjtJQUNDLFlBQ0Y7O0lBQUEsaUJBQU87SUFTUCxBQVJBLDBCQU9RLGNBU0E7SUFDVixpQkFBUTs7OztJQXpCSixjQUFpQjs7SUFNakIsY0FDRjtJQURFLGlIQUNGO0lBSUUsZUFBa0I7O0lBT2xCLGNBQXFDOzs7O0lBM0IzQyw2QkFLQztJQUNDLHFGQUFrQzs7SUE2QmxDLHlCQUFPO0lBQ0wsMEJBSUU7SUFDSixpQkFBUTs7OztJQW5DZ0IsY0FBUTtJQUFSLHNDQUFRO0lBK0I1QixlQUFvQjs7Ozs7SUFrQnRCLDBCQVNROzs7Ozs7OztJQWxCUixBQURGLHlCQUFpRCxjQU85QztJQUNDLFlBQ0Y7O0lBQUEsaUJBQU87SUFDUCxrR0FTQztJQUNILGlCQUFROzs7OztJQWxCSixjQUFrRDs7SUFNbEQsY0FDRjtJQURFLGlIQUNGO0lBRUcsZUFBNEI7SUFBNUIsdURBQTRCOzs7SUFYakMsbUZBQWlEOztJQXFCakQseUJBQU87SUFDTCwwQkFJRTtJQUNKLGlCQUFROzs7SUEzQmdCLHNDQUFVO0lBdUI5QixlQUFvQjs7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SSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO29GQXJFVSxtQkFBbUI7b0VBQW5CLG1CQUFtQjtZQWpDNUIsQUE1Q0Esc0ZBS0Msd0dBdUMwQjs7O1lBekNkLEFBRlYsc0ZBRVUsNkJBRWpCOzs7aUZBd0VhLG1CQUFtQjtjQWpGL0IsU0FBUztlQUFDO2dCQUNULDhEQUE4RDtnQkFDOUQsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyRVQ7Z0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDaEQ7b0ZBRVUsYUFBYTtrQkFBckIsS0FBSztZQUVHLE1BQU07a0JBQWQsS0FBSzs7a0ZBSEssbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBtZXJnZSwgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQ29udGV4dENoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2NoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgT3JpZW50YXRpb24gfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2dbYWNsWUF4aXNUaWNrc10nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiXG4gICAgICAgIGNvbnRleHQuYmFyT3B0aW9ucy5vcmllbnRhdGlvbiA9PT0gb3JpZW50YXRpb24uVkVSVElDQUw7XG4gICAgICAgIGVsc2UgZWxzZVRlbXBsYXRlXG4gICAgICBcIlxuICAgID5cbiAgICAgIDxzdmc6ZyAqbmdGb3I9XCJsZXQgdGljayBvZiB0aWNrc1wiPlxuICAgICAgICA8dGV4dFxuICAgICAgICAgIHg9XCItOFwiXG4gICAgICAgICAgW2F0dHIueV09XCJ0aWNrLnlcIlxuICAgICAgICAgIGZpbGw9XCIjNjY2XCJcbiAgICAgICAgICB0ZXh0LWFuY2hvcj1cImVuZFwiXG4gICAgICAgICAgZm9udC1zaXplPVwiMTFcIlxuICAgICAgICAgIGFsaWdubWVudC1iYXNlbGluZT1cIm1pZGRsZVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyB0aWNrLnZhbHVlIHwgcHVyZTogY29udmVyc2lvbk1heGltdW0gfX17eyBzdWZmaXggfX1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8bGluZVxuICAgICAgICAgIHgxPVwiLTRcIlxuICAgICAgICAgIHgyPVwiMFwiXG4gICAgICAgICAgW2F0dHIueTFdPVwidGljay55XCJcbiAgICAgICAgICBbYXR0ci55Ml09XCJ0aWNrLnlcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjFcIlxuICAgICAgICAgIHN0cm9rZT1cIiNjY2Q2ZWJcIlxuICAgICAgICA+PC9saW5lPlxuICAgICAgICA8bGluZVxuICAgICAgICAgIHgxPVwiMFwiXG4gICAgICAgICAgW2F0dHIueDJdPVwiY29udGV4dD8uY2hhcnRWaWV3Py53aWR0aFwiXG4gICAgICAgICAgW2F0dHIueTFdPVwidGljay55XCJcbiAgICAgICAgICBbYXR0ci55Ml09XCJ0aWNrLnlcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjFcIlxuICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk9XCI0IDFcIlxuICAgICAgICAgIHN0cm9rZT1cIiNlOGU4ZThcIlxuICAgICAgICA+PC9saW5lPlxuICAgICAgPC9zdmc6Zz5cbiAgICAgIDxzdmc6Zz5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBbYXR0ci5kXT1cInlBeGlzTGluZVwiXG4gICAgICAgICAgc3Ryb2tlPVwiI2NjZDZlYlwiXG4gICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAvPlxuICAgICAgPC9zdmc6Zz5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVRlbXBsYXRlPlxuICAgICAgPHN2ZzpnICpuZ0Zvcj1cImxldCB0aWNrIG9mIHRpY2tzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDx0ZXh0XG4gICAgICAgICAgW2F0dHIueF09XCJpID09PSAwICYmIHN1ZmZpeCA/IHRpY2sueCAtIDUgOiB0aWNrLnhcIlxuICAgICAgICAgIFthdHRyLnldPVwidGljay55ICsgMTZcIlxuICAgICAgICAgIGZpbGw9XCIjNjY2XCJcbiAgICAgICAgICBbYXR0ci50ZXh0LWFuY2hvcl09XCJ0ZXh0QW5jaG9yXCJcbiAgICAgICAgICBmb250LXNpemU9XCIxMVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyB0aWNrLnZhbHVlIHwgcHVyZTogY29udmVyc2lvbk1heGltdW0gfX17eyBzdWZmaXggfX1cbiAgICAgICAgPC90ZXh0PlxuICAgICAgICA8bGluZVxuICAgICAgICAgICpuZ0lmPVwiaSAhPT0gdGlja3MubGVuZ3RoIC0gMVwiXG4gICAgICAgICAgW2F0dHIueDFdPVwidGljay54XCJcbiAgICAgICAgICBbYXR0ci54Ml09XCJ0aWNrLnhcIlxuICAgICAgICAgIFthdHRyLnkxXT1cIjBcIlxuICAgICAgICAgIFthdHRyLnkyXT1cIi1jb250ZXh0Py5jaGFydFZpZXc/LmhlaWdodFwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMVwiXG4gICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheT1cIjQgMVwiXG4gICAgICAgICAgc3Ryb2tlPVwiI2U4ZThlOFwiXG4gICAgICAgID48L2xpbmU+XG4gICAgICA8L3N2ZzpnPlxuICAgICAgPHN2ZzpnPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIFthdHRyLmRdPVwieEF4aXNMaW5lXCJcbiAgICAgICAgICBzdHJva2U9XCIjY2NkNmViXCJcbiAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2ZzpnPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBZQXhpc1RpY2tzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBpbnRlcnZhbFdpZHRoID0gNDA7XG5cbiAgQElucHV0KCkgc3VmZml4OiBzdHJpbmc7XG5cbiAgdGlja3M6IEFycmF5PHsgdmFsdWU6IG51bWJlcjsgeTogbnVtYmVyOyB4OiBudW1iZXIgfT47XG4gIG9yaWVudGF0aW9uID0gT3JpZW50YXRpb247XG4gIHRleHRBbmNob3IgPSAnbWlkZGxlJztcblxuICBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGdldCB5QXhpc0xpbmUoKSB7XG4gICAgcmV0dXJuIGBNJHswfSAkezB9TCR7MH0gJHt0aGlzLmNvbnRleHQuY2hhcnRWaWV3LmhlaWdodH1aYDtcbiAgfVxuXG4gIGdldCB4QXhpc0xpbmUoKSB7XG4gICAgY29uc3QgeyB3aWR0aCB9ID0gdGhpcy5jb250ZXh0LmNoYXJ0VmlldztcbiAgICByZXR1cm4gYE0wIDBMJHt3aWR0aH0gMFpgO1xuICB9XG5cbiAgZ2V0VGlja3MoKSB7XG4gICAgY29uc3QgdGlja3MgPSB0aGlzLmNvbnRleHQueS50aWNrcyh0aGlzLmdldE1heFRpY2tzKHRoaXMuaW50ZXJ2YWxXaWR0aCkpO1xuICAgIHJldHVybiB0aWNrcy5tYXAodmFsdWUgPT4ge1xuICAgICAgY29uc3QgcmVzID0gdGhpcy5jb250ZXh0LnkodmFsdWUpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdmFsdWUsXG4gICAgICAgIHk6IHRoaXMuY29udGV4dC5ob3Jpem9udGFsID8gMCA6IHJlcyxcbiAgICAgICAgeDogcmVzLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldE1heFRpY2tzKHRpY2tIZWlnaHQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgaGVpZ2h0ID0gdGhpcy5jb250ZXh0Lmhvcml6b250YWxcbiAgICAgID8gdGhpcy5jb250ZXh0LmNoYXJ0Vmlldy53aWR0aFxuICAgICAgOiB0aGlzLmNvbnRleHQuY2hhcnRWaWV3LmhlaWdodDtcbiAgICByZXR1cm4gTWF0aC5mbG9vcihoZWlnaHQgLyB0aWNrSGVpZ2h0KTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBjb250ZXh0OiBDb250ZXh0Q2hhcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50aWNrcyA9IHRoaXMuZ2V0VGlja3MoKTtcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICBtZXJnZSh0aGlzLmNvbnRleHQuc2VyaWVzRGF0YSQsIHRoaXMuY29udGV4dC5sZWdlbmRDaGFuZ2UkJClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpLFxuICAgICAgICBtYXAoKCkgPT4gdGhpcy5nZXRUaWNrcygpKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgdGhpcy50aWNrcyA9IHJlcztcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGNvbnZlcnNpb25NYXhpbXVtKHZhbHVlOiBudW1iZXIpIHtcbiAgICBjb25zdCB1bml0ID0gJ2snO1xuICAgIGlmICh2YWx1ZSA+PSAxMDAwKSB7XG4gICAgICBjb25zdCBudW0gPSArKHZhbHVlIC8gMTAwMCkudG9GaXhlZCgyKTtcbiAgICAgIHJldHVybiBgJHtudW19JHt1bml0fWA7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQkLm5leHQoKTtcbiAgfVxufVxuIl19
@@ -1,6 +1,8 @@
1
1
  import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
2
  import { ChartSeriesComponent } from './series.component';
3
3
  import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../../../core/pipes/pure.pipe";
4
6
  const _c0 = ["aclAreaSeries", ""];
5
7
  function ChartAreaSeriesComponent__svg_ng_container_1__svg_stop_3_Template(rf, ctx) { if (rf & 1) {
6
8
  i0.ɵɵnamespaceSVG();
@@ -74,7 +76,7 @@ export class ChartAreaSeriesComponent extends ChartSeriesComponent {
74
76
  } if (rf & 2) {
75
77
  i0.ɵɵadvance();
76
78
  i0.ɵɵproperty("ngForOf", ctx.seriesData);
77
- } }, encapsulation: 2, changeDetection: 0 }); }
79
+ } }, dependencies: [i1.NgForOf, i2.PurePipe], encapsulation: 2, changeDetection: 0 }); }
78
80
  }
79
81
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ChartAreaSeriesComponent, [{
80
82
  type: Component,
@@ -87,4 +89,4 @@ export class ChartAreaSeriesComponent extends ChartSeriesComponent {
87
89
  type: Input
88
90
  }] }); })();
89
91
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ChartAreaSeriesComponent, { className: "ChartAreaSeriesComponent" }); })();
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJlYS1zZXJpZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvYXJlYS1zZXJpZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvYXJlYS1zZXJpZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7O0lDUWxELHVCQUtFOzs7Ozs7O0lBZFIsNkJBQThDO0lBRTFDLEFBREYsNEJBQVUsd0JBT1A7SUFDQyxvR0FLRTs7SUFFTixBQURFLGlCQUFxQixFQUNaO0lBRVgsMEJBU1k7Ozs7SUFFWiwwQkFVWTs7Ozs7OztJQXBDUixlQUEwQjtJQUExQiwyQ0FBMEI7O0lBT1AsY0FBOEI7SUFBOUIsK0VBQThCO0lBVW5ELGVBQXdCOztJQVd4QixlQUFvQjs7O0FEdEIxQixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsb0JBQW9CO0lBTmxFOztRQU9vQixlQUFVLEdBQTRCLE1BQU0sQ0FBQztRQUV0RCxpQkFBWSxHQUFHLEdBQUcsQ0FBQztRQUVuQixlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBRXhCLHFCQUFnQixHQUFHO1lBQ2pCLEVBQUUsRUFBRSxJQUFJO1lBQ1IsRUFBRSxFQUFFLElBQUk7WUFDUixFQUFFLEVBQUUsSUFBSTtZQUNSLEVBQUUsRUFBRSxNQUFNO1NBQ1gsQ0FBQztRQU1GLGFBQVEsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFLENBQUM7WUFDNUI7Z0JBQ0UsTUFBTSxFQUFFLENBQUM7Z0JBQ1QsS0FBSztnQkFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVk7YUFDM0I7WUFDRDtnQkFDRSxNQUFNLEVBQUUsR0FBRztnQkFDWCxLQUFLO2dCQUNMLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVTthQUN6QjtTQUNGLENBQUM7S0FDSDtJQWhCQyxpQkFBaUIsQ0FBQyxFQUFVO1FBQzFCLE9BQU8sUUFBUSxFQUFFLEdBQUcsQ0FBQztJQUN2QixDQUFDO29RQWhCVSx3QkFBd0IsU0FBeEIsd0JBQXdCO29FQUF4Qix3QkFBd0I7O1lDVnJDLDRCQUEwQjtZQUN4QixrR0FBOEM7WUF5Q2hELGlCQUFROztZQXpDeUIsY0FBYTtZQUFiLHdDQUFhOzs7aUZEU2pDLHdCQUF3QjtjQU5wQyxTQUFTOzJCQUVFLGtCQUFrQixtQkFFWCx1QkFBdUIsQ0FBQyxNQUFNO2dCQUc3QixVQUFVO2tCQUEzQixLQUFLO1lBRUcsWUFBWTtrQkFBcEIsS0FBSztZQUVHLFVBQVU7a0JBQWxCLEtBQUs7O2tGQUxLLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENoYXJ0U2VyaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9zZXJpZXMuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnZ1thY2xBcmVhU2VyaWVzXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9hcmVhLXNlcmllcy5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydEFyZWFTZXJpZXNDb21wb25lbnQgZXh0ZW5kcyBDaGFydFNlcmllc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIG92ZXJyaWRlIHNlcmllc1R5cGU6ICdsaW5lJyB8ICdhcmVhJyB8ICdiYXInID0gJ2FyZWEnO1xuXG4gIEBJbnB1dCgpIHN0YXJ0T3BhY2l0eSA9IDAuMjtcblxuICBASW5wdXQoKSBlbmRPcGFjaXR5ID0gMDtcblxuICBsaW5lYXJHcmFkaWVudFhZID0ge1xuICAgIHgxOiAnMCUnLFxuICAgIHgyOiAnMCUnLFxuICAgIHkxOiAnMCUnLFxuICAgIHkyOiAnMTAwJScsXG4gIH07XG5cbiAgZ2V0R3JhZGllbnRGaWxsSWQoaWQ6IHN0cmluZykge1xuICAgIHJldHVybiBgdXJsKCMke2lkfSlgO1xuICB9XG5cbiAgZ3JhZGllbnQgPSAoY29sb3I6IHN0cmluZykgPT4gW1xuICAgIHtcbiAgICAgIG9mZnNldDogMCxcbiAgICAgIGNvbG9yLFxuICAgICAgb3BhY2l0eTogdGhpcy5zdGFydE9wYWNpdHksXG4gICAgfSxcbiAgICB7XG4gICAgICBvZmZzZXQ6IDEwMCxcbiAgICAgIGNvbG9yLFxuICAgICAgb3BhY2l0eTogdGhpcy5lbmRPcGFjaXR5LFxuICAgIH0sXG4gIF07XG59XG4iLCI8c3ZnOmcgY2xhc3M9XCJhY2wtc2VyaWVzXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygc2VyaWVzRGF0YVwiPlxuICAgIDxzdmc6ZGVmcz5cbiAgICAgIDxzdmc6bGluZWFyR3JhZGllbnRcbiAgICAgICAgW2lkXT1cIml0ZW0uZ3JhZGllbnRGaWxsSWRcIlxuICAgICAgICBbYXR0ci54MV09XCJsaW5lYXJHcmFkaWVudFhZLngxXCJcbiAgICAgICAgW2F0dHIueTFdPVwibGluZWFyR3JhZGllbnRYWS55MVwiXG4gICAgICAgIFthdHRyLngyXT1cImxpbmVhckdyYWRpZW50WFkueDJcIlxuICAgICAgICBbYXR0ci55Ml09XCJsaW5lYXJHcmFkaWVudFhZLnkyXCJcbiAgICAgID5cbiAgICAgICAgPHN2ZzpzdG9wXG4gICAgICAgICAgKm5nRm9yPVwibGV0IHN0b3Agb2YgaXRlbS5jb2xvciB8IHB1cmU6IGdyYWRpZW50XCJcbiAgICAgICAgICBbYXR0ci5vZmZzZXRdPVwic3RvcC5vZmZzZXQgKyAnJSdcIlxuICAgICAgICAgIFthdHRyLnN0b3AtY29sb3JdPVwic3RvcC5jb2xvclwiXG4gICAgICAgICAgW2F0dHIuc3RvcC1vcGFjaXR5XT1cInN0b3Aub3BhY2l0eVwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2ZzpsaW5lYXJHcmFkaWVudD5cbiAgICA8L3N2ZzpkZWZzPlxuXG4gICAgPHN2ZzpwYXRoXG4gICAgICBjbGFzcz1cImFyZWFcIlxuICAgICAgW2F0dHIuZF09XCJpdGVtLmFyZWFQYXRoXCJcbiAgICAgIFthdHRyLmZpbGxdPVwiaXRlbS5ncmFkaWVudEZpbGxJZCB8IHB1cmU6IGdldEdyYWRpZW50RmlsbElkXCJcbiAgICAgIFthdHRyLnZpc2liaWxpdHldPVwiaXRlbS52aXNpYmlsaXR5XCJcbiAgICAgIFthdHRyLm9wYWNpdHldPVwiaXRlbS5uYW1lIHwgcHVyZTogaGFuZGxlT3BhY2l0eTphY3RpdmF0ZUxlZ2VuZFwiXG4gICAgICBbYXR0ci5zdHJva2Utd2lkdGhdPVwiXG4gICAgICAgIChpdGVtLm5hbWUgfCBwdXJlOiBoYW5kbGVTdHJva2VXaWR0aDphY3RpdmF0ZUxlZ2VuZDpsaW5lV2lkdGgpICsgJ3B4J1xuICAgICAgXCJcbiAgICA+PC9zdmc6cGF0aD5cblxuICAgIDxzdmc6cGF0aFxuICAgICAgY2xhc3M9XCJsaW5lXCJcbiAgICAgIFthdHRyLmRdPVwiaXRlbS5wYXRoXCJcbiAgICAgIFthdHRyLnN0cm9rZV09XCJpdGVtLmNvbG9yXCJcbiAgICAgIFthdHRyLnZpc2liaWxpdHldPVwiaXRlbS52aXNpYmlsaXR5XCJcbiAgICAgIFthdHRyLm9wYWNpdHldPVwiaXRlbS5uYW1lIHwgcHVyZTogaGFuZGxlT3BhY2l0eTphY3RpdmF0ZUxlZ2VuZFwiXG4gICAgICBbYXR0ci5zdHJva2Utd2lkdGhdPVwiXG4gICAgICAgIChpdGVtLm5hbWUgfCBwdXJlOiBoYW5kbGVTdHJva2VXaWR0aDphY3RpdmF0ZUxlZ2VuZDpsaW5lV2lkdGgpICsgJ3B4J1xuICAgICAgXCJcbiAgICAgIGZpbGw9XCJub25lXCJcbiAgICA+PC9zdmc6cGF0aD5cbiAgPC9uZy1jb250YWluZXI+XG48L3N2ZzpnPlxuIl19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJlYS1zZXJpZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvYXJlYS1zZXJpZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvYXJlYS1zZXJpZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7Ozs7SUNRbEQsdUJBS0U7Ozs7Ozs7SUFkUiw2QkFBOEM7SUFFMUMsQUFERiw0QkFBVSx3QkFPUDtJQUNDLG9HQUtFOztJQUVOLEFBREUsaUJBQXFCLEVBQ1o7SUFFWCwwQkFTWTs7OztJQUVaLDBCQVVZOzs7Ozs7O0lBcENSLGVBQTBCO0lBQTFCLDJDQUEwQjs7SUFPUCxjQUE4QjtJQUE5QiwrRUFBOEI7SUFVbkQsZUFBd0I7O0lBV3hCLGVBQW9COzs7QUR0QjFCLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxvQkFBb0I7SUFObEU7O1FBT29CLGVBQVUsR0FBNEIsTUFBTSxDQUFDO1FBRXRELGlCQUFZLEdBQUcsR0FBRyxDQUFDO1FBRW5CLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFFeEIscUJBQWdCLEdBQUc7WUFDakIsRUFBRSxFQUFFLElBQUk7WUFDUixFQUFFLEVBQUUsSUFBSTtZQUNSLEVBQUUsRUFBRSxJQUFJO1lBQ1IsRUFBRSxFQUFFLE1BQU07U0FDWCxDQUFDO1FBTUYsYUFBUSxHQUFHLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQztZQUM1QjtnQkFDRSxNQUFNLEVBQUUsQ0FBQztnQkFDVCxLQUFLO2dCQUNMLE9BQU8sRUFBRSxJQUFJLENBQUMsWUFBWTthQUMzQjtZQUNEO2dCQUNFLE1BQU0sRUFBRSxHQUFHO2dCQUNYLEtBQUs7Z0JBQ0wsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVO2FBQ3pCO1NBQ0YsQ0FBQztLQUNIO0lBaEJDLGlCQUFpQixDQUFDLEVBQVU7UUFDMUIsT0FBTyxRQUFRLEVBQUUsR0FBRyxDQUFDO0lBQ3ZCLENBQUM7b1FBaEJVLHdCQUF3QixTQUF4Qix3QkFBd0I7b0VBQXhCLHdCQUF3Qjs7WUNWckMsNEJBQTBCO1lBQ3hCLGtHQUE4QztZQXlDaEQsaUJBQVE7O1lBekN5QixjQUFhO1lBQWIsd0NBQWE7OztpRkRTakMsd0JBQXdCO2NBTnBDLFNBQVM7MkJBRUUsa0JBQWtCLG1CQUVYLHVCQUF1QixDQUFDLE1BQU07Z0JBRzdCLFVBQVU7a0JBQTNCLEtBQUs7WUFFRyxZQUFZO2tCQUFwQixLQUFLO1lBRUcsVUFBVTtrQkFBbEIsS0FBSzs7a0ZBTEssd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2hhcnRTZXJpZXNDb21wb25lbnQgfSBmcm9tICcuL3Nlcmllcy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdnW2FjbEFyZWFTZXJpZXNdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FyZWEtc2VyaWVzLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0QXJlYVNlcmllc0NvbXBvbmVudCBleHRlbmRzIENoYXJ0U2VyaWVzQ29tcG9uZW50IHtcbiAgQElucHV0KCkgb3ZlcnJpZGUgc2VyaWVzVHlwZTogJ2xpbmUnIHwgJ2FyZWEnIHwgJ2JhcicgPSAnYXJlYSc7XG5cbiAgQElucHV0KCkgc3RhcnRPcGFjaXR5ID0gMC4yO1xuXG4gIEBJbnB1dCgpIGVuZE9wYWNpdHkgPSAwO1xuXG4gIGxpbmVhckdyYWRpZW50WFkgPSB7XG4gICAgeDE6ICcwJScsXG4gICAgeDI6ICcwJScsXG4gICAgeTE6ICcwJScsXG4gICAgeTI6ICcxMDAlJyxcbiAgfTtcblxuICBnZXRHcmFkaWVudEZpbGxJZChpZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGB1cmwoIyR7aWR9KWA7XG4gIH1cblxuICBncmFkaWVudCA9IChjb2xvcjogc3RyaW5nKSA9PiBbXG4gICAge1xuICAgICAgb2Zmc2V0OiAwLFxuICAgICAgY29sb3IsXG4gICAgICBvcGFjaXR5OiB0aGlzLnN0YXJ0T3BhY2l0eSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG9mZnNldDogMTAwLFxuICAgICAgY29sb3IsXG4gICAgICBvcGFjaXR5OiB0aGlzLmVuZE9wYWNpdHksXG4gICAgfSxcbiAgXTtcbn1cbiIsIjxzdmc6ZyBjbGFzcz1cImFjbC1zZXJpZXNcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBzZXJpZXNEYXRhXCI+XG4gICAgPHN2ZzpkZWZzPlxuICAgICAgPHN2ZzpsaW5lYXJHcmFkaWVudFxuICAgICAgICBbaWRdPVwiaXRlbS5ncmFkaWVudEZpbGxJZFwiXG4gICAgICAgIFthdHRyLngxXT1cImxpbmVhckdyYWRpZW50WFkueDFcIlxuICAgICAgICBbYXR0ci55MV09XCJsaW5lYXJHcmFkaWVudFhZLnkxXCJcbiAgICAgICAgW2F0dHIueDJdPVwibGluZWFyR3JhZGllbnRYWS54MlwiXG4gICAgICAgIFthdHRyLnkyXT1cImxpbmVhckdyYWRpZW50WFkueTJcIlxuICAgICAgPlxuICAgICAgICA8c3ZnOnN0b3BcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgc3RvcCBvZiBpdGVtLmNvbG9yIHwgcHVyZTogZ3JhZGllbnRcIlxuICAgICAgICAgIFthdHRyLm9mZnNldF09XCJzdG9wLm9mZnNldCArICclJ1wiXG4gICAgICAgICAgW2F0dHIuc3RvcC1jb2xvcl09XCJzdG9wLmNvbG9yXCJcbiAgICAgICAgICBbYXR0ci5zdG9wLW9wYWNpdHldPVwic3RvcC5vcGFjaXR5XCJcbiAgICAgICAgLz5cbiAgICAgIDwvc3ZnOmxpbmVhckdyYWRpZW50PlxuICAgIDwvc3ZnOmRlZnM+XG5cbiAgICA8c3ZnOnBhdGhcbiAgICAgIGNsYXNzPVwiYXJlYVwiXG4gICAgICBbYXR0ci5kXT1cIml0ZW0uYXJlYVBhdGhcIlxuICAgICAgW2F0dHIuZmlsbF09XCJpdGVtLmdyYWRpZW50RmlsbElkIHwgcHVyZTogZ2V0R3JhZGllbnRGaWxsSWRcIlxuICAgICAgW2F0dHIudmlzaWJpbGl0eV09XCJpdGVtLnZpc2liaWxpdHlcIlxuICAgICAgW2F0dHIub3BhY2l0eV09XCJpdGVtLm5hbWUgfCBwdXJlOiBoYW5kbGVPcGFjaXR5OmFjdGl2YXRlTGVnZW5kXCJcbiAgICAgIFthdHRyLnN0cm9rZS13aWR0aF09XCJcbiAgICAgICAgKGl0ZW0ubmFtZSB8IHB1cmU6IGhhbmRsZVN0cm9rZVdpZHRoOmFjdGl2YXRlTGVnZW5kOmxpbmVXaWR0aCkgKyAncHgnXG4gICAgICBcIlxuICAgID48L3N2ZzpwYXRoPlxuXG4gICAgPHN2ZzpwYXRoXG4gICAgICBjbGFzcz1cImxpbmVcIlxuICAgICAgW2F0dHIuZF09XCJpdGVtLnBhdGhcIlxuICAgICAgW2F0dHIuc3Ryb2tlXT1cIml0ZW0uY29sb3JcIlxuICAgICAgW2F0dHIudmlzaWJpbGl0eV09XCJpdGVtLnZpc2liaWxpdHlcIlxuICAgICAgW2F0dHIub3BhY2l0eV09XCJpdGVtLm5hbWUgfCBwdXJlOiBoYW5kbGVPcGFjaXR5OmFjdGl2YXRlTGVnZW5kXCJcbiAgICAgIFthdHRyLnN0cm9rZS13aWR0aF09XCJcbiAgICAgICAgKGl0ZW0ubmFtZSB8IHB1cmU6IGhhbmRsZVN0cm9rZVdpZHRoOmFjdGl2YXRlTGVnZW5kOmxpbmVXaWR0aCkgKyAncHgnXG4gICAgICBcIlxuICAgICAgZmlsbD1cIm5vbmVcIlxuICAgID48L3N2ZzpwYXRoPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvc3ZnOmc+XG4iXX0=
@@ -6,6 +6,8 @@ import { ContextChartService } from '../../chart.service';
6
6
  import { Orientation } from '../../types';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "../../chart.service";
9
+ import * as i2 from "@angular/common";
10
+ import * as i3 from "../../../core/pipes/pure.pipe";
9
11
  const _c0 = ["aclBarPath", ""];
10
12
  function BarPathComponent__svg_ng_container_1__svg_rect_1_Template(rf, ctx) { if (rf & 1) {
11
13
  i0.ɵɵnamespaceSVG();
@@ -127,7 +129,7 @@ export class BarPathComponent {
127
129
  const elseTemplate_r6 = i0.ɵɵreference(3);
128
130
  i0.ɵɵadvance();
129
131
  i0.ɵɵproperty("ngIf", ctx.context.barOptions.orientation === ctx.orientation.VERTICAL)("ngIfElse", elseTemplate_r6);
130
- } }, styles: [".tooltipClass{pointer-events:none;max-width:800px!important}.tooltip-content[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-6))}.tooltip-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{margin-bottom:8px}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:0;margin:0;list-style:none}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]:not(:last-child), .tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:not(:last-child){margin-bottom:6px}.tooltip-content[_ngcontent-%COMP%] .context-list[_ngcontent-%COMP%]{display:flex;flex-direction:column}.tooltip-content[_ngcontent-%COMP%] .context-list[_ngcontent-%COMP%] .active[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-10))}.tooltip-content[_ngcontent-%COMP%] .context-item[_ngcontent-%COMP%]{display:flex}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{text-align:right;white-space:nowrap}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .column-layout[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{flex:1 1 auto;text-align:right}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .column-layout[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{margin-right:8px}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%]{margin-right:4px;width:6px;border-radius:50%;height:6px;background-color:rgb(var(--aui-color-n-10));display:inline-block;font-size:6px}"], changeDetection: 0 }); }
132
+ } }, dependencies: [i2.NgForOf, i2.NgIf, i2.AsyncPipe, i3.PurePipe], styles: [".tooltipClass{pointer-events:none;max-width:800px!important}.tooltip-content[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-6))}.tooltip-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{margin-bottom:8px}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:0;margin:0;list-style:none}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]:not(:last-child), .tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:not(:last-child){margin-bottom:6px}.tooltip-content[_ngcontent-%COMP%] .context-list[_ngcontent-%COMP%]{display:flex;flex-direction:column}.tooltip-content[_ngcontent-%COMP%] .context-list[_ngcontent-%COMP%] .active[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-10))}.tooltip-content[_ngcontent-%COMP%] .context-item[_ngcontent-%COMP%]{display:flex}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{text-align:right;white-space:nowrap}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .column-layout[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{flex:1 1 auto;text-align:right}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .column-layout[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{margin-right:8px}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%]{margin-right:4px;width:6px;border-radius:50%;height:6px;background-color:rgb(var(--aui-color-n-10));display:inline-block;font-size:6px}"], changeDetection: 0 }); }
131
133
  }
132
134
  __decorate([
133
135
  ObservableInput(true, []),
@@ -152,4 +154,4 @@ __decorate([
152
154
  type: Input
153
155
  }] }); })();
154
156
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(BarPathComponent, { className: "BarPathComponent" }); })();
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLXBhdGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvYmFyLXBhdGguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvYmFyLXBhdGguY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztJQ050QywwQkFXUTs7Ozs7Ozs7Ozs7Ozs7SUFqQlYsNkJBS0M7SUFDQyw2RkFXQzs7Ozs7SUFWa0IsY0FBcUI7SUFBckIsK0RBQXFCOzs7O0lBYXhDLDBCQVNROzs7Ozs7Ozs7Ozs7SUFUUiw0RkFTQzs7OztJQVJrQiwrREFBcUI7O0FEQTVDLE1BQU0sT0FBTyxnQkFBZ0I7SUF5QjNCLElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUM7SUFDakMsQ0FBQztJQXNCRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxDQUNMLENBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUNyQixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVM7Z0JBQ2QsQ0FBQyxDQUFxQixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUUs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SUFPSixRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUM7WUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7aUZBN0VVLGdCQUFnQjtvRUFBaEIsZ0JBQWdCOztZQ3RCN0IseUJBQU87WUFvQkwsQUFuQkEsd0ZBS0MsMEdBYzBCO1lBWTdCLGlCQUFROzs7WUE5QkgsY0FFUTtZQUFBLEFBRlIsc0ZBRVEsNkJBRWI7OztBRHFCRTtJQURDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDOzhCQUNsQixVQUFVOytDQUVoQjtpRkFQUyxnQkFBZ0I7Y0FQNUIsU0FBUzsyQkFFRSxlQUFlLG1CQUdSLHVCQUF1QixDQUFDLE1BQU07b0ZBR3RDLE1BQU07a0JBQWQsS0FBSztZQUNHLElBQUk7a0JBQVosS0FBSztZQUdOLEtBQUssTUFJSSxVQUFVO2tCQUFsQixLQUFLO1lBRUcsU0FBUztrQkFBakIsS0FBSztZQUVHLElBQUk7a0JBQVosS0FBSztZQUVHLFNBQVM7a0JBQWpCLEtBQUs7WUFFRyxpQkFBaUI7a0JBQXpCLEtBQUs7O2tGQWpCSyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY2FsZUJhbmQgfSBmcm9tICdkMyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBtZXJnZSwgbWFwLCB0YXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZUlucHV0LCBwdWJsaXNoUmVmIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IENoYXJ0RGF0YUl0ZW0gfSBmcm9tICcuLi8uLi8uLi92aWV3LWNoYXJ0L3R5cGVzJztcbmltcG9ydCB7IENvbnRleHRDaGFydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jaGFydC5zZXJ2aWNlJztcbmltcG9ydCB7IE9yaWVudGF0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdnW2FjbEJhclBhdGhdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Jhci1wYXRoLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4uL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQmFyUGF0aENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHN0cm9rZTogc3RyaW5nO1xuICBASW5wdXQoKSBkYXRhOiBBcnJheTxDaGFydERhdGFJdGVtPHsgeDogc3RyaW5nOyB5OiBudW1iZXI7IGNvbG9yPzogc3RyaW5nIH0+PjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KHRydWUsIFtdKVxuICBkYXRhJCE6IE9ic2VydmFibGU8XG4gICAgQXJyYXk8Q2hhcnREYXRhSXRlbTx7IHg6IHN0cmluZzsgeTogbnVtYmVyOyBjb2xvcj86IHN0cmluZyB9Pj5cbiAgPjtcblxuICBASW5wdXQoKSBiYXJQYWRkaW5nID0gODtcblxuICBASW5wdXQoKSBncm91cE5hbWU6IHN0cmluZztcblxuICBASW5wdXQoKSB0eXBlOiAnc3RhbmRhcmQnIHwgJ3N0YWNrZWQnID0gJ3N0YW5kYXJkJztcblxuICBASW5wdXQoKSBiYW5kV2lkdGg6IG51bWJlcjtcblxuICBASW5wdXQoKSBhZGFwdGl2ZUJhbmRXaWR0aDogYm9vbGVhbjtcblxuICBwYXRoOiBzdHJpbmc7XG4gIG9yaWVudGF0aW9uID0gT3JpZW50YXRpb247XG4gIHByZVZhbHVlID0gMDtcbiAgYmFyRGF0YTogQ2hhcnREYXRhSXRlbVtdID0gW107XG4gIGFjdGl2YXRlTGVnZW5kOiBzdHJpbmc7XG5cbiAgZ2V0IGlzU3RhY2tlZCgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnc3RhY2tlZCc7XG4gIH1cblxuICBiYXJEYXRhJCA9IG1lcmdlKFxuICAgIHRoaXMuZGF0YSQsXG4gICAgdGhpcy5jb250ZXh0LmxlZ2VuZENoYW5nZSQkLFxuICAgIHRoaXMuY29udGV4dC5zZXJpZXNEYXRhJCxcbiAgKS5waXBlKFxuICAgIG1hcCgoKSA9PiB7XG4gICAgICB0aGlzLnByZVZhbHVlID0gMDtcbiAgICAgIHJldHVybiB0aGlzLmRhdGFcbiAgICAgICAgLm1hcCgoaXRlbSwgaW5kZXgpID0+ICh7XG4gICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICBjb2xvcjogaXRlbS5jb2xvciB8fCB0aGlzLmNvbnRleHQuZ2V0Q2hhcnREZWZhdWx0Q29sb3IoaW5kZXgpLFxuICAgICAgICB9KSlcbiAgICAgICAgLmZpbHRlcihpdGVtID0+ICF0aGlzLmNvbnRleHQuZGlzYWJsZWRMZWdlbmQuaGFzKGl0ZW0ueCBhcyBzdHJpbmcpKTtcbiAgICB9KSxcbiAgICB0YXAocmVzID0+IHtcbiAgICAgIHRoaXMuYmFyRGF0YSA9IHJlcztcbiAgICB9KSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG5cbiAgZ2V0IGlubmVyQmFuZFdpZHRoKCkge1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy5hZGFwdGl2ZUJhbmRXaWR0aFxuICAgICAgICA/IHRoaXMuaXNTdGFja2VkXG4gICAgICAgICAgPyAoPFNjYWxlQmFuZDxzdHJpbmc+PnRoaXMuY29udGV4dC54KS5iYW5kd2lkdGgoKVxuICAgICAgICAgIDogdGhpcy5jb250ZXh0LmJhcklubmVyU2NhbGUodGhpcy5iYXJQYWRkaW5nKS5iYW5kd2lkdGgoKVxuICAgICAgICA6IHRoaXMuYmFuZFdpZHRoKSB8fCAwXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBjb250ZXh0OiBDb250ZXh0Q2hhcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIGdldFJlY3RYID0gKHg6IHN0cmluZyB8IG51bWJlciB8IERhdGUpID0+XG4gICAgdGhpcy5pc1N0YWNrZWRcbiAgICAgID8gMFxuICAgICAgOiB0aGlzLmNvbnRleHQuYmFySW5uZXJTY2FsZSh0aGlzLmJhclBhZGRpbmcpKHggYXMgc3RyaW5nKTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNvbnRleHQubGVnZW5kQWN0aXZhdGUkJC5zdWJzY3JpYmUobGVnZW5kID0+IHtcbiAgICAgIHRoaXMuYWN0aXZhdGVMZWdlbmQgPSBsZWdlbmQ7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gICAgdGhpcy5jb250ZXh0LnVwZGF0ZSQkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBnZXRSZWN0WSA9IChpbmRleDogbnVtYmVyLCB5OiBudW1iZXIpID0+IHtcbiAgICBpZiAoIXRoaXMuaXNTdGFja2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb250ZXh0LnkoeSk7XG4gICAgfVxuICAgIGNvbnN0IHByZXZpb3VzID0gdGhpcy5jb250ZXh0LnkoXG4gICAgICB0aGlzLmJhckRhdGFbaW5kZXggLSAxID4gMCA/IGluZGV4IC0gMSA6IDBdLnksXG4gICAgKTtcbiAgICBjb25zdCBkaWZmSCA9IE1hdGguYWJzKHRoaXMuY29udGV4dC55KDApIC0gdGhpcy5jb250ZXh0LnkoeSkpO1xuICAgIGNvbnN0IHJlcyA9IGluZGV4ID09PSAwID8gcHJldmlvdXMgOiB0aGlzLnByZVZhbHVlIC0gZGlmZkg7XG4gICAgdGhpcy5wcmVWYWx1ZSA9IHJlcztcbiAgICByZXR1cm4gcmVzO1xuICB9O1xuXG4gIGdldFN0YWNrZWRSZWN0WSA9IChpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKCF0aGlzLmlzU3RhY2tlZCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIGNvbnN0IHByZXZpb3VzID0gdGhpcy5jb250ZXh0LnkoXG4gICAgICB0aGlzLmJhckRhdGFbaW5kZXggLSAxID4gMCA/IGluZGV4IC0gMSA6IDBdLnksXG4gICAgKTtcbiAgICBjb25zdCBkaWZmSCA9IE1hdGguYWJzKHRoaXMuY29udGV4dC55KDApIC0gcHJldmlvdXMpO1xuICAgIGNvbnN0IHJlcyA9XG4gICAgICBpbmRleCA9PT0gMCA/IDAgOiBpbmRleCA9PT0gMSA/IHByZXZpb3VzIDogdGhpcy5wcmVWYWx1ZSArIGRpZmZIO1xuICAgIHRoaXMucHJlVmFsdWUgPSByZXM7XG4gICAgcmV0dXJuIHJlcztcbiAgfTtcblxuICBoYW5kbGVWaXNpYmlsaXR5ID0gKG5hbWU6IHN0cmluZykgPT5cbiAgICB0aGlzLmNvbnRleHQuZGlzYWJsZWRMZWdlbmQuaGFzKG5hbWUpID8gJ2hpZGRlbicgOiAnJztcblxuICBoYW5kbGVPcGFjaXR5ID0gKG5hbWU6IHN0cmluZyB8IG51bWJlciB8IERhdGUsIGFjdGl2YXRlTGVnZW5kOiBzdHJpbmcpID0+XG4gICAgYWN0aXZhdGVMZWdlbmQgPyAoYWN0aXZhdGVMZWdlbmQgPT09IG5hbWUgPyAxIDogMC4yKSA6IDE7XG59XG4iLCI8c3ZnOmc+XG4gIDxuZy1jb250YWluZXJcbiAgICAqbmdJZj1cIlxuICAgICAgY29udGV4dC5iYXJPcHRpb25zLm9yaWVudGF0aW9uID09PSBvcmllbnRhdGlvbi5WRVJUSUNBTDtcbiAgICAgIGVsc2UgZWxzZVRlbXBsYXRlXG4gICAgXCJcbiAgPlxuICAgIDxyZWN0XG4gICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBiYXJEYXRhJCB8IGFzeW5jOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgIGNsYXNzPVwicmVjdFwiXG4gICAgICBbYXR0ci53aWR0aF09XCJpbm5lckJhbmRXaWR0aFwiXG4gICAgICBbYXR0ci54XT1cIihpdGVtLnggfCBwdXJlOiBnZXRSZWN0WCkgfHwgMFwiXG4gICAgICBbYXR0ci55XT1cIihpIHwgcHVyZTogZ2V0UmVjdFk6aXRlbS55KSB8fCAwXCJcbiAgICAgIFthdHRyLmhlaWdodF09XCJcbiAgICAgICAgaXRlbS55ID8gKDAgfCBwdXJlOiBjb250ZXh0LnkpIC0gKGl0ZW0ueSB8IHB1cmU6IGNvbnRleHQueSkgOiAwXG4gICAgICBcIlxuICAgICAgW2F0dHIuZmlsbF09XCJpdGVtLmNvbG9yXCJcbiAgICAgIFthdHRyLm9wYWNpdHldPVwiaXRlbS54IHwgcHVyZTogaGFuZGxlT3BhY2l0eTphY3RpdmF0ZUxlZ2VuZFwiXG4gICAgPjwvcmVjdD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy10ZW1wbGF0ZSAjZWxzZVRlbXBsYXRlPlxuICAgIDxyZWN0XG4gICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBiYXJEYXRhJCB8IGFzeW5jOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgIGNsYXNzPVwicmVjdFwiXG4gICAgICBbYXR0ci5oZWlnaHRdPVwiaW5uZXJCYW5kV2lkdGhcIlxuICAgICAgW2F0dHIueV09XCIoaXRlbS54IHwgcHVyZTogZ2V0UmVjdFgpIHx8IDBcIlxuICAgICAgW2F0dHIueF09XCIoaSB8IHB1cmU6IGdldFN0YWNrZWRSZWN0WSkgfHwgMFwiXG4gICAgICBbYXR0ci53aWR0aF09XCJpdGVtLnkgPyAoaXRlbS55IHwgcHVyZTogY29udGV4dC55KSA6IDBcIlxuICAgICAgW2F0dHIuZmlsbF09XCJpdGVtLmNvbG9yXCJcbiAgICAgIFthdHRyLm9wYWNpdHldPVwiaXRlbS54IHwgcHVyZTogaGFuZGxlT3BhY2l0eTphY3RpdmF0ZUxlZ2VuZFwiXG4gICAgPjwvcmVjdD5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvc3ZnOmc+XG4iXX0=
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLXBhdGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvYmFyLXBhdGguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvYmFyLXBhdGguY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7O0lDTnRDLDBCQVdROzs7Ozs7Ozs7Ozs7OztJQWpCViw2QkFLQztJQUNDLDZGQVdDOzs7OztJQVZrQixjQUFxQjtJQUFyQiwrREFBcUI7Ozs7SUFheEMsMEJBU1E7Ozs7Ozs7Ozs7OztJQVRSLDRGQVNDOzs7O0lBUmtCLCtEQUFxQjs7QURBNUMsTUFBTSxPQUFPLGdCQUFnQjtJQXlCM0IsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQztJQUNqQyxDQUFDO0lBc0JELElBQUksY0FBYztRQUNoQixPQUFPLENBQ0wsQ0FBQyxJQUFJLENBQUMsaUJBQWlCO1lBQ3JCLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUztnQkFDZCxDQUFDLENBQXFCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBRSxDQUFDLFNBQVMsRUFBRTtnQkFDakQsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLEVBQUU7WUFDM0QsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQ3pCLENBQUM7SUFDSixDQUFDO0lBRUQsWUFDa0IsT0FBNEIsRUFDM0IsR0FBc0I7UUFEdkIsWUFBTyxHQUFQLE9BQU8sQ0FBcUI7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFwRGhDLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFJZixTQUFJLEdBQTJCLFVBQVUsQ0FBQztRQU9uRCxnQkFBVyxHQUFHLFdBQVcsQ0FBQztRQUMxQixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsWUFBTyxHQUFvQixFQUFFLENBQUM7UUFPOUIsYUFBUSxHQUFHLEtBQUssQ0FDZCxJQUFJLENBQUMsS0FBSyxFQUNWLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FDekIsQ0FBQyxJQUFJLENBQ0osR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQUk7aUJBQ2IsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDckIsR0FBRyxJQUFJO2dCQUNQLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDO2FBQzlELENBQUMsQ0FBQztpQkFDRixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBVyxDQUFDLENBQUMsQ0FBQztRQUN4RSxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDUixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNyQixDQUFDLENBQUMsRUFDRixVQUFVLEVBQUUsQ0FDYixDQUFDO1FBaUJGLGFBQVEsR0FBRyxDQUFDLENBQXlCLEVBQUUsRUFBRSxDQUN2QyxJQUFJLENBQUMsU0FBUztZQUNaLENBQUMsQ0FBQyxDQUFDO1lBQ0gsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFXLENBQUMsQ0FBQztRQVkvRCxhQUFRLEdBQUcsQ0FBQyxLQUFhLEVBQUUsQ0FBUyxFQUFFLEVBQUU7WUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzQixDQUFDO1lBQ0QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDOUMsQ0FBQztZQUNGLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5RCxNQUFNLEdBQUcsR0FBRyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQzNELElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDO1lBQ3BCLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxDQUFDO1FBRUYsb0JBQWUsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3BCLE9BQU8sQ0FBQyxDQUFDO1lBQ1gsQ0FBQztZQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQzlDLENBQUM7WUFDRixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO1lBQ3JELE1BQU0sR0FBRyxHQUNQLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUNuRSxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztZQUNwQixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQztRQUVGLHFCQUFnQixHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUV4RCxrQkFBYSxHQUFHLENBQUMsSUFBNEIsRUFBRSxjQUFzQixFQUFFLEVBQUUsQ0FDdkUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQWhEeEQsQ0FBQztJQU9KLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUMvQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztZQUM3QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNuQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztpRkE3RVUsZ0JBQWdCO29FQUFoQixnQkFBZ0I7O1lDdEI3Qix5QkFBTztZQW9CTCxBQW5CQSx3RkFLQywwR0FjMEI7WUFZN0IsaUJBQVE7OztZQTlCSCxjQUVRO1lBQUEsQUFGUixzRkFFUSw2QkFFYjs7O0FEcUJFO0lBREMsZUFBZSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7OEJBQ2xCLFVBQVU7K0NBRWhCO2lGQVBTLGdCQUFnQjtjQVA1QixTQUFTOzJCQUVFLGVBQWUsbUJBR1IsdUJBQXVCLENBQUMsTUFBTTtvRkFHdEMsTUFBTTtrQkFBZCxLQUFLO1lBQ0csSUFBSTtrQkFBWixLQUFLO1lBR04sS0FBSyxNQUlJLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxTQUFTO2tCQUFqQixLQUFLO1lBRUcsSUFBSTtrQkFBWixLQUFLO1lBRUcsU0FBUztrQkFBakIsS0FBSztZQUVHLGlCQUFpQjtrQkFBekIsS0FBSzs7a0ZBakJLLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNjYWxlQmFuZCB9IGZyb20gJ2QzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG1lcmdlLCBtYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlSW5wdXQsIHB1Ymxpc2hSZWYgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQ2hhcnREYXRhSXRlbSB9IGZyb20gJy4uLy4uLy4uL3ZpZXctY2hhcnQvdHlwZXMnO1xuaW1wb3J0IHsgQ29udGV4dENoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2NoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgT3JpZW50YXRpb24gfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2dbYWNsQmFyUGF0aF0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYmFyLXBhdGguY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi4vdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCYXJQYXRoQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgc3Ryb2tlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRhdGE6IEFycmF5PENoYXJ0RGF0YUl0ZW08eyB4OiBzdHJpbmc7IHk6IG51bWJlcjsgY29sb3I/OiBzdHJpbmcgfT4+O1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQodHJ1ZSwgW10pXG4gIGRhdGEkITogT2JzZXJ2YWJsZTxcbiAgICBBcnJheTxDaGFydERhdGFJdGVtPHsgeDogc3RyaW5nOyB5OiBudW1iZXI7IGNvbG9yPzogc3RyaW5nIH0+PlxuICA+O1xuXG4gIEBJbnB1dCgpIGJhclBhZGRpbmcgPSA4O1xuXG4gIEBJbnB1dCgpIGdyb3VwTmFtZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHR5cGU6ICdzdGFuZGFyZCcgfCAnc3RhY2tlZCcgPSAnc3RhbmRhcmQnO1xuXG4gIEBJbnB1dCgpIGJhbmRXaWR0aDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIGFkYXB0aXZlQmFuZFdpZHRoOiBib29sZWFuO1xuXG4gIHBhdGg6IHN0cmluZztcbiAgb3JpZW50YXRpb24gPSBPcmllbnRhdGlvbjtcbiAgcHJlVmFsdWUgPSAwO1xuICBiYXJEYXRhOiBDaGFydERhdGFJdGVtW10gPSBbXTtcbiAgYWN0aXZhdGVMZWdlbmQ6IHN0cmluZztcblxuICBnZXQgaXNTdGFja2VkKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdzdGFja2VkJztcbiAgfVxuXG4gIGJhckRhdGEkID0gbWVyZ2UoXG4gICAgdGhpcy5kYXRhJCxcbiAgICB0aGlzLmNvbnRleHQubGVnZW5kQ2hhbmdlJCQsXG4gICAgdGhpcy5jb250ZXh0LnNlcmllc0RhdGEkLFxuICApLnBpcGUoXG4gICAgbWFwKCgpID0+IHtcbiAgICAgIHRoaXMucHJlVmFsdWUgPSAwO1xuICAgICAgcmV0dXJuIHRoaXMuZGF0YVxuICAgICAgICAubWFwKChpdGVtLCBpbmRleCkgPT4gKHtcbiAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgIGNvbG9yOiBpdGVtLmNvbG9yIHx8IHRoaXMuY29udGV4dC5nZXRDaGFydERlZmF1bHRDb2xvcihpbmRleCksXG4gICAgICAgIH0pKVxuICAgICAgICAuZmlsdGVyKGl0ZW0gPT4gIXRoaXMuY29udGV4dC5kaXNhYmxlZExlZ2VuZC5oYXMoaXRlbS54IGFzIHN0cmluZykpO1xuICAgIH0pLFxuICAgIHRhcChyZXMgPT4ge1xuICAgICAgdGhpcy5iYXJEYXRhID0gcmVzO1xuICAgIH0pLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBnZXQgaW5uZXJCYW5kV2lkdGgoKSB7XG4gICAgcmV0dXJuIChcbiAgICAgICh0aGlzLmFkYXB0aXZlQmFuZFdpZHRoXG4gICAgICAgID8gdGhpcy5pc1N0YWNrZWRcbiAgICAgICAgICA/ICg8U2NhbGVCYW5kPHN0cmluZz4+dGhpcy5jb250ZXh0LngpLmJhbmR3aWR0aCgpXG4gICAgICAgICAgOiB0aGlzLmNvbnRleHQuYmFySW5uZXJTY2FsZSh0aGlzLmJhclBhZGRpbmcpLmJhbmR3aWR0aCgpXG4gICAgICAgIDogdGhpcy5iYW5kV2lkdGgpIHx8IDBcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbnRleHQ6IENvbnRleHRDaGFydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHt9XG5cbiAgZ2V0UmVjdFggPSAoeDogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSkgPT5cbiAgICB0aGlzLmlzU3RhY2tlZFxuICAgICAgPyAwXG4gICAgICA6IHRoaXMuY29udGV4dC5iYXJJbm5lclNjYWxlKHRoaXMuYmFyUGFkZGluZykoeCBhcyBzdHJpbmcpO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29udGV4dC5sZWdlbmRBY3RpdmF0ZSQkLnN1YnNjcmliZShsZWdlbmQgPT4ge1xuICAgICAgdGhpcy5hY3RpdmF0ZUxlZ2VuZCA9IGxlZ2VuZDtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KTtcbiAgICB0aGlzLmNvbnRleHQudXBkYXRlJCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldFJlY3RZID0gKGluZGV4OiBudW1iZXIsIHk6IG51bWJlcikgPT4ge1xuICAgIGlmICghdGhpcy5pc1N0YWNrZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbnRleHQueSh5KTtcbiAgICB9XG4gICAgY29uc3QgcHJldmlvdXMgPSB0aGlzLmNvbnRleHQueShcbiAgICAgIHRoaXMuYmFyRGF0YVtpbmRleCAtIDEgPiAwID8gaW5kZXggLSAxIDogMF0ueSxcbiAgICApO1xuICAgIGNvbnN0IGRpZmZIID0gTWF0aC5hYnModGhpcy5jb250ZXh0LnkoMCkgLSB0aGlzLmNvbnRleHQueSh5KSk7XG4gICAgY29uc3QgcmVzID0gaW5kZXggPT09IDAgPyBwcmV2aW91cyA6IHRoaXMucHJlVmFsdWUgLSBkaWZmSDtcbiAgICB0aGlzLnByZVZhbHVlID0gcmVzO1xuICAgIHJldHVybiByZXM7XG4gIH07XG5cbiAgZ2V0U3RhY2tlZFJlY3RZID0gKGluZGV4OiBudW1iZXIpID0+IHtcbiAgICBpZiAoIXRoaXMuaXNTdGFja2VkKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgY29uc3QgcHJldmlvdXMgPSB0aGlzLmNvbnRleHQueShcbiAgICAgIHRoaXMuYmFyRGF0YVtpbmRleCAtIDEgPiAwID8gaW5kZXggLSAxIDogMF0ueSxcbiAgICApO1xuICAgIGNvbnN0IGRpZmZIID0gTWF0aC5hYnModGhpcy5jb250ZXh0LnkoMCkgLSBwcmV2aW91cyk7XG4gICAgY29uc3QgcmVzID1cbiAgICAgIGluZGV4ID09PSAwID8gMCA6IGluZGV4ID09PSAxID8gcHJldmlvdXMgOiB0aGlzLnByZVZhbHVlICsgZGlmZkg7XG4gICAgdGhpcy5wcmVWYWx1ZSA9IHJlcztcbiAgICByZXR1cm4gcmVzO1xuICB9O1xuXG4gIGhhbmRsZVZpc2liaWxpdHkgPSAobmFtZTogc3RyaW5nKSA9PlxuICAgIHRoaXMuY29udGV4dC5kaXNhYmxlZExlZ2VuZC5oYXMobmFtZSkgPyAnaGlkZGVuJyA6ICcnO1xuXG4gIGhhbmRsZU9wYWNpdHkgPSAobmFtZTogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSwgYWN0aXZhdGVMZWdlbmQ6IHN0cmluZykgPT5cbiAgICBhY3RpdmF0ZUxlZ2VuZCA/IChhY3RpdmF0ZUxlZ2VuZCA9PT0gbmFtZSA/IDEgOiAwLjIpIDogMTtcbn1cbiIsIjxzdmc6Zz5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwiXG4gICAgICBjb250ZXh0LmJhck9wdGlvbnMub3JpZW50YXRpb24gPT09IG9yaWVudGF0aW9uLlZFUlRJQ0FMO1xuICAgICAgZWxzZSBlbHNlVGVtcGxhdGVcbiAgICBcIlxuICA+XG4gICAgPHJlY3RcbiAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGJhckRhdGEkIHwgYXN5bmM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgY2xhc3M9XCJyZWN0XCJcbiAgICAgIFthdHRyLndpZHRoXT1cImlubmVyQmFuZFdpZHRoXCJcbiAgICAgIFthdHRyLnhdPVwiKGl0ZW0ueCB8IHB1cmU6IGdldFJlY3RYKSB8fCAwXCJcbiAgICAgIFthdHRyLnldPVwiKGkgfCBwdXJlOiBnZXRSZWN0WTppdGVtLnkpIHx8IDBcIlxuICAgICAgW2F0dHIuaGVpZ2h0XT1cIlxuICAgICAgICBpdGVtLnkgPyAoMCB8IHB1cmU6IGNvbnRleHQueSkgLSAoaXRlbS55IHwgcHVyZTogY29udGV4dC55KSA6IDBcbiAgICAgIFwiXG4gICAgICBbYXR0ci5maWxsXT1cIml0ZW0uY29sb3JcIlxuICAgICAgW2F0dHIub3BhY2l0eV09XCJpdGVtLnggfCBwdXJlOiBoYW5kbGVPcGFjaXR5OmFjdGl2YXRlTGVnZW5kXCJcbiAgICA+PC9yZWN0PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNlbHNlVGVtcGxhdGU+XG4gICAgPHJlY3RcbiAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGJhckRhdGEkIHwgYXN5bmM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgY2xhc3M9XCJyZWN0XCJcbiAgICAgIFthdHRyLmhlaWdodF09XCJpbm5lckJhbmRXaWR0aFwiXG4gICAgICBbYXR0ci55XT1cIihpdGVtLnggfCBwdXJlOiBnZXRSZWN0WCkgfHwgMFwiXG4gICAgICBbYXR0ci54XT1cIihpIHwgcHVyZTogZ2V0U3RhY2tlZFJlY3RZKSB8fCAwXCJcbiAgICAgIFthdHRyLndpZHRoXT1cIml0ZW0ueSA/IChpdGVtLnkgfCBwdXJlOiBjb250ZXh0LnkpIDogMFwiXG4gICAgICBbYXR0ci5maWxsXT1cIml0ZW0uY29sb3JcIlxuICAgICAgW2F0dHIub3BhY2l0eV09XCJpdGVtLnggfCBwdXJlOiBoYW5kbGVPcGFjaXR5OmFjdGl2YXRlTGVnZW5kXCJcbiAgICA+PC9yZWN0PlxuICA8L25nLXRlbXBsYXRlPlxuPC9zdmc6Zz5cbiJdfQ==
@@ -1,6 +1,8 @@
1
1
  import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
2
  import { ChartSeriesComponent } from './series.component';
3
3
  import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../../../core/pipes/pure.pipe";
4
6
  const _c0 = ["aclLineSeries", ""];
5
7
  function ChartLineSeriesComponent__svg_path_1_Template(rf, ctx) { if (rf & 1) {
6
8
  i0.ɵɵnamespaceSVG();
@@ -26,7 +28,7 @@ export class ChartLineSeriesComponent extends ChartSeriesComponent {
26
28
  } if (rf & 2) {
27
29
  i0.ɵɵadvance();
28
30
  i0.ɵɵproperty("ngForOf", ctx.seriesData);
29
- } }, encapsulation: 2, changeDetection: 0 }); }
31
+ } }, dependencies: [i1.NgForOf, i2.PurePipe], encapsulation: 2, changeDetection: 0 }); }
30
32
  }
31
33
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ChartLineSeriesComponent, [{
32
34
  type: Component,
@@ -57,4 +59,4 @@ export class ChartLineSeriesComponent extends ChartSeriesComponent {
57
59
  type: Input
58
60
  }] }); })();
59
61
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ChartLineSeriesComponent, { className: "ChartLineSeriesComponent" }); })();
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1zZXJpZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvbGluZS1zZXJpZXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7OztJQU9wRCwwQkFXWTs7Ozs7Ozs7QUFLbEIsTUFBTSxPQUFPLHdCQUF5QixTQUFRLG9CQUFvQjtJQXJCbEU7O1FBd0JvQixlQUFVLEdBQTRCLE1BQU0sQ0FBQztLQUNoRTtvUUFKWSx3QkFBd0IsU0FBeEIsd0JBQXdCO29FQUF4Qix3QkFBd0I7O1lBakJqQyw0QkFBMEI7WUFDeEIsaUZBV0M7WUFDSCxpQkFBUTs7WUFYYSxjQUFhO1lBQWIsd0NBQWE7OztpRkFlekIsd0JBQXdCO2NBckJwQyxTQUFTO2VBQUM7Z0JBQ1QsOERBQThEO2dCQUM5RCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OztHQWVUO2dCQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEO2dCQUVVLFFBQVE7a0JBQWhCLEtBQUs7WUFFWSxVQUFVO2tCQUEzQixLQUFLOztrRkFISyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDaGFydFNlcmllc0NvbXBvbmVudCB9IGZyb20gJy4vc2VyaWVzLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2dbYWNsTGluZVNlcmllc10nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxzdmc6ZyBjbGFzcz1cImFjbC1zZXJpZXNcIj5cbiAgICAgIDxzdmc6cGF0aFxuICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBzZXJpZXNEYXRhXCJcbiAgICAgICAgY2xhc3M9XCJsaW5lXCJcbiAgICAgICAgW2F0dHIuZF09XCJpdGVtLnBhdGhcIlxuICAgICAgICBbYXR0ci5zdHJva2VdPVwiaXRlbS5jb2xvclwiXG4gICAgICAgIFthdHRyLnZpc2liaWxpdHldPVwiaXRlbS52aXNpYmlsaXR5XCJcbiAgICAgICAgW2F0dHIub3BhY2l0eV09XCJpdGVtLm5hbWUgfCBwdXJlOiBoYW5kbGVPcGFjaXR5OmFjdGl2YXRlTGVnZW5kXCJcbiAgICAgICAgW2F0dHIuc3Ryb2tlLXdpZHRoXT1cIlxuICAgICAgICAgIChpdGVtLm5hbWUgfCBwdXJlOiBoYW5kbGVTdHJva2VXaWR0aDphY3RpdmF0ZUxlZ2VuZDpsaW5lV2lkdGgpICsgJ3B4J1xuICAgICAgICBcIlxuICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICA+PC9zdmc6cGF0aD5cbiAgICA8L3N2ZzpnPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ2hhcnRMaW5lU2VyaWVzQ29tcG9uZW50IGV4dGVuZHMgQ2hhcnRTZXJpZXNDb21wb25lbnQge1xuICBASW5wdXQoKSBzdGVwTGluZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBvdmVycmlkZSBzZXJpZXNUeXBlOiAnbGluZScgfCAnYXJlYScgfCAnYmFyJyA9ICdsaW5lJztcbn1cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1zZXJpZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2NvbW1vbi9zZXJpZXMvbGluZS1zZXJpZXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7O0lBT3BELDBCQVdZOzs7Ozs7OztBQUtsQixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsb0JBQW9CO0lBckJsRTs7UUF3Qm9CLGVBQVUsR0FBNEIsTUFBTSxDQUFDO0tBQ2hFO29RQUpZLHdCQUF3QixTQUF4Qix3QkFBd0I7b0VBQXhCLHdCQUF3Qjs7WUFqQmpDLDRCQUEwQjtZQUN4QixpRkFXQztZQUNILGlCQUFROztZQVhhLGNBQWE7WUFBYix3Q0FBYTs7O2lGQWV6Qix3QkFBd0I7Y0FyQnBDLFNBQVM7ZUFBQztnQkFDVCw4REFBOEQ7Z0JBQzlELFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7O0dBZVQ7Z0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDaEQ7Z0JBRVUsUUFBUTtrQkFBaEIsS0FBSztZQUVZLFVBQVU7a0JBQTNCLEtBQUs7O2tGQUhLLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENoYXJ0U2VyaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9zZXJpZXMuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnZ1thY2xMaW5lU2VyaWVzXScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHN2ZzpnIGNsYXNzPVwiYWNsLXNlcmllc1wiPlxuICAgICAgPHN2ZzpwYXRoXG4gICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHNlcmllc0RhdGFcIlxuICAgICAgICBjbGFzcz1cImxpbmVcIlxuICAgICAgICBbYXR0ci5kXT1cIml0ZW0ucGF0aFwiXG4gICAgICAgIFthdHRyLnN0cm9rZV09XCJpdGVtLmNvbG9yXCJcbiAgICAgICAgW2F0dHIudmlzaWJpbGl0eV09XCJpdGVtLnZpc2liaWxpdHlcIlxuICAgICAgICBbYXR0ci5vcGFjaXR5XT1cIml0ZW0ubmFtZSB8IHB1cmU6IGhhbmRsZU9wYWNpdHk6YWN0aXZhdGVMZWdlbmRcIlxuICAgICAgICBbYXR0ci5zdHJva2Utd2lkdGhdPVwiXG4gICAgICAgICAgKGl0ZW0ubmFtZSB8IHB1cmU6IGhhbmRsZVN0cm9rZVdpZHRoOmFjdGl2YXRlTGVnZW5kOmxpbmVXaWR0aCkgKyAncHgnXG4gICAgICAgIFwiXG4gICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgID48L3N2ZzpwYXRoPlxuICAgIDwvc3ZnOmc+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydExpbmVTZXJpZXNDb21wb25lbnQgZXh0ZW5kcyBDaGFydFNlcmllc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHN0ZXBMaW5lOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIG92ZXJyaWRlIHNlcmllc1R5cGU6ICdsaW5lJyB8ICdhcmVhJyB8ICdiYXInID0gJ2xpbmUnO1xufVxuIl19
@@ -8,6 +8,11 @@ import { ContextChartService } from '../../chart.service';
8
8
  import { findClosestPointIndex, getXPos, tooltipSuffixFormat, } from '../../utils';
9
9
  import * as i0 from "@angular/core";
10
10
  import * as i1 from "../../chart.service";
11
+ import * as i2 from "@angular/common";
12
+ import * as i3 from "../../../effect-directive/e2e-attribute-binding.directive";
13
+ import * as i4 from "@alauda/ui";
14
+ import * as i5 from "../../../core/pipes/pure.pipe";
15
+ import * as i6 from "../../../translate/translate.pipe";
11
16
  const _c0 = ["tooltip"];
12
17
  const _c1 = ["aclTooltip", ""];
13
18
  const _c2 = a0 => ({ context: a0 });
@@ -475,7 +480,7 @@ export class ChartTooltipComponent {
475
480
  i0.ɵɵadvance();
476
481
  i0.ɵɵproperty("auiTooltip", ctx.tooltipTemplate || defaultTooltipTemplate_r10)("auiTooltipContext", i0.ɵɵpureFunction1(11, _c2, ctx.tooltipContext))("auiTooltipDisabled", ctx.anchorVisibility)("auiTooltipPosition", ctx.typeStandard && ctx.isBand ? "top" : "start");
477
482
  i0.ɵɵattribute("x", ctx.anchorPos)("visibility", ctx.anchorVisibility)("y", ctx.anchorY)("width", 0.5)("height", ctx.anchorHeight)("opacity", ctx.anchorOpacity);
478
- } }, styles: [".tooltipClass{pointer-events:none;max-width:800px!important}.tooltip-content[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-6))}.tooltip-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{margin-bottom:8px}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:0;margin:0;list-style:none}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]:not(:last-child), .tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:not(:last-child){margin-bottom:6px}.tooltip-content[_ngcontent-%COMP%] .context-list[_ngcontent-%COMP%]{display:flex;flex-direction:column}.tooltip-content[_ngcontent-%COMP%] .context-list[_ngcontent-%COMP%] .active[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-10))}.tooltip-content[_ngcontent-%COMP%] .context-item[_ngcontent-%COMP%]{display:flex}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{text-align:right;white-space:nowrap}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .column-layout[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{flex:1 1 auto;text-align:right}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .column-layout[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{margin-right:8px}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%]{margin-right:4px;width:6px;border-radius:50%;height:6px;background-color:rgb(var(--aui-color-n-10));display:inline-block;font-size:6px}"], changeDetection: 0 }); }
483
+ } }, dependencies: [i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, i3.E2eAttributeBindingDirective, i4.TooltipDirective, i5.PurePipe, i6.TranslatePipe], styles: [".tooltipClass{pointer-events:none;max-width:800px!important}.tooltip-content[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-6))}.tooltip-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{margin-bottom:8px}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:0;margin:0;list-style:none}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]:not(:last-child), .tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:not(:last-child){margin-bottom:6px}.tooltip-content[_ngcontent-%COMP%] .context-list[_ngcontent-%COMP%]{display:flex;flex-direction:column}.tooltip-content[_ngcontent-%COMP%] .context-list[_ngcontent-%COMP%] .active[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-10))}.tooltip-content[_ngcontent-%COMP%] .context-item[_ngcontent-%COMP%]{display:flex}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{text-align:right;white-space:nowrap}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .column-layout[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{flex:1 1 auto;text-align:right}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .column-layout[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{margin-right:8px}.tooltip-content[_ngcontent-%COMP%] .context[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%]{margin-right:4px;width:6px;border-radius:50%;height:6px;background-color:rgb(var(--aui-color-n-10));display:inline-block;font-size:6px}"], changeDetection: 0 }); }
479
484
  }
480
485
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ChartTooltipComponent, [{
481
486
  type: Component,
@@ -511,4 +516,4 @@ export class ChartTooltipComponent {
511
516
  args: ['tooltip']
512
517
  }] }); })();
513
518
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ChartTooltipComponent, { className: "ChartTooltipComponent" }); })();
514
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY2hhcnQvY29tbW9uL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY2hhcnQvY29tbW9uL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR0wsV0FBVyxFQUVYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQXFCLE1BQU0sT0FBTyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBTyxFQUFFLGdCQUFnQixFQUFhLE1BQU0sMEJBQTBCLENBQUM7QUFFdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixPQUFPLEVBQ1AsbUJBQW1CLEdBQ3BCLE1BQU0sYUFBYSxDQUFDOzs7Ozs7OztJQ3BCbkIsNEJBV2M7Ozs7Ozs7OztJQWZoQix5QkFHQztJQUNDLDBGQVdDO0lBQ0gsaUJBQVE7Ozs7SUFSYSxjQUF5QjtJQUF6Qiw2RkFBeUI7OztJQWdDMUMsQUFERiw4QkFBNkIsY0FDUjtJQUNqQiw0QkFHZ0I7SUFDbEIsaUJBQU07SUFDTiwrQkFBcUI7SUFDbkIsNEJBR2dCOztJQUVwQixBQURFLGlCQUFNLEVBQ0Y7SUFDTiwwQkFFTzs7Ozs7O0lBYkQsZUFBMEQ7SUFDMUQsQUFE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UUFBUTtrQkFBaEIsS0FBSztZQUVHLFdBQVc7a0JBQW5CLEtBQUs7WUFFRyxnQkFBZ0I7a0JBQXhCLEtBQUs7WUFFRyxXQUFXO2tCQUFuQixLQUFLO1lBRWdCLGFBQWE7a0JBQWxDLFNBQVM7bUJBQUMsU0FBUzs7a0ZBM0JULHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VUb29sdGlwIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZixcbiAgVHJhY2tCeUZ1bmN0aW9uLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2NhbGVCYW5kIH0gZnJvbSAnZDMnO1xuaW1wb3J0IGRheWpzLCB7IENvbmZpZ1R5cGUgfSBmcm9tICdkYXlqcyc7XG5pbXBvcnQgeyBnZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERBVEVfVElNRV9GT1JNQVQsIFN0cmluZ01hcCB9IGZyb20gJy4uLy4uLy4uL2NvcmUvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBDaGFydERhdGEsIENoYXJ0RGF0YUl0ZW0gfSBmcm9tICcuLi8uLi8uLi92aWV3LWNoYXJ0L3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQ29udGV4dENoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2NoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgZmluZENsb3Nlc3RQb2ludEluZGV4LFxuICBnZXRYUG9zLFxuICB0b29sdGlwU3VmZml4Rm9ybWF0LFxufSBmcm9tICcuLi8uLi91dGlscyc7XG5cbnR5cGUgWFZhbHVlID0gc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZTtcbmV4cG9ydCBpbnRlcmZhY2UgQ29udGV4dEl0ZW0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGNvbG9yOiBzdHJpbmc7XG4gIHg6IFhWYWx1ZTtcbiAgeTogbnVtYmVyO1xuICB1bml0Pzogc3RyaW5nO1xuICBhY3RpdmU/OiBib29sZWFuO1xufVxuaW50ZXJmYWNlIEN1cnJlbnRQb3NpdGlvbkl0ZW0ge1xuICB4MTogbnVtYmVyO1xuICB4MjogbnVtYmVyO1xuICBuYW1lPzogc3RyaW5nO1xuICBncm91cE5hbWU6IHN0cmluZztcbiAgaW5kZXg6IG51bWJlcjtcbn1cblxuaW50ZXJmYWNlIFRvb2x0aXBDb250ZXh0IHtcbiAgdGl0bGU6IFhWYWx1ZTtcbiAgc291cmNlOiBDaGFydERhdGFbXTtcbiAgdmFsdWVzOiBDb250ZXh0SXRlbVtdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRGF0ZUZvcm1hdChkYXRlOiBDb25maWdUeXBlLCBmb3JtYXQgPSBEQVRFX1RJTUVfRk9STUFUKSB7XG4gIHJldHVybiBTdHJpbmcoZGF5anMoZGF0ZSkuaXNWYWxpZCgpID8gZGF5anMoZGF0ZSkuZm9ybWF0KGZvcm1hdCkgOiBkYXRlKTtcbn1cblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnZ1thY2xUb29sdGlwXScsXG4gIHRlbXBsYXRlVXJsOiAnLi90b29sdGlwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9vbHRpcC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ2hhcnRUb29sdGlwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBkYXRlRm9ybWF0ID0gREFURV9USU1FX0ZPUk1BVDtcblxuICBASW5wdXQoKSB2YWx1ZVByZWZpeDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHZhbHVlU3VmZml4OiBzdHJpbmc7XG5cbiAgQElucHV0KCkgY29sdW1uTGF5b3V0ID0gZmFsc2U7XG5cbiAgQElucHV0KCkgdG9vbHRpcFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBwb2ludFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBwb2ludE5hbWVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgcG9pbnRUZW1wbGF0ZUNvbnRleHQ6IHVua25vd247XG5cbiAgQElucHV0KCkgdGl0bGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgYXV0b1NvcnQgPSBmYWxzZTtcblxuICBASW5wdXQoKSB0cmFuc2xhdGlvbiA9IHRydWU7XG5cbiAgQElucHV0KCkgdGl0bGVUcmFuc2xhdGlvbjogYm9vbGVhbjtcblxuICBASW5wdXQoKSBwb2ludEZvcm1hdDogKGQ6IENvbnRleHRJdGVtKSA9PiBzdHJpbmcgfCBudW1iZXIgPSBkID0+IGQueTtcblxuICBAVmlld0NoaWxkKCd0b29sdGlwJykgYXVpVG9vbHRpcFJlZjogQmFzZVRvb2x0aXA7XG5cbiAgdmlldzoge1xuICAgIHdpZHRoOiBudW1iZXI7XG4gICAgaGVpZ2h0OiBudW1iZXI7XG4gIH07XG5cbiAgZGVzdHJveSQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBhbmNob3JQb3MgPSAwO1xuICBhbmNob3JPcGFjaXR5ID0gMDtcbiAgYW5jaG9ySGVpZ2h0ID0gMDtcbiAgYW5jaG9yWSA9IDA7XG4gIGxhc3RBbmNob3JQb3M6IG51bWJlcjtcbiAgdG9vbHRpcENvbnRleHQ6IFRvb2x0aXBDb250ZXh0O1xuXG4gIGhhY2tlZCA9IGZhbHNlO1xuXG4gIGhhbmRsZURhdGVGb3JtYXQgPSBoYW5kbGVEYXRlRm9ybWF0O1xuXG4gIHRvb2x0aXBTdWZmaXhGb3JtYXQgPSB0b29sdGlwU3VmZml4Rm9ybWF0O1xuXG4gIGFjdGl2ZUxlZ2VuZDogc3RyaW5nO1xuXG4gIGdldCB0eXBlU3RhbmRhcmQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dFNlcnZpY2UuYmFyT3B0aW9ucy50eXBlID09PSAnc3RhbmRhcmQnO1xuICB9XG5cbiAgZ2V0IGlzQmFuZCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0U2VydmljZS5iYXJPcHRpb25zLmlzQmFuZDtcbiAgfVxuXG4gIGdldCBhbmNob3JWaXNpYmlsaXR5KCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHRTZXJ2aWNlLmRpc2FibGVkTGVnZW5kLnNpemUgPT09XG4gICAgICAodGhpcy50eXBlU3RhbmRhcmRcbiAgICAgICAgPyB0aGlzLmNvbnRleHRTZXJ2aWNlLmlubmVyRG9tYWluLmxlbmd0aFxuICAgICAgICA6IHRoaXMuY29udGV4dFNlcnZpY2UuY2hhcnREYXRhPy5sZW5ndGgpXG4gICAgICA/ICdoaWRkZW4nXG4gICAgICA6ICcnO1xuICB9XG5cbiAgZ2V0IGdyb3VwUG9zaXRpb24oKSB7XG4gICAgLy8g6K6h566XIGdyb3VwIOW8gOWni+e7k+adn+S9jee9rlxuICAgIHJldHVybiB0aGlzLmNvbnRleHRTZXJ2aWNlLnhTZXJpZXNWYWx1ZS5tYXAoKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCB4ID0gPFNjYWxlQmFuZDxzdHJpbmc+PnRoaXMuY29udGV4dFNlcnZpY2UueDtcbiAgICAgIGNvbnN0IHgxID0geChpdGVtIGFzIHN0cmluZyk7XG4gICAgICByZXR1cm4geyB4MSwgeDI6IHgxICsgeC5iYW5kd2lkdGgoKSwgaW5kZXgsIGdyb3VwTmFtZTogaXRlbSBhcyBzdHJpbmcgfTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldCBjYWxjdWxhdGlvbkl0ZW1Qb3NpdGlvbigpIHtcbiAgICAvLyDmoLnmja4gZ3JvdXAg6K6h566XIGl0ZW0g5byA5aeL57uT5p2f5L2N572uXG4gICAgcmV0dXJuIHRoaXMuZ3JvdXBQb3NpdGlvbi5yZWR1Y2UoXG4gICAgICAoYWNjLCBwb3NpdGlvbiwgaW5kZXgpID0+IFtcbiAgICAgICAgLi4uYWNjLFxuICAgICAgICAuLi50aGlzLmNvbnRleHRTZXJ2aWNlLmlubmVyRG9tYWluLm1hcCgoaW5uZXIsIGkpID0+IHtcbiAgICAgICAgICBjb25zdCBiYXJJbm5lclNjYWxlID0gdGhpcy5jb250ZXh0U2VydmljZS5iYXJJbm5lclNjYWxlKCk7XG4gICAgICAgICAgY29uc3QgeDEgPSBiYXJJbm5lclNjYWxlKGlubmVyKTtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDE6IHgxICsgcG9zaXRpb24ueDEsXG4gICAgICAgICAgICB4MjogeDEgKyBwb3NpdGlvbi54MSArIGJhcklubmVyU2NhbGUuYmFuZHdpZHRoKCksXG4gICAgICAgICAgICBuYW1lOiBpbm5lcixcbiAgICAgICAgICAgIGdyb3VwTmFtZTogdGhpcy5jb250ZXh0U2VydmljZS54U2VyaWVzVmFsdWVbaW5kZXhdLFxuICAgICAgICAgICAgaW5kZXg6IGksXG4gICAgICAgICAgfTtcbiAgICAgICAgfSksXG4gICAgICBdLFxuICAgICAgW10sXG4gICAgKTtcbiAgfVxuXG4gIGNhbGN1bGF0ZVkgPSAoXzogbnVtYmVyKSA9PiAwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBjb250ZXh0U2VydmljZTogQ29udGV4dENoYXJ0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnVwZGF0ZSQkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuYW5jaG9ySGVpZ2h0ID0gdGhpcy5jb250ZXh0U2VydmljZS5jaGFydFZpZXcuaGVpZ2h0O1xuICAgICAgICB0aGlzLnZpZXcgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmNoYXJ0VmlldztcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSk7XG4gICAgdGhpcy5jb250ZXh0U2VydmljZS5sZWdlbmRBY3RpdmF0ZSQkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpKVxuICAgICAgLnN1YnNjcmliZShsZWdlbmQgPT4ge1xuICAgICAgICB0aGlzLmFjdGl2ZUxlZ2VuZCA9IGxlZ2VuZDtcbiAgICAgICAgaWYgKHRoaXMudG9vbHRpcENvbnRleHQ/LnZhbHVlcykge1xuICAgICAgICAgIHRoaXMudG9vbHRpcENvbnRleHQgPSB7XG4gICAgICAgICAgICAuLi50aGlzLnRvb2x0aXBDb250ZXh0LFxuICAgICAgICAgICAgdmFsdWVzOiB0aGlzLnRvb2x0aXBDb250ZXh0LnZhbHVlcy5tYXAoaXRlbSA9PiAoe1xuICAgICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgICBhY3RpdmU6IGl0ZW0ubmFtZSA9PT0gbGVnZW5kLFxuICAgICAgICAgICAgfSkpLFxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSk7XG4gIH1cblxuICBtb3VzZU1vdmUoZTogTW91c2VFdmVudCwgcmVjdERvbT86IEhUTUxFbGVtZW50KSB7XG4gICAgY29uc3QgeFBvcyA9IGdldFhQb3MoZSwgdGhpcy5jb250ZXh0U2VydmljZSwgcmVjdERvbSk7XG4gICAgY29uc3QgY2xvc2VzdEluZGV4ID0gZmluZENsb3Nlc3RQb2ludEluZGV4KHhQb3MsIHRoaXMuY29udGV4dFNlcnZpY2UpO1xuICAgIGNvbnN0IGNsb3Nlc3RQb2ludCA9IHRoaXMuY29udGV4dFNlcnZpY2UueFNlcmllc1ZhbHVlW2Nsb3Nlc3RJbmRleF07XG4gICAgaWYgKHRoaXMuY29udGV4dFNlcnZpY2UuYmFyT3B0aW9ucy5pc0JhbmQpIHtcbiAgICAgIHRoaXMuYmFyTW91c2VNb3ZlKGUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFuY2hvclBvcyA9IHhQb3M7XG4gICAgaWYgKHRoaXMuYW5jaG9yUG9zICE9PSB0aGlzLmxhc3RBbmNob3JQb3MgJiYgY2xvc2VzdFBvaW50KSB7XG4gICAgICB0aGlzLnRvb2x0aXBDb250ZXh0ID0gdGhpcy5nZXRUb29sdGlwQ29udGV4dChjbG9zZXN0SW5kZXgsIGNsb3Nlc3RQb2ludCk7XG4gICAgICAvLyDlgLzkuLogbnVsbCDkuI3lsZXnpLogdG9vbHRpcFxuICAgICAgY29uc3Qgbm9EYXRhID0gIXRoaXMudG9vbHRpcENvbnRleHQ/LnZhbHVlcz8uc29tZShkID0+IGQueSAhPT0gbnVsbCk7XG4gICAgICBpZiAobm9EYXRhKSB7XG4gICAgICAgIHRoaXMuYW5jaG9yT3BhY2l0eSA9IDA7XG4gICAgICAgIHRoaXMubGFzdEFuY2hvclBvcyA9IC0xO1xuICAgICAgICB0aGlzLmhpZGVUb29sdGlwKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmxhc3RBbmNob3JQb3MgPSB0aGlzLmFuY2hvclBvcztcbiAgICAgICAgdGhpcy5hbmNob3JPcGFjaXR5ID0gMC43O1xuICAgICAgICB0aGlzLnNob3dUb29sdGlwKCk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG1vdXNlTGVhdmUoKSB7XG4gICAgdGhpcy5hbmNob3JPcGFjaXR5ID0gMDtcbiAgICB0aGlzLmxhc3RBbmNob3JQb3MgPSAtMTtcbiAgICB0aGlzLmhpZGVUb29sdGlwKCk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbWVyZ2VQb2ludENvbnRleHQgPSAoY29udGV4dDogVG9vbHRpcENvbnRleHQpID0+ICh7XG4gICAgY29udGV4dDogdGhpcy5saW1pdE1heENvbnRleHQoY29udGV4dC52YWx1ZXMpLFxuICAgIHNvdXJjZTogY29udGV4dC5zb3VyY2UsXG4gICAgLi4uKHRoaXMucG9pbnRUZW1wbGF0ZUNvbnRleHQgYXMgU3RyaW5nTWFwKSxcbiAgfSk7XG5cbiAgaXRlbVRyYWNrQnk6IFRyYWNrQnlGdW5jdGlvbjxDb250ZXh0SXRlbT4gPSAoXzogbnVtYmVyLCB2YWx1ZTogQ29udGV4dEl0ZW0pID0+XG4gICAgdmFsdWUubmFtZTtcblxuICAvLyBiYXIgbW91c2VNb3ZlIOWkhOeQhlxuICBwcml2YXRlIGJhck1vdXNlTW92ZShlOiBNb3VzZUV2ZW50KSB7XG4gICAgY29uc3QgeFBvcyA9IGdldFhQb3MoZSwgdGhpcy5jb250ZXh0U2VydmljZSk7XG4gICAgY29uc3QgY3VyclBvc2l0aW9uID0gdGhpcy5nZXRDdXJyZW50TW91c2VNb3ZlUG9zaXRpb25WYWx1ZShcbiAgICAgIHRoaXMudHlwZVN0YW5kYXJkID8gdGhpcy5jYWxjdWxhdGlvbkl0ZW1Qb3NpdGlvbiA6IHRoaXMuZ3JvdXBQb3NpdGlvbixcbiAgICAgIHhQb3MsXG4gICAgKTtcbiAgICBpZiAoY3VyclBvc2l0aW9uKSB7XG4gICAgICB0aGlzLmdldEJhclhBbmNob3JQb3MoY3VyclBvc2l0aW9uKTtcbiAgICAgIHRoaXMuZ2V0QmFySGlnaHQoXG4gICAgICAgIHRoaXMuY29udGV4dFNlcnZpY2UueFNlcmllc1ZhbHVlW2N1cnJQb3NpdGlvbi5pbmRleF0gYXMgc3RyaW5nLFxuICAgICAgICBjdXJyUG9zaXRpb24sXG4gICAgICApO1xuICAgICAgdGhpcy5nZXRCYXJZQW5jaG9yUG9zKGN1cnJQb3NpdGlvbik7XG4gICAgICB0aGlzLnRvb2x0aXBDb250ZXh0ID0gdGhpcy5nZXRCYXJUb29sdGlwQ29udGV4dChjdXJyUG9zaXRpb24pO1xuICAgICAgdGhpcy5zaG93VG9vbHRpcCgpO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0QmFySGlnaHQoZ3JvdXBOYW1lOiBzdHJpbmcsIHZhbHVlPzogQ3VycmVudFBvc2l0aW9uSXRlbSkge1xuICAgIHRoaXMuYW5jaG9ySGVpZ2h0ID0gdGhpcy5jb250ZXh0U2VydmljZS5ob3Jpem9udGFsXG4gICAgICA/IHRoaXMudHlwZVN0YW5kYXJkXG4gICAgICAgID8gdGhpcy5jb250ZXh0U2VydmljZS5iYXJJbm5lclNjYWxlKCkuYmFuZHdpZHRoKClcbiAgICAgICAgOiAoPFNjYWxlQmFuZDxzdHJpbmc+PnRoaXMuY29udGV4dFNlcnZpY2UueCkuYmFuZHdpZHRoKClcbiAgICAgIDogdGhpcy5nZXRWZXJ0aWNhbEJhckhlaWdodChncm91cE5hbWUsIHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDorqHnrpcgYmFyIOWeguebtCDnsbvlnovkuIsg6auY5bqmXG4gICAqIOagh+WHhu+8mlxiXGLnm7TmjqXmoLnmja4geSgwKSAtIHkodmFsdWUpIOiuoeeulyBiYXIgaXRlbSDnmoTpq5jluqZcbiAgICog5aCG5Y+g77ya6K6h566XIGdyb3VwIOS4i+aJgOaciWl0ZW0g55qE6auY5bqm55u45YqgIOW+l+WIsOWghuWPoOeahCBiYXIg6auY5bqmXG4gICAqL1xuICBwcml2YXRlIGdldFZlcnRpY2FsQmFySGVpZ2h0KGdyb3VwTmFtZTogc3RyaW5nLCB2YWx1ZT86IEN1cnJlbnRQb3NpdGlvbkl0ZW0pIHtcbiAgICByZXR1cm4gdGhpcy50eXBlU3RhbmRhcmRcbiAgICAgID8gdGhpcy5jb250ZXh0U2VydmljZS55KDApIC1cbiAgICAgICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnkodGhpcy5nZXRCYXJZVmFsdWUodmFsdWUuZ3JvdXBOYW1lLCB2YWx1ZS5uYW1lKSlcbiAgICAgIDogdGhpcy5jb250ZXh0U2VydmljZS5jaGFydERhdGEucmVkdWNlKChwcmV2LCBjdXJyKSA9PiB7XG4gICAgICAgICAgaWYgKGN1cnIubmFtZSA9PT0gZ3JvdXBOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICBjdXJyLnZhbHVlcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmNvbnRleHRTZXJ2aWNlLmRpc2FibGVkTGVnZW5kLmhhcyh2YWwueCBhcyBzdHJpbmcpKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnkoMCkgLVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnkodmFsLnkpICtcbiAgICAgICAgICAgICAgICAgICAgYWNjXG4gICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICAgICAgICB9LCAwKSArIHByZXZcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBwcmV2O1xuICAgICAgICB9LCAwKTtcbiAgfVxuXG4gIC8vIOiOt+WPluW9k+WJjem8oOagh+enu+WFpSBiYXIgeSDlgLxcbiAgcHJpdmF0ZSBnZXRCYXJZVmFsdWUoZ3JvdXBOYW1lOiBzdHJpbmcsIG5hbWU6IHN0cmluZykge1xuICAgIGxldCByZXN1bHQgPSAwO1xuICAgIGZvciAoY29uc3QgWywgaXRlbV0gb2YgdGhpcy5jb250ZXh0U2VydmljZS5jaGFydERhdGEuZW50cmllcygpKSB7XG4gICAgICBpZiAoaXRlbS5uYW1lID09PSBncm91cE5hbWUpIHtcbiAgICAgICAgZm9yIChjb25zdCBbLCB2YWxdIG9mIGl0ZW0udmFsdWVzLmVudHJpZXMoKSkge1xuICAgICAgICAgIGlmICh2YWwueCA9PT0gbmFtZSkge1xuICAgICAgICAgICAgcmVzdWx0ID0gdmFsLnk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvLyBsaW5lIGFyZWEgY2hhcnQg6I635Y+WIHRvb2x0aXAg5bGV56S65pWw5o2uXG4gIHByaXZhdGUgZ2V0VG9vbHRpcENvbnRleHQoaW5kZXg6IG51bWJlciwgeFZhbHVlOiBudW1iZXIgfCBzdHJpbmcgfCBEYXRlKSB7XG4gICAgY29uc3QgdmFsdWVzOiBDb250ZXh0SXRlbVtdID0gdGhpcy5jb250ZXh0U2VydmljZS5jaGFydERhdGEucmVkdWNlKFxuICAgICAgKGFjYywgZ3JvdXApID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRleHRTZXJ2aWNlLmRpc2FibGVkTGVnZW5kLmhhcyhncm91cC5uYW1lKSkge1xuICAgICAgICAgIGNvbnN0IGl0ZW0gPSBncm91cC52YWx1ZXNbaW5kZXhdO1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgIG5hbWU6IGdyb3VwLm5hbWUsXG4gICAgICAgICAgICAgIGNvbG9yOiBncm91cC5jb2xvcixcbiAgICAgICAgICAgICAgdW5pdDogZ3JvdXAudW5pdCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSxcbiAgICAgIFtdLFxuICAgICk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRpdGxlOiB4VmFsdWUsXG4gICAgICBzb3VyY2U6IHRoaXMuY29udGV4dFNlcnZpY2UuY2hhcnREYXRhLFxuICAgICAgdmFsdWVzOiB0aGlzLmF1dG9Tb3J0ID8gdmFsdWVzLnNvcnQoKGEsIGIpID0+IGIueSAtIGEueSkgOiB2YWx1ZXMsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiDojrflj5YgYmFyIHRvb2x0aXAg5bGV56S65pWw5o2uXG4gICAqL1xuICBwcml2YXRlIGdldEJhclRvb2x0aXBDb250ZXh0KHZhbHVlOiBDdXJyZW50UG9zaXRpb25JdGVtKSB7XG4gICAgY29uc3QgdmFsdWVzID0gdGhpcy5jb250ZXh0U2VydmljZS5jaGFydERhdGEucmVkdWNlKChhY2MsIGdyb3VwKSA9PiB7XG4gICAgICBpZiAoZ3JvdXAubmFtZSA9PT0gdmFsdWUuZ3JvdXBOYW1lKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgLi4uYWNjLFxuICAgICAgICAgIC4uLmdyb3VwLnZhbHVlcy5yZWR1Y2UoXG4gICAgICAgICAgICAoXG4gICAgICAgICAgICAgIHByZXYsXG4gICAgICAgICAgICAgIGN1cnI6IENoYXJ0RGF0YUl0ZW08eyB4OiBzdHJpbmc7IHk6IG51bWJlcjsgY29sb3I/OiBzdHJpbmcgfT4sXG4gICAgICAgICAgICAgIGluZGV4LFxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAhdGhpcy5jb250ZXh0U2VydmljZS5kaXNhYmxlZExlZ2VuZC5oYXMoY3Vyci54IGFzIHN0cmluZykgJiZcbiAgICAgICAgICAgICAgICAodmFsdWUubmFtZSA/IGN1cnIueCA9PT0gdmFsdWUubmFtZSA6IHRydWUpXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAuLi5jdXJyLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiBjdXJyLngsXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOlxuICAgICAgICAgICAgICAgICAgICAgIGN1cnIuY29sb3IgfHxcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLmdldENoYXJ0RGVmYXVsdENvbG9yKGluZGV4KSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gcHJldjtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBbXSxcbiAgICAgICAgICApLFxuICAgICAgICBdO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LCBbXSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRpdGxlOiB2YWx1ZS5ncm91cE5hbWUsXG4gICAgICBzb3VyY2U6IHRoaXMuY29udGV4dFNlcnZpY2UuY2hhcnREYXRhLFxuICAgICAgdmFsdWVzLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICog5pqC5pe25YWIIOmAmui/hyBoYWNrIOaWueW8jyDkv67mlLkgcG9pbnRlciBldmVudCDooYzkuLpcbiAgICogVE9ETzog5ZCO57ut5YaF6YOo5a6e546wIHRvb2x0aXAg5LiN5L2/55SoIGF1aSB0b29sdGlwXG4gICAqL1xuICBoYWNrT3ZlcmxheVBhbmVTdHlsZShzdHlsZTogc3RyaW5nKSB7XG4gICAgY29uc3QgdG9vbHRpcFBhbmVEb20gPSBnZXQoXG4gICAgICB0aGlzLmF1aVRvb2x0aXBSZWYub3ZlcmxheVJlZixcbiAgICAgICdfcGFuZScsXG4gICAgKSBhcyBIVE1MRWxlbWVudDtcbiAgICBpZiAodG9vbHRpcFBhbmVEb20pIHtcbiAgICAgIHRvb2x0aXBQYW5lRG9tLnN0eWxlLnBvaW50ZXJFdmVudHMgPSBzdHlsZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICog6I635Y+W6byg5qCH56e75Yqo55qE5L2N572u5omA5Zyo55qEIGJhciB2YWx1ZVxuICAgKiBAcGFyYW0gZGF0YSDlvZPliY1cYiBiYXIg5byA5aeL57uT5p2fIHgg5L2N572uXG4gICAqIEBwYXJhbSB4UG9zIOW9k+WJjem8oOagh+S9jee9rlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRDdXJyZW50TW91c2VNb3ZlUG9zaXRpb25WYWx1ZShcbiAgICBkYXRhOiBDdXJyZW50UG9zaXRpb25JdGVtW10sXG4gICAgeFBvczogbnVtYmVyLFxuICApIHtcbiAgICBsZXQgcmVzdWx0OiBDdXJyZW50UG9zaXRpb25JdGVtO1xuICAgIGZvciAoY29uc3QgWywgcG9zaXRpb25dIG9mIGRhdGEuZW50cmllcygpKSB7XG4gICAgICBpZiAoeFBvcyA+PSBwb3NpdGlvbi54MSAmJiB4UG9zIDw9IHBvc2l0aW9uLngyKSB7XG4gICAgICAgIHJlc3VsdCA9IHBvc2l0aW9uO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiDorqHnrpfplJrngrkgeCDkvY3nva5cbiAgICog5b2T5YmNIGJhciDmlbDmja4geCDkvY3nva4gKyDlvZPliY0gYmFyIOWuveW6pueahOS4gOiIrFxuICAgKiBAcGFyYW0gY3VyclBvc2l0aW9uIOW9k+WJjem8oOagh+enu+WFpeeahGJhciDmlbDmja5cbiAgICovXG4gIHByaXZhdGUgZ2V0QmFyWEFuY2hvclBvcyhjdXJyUG9zaXRpb246IEN1cnJlbnRQb3NpdGlvbkl0ZW0pIHtcbiAgICBjb25zdCBiYW5kd2lkdGggPSB0aGlzLnR5cGVTdGFuZGFyZFxuICAgICAgPyB0aGlzLmNvbnRleHRTZXJ2aWNlLmJhcklubmVyU2NhbGUoKS5iYW5kd2lkdGgoKSAvIDJcbiAgICAgIDogKDxTY2FsZUJhbmQ8c3RyaW5nPj50aGlzLmNvbnRleHRTZXJ2aWNlLngpLmJhbmR3aWR0aCgpIC8gMjtcbiAgICB0aGlzLmFuY2hvclBvcyA9IHRoaXMuY29udGV4dFNlcnZpY2UuaG9yaXpvbnRhbFxuICAgICAgPyBNYXRoLmFicyhcbiAgICAgICAgICB0aGlzLmdldFZlcnRpY2FsQmFySGVpZ2h0KFxuICAgICAgICAgICAgdGhpcy5jb250ZXh0U2VydmljZS54U2VyaWVzVmFsdWVbY3VyclBvc2l0aW9uLmluZGV4XSBhcyBzdHJpbmcsXG4gICAgICAgICAgICBjdXJyUG9zaXRpb24sXG4gICAgICAgICAgKSAvIDIsXG4gICAgICAgIClcbiAgICAgIDogY3VyclBvc2l0aW9uLngxICsgYmFuZHdpZHRoO1xuICB9XG5cbiAgLyoqXG4gICAqIOiuoeeul+mUmueCuSB5IOS9jee9rlxuICAgKiDmsLTlubPvvJrlvZPliY0gYmFyIOaVsOaNriB4IOS9jee9rlxuICAgKiDlnoLnm7TvvJrmgLvpq5jluqYgLSBiYXIg6auY5bqmIO+8iOmcgOimgeWFiOiuoeeul+WHuiBiYXLpq5jluqbvvIlcbiAgICovXG4gIHByaXZhdGUgZ2V0QmFyWUFuY2hvclBvcyhjdXJyUG9zaXRpb246IEN1cnJlbnRQb3NpdGlvbkl0ZW0pIHtcbiAgICB0aGlzLmFuY2hvclkgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmhvcml6b250YWxcbiAgICAgID8gY3VyclBvc2l0aW9uLngxXG4gICAgICA6IHRoaXMudmlldy5oZWlnaHQgLSB0aGlzLmFuY2hvckhlaWdodDtcbiAgfVxuXG4gIHByaXZhdGUgc2hvd1Rvb2x0aXAoKSB7XG4gICAgaWYgKCF0aGlzLmF1aVRvb2x0aXBSZWY/LmlzQ3JlYXRlZCkge1xuICAgICAgdGhpcy5hdWlUb29sdGlwUmVmPy5zaG93KCk7XG4gICAgfVxuICAgIGlmICghdGhpcy5oYWNrZWQpIHtcbiAgICAgIHRoaXMuaGFja092ZXJsYXlQYW5lU3R5bGUoJ25vbmUnKTtcbiAgICB9XG4gICAgdGhpcy5oYWNrZWQgPSB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBoaWRlVG9vbHRpcCgpIHtcbiAgICB0aGlzLmhhY2tlZCA9IGZhbHNlO1xuICAgIHRoaXMuaGFja092ZXJsYXlQYW5lU3R5bGUoJ2F1dG8nKTtcbiAgICB0aGlzLmF1aVRvb2x0aXBSZWY/LmhpZGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgbGltaXRNYXhDb250ZXh0KGNvbnRleHQ6IENvbnRleHRJdGVtW10sIGxpbWl0ID0gMTUpIHtcbiAgICBjb25zdCB2YWx1ZXMgPSBjb250ZXh0LnNsaWNlKDAsIGxpbWl0KTtcbiAgICBjb25zdCBleGlzdEFjdGl2ZSA9IHZhbHVlcy5zb21lKGl0ZW0gPT4gaXRlbS5uYW1lID09PSB0aGlzLmFjdGl2ZUxlZ2VuZCk7XG4gICAgaWYgKCFleGlzdEFjdGl2ZSAmJiB0aGlzLmFjdGl2ZUxlZ2VuZCkge1xuICAgICAgY29uc3QgZGF0YSA9IGNvbnRleHQuZmluZChpdGVtID0+IGl0ZW0ubmFtZSA9PT0gdGhpcy5hY3RpdmVMZWdlbmQpO1xuICAgICAgdGhpcy5hY3RpdmVMZWdlbmQgPSAnJztcbiAgICAgIHJldHVybiBkYXRhID8gWy4uLnZhbHVlcy5zbGljZSgwLCBsaW1pdCAtIDEpLCBkYXRhXSA6IHZhbHVlcztcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlcztcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkJC5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8c3ZnOmdcbiAgW2F0dHIub3BhY2l0eV09XCJhbmNob3JPcGFjaXR5XCJcbiAgKm5nSWY9XCIhaXNCYW5kXCJcbj5cbiAgPHN2ZzpjaXJjbGVcbiAgICBbYXR0ci52aXNpYmlsaXR5XT1cIlxuICAgICAgY29udGV4dFNlcnZpY2UuZGlzYWJsZWRMZWdlbmQuaGFzKGl0ZW0ubmFtZSkgPyAnaGlkZGVuJyA6ICcnXG4gICAgXCJcbiAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiB0b29sdGlwQ29udGV4dD8udmFsdWVzXCJcbiAgICByPVwiMi41XCJcbiAgICBbYXR0ci5zdHJva2VdPVwiaXRlbS5jb2xvclwiXG4gICAgc3Ryb2tlLXdpZHRoPVwiMVwiXG4gICAgZmlsbD1cIiNmZmZcIlxuICAgIFthdHRyLmN4XT1cImFuY2hvclBvc1wiXG4gICAgW2F0dHIuY3ldPVwiaXRlbS55ID8gKGl0ZW0ueSB8IHB1cmU6IGNvbnRleHRTZXJ2aWNlLnkpIHx8IDAgOiAxMDAwXCJcbiAgPjwvc3ZnOmNpcmNsZT5cbjwvc3ZnOmc+XG5cbjxzdmc6cmVjdFxuICBzdHJva2U9XCIjOTk5XCJcbiAgW2F0dHIueF09XCJhbmNob3JQb3NcIlxuICBbYXR0ci52aXNpYmlsaXR5XT1cImFuY2hvclZpc2liaWxpdHlcIlxuICBbYXR0ci55XT1cImFuY2hvcllcIlxuICBbYXR0ci53aWR0aF09XCIwLjVcIlxuICBbYXR0ci5oZWlnaHRdPVwiYW5jaG9ySGVpZ2h0XCJcbiAgI3Rvb2x0aXA9XCJhdWlUb29sdGlwXCJcbiAgW2F0dHIub3BhY2l0eV09XCJhbmNob3JPcGFjaXR5XCJcbiAgW2F1aVRvb2x0aXBdPVwidG9vbHRpcFRlbXBsYXRlIHx8IGRlZmF1bHRUb29sdGlwVGVtcGxhdGVcIlxuICBbYXVpVG9vbHRpcENvbnRleHRdPVwieyBjb250ZXh0OiB0b29sdGlwQ29udGV4dCB9XCJcbiAgW2F1aVRvb2x0aXBEaXNhYmxlZF09XCJhbmNob3JWaXNpYmlsaXR5XCJcbiAgYXVpVG9vbHRpcFRyaWdnZXI9XCJtYW51YWxcIlxuICBbYXVpVG9vbHRpcFBvc2l0aW9uXT1cInR5cGVTdGFuZGFyZCAmJiBpc0JhbmQgPyAndG9wJyA6ICdzdGFydCdcIlxuICBhdWlUb29sdGlwQ2xhc3M9XCJ0b29sdGlwQ2xhc3NcIlxuLz5cblxuPG5nLXRlbXBsYXRlXG4gICNkZWZhdWx0VG9vbHRpcFRlbXBsYXRlXG4gIGxldC1jb250ZXh0PVwiY29udGV4dFwiXG4+XG4gIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGl0bGVUZW1wbGF0ZSB8fCBkZWZhdWx0VGl0bGVUZW1wbGF0ZVwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGNvbnRleHQ6IGNvbnRleHQgfVwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRleHRcIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwicG9pbnRUZW1wbGF0ZSB8fCBkZWZhdWx0UG9pbnRUZW1wbGF0ZVwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJjb250ZXh0IHwgcHVyZTogbWVyZ2VQb2ludENvbnRleHRcIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIHN0eWxlPVwicG9zaXRpb246IGFic29sdXRlOyBwb2ludGVyLWV2ZW50czogbm9uZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJVwiXG4gID48L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAjZGVmYXVsdFRpdGxlVGVtcGxhdGVcbiAgbGV0LWNvbnRleHQ9XCJjb250ZXh0XCJcbj5cbiAge3tcbiAgICB0aXRsZVRyYW5zbGF0aW9uXG4gICAgICA/IChjb250ZXh0Py50aXRsZSB8IHRyYW5zbGF0ZSlcbiAgICAgIDogKGNvbnRleHQ/LnRpdGxlIHwgcHVyZTogaGFuZGxlRGF0ZUZvcm1hdCA6IGRhdGVGb3JtYXQpXG4gIH19XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGVcbiAgI2RlZmF1bHRQb2ludFRlbXBsYXRlXG4gIGxldC1jb250ZXh0PVwiY29udGV4dFwiXG4gIGxldC1zb3VyY2U9XCJzb3VyY2VcIlxuPlxuICA8dWxcbiAgICBjbGFzcz1cImNvbnRleHQtbGlzdFwiXG4gICAgW2NsYXNzLmNvbHVtbi1sYXlvdXRdPVwiY29sdW1uTGF5b3V0XCJcbiAgPlxuICAgIDxsaVxuICAgICAgY2xhc3M9XCJjb250ZXh0LWl0ZW1cIlxuICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGV4dDsgdHJhY2tCeTogaXRlbVRyYWNrQnlcIlxuICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpdGVtPy5hY3RpdmVcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJpdGVtLWljb25cIlxuICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kXT1cIml0ZW0uY29sb3JcIlxuICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tbmFtZVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwb2ludE5hbWVUZW1wbGF0ZTsgZWxzZSBlbHNlVGVtcGxhdGVcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwicG9pbnROYW1lVGVtcGxhdGVcIlxuICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBjb250ZXh0OiBpdGVtIH1cIlxuICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVRlbXBsYXRlPlxuICAgICAgICAgICAge3sgdHJhbnNsYXRpb24gPyAoaXRlbS5uYW1lIHwgdHJhbnNsYXRlKSA6IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjb2x1bW5MYXlvdXRcIj46IDwvbmctY29udGFpbmVyPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwiaXRlbS1wcmVmaXhcIlxuICAgICAgICAgICpuZ0lmPVwidmFsdWVQcmVmaXhcIlxuICAgICAgICAgID57eyB2YWx1ZVByZWZpeCB9fTwvc3BhblxuICAgICAgICA+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaXRlbS12YWx1ZVwiPnt7IGl0ZW0gfCBwdXJlOiBwb2ludEZvcm1hdCB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cIml0ZW0tc3VmZml4XCJcbiAgICAgICAgICAqbmdJZj1cInZhbHVlU3VmZml4XCJcbiAgICAgICAgICA+e3sgdmFsdWVTdWZmaXggfCBwdXJlOiB0b29sdGlwU3VmZml4Rm9ybWF0IH19PC9zcGFuXG4gICAgICAgID5cbiAgICAgIDwvZGl2PlxuICAgIDwvbGk+XG4gIDwvdWw+XG48L25nLXRlbXBsYXRlPlxuIl19
519
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY2hhcnQvY29tbW9uL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY2hhcnQvY29tbW9uL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR0wsV0FBVyxFQUVYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQXFCLE1BQU0sT0FBTyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBTyxFQUFFLGdCQUFnQixFQUFhLE1BQU0sMEJBQTBCLENBQUM7QUFFdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixPQUFPLEVBQ1AsbUJBQW1CLEdBQ3BCLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7Ozs7O0lDcEJuQiw0QkFXYzs7Ozs7Ozs7O0lBZmhCLHlCQUdDO0lBQ0MsMEZBV0M7SUFDSCxpQkFBUTs7OztJQVJhLGNBQXlCO0lBQXpCLDZGQUF5Qjs7O0lBZ0MxQyxBQURGLDhCQUE2QixjQUNSO0lBQ2pCLDRCQUdnQjtJQUNsQixpQkFBTTtJQUNOLCtCQUFxQjtJQUNuQiw0QkFHZ0I7O0lBRXBCLEFBREUsaUJBQU0sRUFDRjtJQUNOLDBCQUVPOzs7Ozs7SUFiRCxlQUEwRDtJQUMx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WUFFRyxRQUFRO2tCQUFoQixLQUFLO1lBRUcsV0FBVztrQkFBbkIsS0FBSztZQUVHLGdCQUFnQjtrQkFBeEIsS0FBSztZQUVHLFdBQVc7a0JBQW5CLEtBQUs7WUFFZ0IsYUFBYTtrQkFBbEMsU0FBUzttQkFBQyxTQUFTOztrRkEzQlQscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRvb2x0aXAgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBUcmFja0J5RnVuY3Rpb24sXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY2FsZUJhbmQgfSBmcm9tICdkMyc7XG5pbXBvcnQgZGF5anMsIHsgQ29uZmlnVHlwZSB9IGZyb20gJ2RheWpzJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgREFURV9USU1FX0ZPUk1BVCwgU3RyaW5nTWFwIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IENoYXJ0RGF0YSwgQ2hhcnREYXRhSXRlbSB9IGZyb20gJy4uLy4uLy4uL3ZpZXctY2hhcnQvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBDb250ZXh0Q2hhcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2hhcnQuc2VydmljZSc7XG5pbXBvcnQge1xuICBmaW5kQ2xvc2VzdFBvaW50SW5kZXgsXG4gIGdldFhQb3MsXG4gIHRvb2x0aXBTdWZmaXhGb3JtYXQsXG59IGZyb20gJy4uLy4uL3V0aWxzJztcblxudHlwZSBYVmFsdWUgPSBzdHJpbmcgfCBudW1iZXIgfCBEYXRlO1xuZXhwb3J0IGludGVyZmFjZSBDb250ZXh0SXRlbSB7XG4gIG5hbWU6IHN0cmluZztcbiAgY29sb3I6IHN0cmluZztcbiAgeDogWFZhbHVlO1xuICB5OiBudW1iZXI7XG4gIHVuaXQ/OiBzdHJpbmc7XG4gIGFjdGl2ZT86IGJvb2xlYW47XG59XG5pbnRlcmZhY2UgQ3VycmVudFBvc2l0aW9uSXRlbSB7XG4gIHgxOiBudW1iZXI7XG4gIHgyOiBudW1iZXI7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGdyb3VwTmFtZTogc3RyaW5nO1xuICBpbmRleDogbnVtYmVyO1xufVxuXG5pbnRlcmZhY2UgVG9vbHRpcENvbnRleHQge1xuICB0aXRsZTogWFZhbHVlO1xuICBzb3VyY2U6IENoYXJ0RGF0YVtdO1xuICB2YWx1ZXM6IENvbnRleHRJdGVtW107XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVEYXRlRm9ybWF0KGRhdGU6IENvbmZpZ1R5cGUsIGZvcm1hdCA9IERBVEVfVElNRV9GT1JNQVQpIHtcbiAgcmV0dXJuIFN0cmluZyhkYXlqcyhkYXRlKS5pc1ZhbGlkKCkgPyBkYXlqcyhkYXRlKS5mb3JtYXQoZm9ybWF0KSA6IGRhdGUpO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdnW2FjbFRvb2x0aXBdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydFRvb2x0aXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGRhdGVGb3JtYXQgPSBEQVRFX1RJTUVfRk9STUFUO1xuXG4gIEBJbnB1dCgpIHZhbHVlUHJlZml4OiBzdHJpbmc7XG5cbiAgQElucHV0KCkgdmFsdWVTdWZmaXg6IHN0cmluZztcblxuICBASW5wdXQoKSBjb2x1bW5MYXlvdXQgPSBmYWxzZTtcblxuICBASW5wdXQoKSB0b29sdGlwVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIHBvaW50VGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIHBvaW50TmFtZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBwb2ludFRlbXBsYXRlQ29udGV4dDogdW5rbm93bjtcblxuICBASW5wdXQoKSB0aXRsZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBhdXRvU29ydCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHRyYW5zbGF0aW9uID0gdHJ1ZTtcblxuICBASW5wdXQoKSB0aXRsZVRyYW5zbGF0aW9uOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHBvaW50Rm9ybWF0OiAoZDogQ29udGV4dEl0ZW0pID0+IHN0cmluZyB8IG51bWJlciA9IGQgPT4gZC55O1xuXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXAnKSBhdWlUb29sdGlwUmVmOiBCYXNlVG9vbHRpcDtcblxuICB2aWV3OiB7XG4gICAgd2lkdGg6IG51bWJlcjtcbiAgICBoZWlnaHQ6IG51bWJlcjtcbiAgfTtcblxuICBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGFuY2hvclBvcyA9IDA7XG4gIGFuY2hvck9wYWNpdHkgPSAwO1xuICBhbmNob3JIZWlnaHQgPSAwO1xuICBhbmNob3JZID0gMDtcbiAgbGFzdEFuY2hvclBvczogbnVtYmVyO1xuICB0b29sdGlwQ29udGV4dDogVG9vbHRpcENvbnRleHQ7XG5cbiAgaGFja2VkID0gZmFsc2U7XG5cbiAgaGFuZGxlRGF0ZUZvcm1hdCA9IGhhbmRsZURhdGVGb3JtYXQ7XG5cbiAgdG9vbHRpcFN1ZmZpeEZvcm1hdCA9IHRvb2x0aXBTdWZmaXhGb3JtYXQ7XG5cbiAgYWN0aXZlTGVnZW5kOiBzdHJpbmc7XG5cbiAgZ2V0IHR5cGVTdGFuZGFyZCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0U2VydmljZS5iYXJPcHRpb25zLnR5cGUgPT09ICdzdGFuZGFyZCc7XG4gIH1cblxuICBnZXQgaXNCYW5kKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHRTZXJ2aWNlLmJhck9wdGlvbnMuaXNCYW5kO1xuICB9XG5cbiAgZ2V0IGFuY2hvclZpc2liaWxpdHkoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dFNlcnZpY2UuZGlzYWJsZWRMZWdlbmQuc2l6ZSA9PT1cbiAgICAgICh0aGlzLnR5cGVTdGFuZGFyZFxuICAgICAgICA/IHRoaXMuY29udGV4dFNlcnZpY2UuaW5uZXJEb21haW4ubGVuZ3RoXG4gICAgICAgIDogdGhpcy5jb250ZXh0U2VydmljZS5jaGFydERhdGE/Lmxlbmd0aClcbiAgICAgID8gJ2hpZGRlbidcbiAgICAgIDogJyc7XG4gIH1cblxuICBnZXQgZ3JvdXBQb3NpdGlvbigpIHtcbiAgICAvLyDorqHnrpcgZ3JvdXAg5byA5aeL57uT5p2f5L2N572uXG4gICAgcmV0dXJuIHRoaXMuY29udGV4dFNlcnZpY2UueFNlcmllc1ZhbHVlLm1hcCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IHggPSA8U2NhbGVCYW5kPHN0cmluZz4+dGhpcy5jb250ZXh0U2VydmljZS54O1xuICAgICAgY29uc3QgeDEgPSB4KGl0ZW0gYXMgc3RyaW5nKTtcbiAgICAgIHJldHVybiB7IHgxLCB4MjogeDEgKyB4LmJhbmR3aWR0aCgpLCBpbmRleCwgZ3JvdXBOYW1lOiBpdGVtIGFzIHN0cmluZyB9O1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGNhbGN1bGF0aW9uSXRlbVBvc2l0aW9uKCkge1xuICAgIC8vIOagueaNriBncm91cCDorqHnrpcgaXRlbSDlvIDlp4vnu5PmnZ/kvY3nva5cbiAgICByZXR1cm4gdGhpcy5ncm91cFBvc2l0aW9uLnJlZHVjZShcbiAgICAgIChhY2MsIHBvc2l0aW9uLCBpbmRleCkgPT4gW1xuICAgICAgICAuLi5hY2MsXG4gICAgICAgIC4uLnRoaXMuY29udGV4dFNlcnZpY2UuaW5uZXJEb21haW4ubWFwKChpbm5lciwgaSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGJhcklubmVyU2NhbGUgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmJhcklubmVyU2NhbGUoKTtcbiAgICAgICAgICBjb25zdCB4MSA9IGJhcklubmVyU2NhbGUoaW5uZXIpO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB4MTogeDEgKyBwb3NpdGlvbi54MSxcbiAgICAgICAgICAgIHgyOiB4MSArIHBvc2l0aW9uLngxICsgYmFySW5uZXJTY2FsZS5iYW5kd2lkdGgoKSxcbiAgICAgICAgICAgIG5hbWU6IGlubmVyLFxuICAgICAgICAgICAgZ3JvdXBOYW1lOiB0aGlzLmNvbnRleHRTZXJ2aWNlLnhTZXJpZXNWYWx1ZVtpbmRleF0sXG4gICAgICAgICAgICBpbmRleDogaSxcbiAgICAgICAgICB9O1xuICAgICAgICB9KSxcbiAgICAgIF0sXG4gICAgICBbXSxcbiAgICApO1xuICB9XG5cbiAgY2FsY3VsYXRlWSA9IChfOiBudW1iZXIpID0+IDA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0Q2hhcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dFNlcnZpY2UudXBkYXRlJCRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5hbmNob3JIZWlnaHQgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmNoYXJ0Vmlldy5oZWlnaHQ7XG4gICAgICAgIHRoaXMudmlldyA9IHRoaXMuY29udGV4dFNlcnZpY2UuY2hhcnRWaWV3O1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLmxlZ2VuZEFjdGl2YXRlJCRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCkpXG4gICAgICAuc3Vic2NyaWJlKGxlZ2VuZCA9PiB7XG4gICAgICAgIHRoaXMuYWN0aXZlTGVnZW5kID0gbGVnZW5kO1xuICAgICAgICBpZiAodGhpcy50b29sdGlwQ29udGV4dD8udmFsdWVzKSB7XG4gICAgICAgICAgdGhpcy50b29sdGlwQ29udGV4dCA9IHtcbiAgICAgICAgICAgIC4uLnRoaXMudG9vbHRpcENvbnRleHQsXG4gICAgICAgICAgICB2YWx1ZXM6IHRoaXMudG9vbHRpcENvbnRleHQudmFsdWVzLm1hcChpdGVtID0+ICh7XG4gICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgIGFjdGl2ZTogaXRlbS5uYW1lID09PSBsZWdlbmQsXG4gICAgICAgICAgICB9KSksXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG1vdXNlTW92ZShlOiBNb3VzZUV2ZW50LCByZWN0RG9tPzogSFRNTEVsZW1lbnQpIHtcbiAgICBjb25zdCB4UG9zID0gZ2V0WFBvcyhlLCB0aGlzLmNvbnRleHRTZXJ2aWNlLCByZWN0RG9tKTtcbiAgICBjb25zdCBjbG9zZXN0SW5kZXggPSBmaW5kQ2xvc2VzdFBvaW50SW5kZXgoeFBvcywgdGhpcy5jb250ZXh0U2VydmljZSk7XG4gICAgY29uc3QgY2xvc2VzdFBvaW50ID0gdGhpcy5jb250ZXh0U2VydmljZS54U2VyaWVzVmFsdWVbY2xvc2VzdEluZGV4XTtcbiAgICBpZiAodGhpcy5jb250ZXh0U2VydmljZS5iYXJPcHRpb25zLmlzQmFuZCkge1xuICAgICAgdGhpcy5iYXJNb3VzZU1vdmUoZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuYW5jaG9yUG9zID0geFBvcztcbiAgICBpZiAodGhpcy5hbmNob3JQb3MgIT09IHRoaXMubGFzdEFuY2hvclBvcyAmJiBjbG9zZXN0UG9pbnQpIHtcbiAgICAgIHRoaXMudG9vbHRpcENvbnRleHQgPSB0aGlzLmdldFRvb2x0aXBDb250ZXh0KGNsb3Nlc3RJbmRleCwgY2xvc2VzdFBvaW50KTtcbiAgICAgIC8vIOWAvOS4uiBudWxsIOS4jeWxleekuiB0b29sdGlwXG4gICAgICBjb25zdCBub0RhdGEgPSAhdGhpcy50b29sdGlwQ29udGV4dD8udmFsdWVzPy5zb21lKGQgPT4gZC55ICE9PSBudWxsKTtcbiAgICAgIGlmIChub0RhdGEpIHtcbiAgICAgICAgdGhpcy5hbmNob3JPcGFjaXR5ID0gMDtcbiAgICAgICAgdGhpcy5sYXN0QW5jaG9yUG9zID0gLTE7XG4gICAgICAgIHRoaXMuaGlkZVRvb2x0aXAoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubGFzdEFuY2hvclBvcyA9IHRoaXMuYW5jaG9yUG9zO1xuICAgICAgICB0aGlzLmFuY2hvck9wYWNpdHkgPSAwLjc7XG4gICAgICAgIHRoaXMuc2hvd1Rvb2x0aXAoKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgbW91c2VMZWF2ZSgpIHtcbiAgICB0aGlzLmFuY2hvck9wYWNpdHkgPSAwO1xuICAgIHRoaXMubGFzdEFuY2hvclBvcyA9IC0xO1xuICAgIHRoaXMuaGlkZVRvb2x0aXAoKTtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBtZXJnZVBvaW50Q29udGV4dCA9IChjb250ZXh0OiBUb29sdGlwQ29udGV4dCkgPT4gKHtcbiAgICBjb250ZXh0OiB0aGlzLmxpbWl0TWF4Q29udGV4dChjb250ZXh0LnZhbHVlcyksXG4gICAgc291cmNlOiBjb250ZXh0LnNvdXJjZSxcbiAgICAuLi4odGhpcy5wb2ludFRlbXBsYXRlQ29udGV4dCBhcyBTdHJpbmdNYXApLFxuICB9KTtcblxuICBpdGVtVHJhY2tCeTogVHJhY2tCeUZ1bmN0aW9uPENvbnRleHRJdGVtPiA9IChfOiBudW1iZXIsIHZhbHVlOiBDb250ZXh0SXRlbSkgPT5cbiAgICB2YWx1ZS5uYW1lO1xuXG4gIC8vIGJhciBtb3VzZU1vdmUg5aSE55CGXG4gIHByaXZhdGUgYmFyTW91c2VNb3ZlKGU6IE1vdXNlRXZlbnQpIHtcbiAgICBjb25zdCB4UG9zID0gZ2V0WFBvcyhlLCB0aGlzLmNvbnRleHRTZXJ2aWNlKTtcbiAgICBjb25zdCBjdXJyUG9zaXRpb24gPSB0aGlzLmdldEN1cnJlbnRNb3VzZU1vdmVQb3NpdGlvblZhbHVlKFxuICAgICAgdGhpcy50eXBlU3RhbmRhcmQgPyB0aGlzLmNhbGN1bGF0aW9uSXRlbVBvc2l0aW9uIDogdGhpcy5ncm91cFBvc2l0aW9uLFxuICAgICAgeFBvcyxcbiAgICApO1xuICAgIGlmIChjdXJyUG9zaXRpb24pIHtcbiAgICAgIHRoaXMuZ2V0QmFyWEFuY2hvclBvcyhjdXJyUG9zaXRpb24pO1xuICAgICAgdGhpcy5nZXRCYXJIaWdodChcbiAgICAgICAgdGhpcy5jb250ZXh0U2VydmljZS54U2VyaWVzVmFsdWVbY3VyclBvc2l0aW9uLmluZGV4XSBhcyBzdHJpbmcsXG4gICAgICAgIGN1cnJQb3NpdGlvbixcbiAgICAgICk7XG4gICAgICB0aGlzLmdldEJhcllBbmNob3JQb3MoY3VyclBvc2l0aW9uKTtcbiAgICAgIHRoaXMudG9vbHRpcENvbnRleHQgPSB0aGlzLmdldEJhclRvb2x0aXBDb250ZXh0KGN1cnJQb3NpdGlvbik7XG4gICAgICB0aGlzLnNob3dUb29sdGlwKCk7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRCYXJIaWdodChncm91cE5hbWU6IHN0cmluZywgdmFsdWU/OiBDdXJyZW50UG9zaXRpb25JdGVtKSB7XG4gICAgdGhpcy5hbmNob3JIZWlnaHQgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmhvcml6b250YWxcbiAgICAgID8gdGhpcy50eXBlU3RhbmRhcmRcbiAgICAgICAgPyB0aGlzLmNvbnRleHRTZXJ2aWNlLmJhcklubmVyU2NhbGUoKS5iYW5kd2lkdGgoKVxuICAgICAgICA6ICg8U2NhbGVCYW5kPHN0cmluZz4+dGhpcy5jb250ZXh0U2VydmljZS54KS5iYW5kd2lkdGgoKVxuICAgICAgOiB0aGlzLmdldFZlcnRpY2FsQmFySGVpZ2h0KGdyb3VwTmFtZSwgdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIOiuoeeulyBiYXIg5Z6C55u0IOexu+Wei+S4iyDpq5jluqZcbiAgICog5qCH5YeG77yaXGJcYuebtOaOpeagueaNriB5KDApIC0geSh2YWx1ZSkg6K6h566XIGJhciBpdGVtIOeahOmrmOW6plxuICAgKiDloIblj6DvvJrorqHnrpcgZ3JvdXAg5LiL5omA5pyJaXRlbSDnmoTpq5jluqbnm7jliqAg5b6X5Yiw5aCG5Y+g55qEIGJhciDpq5jluqZcbiAgICovXG4gIHByaXZhdGUgZ2V0VmVydGljYWxCYXJIZWlnaHQoZ3JvdXBOYW1lOiBzdHJpbmcsIHZhbHVlPzogQ3VycmVudFBvc2l0aW9uSXRlbSkge1xuICAgIHJldHVybiB0aGlzLnR5cGVTdGFuZGFyZFxuICAgICAgPyB0aGlzLmNvbnRleHRTZXJ2aWNlLnkoMCkgLVxuICAgICAgICAgIHRoaXMuY29udGV4dFNlcnZpY2UueSh0aGlzLmdldEJhcllWYWx1ZSh2YWx1ZS5ncm91cE5hbWUsIHZhbHVlLm5hbWUpKVxuICAgICAgOiB0aGlzLmNvbnRleHRTZXJ2aWNlLmNoYXJ0RGF0YS5yZWR1Y2UoKHByZXYsIGN1cnIpID0+IHtcbiAgICAgICAgICBpZiAoY3Vyci5uYW1lID09PSBncm91cE5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIGN1cnIudmFsdWVzLnJlZHVjZSgoYWNjLCB2YWwpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuY29udGV4dFNlcnZpY2UuZGlzYWJsZWRMZWdlbmQuaGFzKHZhbC54IGFzIHN0cmluZykpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGV4dFNlcnZpY2UueSgwKSAtXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGV4dFNlcnZpY2UueSh2YWwueSkgK1xuICAgICAgICAgICAgICAgICAgICBhY2NcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgICAgICAgIH0sIDApICsgcHJldlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHByZXY7XG4gICAgICAgIH0sIDApO1xuICB9XG5cbiAgLy8g6I635Y+W5b2T5YmN6byg5qCH56e75YWlIGJhciB5IOWAvFxuICBwcml2YXRlIGdldEJhcllWYWx1ZShncm91cE5hbWU6IHN0cmluZywgbmFtZTogc3RyaW5nKSB7XG4gICAgbGV0IHJlc3VsdCA9IDA7XG4gICAgZm9yIChjb25zdCBbLCBpdGVtXSBvZiB0aGlzLmNvbnRleHRTZXJ2aWNlLmNoYXJ0RGF0YS5lbnRyaWVzKCkpIHtcbiAgICAgIGlmIChpdGVtLm5hbWUgPT09IGdyb3VwTmFtZSkge1xuICAgICAgICBmb3IgKGNvbnN0IFssIHZhbF0gb2YgaXRlbS52YWx1ZXMuZW50cmllcygpKSB7XG4gICAgICAgICAgaWYgKHZhbC54ID09PSBuYW1lKSB7XG4gICAgICAgICAgICByZXN1bHQgPSB2YWwueTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8vIGxpbmUgYXJlYSBjaGFydCDojrflj5YgdG9vbHRpcCDlsZXnpLrmlbDmja5cbiAgcHJpdmF0ZSBnZXRUb29sdGlwQ29udGV4dChpbmRleDogbnVtYmVyLCB4VmFsdWU6IG51bWJlciB8IHN0cmluZyB8IERhdGUpIHtcbiAgICBjb25zdCB2YWx1ZXM6IENvbnRleHRJdGVtW10gPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmNoYXJ0RGF0YS5yZWR1Y2UoXG4gICAgICAoYWNjLCBncm91cCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuY29udGV4dFNlcnZpY2UuZGlzYWJsZWRMZWdlbmQuaGFzKGdyb3VwLm5hbWUpKSB7XG4gICAgICAgICAgY29uc3QgaXRlbSA9IGdyb3VwLnZhbHVlc1tpbmRleF07XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIC4uLmFjYyxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgICAgbmFtZTogZ3JvdXAubmFtZSxcbiAgICAgICAgICAgICAgY29sb3I6IGdyb3VwLmNvbG9yLFxuICAgICAgICAgICAgICB1bml0OiBncm91cC51bml0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LFxuICAgICAgW10sXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6IHhWYWx1ZSxcbiAgICAgIHNvdXJjZTogdGhpcy5jb250ZXh0U2VydmljZS5jaGFydERhdGEsXG4gICAgICB2YWx1ZXM6IHRoaXMuYXV0b1NvcnQgPyB2YWx1ZXMuc29ydCgoYSwgYikgPT4gYi55IC0gYS55KSA6IHZhbHVlcyxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIOiOt+WPliBiYXIgdG9vbHRpcCDlsZXnpLrmlbDmja5cbiAgICovXG4gIHByaXZhdGUgZ2V0QmFyVG9vbHRpcENvbnRleHQodmFsdWU6IEN1cnJlbnRQb3NpdGlvbkl0ZW0pIHtcbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmNoYXJ0RGF0YS5yZWR1Y2UoKGFjYywgZ3JvdXApID0+IHtcbiAgICAgIGlmIChncm91cC5uYW1lID09PSB2YWx1ZS5ncm91cE5hbWUpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgLi4uZ3JvdXAudmFsdWVzLnJlZHVjZShcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgcHJldixcbiAgICAgICAgICAgICAgY3VycjogQ2hhcnREYXRhSXRlbTx7IHg6IHN0cmluZzsgeTogbnVtYmVyOyBjb2xvcj86IHN0cmluZyB9PixcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICApID0+IHtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICF0aGlzLmNvbnRleHRTZXJ2aWNlLmRpc2FibGVkTGVnZW5kLmhhcyhjdXJyLnggYXMgc3RyaW5nKSAmJlxuICAgICAgICAgICAgICAgICh2YWx1ZS5uYW1lID8gY3Vyci54ID09PSB2YWx1ZS5uYW1lIDogdHJ1ZSlcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIC4uLmN1cnIsXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IGN1cnIueCxcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6XG4gICAgICAgICAgICAgICAgICAgICAgY3Vyci5jb2xvciB8fFxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGV4dFNlcnZpY2UuZ2V0Q2hhcnREZWZhdWx0Q29sb3IoaW5kZXgpLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHJldHVybiBwcmV2O1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFtdLFxuICAgICAgICAgICksXG4gICAgICAgIF07XG4gICAgICB9XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIFtdKTtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6IHZhbHVlLmdyb3VwTmFtZSxcbiAgICAgIHNvdXJjZTogdGhpcy5jb250ZXh0U2VydmljZS5jaGFydERhdGEsXG4gICAgICB2YWx1ZXMsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiDmmoLml7blhYgg6YCa6L+HIGhhY2sg5pa55byPIOS/ruaUuSBwb2ludGVyIGV2ZW50IOihjOS4ulxuICAgKiBUT0RPOiDlkI7nu63lhoXpg6jlrp7njrAgdG9vbHRpcCDkuI3kvb/nlKggYXVpIHRvb2x0aXBcbiAgICovXG4gIGhhY2tPdmVybGF5UGFuZVN0eWxlKHN0eWxlOiBzdHJpbmcpIHtcbiAgICBjb25zdCB0b29sdGlwUGFuZURvbSA9IGdldChcbiAgICAgIHRoaXMuYXVpVG9vbHRpcFJlZi5vdmVybGF5UmVmLFxuICAgICAgJ19wYW5lJyxcbiAgICApIGFzIEhUTUxFbGVtZW50O1xuICAgIGlmICh0b29sdGlwUGFuZURvbSkge1xuICAgICAgdG9vbHRpcFBhbmVEb20uc3R5bGUucG9pbnRlckV2ZW50cyA9IHN0eWxlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiDojrflj5bpvKDmoIfnp7vliqjnmoTkvY3nva7miYDlnKjnmoQgYmFyIHZhbHVlXG4gICAqIEBwYXJhbSBkYXRhIOW9k+WJjVxiIGJhciDlvIDlp4vnu5PmnZ8geCDkvY3nva5cbiAgICogQHBhcmFtIHhQb3Mg5b2T5YmN6byg5qCH5L2N572uXG4gICAqL1xuICBwcml2YXRlIGdldEN1cnJlbnRNb3VzZU1vdmVQb3NpdGlvblZhbHVlKFxuICAgIGRhdGE6IEN1cnJlbnRQb3NpdGlvbkl0ZW1bXSxcbiAgICB4UG9zOiBudW1iZXIsXG4gICkge1xuICAgIGxldCByZXN1bHQ6IEN1cnJlbnRQb3NpdGlvbkl0ZW07XG4gICAgZm9yIChjb25zdCBbLCBwb3NpdGlvbl0gb2YgZGF0YS5lbnRyaWVzKCkpIHtcbiAgICAgIGlmICh4UG9zID49IHBvc2l0aW9uLngxICYmIHhQb3MgPD0gcG9zaXRpb24ueDIpIHtcbiAgICAgICAgcmVzdWx0ID0gcG9zaXRpb247XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIOiuoeeul+mUmueCuSB4IOS9jee9rlxuICAgKiDlvZPliY0gYmFyIOaVsOaNriB4IOS9jee9riArIOW9k+WJjSBiYXIg5a695bqm55qE5LiA6IisXG4gICAqIEBwYXJhbSBjdXJyUG9zaXRpb24g5b2T5YmN6byg5qCH56e75YWl55qEYmFyIOaVsOaNrlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRCYXJYQW5jaG9yUG9zKGN1cnJQb3NpdGlvbjogQ3VycmVudFBvc2l0aW9uSXRlbSkge1xuICAgIGNvbnN0IGJhbmR3aWR0aCA9IHRoaXMudHlwZVN0YW5kYXJkXG4gICAgICA/IHRoaXMuY29udGV4dFNlcnZpY2UuYmFySW5uZXJTY2FsZSgpLmJhbmR3aWR0aCgpIC8gMlxuICAgICAgOiAoPFNjYWxlQmFuZDxzdHJpbmc+PnRoaXMuY29udGV4dFNlcnZpY2UueCkuYmFuZHdpZHRoKCkgLyAyO1xuICAgIHRoaXMuYW5jaG9yUG9zID0gdGhpcy5jb250ZXh0U2VydmljZS5ob3Jpem9udGFsXG4gICAgICA/IE1hdGguYWJzKFxuICAgICAgICAgIHRoaXMuZ2V0VmVydGljYWxCYXJIZWlnaHQoXG4gICAgICAgICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnhTZXJpZXNWYWx1ZVtjdXJyUG9zaXRpb24uaW5kZXhdIGFzIHN0cmluZyxcbiAgICAgICAgICAgIGN1cnJQb3NpdGlvbixcbiAgICAgICAgICApIC8gMixcbiAgICAgICAgKVxuICAgICAgOiBjdXJyUG9zaXRpb24ueDEgKyBiYW5kd2lkdGg7XG4gIH1cblxuICAvKipcbiAgICog6K6h566X6ZSa54K5IHkg5L2N572uXG4gICAqIOawtOW5s++8muW9k+WJjSBiYXIg5pWw5o2uIHgg5L2N572uXG4gICAqIOWeguebtO+8muaAu+mrmOW6piAtIGJhciDpq5jluqYg77yI6ZyA6KaB5YWI6K6h566X5Ye6IGJhcumrmOW6pu+8iVxuICAgKi9cbiAgcHJpdmF0ZSBnZXRCYXJZQW5jaG9yUG9zKGN1cnJQb3NpdGlvbjogQ3VycmVudFBvc2l0aW9uSXRlbSkge1xuICAgIHRoaXMuYW5jaG9yWSA9IHRoaXMuY29udGV4dFNlcnZpY2UuaG9yaXpvbnRhbFxuICAgICAgPyBjdXJyUG9zaXRpb24ueDFcbiAgICAgIDogdGhpcy52aWV3LmhlaWdodCAtIHRoaXMuYW5jaG9ySGVpZ2h0O1xuICB9XG5cbiAgcHJpdmF0ZSBzaG93VG9vbHRpcCgpIHtcbiAgICBpZiAoIXRoaXMuYXVpVG9vbHRpcFJlZj8uaXNDcmVhdGVkKSB7XG4gICAgICB0aGlzLmF1aVRvb2x0aXBSZWY/LnNob3coKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmhhY2tlZCkge1xuICAgICAgdGhpcy5oYWNrT3ZlcmxheVBhbmVTdHlsZSgnbm9uZScpO1xuICAgIH1cbiAgICB0aGlzLmhhY2tlZCA9IHRydWU7XG4gIH1cblxuICBwcml2YXRlIGhpZGVUb29sdGlwKCkge1xuICAgIHRoaXMuaGFja2VkID0gZmFsc2U7XG4gICAgdGhpcy5oYWNrT3ZlcmxheVBhbmVTdHlsZSgnYXV0bycpO1xuICAgIHRoaXMuYXVpVG9vbHRpcFJlZj8uaGlkZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaW1pdE1heENvbnRleHQoY29udGV4dDogQ29udGV4dEl0ZW1bXSwgbGltaXQgPSAxNSkge1xuICAgIGNvbnN0IHZhbHVlcyA9IGNvbnRleHQuc2xpY2UoMCwgbGltaXQpO1xuICAgIGNvbnN0IGV4aXN0QWN0aXZlID0gdmFsdWVzLnNvbWUoaXRlbSA9PiBpdGVtLm5hbWUgPT09IHRoaXMuYWN0aXZlTGVnZW5kKTtcbiAgICBpZiAoIWV4aXN0QWN0aXZlICYmIHRoaXMuYWN0aXZlTGVnZW5kKSB7XG4gICAgICBjb25zdCBkYXRhID0gY29udGV4dC5maW5kKGl0ZW0gPT4gaXRlbS5uYW1lID09PSB0aGlzLmFjdGl2ZUxlZ2VuZCk7XG4gICAgICB0aGlzLmFjdGl2ZUxlZ2VuZCA9ICcnO1xuICAgICAgcmV0dXJuIGRhdGEgPyBbLi4udmFsdWVzLnNsaWNlKDAsIGxpbWl0IC0gMSksIGRhdGFdIDogdmFsdWVzO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWVzO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiIsIjxzdmc6Z1xuICBbYXR0ci5vcGFjaXR5XT1cImFuY2hvck9wYWNpdHlcIlxuICAqbmdJZj1cIiFpc0JhbmRcIlxuPlxuICA8c3ZnOmNpcmNsZVxuICAgIFthdHRyLnZpc2liaWxpdHldPVwiXG4gICAgICBjb250ZXh0U2VydmljZS5kaXNhYmxlZExlZ2VuZC5oYXMoaXRlbS5uYW1lKSA/ICdoaWRkZW4nIDogJydcbiAgICBcIlxuICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHRvb2x0aXBDb250ZXh0Py52YWx1ZXNcIlxuICAgIHI9XCIyLjVcIlxuICAgIFthdHRyLnN0cm9rZV09XCJpdGVtLmNvbG9yXCJcbiAgICBzdHJva2Utd2lkdGg9XCIxXCJcbiAgICBmaWxsPVwiI2ZmZlwiXG4gICAgW2F0dHIuY3hdPVwiYW5jaG9yUG9zXCJcbiAgICBbYXR0ci5jeV09XCJpdGVtLnkgPyAoaXRlbS55IHwgcHVyZTogY29udGV4dFNlcnZpY2UueSkgfHwgMCA6IDEwMDBcIlxuICA+PC9zdmc6Y2lyY2xlPlxuPC9zdmc6Zz5cblxuPHN2ZzpyZWN0XG4gIHN0cm9rZT1cIiM5OTlcIlxuICBbYXR0ci54XT1cImFuY2hvclBvc1wiXG4gIFthdHRyLnZpc2liaWxpdHldPVwiYW5jaG9yVmlzaWJpbGl0eVwiXG4gIFthdHRyLnldPVwiYW5jaG9yWVwiXG4gIFthdHRyLndpZHRoXT1cIjAuNVwiXG4gIFthdHRyLmhlaWdodF09XCJhbmNob3JIZWlnaHRcIlxuICAjdG9vbHRpcD1cImF1aVRvb2x0aXBcIlxuICBbYXR0ci5vcGFjaXR5XT1cImFuY2hvck9wYWNpdHlcIlxuICBbYXVpVG9vbHRpcF09XCJ0b29sdGlwVGVtcGxhdGUgfHwgZGVmYXVsdFRvb2x0aXBUZW1wbGF0ZVwiXG4gIFthdWlUb29sdGlwQ29udGV4dF09XCJ7IGNvbnRleHQ6IHRvb2x0aXBDb250ZXh0IH1cIlxuICBbYXVpVG9vbHRpcERpc2FibGVkXT1cImFuY2hvclZpc2liaWxpdHlcIlxuICBhdWlUb29sdGlwVHJpZ2dlcj1cIm1hbnVhbFwiXG4gIFthdWlUb29sdGlwUG9zaXRpb25dPVwidHlwZVN0YW5kYXJkICYmIGlzQmFuZCA/ICd0b3AnIDogJ3N0YXJ0J1wiXG4gIGF1aVRvb2x0aXBDbGFzcz1cInRvb2x0aXBDbGFzc1wiXG4vPlxuXG48bmctdGVtcGxhdGVcbiAgI2RlZmF1bHRUb29sdGlwVGVtcGxhdGVcbiAgbGV0LWNvbnRleHQ9XCJjb250ZXh0XCJcbj5cbiAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0aXRsZVRlbXBsYXRlIHx8IGRlZmF1bHRUaXRsZVRlbXBsYXRlXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgY29udGV4dDogY29udGV4dCB9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGV4dFwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJwb2ludFRlbXBsYXRlIHx8IGRlZmF1bHRQb2ludFRlbXBsYXRlXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cImNvbnRleHQgfCBwdXJlOiBtZXJnZVBvaW50Q29udGV4dFwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IHBvaW50ZXItZXZlbnRzOiBub25lOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlXCJcbiAgPjwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlXG4gICNkZWZhdWx0VGl0bGVUZW1wbGF0ZVxuICBsZXQtY29udGV4dD1cImNvbnRleHRcIlxuPlxuICB7e1xuICAgIHRpdGxlVHJhbnNsYXRpb25cbiAgICAgID8gKGNvbnRleHQ/LnRpdGxlIHwgdHJhbnNsYXRlKVxuICAgICAgOiAoY29udGV4dD8udGl0bGUgfCBwdXJlOiBoYW5kbGVEYXRlRm9ybWF0IDogZGF0ZUZvcm1hdClcbiAgfX1cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAjZGVmYXVsdFBvaW50VGVtcGxhdGVcbiAgbGV0LWNvbnRleHQ9XCJjb250ZXh0XCJcbiAgbGV0LXNvdXJjZT1cInNvdXJjZVwiXG4+XG4gIDx1bFxuICAgIGNsYXNzPVwiY29udGV4dC1saXN0XCJcbiAgICBbY2xhc3MuY29sdW1uLWxheW91dF09XCJjb2x1bW5MYXlvdXRcIlxuICA+XG4gICAgPGxpXG4gICAgICBjbGFzcz1cImNvbnRleHQtaXRlbVwiXG4gICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250ZXh0OyB0cmFja0J5OiBpdGVtVHJhY2tCeVwiXG4gICAgICBbY2xhc3MuYWN0aXZlXT1cIml0ZW0/LmFjdGl2ZVwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImxlZnRcIj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cIml0ZW0taWNvblwiXG4gICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRdPVwiaXRlbS5jb2xvclwiXG4gICAgICAgID48L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaXRlbS1uYW1lXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBvaW50TmFtZVRlbXBsYXRlOyBlbHNlIGVsc2VUZW1wbGF0ZVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJwb2ludE5hbWVUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGNvbnRleHQ6IGl0ZW0gfVwiXG4gICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNlbHNlVGVtcGxhdGU+XG4gICAgICAgICAgICB7eyB0cmFuc2xhdGlvbiA/IChpdGVtLm5hbWUgfCB0cmFuc2xhdGUpIDogaXRlbS5uYW1lIH19XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbHVtbkxheW91dFwiPjogPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJpdGVtLXByZWZpeFwiXG4gICAgICAgICAgKm5nSWY9XCJ2YWx1ZVByZWZpeFwiXG4gICAgICAgICAgPnt7IHZhbHVlUHJlZml4IH19PC9zcGFuXG4gICAgICAgID5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLXZhbHVlXCI+e3sgaXRlbSB8IHB1cmU6IHBvaW50Rm9ybWF0IH19PC9zcGFuPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwiaXRlbS1zdWZmaXhcIlxuICAgICAgICAgICpuZ0lmPVwidmFsdWVTdWZmaXhcIlxuICAgICAgICAgID57eyB2YWx1ZVN1ZmZpeCB8IHB1cmU6IHRvb2x0aXBTdWZmaXhGb3JtYXQgfX08L3NwYW5cbiAgICAgICAgPlxuICAgICAgPC9kaXY+XG4gICAgPC9saT5cbiAgPC91bD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,5 +1,9 @@
1
1
  import { ChangeDetectionStrategy, Component, Input, TemplateRef, } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "../../effect-directive/e2e-attribute-binding.directive";
5
+ import * as i3 from "@alauda/ui";
6
+ import * as i4 from "../../translate/translate.pipe";
3
7
  const _c0 = () => [];
4
8
  const _c1 = a0 => ({ data: a0 });
5
9
  function DropdownLegendComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
@@ -52,7 +56,7 @@ export class DropdownLegendComponent {
52
56
  } if (rf & 2) {
53
57
  const elseTemplate_r4 = i0.ɵɵreference(2);
54
58
  i0.ɵɵproperty("ngIf", !ctx.isCard)("ngIfElse", elseTemplate_r4);
55
- } }, styles: [".btn[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-4));cursor:pointer} .legend-label{padding:0;margin:0;list-style:none;display:flex;align-items:center;cursor:pointer;justify-content:flex-start} .legend-label:not(:last-child){margin-bottom:8px} .label-name{color:rgb(var(--aui-color-secondary-text))} .label-symbol{margin-right:4px}[_nghost-%COMP%] .legend-labels[_ngcontent-%COMP%]{padding:0;margin:0;list-style:none;display:flex;flex-direction:column}.legendActive[_ngcontent-%COMP%]{color:rgb(var(--aui-color-primary))}", ".legend-wrap[_ngcontent-%COMP%]{display:inline-block}.legend-wrap[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .legend-wrap[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:0;margin:0;list-style:none}.legend-wrap[_ngcontent-%COMP%] .legend-labels[_ngcontent-%COMP%]{display:flex}.legend-wrap[_ngcontent-%COMP%] .legend-label[_ngcontent-%COMP%]{display:flex;align-items:center;cursor:pointer;justify-content:center}.legend-wrap[_ngcontent-%COMP%] .legend-label[_ngcontent-%COMP%]:not(:last-child){margin-right:20px}.legend-wrap[_ngcontent-%COMP%] .forbid[_ngcontent-%COMP%]{cursor:no-drop}.legend-wrap[_ngcontent-%COMP%] .label-name[_ngcontent-%COMP%]{font-size:12px;color:rgb(var(--aui-color-secondary-text))}.legend-wrap[_ngcontent-%COMP%] .label-symbol[_ngcontent-%COMP%]{margin-right:4px}.disable[_ngcontent-%COMP%] .label-symbol[_ngcontent-%COMP%]{background:rgb(var(--aui-color-n-6))!important}.disable[_ngcontent-%COMP%] .label-name[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-6))}.hover[_ngcontent-%COMP%] .label-name[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-1))}.symbol-square[_ngcontent-%COMP%]{width:12px;height:12px;display:inline-block}.symbol-line[_ngcontent-%COMP%]{width:12px;height:2px;display:inline-block}.symbol-circle[_ngcontent-%COMP%]{width:12px;height:12px;border-radius:50%;display:inline-block}.operation[_ngcontent-%COMP%]{display:flex;justify-content:center}.select-all[_ngcontent-%COMP%] .aui-checkbox{font-size:12px;line-height:16px;margin-bottom:8px}"], changeDetection: 0 }); }
59
+ } }, dependencies: [i1.NgIf, i1.NgTemplateOutlet, i2.E2eAttributeBindingDirective, i3.ButtonComponent, i3.IconComponent, i3.TooltipDirective, i3.TooltipActiveDirective, i4.TranslatePipe], styles: [".btn[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-4));cursor:pointer} .legend-label{padding:0;margin:0;list-style:none;display:flex;align-items:center;cursor:pointer;justify-content:flex-start} .legend-label:not(:last-child){margin-bottom:8px} .label-name{color:rgb(var(--aui-color-secondary-text))} .label-symbol{margin-right:4px}[_nghost-%COMP%] .legend-labels[_ngcontent-%COMP%]{padding:0;margin:0;list-style:none;display:flex;flex-direction:column}.legendActive[_ngcontent-%COMP%]{color:rgb(var(--aui-color-primary))}", ".legend-wrap[_ngcontent-%COMP%]{display:inline-block}.legend-wrap[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .legend-wrap[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:0;margin:0;list-style:none}.legend-wrap[_ngcontent-%COMP%] .legend-labels[_ngcontent-%COMP%]{display:flex}.legend-wrap[_ngcontent-%COMP%] .legend-label[_ngcontent-%COMP%]{display:flex;align-items:center;cursor:pointer;justify-content:center}.legend-wrap[_ngcontent-%COMP%] .legend-label[_ngcontent-%COMP%]:not(:last-child){margin-right:20px}.legend-wrap[_ngcontent-%COMP%] .forbid[_ngcontent-%COMP%]{cursor:no-drop}.legend-wrap[_ngcontent-%COMP%] .label-name[_ngcontent-%COMP%]{font-size:12px;color:rgb(var(--aui-color-secondary-text))}.legend-wrap[_ngcontent-%COMP%] .label-symbol[_ngcontent-%COMP%]{margin-right:4px}.disable[_ngcontent-%COMP%] .label-symbol[_ngcontent-%COMP%]{background:rgb(var(--aui-color-n-6))!important}.disable[_ngcontent-%COMP%] .label-name[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-6))}.hover[_ngcontent-%COMP%] .label-name[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-1))}.symbol-square[_ngcontent-%COMP%]{width:12px;height:12px;display:inline-block}.symbol-line[_ngcontent-%COMP%]{width:12px;height:2px;display:inline-block}.symbol-circle[_ngcontent-%COMP%]{width:12px;height:12px;border-radius:50%;display:inline-block}.operation[_ngcontent-%COMP%]{display:flex;justify-content:center}.select-all[_ngcontent-%COMP%] .aui-checkbox{font-size:12px;line-height:16px;margin-bottom:8px}"], changeDetection: 0 }); }
56
60
  }
57
61
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DropdownLegendComponent, [{
58
62
  type: Component,
@@ -107,4 +111,4 @@ export class DropdownLegendComponent {
107
111
  type: Input
108
112
  }] }); })();
109
113
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(DropdownLegendComponent, { className: "DropdownLegendComponent" }); })();
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbGVnZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2N1c3RvbS10ZW1wbGF0ZS9kcm9wZG93bi1sZWdlbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQzs7Ozs7SUFPbkIsNkJBQWlEO0lBQy9DLDhCQVNZOzs7OztJQU5WLGNBQW1DO0lBQ25DLEFBREEsb0RBQW1DLDZFQUNEOzs7SUFRcEMsaUNBV0M7SUFDQyw4QkFBOEM7SUFDaEQsaUJBQVM7Ozs7SUFQUCxBQURBLEFBSEEsNkJBQWUsdUNBR29CLDZFQUNEOzs7SUFXcEMsNkJBQWtFO0lBQ2hFLDhCQUE2QjtJQUMzQiwyQkFBaUU7SUFDbkUsaUJBQU07Ozs7SUFEVSxlQUFtQztJQUFuQyx3REFBbUM7OztJQUluRCxZQUNGOzs7SUFERSxnRUFDRjs7O0lBRkEsQUFMQSx3R0FBa0UsMEhBS3JDOzs7O0lBTGdCLEFBQTlCLDJEQUE4QiwrQkFBbUI7O0FBZ0J0RSxNQUFNLE9BQU8sdUJBQXVCO3dGQUF2Qix1QkFBdUI7b0VBQXZCLHVCQUF1QjtZQWpCaEMsQUFqQkEsQUFaQSwwRkFBaUQsNEdBWXRCLDRHQWlCUTs7O1lBN0JMLEFBQWYsa0NBQWUsNkJBQWlCOzs7aUZBOEN0Qyx1QkFBdUI7Y0FqRG5DLFNBQVM7MkJBQ0UscUJBQXFCLFlBQ3JCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NULG1CQUtnQix1QkFBdUIsQ0FBQyxNQUFNO2dCQUd0QyxJQUFJO2tCQUFaLEtBQUs7WUFDRyxjQUFjO2tCQUF0QixLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLOztrRkFKSyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi4vY29tbW9uL2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLWRyb3Bkb3duLWxlZ2VuZCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0NhcmQ7IGVsc2UgZWxzZVRlbXBsYXRlXCI+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgY2xhc3M9XCJidG5cIlxuICAgICAgICBpY29uPVwicHJvZDpjaGFydF9sZWdlbmRcIlxuICAgICAgICBbYXVpVG9vbHRpcF09XCJkcm9wZG93bkl0ZW1UZW1wbGF0ZVwiXG4gICAgICAgIFthdWlUb29sdGlwQ29udGV4dF09XCJ7IGRhdGE6IFtdIH1cIlxuICAgICAgICBhdWlUb29sdGlwVHlwZT1cImluZm9cIlxuICAgICAgICBhdWlUb29sdGlwUG9zaXRpb249XCJib3R0b20gZW5kXCJcbiAgICAgICAgYXVpVG9vbHRpcFRyaWdnZXI9XCJjbGlja1wiXG4gICAgICAgIGF1aVRvb2x0aXBBY3RpdmU9XCJsZWdlbmRBY3RpdmVcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNlbHNlVGVtcGxhdGU+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGF1aS1idXR0b25cbiAgICAgICAgW3NxdWFyZV09XCJ0cnVlXCJcbiAgICAgICAgY2xhc3M9XCJidG5cIlxuICAgICAgICBpY29uPVwicHJvZDpjaGFydF9sZWdlbmRcIlxuICAgICAgICBbYXVpVG9vbHRpcF09XCJkcm9wZG93bkl0ZW1UZW1wbGF0ZVwiXG4gICAgICAgIFthdWlUb29sdGlwQ29udGV4dF09XCJ7IGRhdGE6IFtdIH1cIlxuICAgICAgICBhdWlUb29sdGlwVHlwZT1cImluZm9cIlxuICAgICAgICBhdWlUb29sdGlwUG9zaXRpb249XCJib3R0b20gZW5kXCJcbiAgICAgICAgYXVpVG9vbHRpcFRyaWdnZXI9XCJjbGlja1wiXG4gICAgICAgIGF1aVRvb2x0aXBBY3RpdmU9XCJsZWdlbmRBY3RpdmVcIlxuICAgICAgPlxuICAgICAgICA8YXVpLWljb24gaWNvbj1cInByb2Q6Y2hhcnRfbGVnZW5kXCI+PC9hdWktaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgI2Ryb3Bkb3duSXRlbVRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGEubGVuZ3RoICYmICFub0RhdGE7IGVsc2Ugbm9EYXRhVGVtcGxhdGVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxlZ2VuZC12ZXJ0aWNhbFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwibGVnZW5kVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm9EYXRhVGVtcGxhdGU+XG4gICAgICAgIHt7ICdub19kYXRhJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi9kcm9wZG93bi1sZWdlbmQuc2NzcycsXG4gICAgJy4uL2NvbW1vbi9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudC5zY3NzJyxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duTGVnZW5kQ29tcG9uZW50IHtcbiAgQElucHV0KCkgZGF0YTogTGVnZW5kSXRlbVtdO1xuICBASW5wdXQoKSBsZWdlbmRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG4gIEBJbnB1dCgpIG5vRGF0YTogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNDYXJkOiBib29sZWFuO1xufVxuIl19
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbGVnZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NoYXJ0L2N1c3RvbS10ZW1wbGF0ZS9kcm9wZG93bi1sZWdlbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7O0lBT25CLDZCQUFpRDtJQUMvQyw4QkFTWTs7Ozs7SUFOVixjQUFtQztJQUNuQyxBQURBLG9EQUFtQyw2RUFDRDs7O0lBUXBDLGlDQVdDO0lBQ0MsOEJBQThDO0lBQ2hELGlCQUFTOzs7O0lBUFAsQUFEQSxBQUhBLDZCQUFlLHVDQUdvQiw2RUFDRDs7O0lBV3BDLDZCQUFrRTtJQUNoRSw4QkFBNkI7SUFDM0IsMkJBQWlFO0lBQ25FLGlCQUFNOzs7O0lBRFUsZUFBbUM7SUFBbkMsd0RBQW1DOzs7SUFJbkQsWUFDRjs7O0lBREUsZ0VBQ0Y7OztJQUZBLEFBTEEsd0dBQWtFLDBIQUtyQzs7OztJQUxnQixBQUE5QiwyREFBOEIsK0JBQW1COztBQWdCdEUsTUFBTSxPQUFPLHVCQUF1Qjt3RkFBdkIsdUJBQXVCO29FQUF2Qix1QkFBdUI7WUFqQmhDLEFBakJBLEFBWkEsMEZBQWlELDRHQVl0Qiw0R0FpQlE7OztZQTdCTCxBQUFmLGtDQUFlLDZCQUFpQjs7O2lGQThDdEMsdUJBQXVCO2NBakRuQyxTQUFTOzJCQUNFLHFCQUFxQixZQUNyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdDVCxtQkFLZ0IsdUJBQXVCLENBQUMsTUFBTTtnQkFHdEMsSUFBSTtrQkFBWixLQUFLO1lBQ0csY0FBYztrQkFBdEIsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSzs7a0ZBSkssdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTGVnZW5kSXRlbSB9IGZyb20gJy4uL2NvbW1vbi9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1kcm9wZG93bi1sZWdlbmQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNDYXJkOyBlbHNlIGVsc2VUZW1wbGF0ZVwiPlxuICAgICAgPGF1aS1pY29uXG4gICAgICAgIGNsYXNzPVwiYnRuXCJcbiAgICAgICAgaWNvbj1cInByb2Q6Y2hhcnRfbGVnZW5kXCJcbiAgICAgICAgW2F1aVRvb2x0aXBdPVwiZHJvcGRvd25JdGVtVGVtcGxhdGVcIlxuICAgICAgICBbYXVpVG9vbHRpcENvbnRleHRdPVwieyBkYXRhOiBbXSB9XCJcbiAgICAgICAgYXVpVG9vbHRpcFR5cGU9XCJpbmZvXCJcbiAgICAgICAgYXVpVG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tIGVuZFwiXG4gICAgICAgIGF1aVRvb2x0aXBUcmlnZ2VyPVwiY2xpY2tcIlxuICAgICAgICBhdWlUb29sdGlwQWN0aXZlPVwibGVnZW5kQWN0aXZlXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVRlbXBsYXRlPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBhdWktYnV0dG9uXG4gICAgICAgIFtzcXVhcmVdPVwidHJ1ZVwiXG4gICAgICAgIGNsYXNzPVwiYnRuXCJcbiAgICAgICAgaWNvbj1cInByb2Q6Y2hhcnRfbGVnZW5kXCJcbiAgICAgICAgW2F1aVRvb2x0aXBdPVwiZHJvcGRvd25JdGVtVGVtcGxhdGVcIlxuICAgICAgICBbYXVpVG9vbHRpcENvbnRleHRdPVwieyBkYXRhOiBbXSB9XCJcbiAgICAgICAgYXVpVG9vbHRpcFR5cGU9XCJpbmZvXCJcbiAgICAgICAgYXVpVG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tIGVuZFwiXG4gICAgICAgIGF1aVRvb2x0aXBUcmlnZ2VyPVwiY2xpY2tcIlxuICAgICAgICBhdWlUb29sdGlwQWN0aXZlPVwibGVnZW5kQWN0aXZlXCJcbiAgICAgID5cbiAgICAgICAgPGF1aS1pY29uIGljb249XCJwcm9kOmNoYXJ0X2xlZ2VuZFwiPjwvYXVpLWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlICNkcm9wZG93bkl0ZW1UZW1wbGF0ZT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkYXRhLmxlbmd0aCAmJiAhbm9EYXRhOyBlbHNlIG5vRGF0YVRlbXBsYXRlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmQtdmVydGljYWxcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxlZ2VuZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI25vRGF0YVRlbXBsYXRlPlxuICAgICAgICB7eyAnbm9fZGF0YScgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbXG4gICAgJy4vZHJvcGRvd24tbGVnZW5kLnNjc3MnLFxuICAgICcuLi9jb21tb24vbGVnZW5kL2xlZ2VuZC5jb21wb25lbnQuc2NzcycsXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkxlZ2VuZENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGRhdGE6IExlZ2VuZEl0ZW1bXTtcbiAgQElucHV0KCkgbGVnZW5kVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuICBASW5wdXQoKSBub0RhdGE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzQ2FyZDogYm9vbGVhbjtcbn1cbiJdfQ==