@alauda-fe/common 1.3.0 → 1.4.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.
- package/api/helpers.d.ts +8 -16
- package/array-form-table/form/component.d.ts +2 -2
- package/authorization/interceptor.service.d.ts +0 -1
- package/authorization/state.service.d.ts +13 -13
- package/business/resource-select/internals/namespace-list/component.d.ts +3 -1
- package/business/resource-select/module.d.ts +2 -1
- package/core/abstract/base-nested-form-control.d.ts +1 -1
- package/core/components/tree/toggle.d.ts +3 -3
- package/core/constants/constants.d.ts +4 -1
- package/core/constants/patterns.d.ts +12 -0
- package/core/constants/status-icons.d.ts +2 -1
- package/core/directives/scroll-to-first-invalid.directive.d.ts +1 -1
- package/core/module.d.ts +21 -21
- package/core/pipes/time.pipe.d.ts +1 -1
- package/core/services/context.service.d.ts +3 -4
- package/core/services/encode-url-param.interceptor.d.ts +12 -0
- package/core/services/feature-gate.service.d.ts +1 -1
- package/core/services/public-api.d.ts +1 -0
- package/core/services/time.service.d.ts +1 -0
- package/core/services/workspace-helper.service.d.ts +3 -1
- package/core/types/k8s/crd.d.ts +11 -5
- package/core/types/k8s/raw.d.ts +25 -38
- package/core/types/resource-definitions.d.ts +57 -71
- package/core/utils/common.d.ts +5 -13
- package/core/utils/disabled-state.d.ts +20 -0
- package/core/utils/public-api.d.ts +3 -0
- package/core/utils/router.d.ts +3 -0
- package/core/utils/version.d.ts +1 -1
- package/core/utils/workload.d.ts +66 -0
- package/editable/editable.component.d.ts +23 -0
- package/editable/editable.directive.d.ts +9 -0
- package/editable/editable.type.d.ts +5 -0
- package/editable/public-api.d.ts +2 -0
- package/esm2022/abnormal-page/abnormal-page.component.mjs +5 -4
- package/esm2022/abnormal-page/abnormal-page.module.mjs +2 -2
- package/esm2022/api/acp-common-api.service.mjs +3 -3
- package/esm2022/api/api-compatible.interceptor.mjs +1 -1
- package/esm2022/api/api-gateway.interceptor.mjs +3 -3
- package/esm2022/api/api-gateway.service.mjs +2 -2
- package/esm2022/api/cluster-version.service.mjs +3 -3
- package/esm2022/api/crypto.interceptor.mjs +4 -4
- package/esm2022/api/helpers.mjs +1 -1
- package/esm2022/api/k8s-api-resource.service.mjs +4 -4
- package/esm2022/api/k8s-api.service.mjs +6 -6
- package/esm2022/api/page-visibility.service.mjs +2 -2
- package/esm2022/api/platform-ui.service.mjs +2 -2
- package/esm2022/api/product.service.mjs +3 -3
- package/esm2022/api/project-api.service.mjs +3 -3
- package/esm2022/api/resource-update.service.mjs +3 -3
- package/esm2022/array-form-table/base-string-map-form.component.mjs +3 -3
- package/esm2022/array-form-table/form/component.mjs +104 -111
- package/esm2022/array-form-table/form/module.mjs +2 -2
- package/esm2022/array-form-table/key-value-form/component.mjs +53 -58
- package/esm2022/array-form-table/key-value-table/component.mjs +7 -7
- package/esm2022/array-form-table/string-array-form/component.mjs +48 -52
- package/esm2022/async-data/async-data-loader.mjs +1 -1
- package/esm2022/async-data/async-data.module.mjs +2 -2
- package/esm2022/async-data/error-page/component.mjs +21 -22
- package/esm2022/async-data/page-state/component.mjs +16 -15
- package/esm2022/authorization/app-init-url.mjs +1 -1
- package/esm2022/authorization/guard.service.mjs +5 -5
- package/esm2022/authorization/interceptor.service.mjs +10 -25
- package/esm2022/authorization/session-manage.service.mjs +5 -5
- package/esm2022/authorization/state.service.mjs +59 -93
- package/esm2022/authorization/storage-token.mjs +2 -2
- package/esm2022/business/module-info/api.service.mjs +3 -3
- package/esm2022/business/notification-disabled-container/component.mjs +14 -14
- package/esm2022/business/resource-select/base-list.mjs +3 -3
- package/esm2022/business/resource-select/context.service.mjs +3 -3
- package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +22 -20
- package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +22 -20
- package/esm2022/business/resource-select/exports/namespace-page/component.mjs +6 -5
- package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +37 -35
- package/esm2022/business/resource-select/exports/project-page/component.mjs +6 -5
- package/esm2022/business/resource-select/exports/project-selector/component.mjs +23 -22
- package/esm2022/business/resource-select/helpers.directive.mjs +2 -2
- package/esm2022/business/resource-select/internals/cluster-list/component.mjs +7 -6
- package/esm2022/business/resource-select/internals/data-grid/component.mjs +173 -176
- package/esm2022/business/resource-select/internals/icon/component.mjs +3 -2
- package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +5 -4
- package/esm2022/business/resource-select/internals/namespace-list/component.mjs +145 -100
- package/esm2022/business/resource-select/internals/no-data/component.mjs +12 -14
- package/esm2022/business/resource-select/internals/project-list/component.mjs +5 -4
- package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +7 -6
- package/esm2022/business/resource-select/internals/selector-popup/component.mjs +6 -5
- package/esm2022/business/resource-select/internals/selector-popup/ref.mjs +1 -1
- package/esm2022/business/resource-select/internals/selector-popup/service.mjs +3 -3
- package/esm2022/business/resource-select/module.mjs +17 -14
- package/esm2022/business/resource-select/project.service.mjs +3 -3
- package/esm2022/business/resource-select/utils.mjs +1 -1
- package/esm2022/chart/chart.module.mjs +2 -2
- package/esm2022/chart/chart.service.mjs +4 -4
- package/esm2022/chart/common/axis/axis-label.component.mjs +4 -3
- package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +27 -27
- package/esm2022/chart/common/axis/x-axis.component.mjs +6 -5
- package/esm2022/chart/common/axis/x-plot-lines.component.mjs +7 -6
- package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +35 -35
- package/esm2022/chart/common/axis/y-axis.component.mjs +9 -8
- package/esm2022/chart/common/axis/y-plot-lines.component.mjs +6 -5
- package/esm2022/chart/common/chart/chart.component.mjs +41 -43
- package/esm2022/chart/common/legend/legend.component.mjs +62 -65
- package/esm2022/chart/common/range-area/range-area.component.mjs +13 -11
- package/esm2022/chart/common/reference-area/reference-area.component.mjs +4 -3
- package/esm2022/chart/common/series/area-series.component.mjs +15 -14
- package/esm2022/chart/common/series/bar-path.component.mjs +20 -21
- package/esm2022/chart/common/series/bar-series.component.mjs +8 -7
- package/esm2022/chart/common/series/line-series.component.mjs +7 -6
- package/esm2022/chart/common/series/series.component.mjs +3 -3
- package/esm2022/chart/common/tooltip/tooltip.component.mjs +73 -81
- package/esm2022/chart/custom-template/dropdown-legend.mjs +23 -25
- package/esm2022/chart/utils.mjs +1 -1
- package/esm2022/code/code-display-dialog/component.mjs +9 -8
- package/esm2022/code/code-editor-configs.mjs +2 -2
- package/esm2022/code/code.module.mjs +2 -2
- package/esm2022/code/k8s-yaml-display-dialog/component.mjs +9 -8
- package/esm2022/code/resource-yaml-display/component.mjs +21 -22
- package/esm2022/core/abstract/base-form-container.mjs +3 -3
- package/esm2022/core/abstract/base-nested-form-control.mjs +5 -5
- package/esm2022/core/components/tree/module.mjs +2 -2
- package/esm2022/core/components/tree/node/component.mjs +7 -6
- package/esm2022/core/components/tree/outlet.mjs +4 -4
- package/esm2022/core/components/tree/padding.mjs +6 -6
- package/esm2022/core/components/tree/toggle.mjs +9 -9
- package/esm2022/core/components/tree/tree/component.mjs +4 -3
- package/esm2022/core/constants/constants.mjs +4 -1
- package/esm2022/core/constants/patterns.mjs +15 -4
- package/esm2022/core/constants/status-icons.mjs +2 -1
- package/esm2022/core/constants/tokens.mjs +1 -1
- package/esm2022/core/directives/aui-code-editor.directive.mjs +3 -3
- package/esm2022/core/directives/click-outside.directive.mjs +4 -4
- package/esm2022/core/directives/declare.directive.mjs +2 -2
- package/esm2022/core/directives/disabled.directive.mjs +4 -4
- package/esm2022/core/directives/feature-gate.directive.mjs +4 -4
- package/esm2022/core/directives/intercept-deactivate.directive.mjs +4 -4
- package/esm2022/core/directives/last-form-item.directive.mjs +3 -3
- package/esm2022/core/directives/page-header-content.directive.mjs +3 -3
- package/esm2022/core/directives/readonly-field.directive.mjs +8 -7
- package/esm2022/core/directives/resize.directive.mjs +3 -3
- package/esm2022/core/directives/scroll-border-observer.directive.mjs +4 -4
- package/esm2022/core/directives/scroll-to-first-invalid.directive.mjs +5 -5
- package/esm2022/core/guards/feature.guard.mjs +4 -4
- package/esm2022/core/guards/intercept-deactivate.guard.mjs +3 -3
- package/esm2022/core/guards/leave-edit-page.guard.mjs +3 -3
- package/esm2022/core/guards/project-namespace.guard.mjs +5 -5
- package/esm2022/core/module.mjs +8 -13
- package/esm2022/core/pipes/calc.pipe.mjs +2 -2
- package/esm2022/core/pipes/cron-human-readable.pipe.mjs +2 -2
- package/esm2022/core/pipes/crontab-next.pipe.mjs +3 -3
- package/esm2022/core/pipes/duration.pipe.mjs +3 -3
- package/esm2022/core/pipes/field-not-available.pipe.mjs +2 -2
- package/esm2022/core/pipes/img-header.pipe.mjs +2 -2
- package/esm2022/core/pipes/img-theme.pipe.mjs +3 -3
- package/esm2022/core/pipes/k8s-util.pipe.mjs +24 -24
- package/esm2022/core/pipes/k8s-util.pipe.module.mjs +2 -2
- package/esm2022/core/pipes/keyvalue.pipe.mjs +3 -3
- package/esm2022/core/pipes/marked.pipe.mjs +2 -2
- package/esm2022/core/pipes/minimum-format.pipe.mjs +3 -3
- package/esm2022/core/pipes/page-env.pipe.mjs +5 -5
- package/esm2022/core/pipes/parse-json-translate.pipe.mjs +3 -3
- package/esm2022/core/pipes/parse-json.pipe.mjs +2 -2
- package/esm2022/core/pipes/pure.pipe.mjs +2 -2
- package/esm2022/core/pipes/pure.pipe.module.mjs +2 -2
- package/esm2022/core/pipes/safe.pipe.mjs +3 -3
- package/esm2022/core/pipes/sanitize.pipe.mjs +3 -3
- package/esm2022/core/pipes/time.pipe.mjs +11 -11
- package/esm2022/core/pipes/timezone-display.pipe.mjs +2 -2
- package/esm2022/core/services/aui-paginator-intl.service.mjs +3 -3
- package/esm2022/core/services/aui-tooltip-copy-intl.service.mjs +3 -3
- package/esm2022/core/services/context.service.mjs +10 -13
- package/esm2022/core/services/custom-code-editor-intl.service.mjs +3 -3
- package/esm2022/core/services/encode-url-param.interceptor.mjs +32 -0
- package/esm2022/core/services/feature-gate.service.mjs +3 -3
- package/esm2022/core/services/form-row-duplicate/form-row-duplicate.service.mjs +3 -3
- package/esm2022/core/services/intercept-deactivate.service.mjs +3 -3
- package/esm2022/core/services/k8s-util.service.mjs +3 -3
- package/esm2022/core/services/on-resize.service.mjs +5 -5
- package/esm2022/core/services/public-api.mjs +2 -1
- package/esm2022/core/services/silently-navigate.service.mjs +3 -3
- package/esm2022/core/services/time.service.mjs +4 -3
- package/esm2022/core/services/ui-state.service.mjs +2 -2
- package/esm2022/core/services/workspace-helper.service.mjs +8 -2
- package/esm2022/core/services/yaml-util.service.mjs +4 -4
- package/esm2022/core/types/k8s/crd.mjs +1 -1
- package/esm2022/core/types/k8s/raw.mjs +1 -1
- package/esm2022/core/types/resource-definitions.mjs +42 -65
- package/esm2022/core/utils/cache-store.mjs +1 -1
- package/esm2022/core/utils/common.mjs +3 -12
- package/esm2022/core/utils/create-recursive-filter.mjs +1 -1
- package/esm2022/core/utils/cron-util.mjs +1 -1
- package/esm2022/core/utils/decorators.mjs +1 -1
- package/esm2022/core/utils/disabled-state.mjs +47 -0
- package/esm2022/core/utils/format-number.mjs +1 -1
- package/esm2022/core/utils/k8s-util.mjs +1 -1
- package/esm2022/core/utils/observable.mjs +1 -1
- package/esm2022/core/utils/operators.mjs +1 -1
- package/esm2022/core/utils/public-api.mjs +4 -1
- package/esm2022/core/utils/request-pool.mjs +1 -1
- package/esm2022/core/utils/resources.mjs +1 -1
- package/esm2022/core/utils/router.mjs +20 -0
- package/esm2022/core/utils/sort-fn.mjs +1 -1
- package/esm2022/core/utils/tree.mjs +1 -1
- package/esm2022/core/utils/unit.mjs +1 -1
- package/esm2022/core/utils/version.mjs +1 -1
- package/esm2022/core/utils/workload.mjs +183 -0
- package/esm2022/core/utils/workspace.mjs +1 -1
- package/esm2022/core/utils/yaml.mjs +1 -1
- package/esm2022/custom-columns-setting/component.mjs +30 -23
- package/esm2022/disabled-container/disabled-container.component.mjs +4 -3
- package/esm2022/disabled-container/disabled-container.module.mjs +2 -2
- package/esm2022/editable/editable.component.mjs +136 -0
- package/esm2022/editable/editable.directive.mjs +25 -0
- package/esm2022/editable/editable.type.mjs +6 -0
- package/esm2022/editable/public-api.mjs +3 -0
- package/esm2022/editable-text/component.mjs +14 -12
- package/esm2022/editable-text/module.mjs +2 -2
- package/esm2022/effect-directive/coerce-number.directive.mjs +4 -4
- package/esm2022/effect-directive/e2e-attribute-binding.directive.mjs +3 -3
- package/esm2022/effect-directive/event.directive.mjs +3 -3
- package/esm2022/effect-directive/min-max.directive.mjs +3 -3
- package/esm2022/effect-directive/module.mjs +2 -2
- package/esm2022/effect-directive/trim.directive.mjs +3 -3
- package/esm2022/effect-directive/validators.directive.mjs +3 -3
- package/esm2022/exec/module.mjs +2 -2
- package/esm2022/exec/placeholder/component.mjs +4 -3
- package/esm2022/exec/service.mjs +3 -3
- package/esm2022/exec/terminal/component.mjs +87 -86
- package/esm2022/exec/terminal-group/component.mjs +42 -44
- package/esm2022/feature-gate-forbidden/component/component.mjs +9 -8
- package/esm2022/feature-gate-forbidden/module.mjs +2 -2
- package/esm2022/form/directives/value-trace.directive.mjs +4 -4
- package/esm2022/form/errors-mapper/base-errors-mapper.mjs +3 -3
- package/esm2022/form/errors-mapper/default-errors-mapper.service.mjs +3 -3
- package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +6 -5
- package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +7 -6
- package/esm2022/form/errors-mapper/errors-mapper.module.mjs +2 -2
- package/esm2022/form/labels-editor/component.mjs +36 -36
- package/esm2022/form/taints-editor/component.mjs +42 -42
- package/esm2022/form/upload-file/component.mjs +9 -7
- package/esm2022/form/utils.mjs +1 -1
- package/esm2022/form/validators/async-function-validator.directive.mjs +4 -3
- package/esm2022/form/validators/dns1123-subdomain.mjs +1 -1
- package/esm2022/form/validators/function-validator.directive.mjs +4 -3
- package/esm2022/form/validators/maxlength-minlength-validator.directive.mjs +9 -7
- package/esm2022/form/validators/module.mjs +7 -8
- package/esm2022/form/validators/not-be-validator.directive.mjs +4 -3
- package/esm2022/form/validators/one-of-validator.directive.mjs +4 -3
- package/esm2022/form/validators/resource-limit.mjs +1 -1
- package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +30 -28
- package/esm2022/form/validators/strong-password/strong-password-validator.directive.mjs +3 -3
- package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +6 -7
- package/esm2022/form/validators/utils.mjs +1 -1
- package/esm2022/graph-canvas/components/graph-actions.component.mjs +3 -2
- package/esm2022/graph-canvas/components/graph-canvas.component.mjs +25 -23
- package/esm2022/graph-canvas/components/graph-link.component.mjs +12 -13
- package/esm2022/graph-canvas/components/graph-links.component.mjs +3 -2
- package/esm2022/graph-canvas/components/graph-node.directive.mjs +4 -4
- package/esm2022/graph-canvas/graph-canvas.module.mjs +2 -2
- package/esm2022/graph-canvas/graph-store.service.mjs +2 -2
- package/esm2022/grid-layout/components/grid/component.mjs +5 -4
- package/esm2022/grid-layout/components/grid-items/component.mjs +8 -7
- package/esm2022/grid-layout/directives/drag-handler.directive.mjs +3 -3
- package/esm2022/grid-layout/directives/placeholder.directive.mjs +3 -3
- package/esm2022/grid-layout/directives/remove-handler.directive.mjs +3 -3
- package/esm2022/grid-layout/directives/resize-handler.directive.mjs +3 -3
- package/esm2022/grid-layout/grid-layout.service.mjs +2 -2
- package/esm2022/grid-layout/grid-placeholder.service.mjs +3 -3
- package/esm2022/grid-layout/module.mjs +2 -2
- package/esm2022/grid-layout/utils/grid.utils.mjs +1 -1
- package/esm2022/grid-layout/utils/react-grid-layout.utils.mjs +1 -1
- package/esm2022/grid-layout/utils/scroll.utils.mjs +1 -1
- package/esm2022/help-document/component.mjs +18 -16
- package/esm2022/help-document/directive.mjs +4 -4
- package/esm2022/help-document/module.mjs +2 -2
- package/esm2022/help-document/service.mjs +4 -4
- package/esm2022/iframe-config/config.service.mjs +3 -3
- package/esm2022/k8s-resource-list/footer/component.mjs +103 -65
- package/esm2022/k8s-resource-list/k8s-resource-list.mjs +3 -6
- package/esm2022/k8s-resource-list/k8s-resource-list.module.mjs +19 -7
- package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +1 -1
- package/esm2022/k8s-resource-list/utils.mjs +7 -3
- package/esm2022/k8s-shared/constants.mjs +53 -0
- package/esm2022/k8s-shared/k8s-resource-translate-key.pipe.mjs +30 -0
- package/esm2022/k8s-shared/k8s-shared-util.service.mjs +3 -3
- package/esm2022/k8s-shared/public-api.mjs +2 -1
- package/esm2022/k8s-shared/update-description-dialog/component.mjs +10 -9
- package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +22 -20
- package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +13 -11
- package/esm2022/lazy-component/lazy-load-component.mjs +25 -26
- package/esm2022/lazy-component/visibility.service.mjs +2 -2
- package/esm2022/license/license-api.mjs +3 -3
- package/esm2022/license/license-error/component.mjs +25 -25
- package/esm2022/license/license-error/module.mjs +2 -2
- package/esm2022/license/license.guard.mjs +4 -4
- package/esm2022/license/license.service.mjs +4 -4
- package/esm2022/list-display/component.mjs +39 -40
- package/esm2022/metric-chart/common-chart.service.mjs +3 -3
- package/esm2022/metric-chart/helpers.mjs +1 -1
- package/esm2022/metric-chart/metric-chart.component.mjs +6 -5
- package/esm2022/metric-chart/metric-chart.module.mjs +2 -2
- package/esm2022/metric-chart/metric-time-pick.mjs +20 -17
- package/esm2022/metric-chart/utils.mjs +1 -1
- package/esm2022/multi-search/action-input/component.mjs +180 -181
- package/esm2022/multi-search/form/component.mjs +26 -22
- package/esm2022/multi-search/multi-search-tags/component.mjs +33 -31
- package/esm2022/mutable/element.mjs +1 -1
- package/esm2022/mutable/mosaic/mosaic.component.mjs +6 -5
- package/esm2022/mutable/mosaic/mosaic.directive.mjs +3 -3
- package/esm2022/mutable/mutable.directive.mjs +4 -4
- package/esm2022/mutable/mutable.module.mjs +2 -2
- package/esm2022/notification/feedback-notification/component.mjs +22 -23
- package/esm2022/notification/notification-util.service.mjs +3 -3
- package/esm2022/notification/resource-error.interceptor.mjs +3 -3
- package/esm2022/overview-banner/overview-banner.component.mjs +3 -2
- package/esm2022/overview-banner/overview-banner.module.mjs +2 -2
- package/esm2022/page-guard/component/component.mjs +70 -78
- package/esm2022/page-guard/component/helper-directives.mjs +5 -5
- package/esm2022/page-guard/module.mjs +2 -2
- package/esm2022/page-scaffold/module.mjs +2 -2
- package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb-slot.directive.mjs +3 -3
- package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +182 -91
- package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.service.mjs +2 -2
- package/esm2022/page-scaffold/navigation/breadcrumb/module.mjs +2 -2
- package/esm2022/page-scaffold/navigation/lottie-icons/animation-data.mjs +1 -3
- package/esm2022/page-scaffold/navigation/lottie-icons/lottie-icon.directive.mjs +3 -3
- package/esm2022/page-scaffold/navigation/lottie-icons/module.mjs +2 -2
- package/esm2022/page-scaffold/navigation/lottie-icons/replace-lottie-colors.mjs +11 -11
- package/esm2022/page-scaffold/navigation/module.mjs +2 -2
- package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +128 -99
- package/esm2022/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.mjs +30 -32
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +21 -19
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.module.mjs +4 -4
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.types.mjs +1 -1
- package/esm2022/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.mjs +9 -8
- package/esm2022/page-scaffold/page/context.service.mjs +2 -2
- package/esm2022/page-scaffold/page/helper-directives.mjs +10 -10
- package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +11 -11
- package/esm2022/page-scaffold/page/notices/notice.component.mjs +15 -15
- package/esm2022/page-scaffold/page/page.component.mjs +20 -20
- package/esm2022/page-scaffold/page/page.module.mjs +2 -2
- package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +40 -39
- package/esm2022/page-scaffold/page-header/account-menu/module.mjs +2 -2
- package/esm2022/page-scaffold/page-header/common-layout/common-layout.module.mjs +2 -2
- package/esm2022/page-scaffold/page-header/common-layout/context.service.mjs +4 -4
- package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +58 -59
- package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +68 -73
- package/esm2022/page-scaffold/page-header/common-layout/product-select/service.mjs +2 -2
- package/esm2022/page-scaffold/page-header/common-layout/project-select/base-selection.mjs +3 -3
- package/esm2022/page-scaffold/page-header/common-layout/store.service.mjs +3 -3
- package/esm2022/page-scaffold/page-header/component.mjs +24 -25
- package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +15 -14
- package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +27 -27
- package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +22 -21
- package/esm2022/page-scaffold/page-header/header-notify/header-notify.module.mjs +2 -2
- package/esm2022/page-scaffold/page-header/header-notify/notify.service.mjs +5 -5
- package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +59 -62
- package/esm2022/page-scaffold/page-header/help-menu/module.mjs +2 -2
- package/esm2022/page-scaffold/page-header/module.mjs +2 -2
- package/esm2022/permission/helpers.mjs +1 -1
- package/esm2022/permission/k8s-permission.service.mjs +3 -3
- package/esm2022/permission/permission.guard.mjs +3 -3
- package/esm2022/pie-derivative-chart/donut-status/component.mjs +29 -28
- package/esm2022/pie-derivative-chart/indicator-color.directive.mjs +3 -3
- package/esm2022/pie-derivative-chart/numerical-limit.pipe.mjs +3 -3
- package/esm2022/pie-derivative-chart/pie-derivative-chart.module.mjs +7 -7
- package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +84 -78
- package/esm2022/pie-derivative-chart/units.mjs +14 -0
- package/esm2022/pod-status/component.mjs +167 -0
- package/esm2022/pod-status/public-api.mjs +4 -0
- package/esm2022/pod-status/status.mjs +84 -0
- package/esm2022/pod-status/typings.mjs +19 -0
- package/esm2022/public-api.mjs +4 -1
- package/esm2022/searchable-selector/component.mjs +73 -75
- package/esm2022/searchable-selector/module.mjs +2 -2
- package/esm2022/skeleton/item/component.mjs +4 -3
- package/esm2022/skeleton/module.mjs +2 -2
- package/esm2022/skeleton/nav-skeleton/component.mjs +8 -7
- package/esm2022/table/component.mjs +275 -276
- package/esm2022/table/helper.mjs +1 -1
- package/esm2022/table/helpers.directive.mjs +3 -3
- package/esm2022/table/module.mjs +40 -31
- package/esm2022/table/util.service.mjs +4 -4
- package/esm2022/translate/helpers.mjs +1 -1
- package/esm2022/translate/i18n-config.mjs +3 -8
- package/esm2022/translate/translate.directive.mjs +9 -9
- package/esm2022/translate/translate.module.mjs +2 -2
- package/esm2022/translate/translate.pipe.mjs +3 -3
- package/esm2022/translate/translate.service.mjs +4 -4
- package/esm2022/view-chart/custom-template/dropdown-legend.mjs +24 -26
- package/esm2022/view-chart/legend/legend.component.mjs +66 -70
- package/esm2022/view-chart/view-chart.component.mjs +94 -105
- package/esm2022/view-chart/view-chart.module.mjs +2 -2
- package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +24 -26
- package/esm2022/view-zchart/legend/legend.component.mjs +77 -82
- package/esm2022/view-zchart/units.mjs +1 -1
- package/esm2022/view-zchart/view-zchart.component.mjs +111 -120
- package/esm2022/view-zchart/view-zchart.module.mjs +2 -2
- package/esm2022/widget/card-section/card-section.component.mjs +13 -12
- package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +45 -46
- package/esm2022/widget/current-time/component.mjs +4 -3
- package/esm2022/widget/date-range-picker/component.mjs +42 -40
- package/esm2022/widget/field-set/column/component.mjs +5 -3
- package/esm2022/widget/field-set/group/component.mjs +3 -2
- package/esm2022/widget/field-set/item/component.mjs +8 -7
- package/esm2022/widget/foldable-block/component.mjs +25 -24
- package/esm2022/widget/foldable-item-in-table/component.mjs +41 -42
- package/esm2022/widget/loading-mask/loading-mask.component.mjs +9 -9
- package/esm2022/widget/password-input/component.mjs +72 -71
- package/esm2022/widget/public-api.mjs +2 -1
- package/esm2022/widget/relative-time/component.mjs +4 -3
- package/esm2022/widget/resource-label/component.mjs +131 -0
- package/esm2022/widget/resource-multi-select/component.mjs +20 -19
- package/esm2022/widget/resource-multi-select/util.mjs +1 -1
- package/esm2022/widget/search-panel/component.mjs +3 -2
- package/esm2022/widget/search-panel/helper.directive.mjs +2 -2
- package/esm2022/widget/search-panel/search-item/component.mjs +3 -2
- package/esm2022/widget/select-prefix-label/directive.mjs +4 -4
- package/esm2022/widget/status-icon/status-icon.component.mjs +16 -15
- package/esm2022/widget/tags-label/component.mjs +61 -62
- package/esm2022/widget/terminating-tag/component.mjs +4 -3
- package/esm2022/widget/text-ellipsis/component.mjs +11 -11
- package/esm2022/widget/text-tooltip/directive.mjs +3 -3
- package/esm2022/widget/text-with-url/component.mjs +8 -8
- package/esm2022/widget/widget.module.mjs +2 -2
- package/esm2022/widget/zero-state/zero-state.component.mjs +45 -30
- package/esm2022/window-channel/base-window-channel.mjs +1 -1
- package/esm2022/window-channel/directives/host-link.directive.mjs +2 -2
- package/esm2022/window-channel/host-window-channel.service.mjs +3 -3
- package/esm2022/window-channel/plugin-window-channel.service.mjs +3 -3
- package/esm2022/workload-status-icon/component.mjs +72 -0
- package/esm2022/workload-status-icon/public-api.mjs +2 -0
- package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +68 -71
- package/esm2022/xterm/xterm-terminal/xterm-terminal.directive.mjs +3 -3
- package/esm2022/xterm/xterm.component.mjs +5 -4
- package/exec/terminal/component.d.ts +1 -4
- package/form/validators/async-function-validator.directive.d.ts +1 -1
- package/form/validators/function-validator.directive.d.ts +1 -1
- package/form/validators/maxlength-minlength-validator.directive.d.ts +2 -2
- package/form/validators/module.d.ts +8 -8
- package/form/validators/not-be-validator.directive.d.ts +1 -1
- package/form/validators/one-of-validator.directive.d.ts +1 -1
- package/form/validators/resource-limit.d.ts +1 -1
- package/form/validators/strong-password/strong-password-validator.module.d.ts +2 -2
- package/graph-canvas/components/graph-canvas.component.d.ts +2 -2
- package/k8s-resource-list/footer/component.d.ts +9 -1
- package/k8s-resource-list/k8s-resource-list.module.d.ts +1 -1
- package/k8s-resource-list/k8s-resource-paged-list.d.ts +2 -2
- package/k8s-shared/constants.d.ts +7 -0
- package/k8s-shared/k8s-resource-translate-key.pipe.d.ts +9 -0
- package/k8s-shared/public-api.d.ts +1 -0
- package/license/license-api.d.ts +1 -1
- package/license/license-error/component.d.ts +1 -1
- package/metric-chart/helpers.d.ts +1 -1
- package/package.json +2 -1
- package/page-guard/component/component.d.ts +1 -1
- package/page-scaffold/navigation/breadcrumb/breadcrumb.component.d.ts +2 -0
- package/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.d.ts +1 -0
- package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts +8 -1
- package/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.d.ts +2 -1
- package/page-scaffold/page-header/common-layout/product-select/component.d.ts +1 -3
- package/page-scaffold/page-header/header-notify/utils.d.ts +3 -3
- package/pie-derivative-chart/radial-bar/radial-bar-chart.component.d.ts +4 -0
- package/pie-derivative-chart/units.d.ts +2 -0
- package/pod-status/component.d.ts +27 -0
- package/pod-status/public-api.d.ts +3 -0
- package/pod-status/status.d.ts +4 -0
- package/pod-status/typings.d.ts +16 -0
- package/public-api.d.ts +3 -0
- package/styles/ansi-color.scss +131 -0
- package/styles/global.scss +4 -1
- package/styles/tailwind-preset.scss +1 -1
- package/table/component.d.ts +6 -4
- package/table/helper.d.ts +1 -1
- package/table/module.d.ts +23 -7
- package/widget/public-api.d.ts +1 -0
- package/widget/resource-label/component.d.ts +25 -0
- package/widget/zero-state/zero-state.component.d.ts +5 -2
- package/workload-status-icon/component.d.ts +36 -0
- package/workload-status-icon/public-api.d.ts +1 -0
- package/a-chart/a-chart.module.d.ts +0 -16
- package/a-chart/base-chart.d.ts +0 -24
- package/a-chart/chart-status.component.d.ts +0 -15
- package/a-chart/chart.component.d.ts +0 -56
- package/a-chart/components/base-component.d.ts +0 -12
- package/a-chart/components/legend/base-legend.component.d.ts +0 -31
- package/a-chart/components/legend/dropdown-legend.d.ts +0 -17
- package/a-chart/components/legend/legend.component.d.ts +0 -17
- package/a-chart/components/legend/public-api.d.ts +0 -3
- package/a-chart/components/public-api.d.ts +0 -3
- package/a-chart/components/title.component.d.ts +0 -17
- package/a-chart/constant.d.ts +0 -6
- package/a-chart/public-api.d.ts +0 -12
- package/a-chart/types.d.ts +0 -38
- package/a-chart/utils.d.ts +0 -13
- package/a-metric-chart/a-metric-chart.component.d.ts +0 -154
- package/a-metric-chart/a-metric-chart.module.d.ts +0 -16
- package/a-metric-chart/bar-gauge/bar-gauge.component.d.ts +0 -25
- package/a-metric-chart/base-chart.component.d.ts +0 -14
- package/a-metric-chart/metric-chart-refresh.service.d.ts +0 -8
- package/a-metric-chart/public-api.d.ts +0 -14
- package/a-metric-chart/stat-chart/stat-chart.component.d.ts +0 -11
- package/a-metric-chart/table-chart/table-chart.component.d.ts +0 -29
- package/a-metric-chart/types.d.ts +0 -130
- package/a-metric-chart/utils/public-api.d.ts +0 -3
- package/a-metric-chart/utils/range.d.ts +0 -1
- package/a-metric-chart/utils/unit.d.ts +0 -48
- package/a-metric-chart/utils/util.d.ts +0 -45
- package/api/monitor-api.service.d.ts +0 -104
- package/esm2022/a-chart/a-chart.module.mjs +0 -76
- package/esm2022/a-chart/base-chart.mjs +0 -98
- package/esm2022/a-chart/chart-status.component.mjs +0 -195
- package/esm2022/a-chart/chart.component.mjs +0 -307
- package/esm2022/a-chart/components/base-component.mjs +0 -23
- package/esm2022/a-chart/components/legend/base-legend.component.mjs +0 -111
- package/esm2022/a-chart/components/legend/dropdown-legend.mjs +0 -199
- package/esm2022/a-chart/components/legend/legend.component.mjs +0 -102
- package/esm2022/a-chart/components/legend/public-api.mjs +0 -4
- package/esm2022/a-chart/components/public-api.mjs +0 -4
- package/esm2022/a-chart/components/title.component.mjs +0 -99
- package/esm2022/a-chart/constant.mjs +0 -24
- package/esm2022/a-chart/public-api.mjs +0 -13
- package/esm2022/a-chart/types.mjs +0 -7
- package/esm2022/a-chart/utils.mjs +0 -37
- package/esm2022/a-metric-chart/a-metric-chart.component.mjs +0 -937
- package/esm2022/a-metric-chart/a-metric-chart.module.mjs +0 -74
- package/esm2022/a-metric-chart/bar-gauge/bar-gauge.component.mjs +0 -166
- package/esm2022/a-metric-chart/base-chart.component.mjs +0 -30
- package/esm2022/a-metric-chart/metric-chart-refresh.service.mjs +0 -18
- package/esm2022/a-metric-chart/public-api.mjs +0 -15
- package/esm2022/a-metric-chart/stat-chart/stat-chart.component.mjs +0 -122
- package/esm2022/a-metric-chart/table-chart/table-chart.component.mjs +0 -201
- package/esm2022/a-metric-chart/types.mjs +0 -26
- package/esm2022/a-metric-chart/utils/public-api.mjs +0 -4
- package/esm2022/a-metric-chart/utils/range.mjs +0 -35
- package/esm2022/a-metric-chart/utils/unit.mjs +0 -83
- package/esm2022/a-metric-chart/utils/util.mjs +0 -243
- package/esm2022/api/monitor-api.service.mjs +0 -158
- package/esm2022/notification/notification-util.module.mjs +0 -32
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/dashboard.json +0 -1
- package/notification/notification-util.module.d.ts +0 -10
|
@@ -281,10 +281,10 @@ __decorate([
|
|
|
281
281
|
ObservableInput(),
|
|
282
282
|
__metadata("design:type", Observable)
|
|
283
283
|
], TranslateService.prototype, "locale$", void 0);
|
|
284
|
-
(
|
|
284
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TranslateService, [{
|
|
285
285
|
type: Injectable,
|
|
286
286
|
args: [{ providedIn: 'root' }]
|
|
287
|
-
}],
|
|
287
|
+
}], () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
288
288
|
type: Inject,
|
|
289
289
|
args: [TOKEN_BASE_HREF]
|
|
290
290
|
}] }, { type: undefined, decorators: [{
|
|
@@ -297,5 +297,5 @@ __decorate([
|
|
|
297
297
|
}, {
|
|
298
298
|
type: Inject,
|
|
299
299
|
args: [TRANSLATIONS]
|
|
300
|
-
}] }]
|
|
301
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdHJhbnNsYXRlL3RyYW5zbGF0ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUNMLE1BQU0sRUFDTixVQUFVLEVBRVYsUUFBUSxFQUNSLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQy9ELE9BQU8sRUFDTCxLQUFLLEVBQ0wsVUFBVSxFQUNWLE9BQU8sRUFDUCxRQUFRLEVBQ1IsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sUUFBUSxFQUNSLEdBQUcsRUFDSCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWpDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFM0MsT0FBTyxFQUNMLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsY0FBYyxHQUNmLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7OztBQVUzRCxNQUFNLE9BQU8sZ0JBQWdCO0lB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OEJBQ0EsVUFBVTtpREFBUzt1RkFuQjFCLGdCQUFnQjtjQUQ1QixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztzQkFnQzdCLE1BQU07dUJBQUMsZUFBZTs7c0JBRXRCLFFBQVE7O3NCQUNSLE1BQU07dUJBQUMsaUJBQWlCOztzQkFFeEIsUUFBUTs7c0JBQUksTUFBTTt1QkFBQyxZQUFZO3dCQTVCekIsYUFBYSxNQVdiLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSB0cmFuc2xhdGVcbiAqL1xuXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgSW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBPbkRlc3Ryb3ksXG4gIE9wdGlvbmFsLFxuICBpc0Rldk1vZGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0LCBoZWFkLCBpc1BsYWluT2JqZWN0LCB0ZW1wbGF0ZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge1xuICBFTVBUWSxcbiAgT2JzZXJ2YWJsZSxcbiAgU3ViamVjdCxcbiAgZm9ya0pvaW4sXG4gIHRocm93RXJyb3IsXG4gIGNhdGNoRXJyb3IsXG4gIGZpbHRlcixcbiAgZmluYWxpemUsXG4gIG1hcCxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGFqYXggfSBmcm9tICdyeGpzL2FqYXgnO1xuXG5pbXBvcnQgeyBBUElfR0FURVdBWSwgVEVNUExBVEVfT1BUSU9OUyB9IGZyb20gJy4uL2NvcmUvY29uc3RhbnRzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUT0tFTl9CQVNFX0hSRUYgfSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgaXNBYnNvbHV0ZVVybCB9IGZyb20gJy4uL2NvcmUvdXRpbHMvY29tbW9uJztcbmltcG9ydCB7IE9ic2VydmFibGVJbnB1dCB9IGZyb20gJy4uL2NvcmUvdXRpbHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBwYXJzZSB9IGZyb20gJy4uL2NvcmUvdXRpbHMveWFtbCc7XG5cbmltcG9ydCB7XG4gIEZBTExCQUNLX0xBTkdVQUdFLFxuICBMT0NBTEVfUExBQ0VIT0xERVJfUkVHRVgsXG4gIExPQ0FMRV9TVE9SQUdFLFxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUUkFOU0xBVEVfT1BUSU9OUywgVFJBTlNMQVRJT05TIH0gZnJvbSAnLi90b2tlbnMnO1xuaW1wb3J0IHtcbiAgVHJhbnNsYXRlS2V5LFxuICBUcmFuc2xhdGVPcHRpb25zLFxuICBUcmFuc2xhdGlvbixcbiAgVHJhbnNsYXRpb25WYWx1ZSxcbiAgVHJhbnNsYXRpb25zLFxufSBmcm9tICcuL3R5cGVzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgX3JlbW90ZUxvYWRlZD86IGJvb2xlYW47XG5cbiAgZ2V0IHJlbW90ZUxvYWRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVtb3RlTG9hZGVkO1xuICB9XG5cbiAgQE9ic2VydmFibGVJbnB1dCgnX3JlbW90ZUxvYWRlZCcpXG4gIHJlYWRvbmx5IHJlbW90ZUxvYWRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbiB8IHVuZGVmaW5lZD47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRpb25zTGlzdDogQXJyYXk8UmVhZG9ubHk8VHJhbnNsYXRpb25zPj47XG4gIHByaXZhdGUgcmVtb3RlVHJhbnNsYXRpb25zTGlzdDogQXJyYXk8UmVhZG9ubHk8VHJhbnNsYXRpb25zPj47XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHJhbnNsYXRlT3B0aW9ucztcblxuICBsb2NhbGU6IHN0cmluZztcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgcmVhZG9ubHkgbG9jYWxlJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gIGdldCBsb2NhbGVzKCkge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMubG9jYWxlcztcbiAgfVxuXG4gIGdldCBmYWxsYmFja0xvY2FsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZhbGxiYWNrTG9jYWxlO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIEBJbmplY3QoVE9LRU5fQkFTRV9IUkVGKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgYmFzZUhyZWY6IHN0cmluZyxcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoVFJBTlNMQVRFX09QVElPTlMpXG4gICAgb3B0aW9uczogVHJhbnNsYXRlT3B0aW9ucyxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRSQU5TTEFUSU9OUykgdHJhbnNsYXRpb25MaXN0OiBUcmFuc2xhdGlvbnNbXSxcbiAgKSB7XG4gICAgdGhpcy5sb2NhbGUgPSBvcHRpb25zPy5sb2NhbGUgfHwgbmF2aWdhdG9yLmxhbmd1YWdlO1xuICAgIHRoaXMub3B0aW9ucyA9IHtcbiAgICAgIGxvY2FsZXM6IFt0aGlzLmxvY2FsZV0sXG4gICAgICBmYWxsYmFja0xvY2FsZTogRkFMTEJBQ0tfTEFOR1VBR0UsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH07XG5cbiAgICB0aGlzLnRyYW5zbGF0aW9uc0xpc3QgPSBbXG4gICAgICBvcHRpb25zLnRyYW5zbGF0aW9ucyxcbiAgICAgIC4uLih0cmFuc2xhdGlvbkxpc3QgfHwgW10pLFxuICAgIF0uZmlsdGVyKEJvb2xlYW4pO1xuXG4gICAgaWYgKG9wdGlvbnMucmVtb3RlVXJsKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRpb25zLnJlbW90ZVVybCkpIHtcbiAgICAgICAgb3B0aW9ucy5yZW1vdGVVcmwuZm9yRWFjaCh1cmwgPT4gdGhpcy5hZGRSZW1vdGVUcmFuc2xhdGlvbnModXJsKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmFkZFJlbW90ZVRyYW5zbGF0aW9ucyhvcHRpb25zLnJlbW90ZVVybCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIGtleSAtIOe/u+ivkWtleVxuICAgKiBAcGFyYW0gZGF0YSAtIOagueaNrue/u+ivkeS4iuS4i+aWh+aVsOaNruiOt+WPlue/u+ivkeWGheWuue+8jOe/u+ivkemhueS4jeWtmOWcqOebtOaOpei/lOWbniBrZXkg5paH5pysXG4gICAqIEBwYXJhbSBpZ25vcmVOb25FeGlzdCAtIOW8gOWPkeeOr+Wig+aYr+WQpuW/veinhuS4jeWtmOWcqOeahOe/u+ivkemhuVxuICAgKi9cbiAgZ2V0KGtleTogVHJhbnNsYXRlS2V5LCBkYXRhPzogdW5rbm93biwgaWdub3JlTm9uRXhpc3QgPSBmYWxzZSkge1xuICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gdGhpcy5nZXRSYXcoa2V5LCBpZ25vcmVOb25FeGlzdCk7XG4gICAgaWYgKGRhdGEgIT0gbnVsbCAmJiB0eXBlb2YgZGF0YSAhPT0gJ29iamVjdCcpIHtcbiAgICAgIGRhdGEgPSBbZGF0YV07XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGVtcGxhdGUodHJhbnNsYXRpb24sIFRFTVBMQVRFX09QVElPTlMpKGRhdGEgYXMgb2JqZWN0KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlW2lzRGV2TW9kZSgpID8gJ2Vycm9yJyA6ICd3YXJuJ10oXG4gICAgICAgIGBUaGUgdHJhbnNsYXRpb24ga2V5ICcke2tleX0nIGlzIG1pc3NpbmcgdGhlIG5lY2Vzc2FyeSBwYXJhbWV0ZXJzLmAsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiDnm7TmjqXov5Tlm57nv7vor5HmlofmnKzmqKHmnb9cbiAgICogQHBhcmFtIGtleSAtIOe/u+ivkWtleVxuICAgKiBAcGFyYW0gaWdub3JlTm9uRXhpc3QgLSDlvIDlj5Hnjq/looPmmK/lkKblv73op4bkuI3lrZjlnKjnmoTnv7vor5HpoblcbiAgICovXG4gIGdldFJhdyhrZXk6IFRyYW5zbGF0ZUtleSwgaWdub3JlTm9uRXhpc3QgPSBmYWxzZSkge1xuICAgIHJldHVybiB0eXBlb2Yga2V5ID09PSAnc3RyaW5nJ1xuICAgICAgPyB0aGlzLl9nZXQoa2V5LCBpZ25vcmVOb25FeGlzdClcbiAgICAgIDogKHRoaXMuX2dldFZhbHVlKGtleSkgYXMgc3RyaW5nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDmoLnmja4gYGxvY2FsZXNgIOW+queOr+WIh+aNouW9k+WJjeWMuuWfn+iuvue9rlxuICAgKi9cbiAgdG9nZ2xlTG9jYWxlKCkge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5vcHRpb25zLmxvY2FsZXMuaW5kZXhPZih0aGlzLmxvY2FsZSk7XG4gICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2Bsb2NhbGVzYCBoYXMgbm90IGJlZW4gaW5pdGlhbGl6ZWQgY29ycmVjdGx5Jyk7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG5leHRMb2NhbGUgPVxuICAgICAgdGhpcy5vcHRpb25zLmxvY2FsZXNbXG4gICAgICAgIGluZGV4ID09PSB0aGlzLm9wdGlvbnMubG9jYWxlcy5sZW5ndGggLSAxID8gMCA6IGluZGV4ICsgMVxuICAgICAgXTtcblxuICAgIGlmICghbmV4dExvY2FsZSB8fCB0aGlzLmxvY2FsZSA9PT0gbmV4dExvY2FsZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2V0TG9jYWxlKG5leHRMb2NhbGUpO1xuICB9XG5cbiAgc2V0TG9jYWxlKGxvY2FsZTogc3RyaW5nKSB7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oTE9DQUxFX1NUT1JBR0UsIGxvY2FsZSk7XG4gICAgdGhpcy5sb2NhbGUgPSBsb2NhbGU7XG4gIH1cblxuICAvKipcbiAgICog5omL5Yqo5re75Yqg6K+t6KiA5YyFXG4gICAqL1xuICBhZGRUcmFuc2xhdGlvbnModHJhbnNsYXRpb25zOiBUcmFuc2xhdGlvbnMpIHtcbiAgICB0aGlzLnRyYW5zbGF0aW9uc0xpc3QudW5zaGlmdChPYmplY3QuZnJlZXplKHRyYW5zbGF0aW9ucykpO1xuICB9XG5cbiAgLyoqXG4gICAqIOaJi+WKqOa3u+WKoOivreiogOWMhVxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbiAgYWRkUmVtb3RlVHJhbnNsYXRpb25zKHJlbW90ZVVybDogc3RyaW5nKSB7XG4gICAgaWYgKCFyZW1vdGVVcmwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fcmVtb3RlTG9hZGVkID0gZmFsc2U7XG4gICAgcmVtb3RlVXJsID0gaGVhZChyZW1vdGVVcmwuc3BsaXQoLyMvKSk7XG4gICAgY29uc3QgaXNBYnNvbHV0ZSA9IGlzQWJzb2x1dGVVcmwocmVtb3RlVXJsKTtcbiAgICBjb25zdCBpc0FwaUdhdGVXYXlSZXF1ZXN0ID0gcmVtb3RlVXJsLnN0YXJ0c1dpdGgoQVBJX0dBVEVXQVkpO1xuICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgbGV0IGVycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgICAgaWYgKCFpc0Fic29sdXRlICYmICghdGhpcy5iYXNlSHJlZiB8fCAhaXNBYnNvbHV0ZVVybCh0aGlzLmJhc2VIcmVmKSkpIHtcbiAgICAgICAgZXJyb3JNZXNzYWdlID0gJ2Fic29sdXRlIGJhc2UgaHJlZiBpcyByZXF1aXJlZCBmb3IgcmVsYXRpdmUgcmVtb3RlIHVybCc7XG4gICAgICB9IGVsc2UgaWYgKHJlbW90ZVVybC5zcGxpdCgnPycpWzBdLmluY2x1ZGVzKCcuLycpKSB7XG4gICAgICAgIGVycm9yTWVzc2FnZSA9XG4gICAgICAgICAgJ2RvIG5vdCB1c2UgYW55IGRvdCB3aXRoIHNsYXNoIGZvciByZWxhdGl2ZSB1cmwgd2hpY2ggc2hvdWxkIGFsd2F5cyBiYXNlIGZyb20gYmFzZSBocmVmJztcbiAgICAgIH1cbiAgICAgIGlmIChlcnJvck1lc3NhZ2UpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihlcnJvck1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoIWlzQWJzb2x1dGUgJiYgIWlzQXBpR2F0ZVdheVJlcXVlc3QpIHtcbiAgICAgIHJlbW90ZVVybCA9XG4gICAgICAgICh0aGlzLmJhc2VIcmVmLmVuZHNXaXRoKCcvJykgPyB0aGlzLmJhc2VIcmVmIDogdGhpcy5iYXNlSHJlZiArICcvJykgK1xuICAgICAgICByZW1vdGVVcmw7XG4gICAgfVxuICAgIChMT0NBTEVfUExBQ0VIT0xERVJfUkVHRVgudGVzdChyZW1vdGVVcmwpXG4gICAgICA/IGZvcmtKb2luKFxuICAgICAgICAgIHRoaXMub3B0aW9ucy5sb2NhbGVzLm1hcChsb2NhbGUgPT5cbiAgICAgICAgICAgIHRoaXMuZmV0Y2hUcmFuc2xhdGlvbihyZW1vdGVVcmwsIGxvY2FsZSkucGlwZShcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5sb29zZSkge1xuICAgICAgICAgICAgICAgICAgY29uc3QgbG9vc2VMb2NhbGUgPSB0aGlzLl9nZXRMb29zZUxvY2FsZShsb2NhbGUpO1xuICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBsb2NhbGUgIT09IGxvb3NlTG9jYWxlICYmXG4gICAgICAgICAgICAgICAgICAgICF0aGlzLm9wdGlvbnMubG9jYWxlcy5pbmNsdWRlcyhsb29zZUxvY2FsZSlcbiAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5mZXRjaFRyYW5zbGF0aW9uKHJlbW90ZVVybCwgbG9vc2VMb2NhbGUpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gaXNEZXZNb2RlKCkgPyB0aHJvd0Vycm9yKCgpID0+IGVycm9yKSA6IEVNUFRZO1xuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgZmlsdGVyKGlzUGxhaW5PYmplY3QpLFxuICAgICAgICAgICAgICBtYXAoXG4gICAgICAgICAgICAgICAgKHRyYW5zbGF0aW9uOiBUcmFuc2xhdGlvbikgPT5cbiAgICAgICAgICAgICAgICAgICh7XG4gICAgICAgICAgICAgICAgICAgIFtsb2NhbGVdOiB0cmFuc2xhdGlvbixcbiAgICAgICAgICAgICAgICAgIH0gYXMgVHJhbnNsYXRpb25zKSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgKSxcbiAgICAgICAgKS5waXBlKG1hcChfID0+IF8ucmVkdWNlKE9iamVjdC5hc3NpZ24pKSlcbiAgICAgIDogdGhpcy5mZXRjaFRyYW5zbGF0aW9uKHJlbW90ZVVybCkucGlwZShcbiAgICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IChpc0Rldk1vZGUoKSA/IHRocm93RXJyb3IoKCkgPT4gZXJyb3IpIDogRU1QVFkpKSxcbiAgICAgICAgKVxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpLFxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5fcmVtb3RlTG9hZGVkID0gdHJ1ZSkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShyZW1vdGVUcmFuc2xhdGlvbnMgPT4ge1xuICAgICAgICBpZiAoIXJlbW90ZVRyYW5zbGF0aW9ucykge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMucmVtb3RlVHJhbnNsYXRpb25zTGlzdCkge1xuICAgICAgICAgIHRoaXMucmVtb3RlVHJhbnNsYXRpb25zTGlzdCA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVtb3RlVHJhbnNsYXRpb25zTGlzdC51bnNoaWZ0KE9iamVjdC5mcmVlemUocmVtb3RlVHJhbnNsYXRpb25zKSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiDku47ov5znqIsgdXJsIOaooeadv+WSjOWMuuWfn+iOt+WPlue/u+ivkeWMhVxuICAgKi9cbiAgZmV0Y2hUcmFuc2xhdGlvbihyZW1vdGVVcmw6IHN0cmluZyk6IE9ic2VydmFibGU8VHJhbnNsYXRpb25zPjtcbiAgZmV0Y2hUcmFuc2xhdGlvbihyZW1vdGVVcmw6IHN0cmluZywgbG9jYWxlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRyYW5zbGF0aW9uPjtcbiAgZmV0Y2hUcmFuc2xhdGlvbihyZW1vdGVVcmw6IHN0cmluZywgbG9jYWxlPzogc3RyaW5nKSB7XG4gICAgaWYgKGlzRGV2TW9kZSgpICYmIExPQ0FMRV9QTEFDRUhPTERFUl9SRUdFWC50ZXN0KHJlbW90ZVVybCkgJiYgIWxvY2FsZSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcbiAgICAgICAgJ2Bsb2NhbGVgIGlzIHJlcXVpcmVkIHNpbmUgdGhlIHByb3ZpZGVkIHJlbW90ZSB1cmwgY29udGFpbnMgbG9jYWxlIHBsYWNlaG9sZGVyJyxcbiAgICAgICk7XG4gICAgfVxuICAgIGNvbnN0IGlzSlNPTiA9IHJlbW90ZVVybC5lbmRzV2l0aCgnLmpzb24nKTtcbiAgICBjb25zdCBpc0FwaUdhdGVXYXlSZXF1ZXN0ID0gcmVtb3RlVXJsLnN0YXJ0c1dpdGgoQVBJX0dBVEVXQVkpO1xuICAgIGNvbnN0IHVybCA9IGxvY2FsZVxuICAgICAgPyByZW1vdGVVcmwucmVwbGFjZShMT0NBTEVfUExBQ0VIT0xERVJfUkVHRVgsIGxvY2FsZSlcbiAgICAgIDogcmVtb3RlVXJsO1xuICAgIGNvbnN0IHJlc3BvbnNlVHlwZSA9IGlzSlNPTiA/ICdqc29uJyA6ICd0ZXh0JztcbiAgICBpZiAoaXNBcGlHYXRlV2F5UmVxdWVzdCkge1xuICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAucmVxdWVzdCgnR0VUJywgdXJsLCB7IHJlc3BvbnNlVHlwZSB9KVxuICAgICAgICAucGlwZShtYXAoYm9keSA9PiAoaXNKU09OID8gYm9keSA6IHBhcnNlKGJvZHkpKSkpO1xuICAgIH1cbiAgICByZXR1cm4gYWpheCh7XG4gICAgICB1cmwsXG4gICAgICByZXNwb25zZVR5cGUsXG4gICAgfSkucGlwZShcbiAgICAgIG1hcCgoeyByZXNwb25zZSB9KSA9PiAoaXNKU09OID8gcmVzcG9uc2UgOiBwYXJzZShyZXNwb25zZSBhcyBzdHJpbmcpKSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldExvb3NlTG9jYWxlKGxvY2FsZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGhlYWQobG9jYWxlLnNwbGl0KC9bXy1dLykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VmFsdWUoXG4gICAgc291cmNlOiBUcmFuc2xhdGlvbixcbiAgICBsb2NhbGUgPSB0aGlzLmxvY2FsZSxcbiAgKTogVHJhbnNsYXRpb25WYWx1ZSB7XG4gICAgaWYgKCFzb3VyY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbGV0IHZhbHVlID0gc291cmNlW2xvY2FsZV07XG4gICAgaWYgKHZhbHVlID09IG51bGwgJiYgdGhpcy5vcHRpb25zLmxvb3NlKSB7XG4gICAgICBjb25zdCBsb29zZUxvY2FsZSA9IHRoaXMuX2dldExvb3NlTG9jYWxlKGxvY2FsZSk7XG4gICAgICB2YWx1ZSA9XG4gICAgICAgIGxvY2FsZSA9PT0gbG9vc2VMb2NhbGVcbiAgICAgICAgICA/IE9iamVjdC5lbnRyaWVzKHNvdXJjZSkuZmluZChcbiAgICAgICAgICAgICAgKFtrZXldKSA9PiBsb2NhbGUgPT09IHRoaXMuX2dldExvb3NlTG9jYWxlKGtleSksXG4gICAgICAgICAgICApPy5bMV1cbiAgICAgICAgICA6IHNvdXJjZVtsb29zZUxvY2FsZV07XG4gICAgfVxuICAgIGlmICh2YWx1ZSA9PSBudWxsICYmIGxvY2FsZSAhPT0gdGhpcy5vcHRpb25zLmZhbGxiYWNrTG9jYWxlKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZ2V0VmFsdWUoc291cmNlLCB0aGlzLm9wdGlvbnMuZmFsbGJhY2tMb2NhbGUpO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIF9nZXRXaXRoRmFsbGJhY2soXG4gICAga2V5OiBzdHJpbmcsXG4gICAgbG9jYWxlID0gdGhpcy5sb2NhbGUsXG4gICAgdHJhbnNsYXRpb25zOiBUcmFuc2xhdGlvbnMsXG4gICk6IHN0cmluZyB7XG4gICAgY29uc3QgdmFsdWUgPSBnZXQodGhpcy5fZ2V0VmFsdWUodHJhbnNsYXRpb25zLCBsb2NhbGUpLCBrZXkpO1xuICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgaXNEZXZNb2RlKCkgJiZcbiAgICAgICAgdHlwZW9mIGdldCh2YWx1ZSwgU3ltYm9sLnRvUHJpbWl0aXZlKSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICBgVGhlIHRyYW5zbGF0aW9uIGZvciBsb2NhbGU6IFxcYCR7bG9jYWxlfVxcYCBhbmQga2V5OlxcYCR7a2V5fVxcYCBpcyBhbiBvYmplY3QsIHdoaWNoIGNvdWxkIGJlIHVuZXhwZWN0ZWRgLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgfVxuICAgIGlmIChsb2NhbGUgIT09IHRoaXMub3B0aW9ucy5mYWxsYmFja0xvY2FsZSkge1xuICAgICAgcmV0dXJuIHRoaXMuX2dldFdpdGhGYWxsYmFjayhcbiAgICAgICAga2V5LFxuICAgICAgICB0aGlzLm9wdGlvbnMuZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgIHRyYW5zbGF0aW9ucyxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0QmFzZShcbiAgICBrZXk6IHN0cmluZyxcbiAgICBsb2NhbGUgPSB0aGlzLmxvY2FsZSxcbiAgICB0cmFuc2xhdGlvbnNMaXN0OiBUcmFuc2xhdGlvbnNbXSxcbiAgKSB7XG4gICAgaWYgKCF0cmFuc2xhdGlvbnNMaXN0IHx8IHRyYW5zbGF0aW9uc0xpc3QubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSB0cmFuc2xhdGlvbnNMaXN0Lmxlbmd0aDsgaSA+IDA7IGktLSkge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLl9nZXRXaXRoRmFsbGJhY2soa2V5LCBsb2NhbGUsIHRyYW5zbGF0aW9uc0xpc3RbaSAtIDFdKTtcbiAgICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9nZXQoa2V5OiBzdHJpbmcsIGlnbm9yZU5vbkV4aXN0ID0gZmFsc2UsIGxvY2FsZSA9IHRoaXMubG9jYWxlKSB7XG4gICAgbGV0IHZhbHVlID0gdGhpcy5fZ2V0QmFzZShrZXksIGxvY2FsZSwgdGhpcy5yZW1vdGVUcmFuc2xhdGlvbnNMaXN0KTtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSB0aGlzLl9nZXRCYXNlKGtleSwgbG9jYWxlLCB0aGlzLnRyYW5zbGF0aW9uc0xpc3QpO1xuICAgIH1cbiAgICBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICBpZiAoXG4gICAgICBpc0Rldk1vZGUoKSAmJlxuICAgICAgIWlnbm9yZU5vbkV4aXN0ICYmXG4gICAgICB0eXBlb2YgZ2V0KHZhbHVlLCBTeW1ib2wudG9QcmltaXRpdmUpICE9PSAnZnVuY3Rpb24nXG4gICAgKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBObyB0cmFuc2xhdGlvbiBmb3VuZCBmb3IgbG9jYWxlOiBcXGAke2xvY2FsZX1cXGAgYW5kIGtleTogXFxgJHtrZXl9XFxgLCB3aGljaCBjb3VsZCBiZSB1bmV4cGVjdGVkYCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBrZXk7XG4gIH1cblxuICBwcml2YXRlIF9jb21wYXJlS2V5cyhcbiAgICBsb2NhbGU6IHN0cmluZyxcbiAgICB0cmFuc2xhdGlvbjogVHJhbnNsYXRpb24sXG4gICAgcHJldlRyYW5zbGF0aW9uOiBUcmFuc2xhdGlvbixcbiAgICBwYXRoOiBzdHJpbmdbXSA9IFtdLFxuICApIHtcbiAgICBpZiAodHJhbnNsYXRpb24gPT0gbnVsbCB8fCBwcmV2VHJhbnNsYXRpb24gPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIE9iamVjdC5lbnRyaWVzKHRyYW5zbGF0aW9uKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHByZXZUcmFuc2xhdGlvbiwga2V5KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHByZXZWYWx1ZSA9IHByZXZUcmFuc2xhdGlvbltrZXldO1xuICAgICAgY29uc3QgdmFsdWVJc1BsYWluT2JqZWN0ID0gaXNQbGFpbk9iamVjdCh2YWx1ZSk7XG4gICAgICBjb25zdCBwcmV2VmFsdWVJc1BsYWluT2JqZWN0ID0gaXNQbGFpbk9iamVjdChwcmV2VmFsdWUpO1xuXG4gICAgICBpZiAodmFsdWVJc1BsYWluT2JqZWN0ICYmIHByZXZWYWx1ZUlzUGxhaW5PYmplY3QpIHtcbiAgICAgICAgdGhpcy5fY29tcGFyZUtleXMoXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIHZhbHVlIGFzIFRyYW5zbGF0aW9uLFxuICAgICAgICAgIHByZXZWYWx1ZSBhcyBUcmFuc2xhdGlvbixcbiAgICAgICAgICBbLi4ucGF0aCwga2V5XSxcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXZhbHVlSXNQbGFpbk9iamVjdCAmJiAhcHJldlZhbHVlSXNQbGFpbk9iamVjdCkge1xuICAgICAgICBjb25zdCBvdXRwdXRQYXRoID0gWy4uLnBhdGgsIGtleV0uam9pbignIC0+ICcpO1xuICAgICAgICBpZiAodmFsdWUgPT09IHByZXZWYWx1ZSkge1xuICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgIGBUaGUgY3VzdG9taXplZCB0cmFuc2xhdGlvbiBmb3IgbG9jYWxlOiBcXGAke2xvY2FsZX1cXGAgYW5kIHBhdGg6IFxcYCR7b3V0cHV0UGF0aH1cXGAgaXMgZHVwbGljYXRlZCB3aXRoIHRoZSBvdGhlciB0cmFuc2xhdGlvbiwgcGxlYXNlIHJlbW92ZSBpdCBpbiB5b3VyIHRyYW5zbGF0aW9uIGZpbGUuYCxcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgIGBUd28ga2V5cyB0aGF0IHRoZSBsb2NhbGUgaXMgXFxgJHtsb2NhbGV9XFxgIGFuZCB0aGUgcGF0aCBpcyBcXGAke291dHB1dFBhdGh9XFxgIGFyZSBzYW1lLCAgYnV0IHRoZWlyIHZhbHVlcyBhcmUgbm90IGVxdWFsICwgcGxlYXNlIHJlbW92ZSBvbmUgb2YgdGhlbSBvciBjaGFuZ2Ugb25lIG9mIHRoZSBrZXlzLmAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
300
|
+
}] }], { remoteLoaded$: [], locale$: [] }); })();
|
|
301
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdHJhbnNsYXRlL3RyYW5zbGF0ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUNMLE1BQU0sRUFDTixVQUFVLEVBRVYsUUFBUSxFQUNSLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQy9ELE9BQU8sRUFDTCxLQUFLLEVBQ0wsVUFBVSxFQUNWLE9BQU8sRUFDUCxRQUFRLEVBQ1IsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sUUFBUSxFQUNSLEdBQUcsRUFDSCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWpDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFM0MsT0FBTyxFQUNMLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsY0FBYyxHQUNmLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7OztBQVUzRCxNQUFNLE9BQU8sZ0JBQWdCO0lB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QUssS0FBSyxTQUFTLEVBQUUsQ0FBQztvQkFDeEIsT0FBTyxDQUFDLElBQUksQ0FDViw0Q0FBNEMsTUFBTSxrQkFBa0IsVUFBVSx5RkFBeUYsQ0FDeEssQ0FBQztnQkFDSixDQUFDO3FCQUFNLENBQUM7b0JBQ04sT0FBTyxDQUFDLElBQUksQ0FDVixpQ0FBaUMsTUFBTSx3QkFBd0IsVUFBVSxxR0FBcUcsQ0FDL0ssQ0FBQztnQkFDSixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztpRkE5V1UsZ0JBQWdCLDBDQStCakIsZUFBZSxlQUdmLGlCQUFpQixrQkFFTCxZQUFZO3VFQXBDdkIsZ0JBQWdCLFdBQWhCLGdCQUFnQixtQkFESCxNQUFNOztBQVNyQjtJQURSLGVBQWUsQ0FBQyxlQUFlLENBQUM7OEJBQ1QsVUFBVTt1REFBc0I7QUFXL0M7SUFEUixlQUFlLEVBQUU7OEJBQ0EsVUFBVTtpREFBUztpRkFuQjFCLGdCQUFnQjtjQUQ1QixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztzQkFnQzdCLE1BQU07dUJBQUMsZUFBZTs7c0JBRXRCLFFBQVE7O3NCQUNSLE1BQU07dUJBQUMsaUJBQWlCOztzQkFFeEIsUUFBUTs7c0JBQUksTUFBTTt1QkFBQyxZQUFZO3FCQTVCekIsYUFBYSxNQVdiLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSB0cmFuc2xhdGVcbiAqL1xuXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgSW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBPbkRlc3Ryb3ksXG4gIE9wdGlvbmFsLFxuICBpc0Rldk1vZGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0LCBoZWFkLCBpc1BsYWluT2JqZWN0LCB0ZW1wbGF0ZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge1xuICBFTVBUWSxcbiAgT2JzZXJ2YWJsZSxcbiAgU3ViamVjdCxcbiAgZm9ya0pvaW4sXG4gIHRocm93RXJyb3IsXG4gIGNhdGNoRXJyb3IsXG4gIGZpbHRlcixcbiAgZmluYWxpemUsXG4gIG1hcCxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGFqYXggfSBmcm9tICdyeGpzL2FqYXgnO1xuXG5pbXBvcnQgeyBBUElfR0FURVdBWSwgVEVNUExBVEVfT1BUSU9OUyB9IGZyb20gJy4uL2NvcmUvY29uc3RhbnRzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUT0tFTl9CQVNFX0hSRUYgfSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgaXNBYnNvbHV0ZVVybCB9IGZyb20gJy4uL2NvcmUvdXRpbHMvY29tbW9uJztcbmltcG9ydCB7IE9ic2VydmFibGVJbnB1dCB9IGZyb20gJy4uL2NvcmUvdXRpbHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBwYXJzZSB9IGZyb20gJy4uL2NvcmUvdXRpbHMveWFtbCc7XG5cbmltcG9ydCB7XG4gIEZBTExCQUNLX0xBTkdVQUdFLFxuICBMT0NBTEVfUExBQ0VIT0xERVJfUkVHRVgsXG4gIExPQ0FMRV9TVE9SQUdFLFxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUUkFOU0xBVEVfT1BUSU9OUywgVFJBTlNMQVRJT05TIH0gZnJvbSAnLi90b2tlbnMnO1xuaW1wb3J0IHtcbiAgVHJhbnNsYXRlS2V5LFxuICBUcmFuc2xhdGVPcHRpb25zLFxuICBUcmFuc2xhdGlvbixcbiAgVHJhbnNsYXRpb25WYWx1ZSxcbiAgVHJhbnNsYXRpb25zLFxufSBmcm9tICcuL3R5cGVzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgX3JlbW90ZUxvYWRlZD86IGJvb2xlYW47XG5cbiAgZ2V0IHJlbW90ZUxvYWRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVtb3RlTG9hZGVkO1xuICB9XG5cbiAgQE9ic2VydmFibGVJbnB1dCgnX3JlbW90ZUxvYWRlZCcpXG4gIHJlYWRvbmx5IHJlbW90ZUxvYWRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbiB8IHVuZGVmaW5lZD47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRpb25zTGlzdDogQXJyYXk8UmVhZG9ubHk8VHJhbnNsYXRpb25zPj47XG4gIHByaXZhdGUgcmVtb3RlVHJhbnNsYXRpb25zTGlzdDogQXJyYXk8UmVhZG9ubHk8VHJhbnNsYXRpb25zPj47XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHJhbnNsYXRlT3B0aW9ucztcblxuICBsb2NhbGU6IHN0cmluZztcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgcmVhZG9ubHkgbG9jYWxlJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gIGdldCBsb2NhbGVzKCkge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMubG9jYWxlcztcbiAgfVxuXG4gIGdldCBmYWxsYmFja0xvY2FsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZhbGxiYWNrTG9jYWxlO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIEBJbmplY3QoVE9LRU5fQkFTRV9IUkVGKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgYmFzZUhyZWY6IHN0cmluZyxcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoVFJBTlNMQVRFX09QVElPTlMpXG4gICAgb3B0aW9uczogVHJhbnNsYXRlT3B0aW9ucyxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRSQU5TTEFUSU9OUykgdHJhbnNsYXRpb25MaXN0OiBUcmFuc2xhdGlvbnNbXSxcbiAgKSB7XG4gICAgdGhpcy5sb2NhbGUgPSBvcHRpb25zPy5sb2NhbGUgfHwgbmF2aWdhdG9yLmxhbmd1YWdlO1xuICAgIHRoaXMub3B0aW9ucyA9IHtcbiAgICAgIGxvY2FsZXM6IFt0aGlzLmxvY2FsZV0sXG4gICAgICBmYWxsYmFja0xvY2FsZTogRkFMTEJBQ0tfTEFOR1VBR0UsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH07XG5cbiAgICB0aGlzLnRyYW5zbGF0aW9uc0xpc3QgPSBbXG4gICAgICBvcHRpb25zLnRyYW5zbGF0aW9ucyxcbiAgICAgIC4uLih0cmFuc2xhdGlvbkxpc3QgfHwgW10pLFxuICAgIF0uZmlsdGVyKEJvb2xlYW4pO1xuXG4gICAgaWYgKG9wdGlvbnMucmVtb3RlVXJsKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRpb25zLnJlbW90ZVVybCkpIHtcbiAgICAgICAgb3B0aW9ucy5yZW1vdGVVcmwuZm9yRWFjaCh1cmwgPT4gdGhpcy5hZGRSZW1vdGVUcmFuc2xhdGlvbnModXJsKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmFkZFJlbW90ZVRyYW5zbGF0aW9ucyhvcHRpb25zLnJlbW90ZVVybCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIGtleSAtIOe/u+ivkWtleVxuICAgKiBAcGFyYW0gZGF0YSAtIOagueaNrue/u+ivkeS4iuS4i+aWh+aVsOaNruiOt+WPlue/u+ivkeWGheWuue+8jOe/u+ivkemhueS4jeWtmOWcqOebtOaOpei/lOWbniBrZXkg5paH5pysXG4gICAqIEBwYXJhbSBpZ25vcmVOb25FeGlzdCAtIOW8gOWPkeeOr+Wig+aYr+WQpuW/veinhuS4jeWtmOWcqOeahOe/u+ivkemhuVxuICAgKi9cbiAgZ2V0KGtleTogVHJhbnNsYXRlS2V5LCBkYXRhPzogdW5rbm93biwgaWdub3JlTm9uRXhpc3QgPSBmYWxzZSkge1xuICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gdGhpcy5nZXRSYXcoa2V5LCBpZ25vcmVOb25FeGlzdCk7XG4gICAgaWYgKGRhdGEgIT0gbnVsbCAmJiB0eXBlb2YgZGF0YSAhPT0gJ29iamVjdCcpIHtcbiAgICAgIGRhdGEgPSBbZGF0YV07XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGVtcGxhdGUodHJhbnNsYXRpb24sIFRFTVBMQVRFX09QVElPTlMpKGRhdGEgYXMgb2JqZWN0KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlW2lzRGV2TW9kZSgpID8gJ2Vycm9yJyA6ICd3YXJuJ10oXG4gICAgICAgIGBUaGUgdHJhbnNsYXRpb24ga2V5ICcke2tleX0nIGlzIG1pc3NpbmcgdGhlIG5lY2Vzc2FyeSBwYXJhbWV0ZXJzLmAsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiDnm7TmjqXov5Tlm57nv7vor5HmlofmnKzmqKHmnb9cbiAgICogQHBhcmFtIGtleSAtIOe/u+ivkWtleVxuICAgKiBAcGFyYW0gaWdub3JlTm9uRXhpc3QgLSDlvIDlj5Hnjq/looPmmK/lkKblv73op4bkuI3lrZjlnKjnmoTnv7vor5HpoblcbiAgICovXG4gIGdldFJhdyhrZXk6IFRyYW5zbGF0ZUtleSwgaWdub3JlTm9uRXhpc3QgPSBmYWxzZSkge1xuICAgIHJldHVybiB0eXBlb2Yga2V5ID09PSAnc3RyaW5nJ1xuICAgICAgPyB0aGlzLl9nZXQoa2V5LCBpZ25vcmVOb25FeGlzdClcbiAgICAgIDogKHRoaXMuX2dldFZhbHVlKGtleSkgYXMgc3RyaW5nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDmoLnmja4gYGxvY2FsZXNgIOW+queOr+WIh+aNouW9k+WJjeWMuuWfn+iuvue9rlxuICAgKi9cbiAgdG9nZ2xlTG9jYWxlKCkge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5vcHRpb25zLmxvY2FsZXMuaW5kZXhPZih0aGlzLmxvY2FsZSk7XG4gICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2Bsb2NhbGVzYCBoYXMgbm90IGJlZW4gaW5pdGlhbGl6ZWQgY29ycmVjdGx5Jyk7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG5leHRMb2NhbGUgPVxuICAgICAgdGhpcy5vcHRpb25zLmxvY2FsZXNbXG4gICAgICAgIGluZGV4ID09PSB0aGlzLm9wdGlvbnMubG9jYWxlcy5sZW5ndGggLSAxID8gMCA6IGluZGV4ICsgMVxuICAgICAgXTtcblxuICAgIGlmICghbmV4dExvY2FsZSB8fCB0aGlzLmxvY2FsZSA9PT0gbmV4dExvY2FsZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2V0TG9jYWxlKG5leHRMb2NhbGUpO1xuICB9XG5cbiAgc2V0TG9jYWxlKGxvY2FsZTogc3RyaW5nKSB7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oTE9DQUxFX1NUT1JBR0UsIGxvY2FsZSk7XG4gICAgdGhpcy5sb2NhbGUgPSBsb2NhbGU7XG4gIH1cblxuICAvKipcbiAgICog5omL5Yqo5re75Yqg6K+t6KiA5YyFXG4gICAqL1xuICBhZGRUcmFuc2xhdGlvbnModHJhbnNsYXRpb25zOiBUcmFuc2xhdGlvbnMpIHtcbiAgICB0aGlzLnRyYW5zbGF0aW9uc0xpc3QudW5zaGlmdChPYmplY3QuZnJlZXplKHRyYW5zbGF0aW9ucykpO1xuICB9XG5cbiAgLyoqXG4gICAqIOaJi+WKqOa3u+WKoOivreiogOWMhVxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbiAgYWRkUmVtb3RlVHJhbnNsYXRpb25zKHJlbW90ZVVybDogc3RyaW5nKSB7XG4gICAgaWYgKCFyZW1vdGVVcmwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fcmVtb3RlTG9hZGVkID0gZmFsc2U7XG4gICAgcmVtb3RlVXJsID0gaGVhZChyZW1vdGVVcmwuc3BsaXQoLyMvKSk7XG4gICAgY29uc3QgaXNBYnNvbHV0ZSA9IGlzQWJzb2x1dGVVcmwocmVtb3RlVXJsKTtcbiAgICBjb25zdCBpc0FwaUdhdGVXYXlSZXF1ZXN0ID0gcmVtb3RlVXJsLnN0YXJ0c1dpdGgoQVBJX0dBVEVXQVkpO1xuICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgbGV0IGVycm9yTWVzc2FnZTogc3RyaW5nO1xuICAgICAgaWYgKCFpc0Fic29sdXRlICYmICghdGhpcy5iYXNlSHJlZiB8fCAhaXNBYnNvbHV0ZVVybCh0aGlzLmJhc2VIcmVmKSkpIHtcbiAgICAgICAgZXJyb3JNZXNzYWdlID0gJ2Fic29sdXRlIGJhc2UgaHJlZiBpcyByZXF1aXJlZCBmb3IgcmVsYXRpdmUgcmVtb3RlIHVybCc7XG4gICAgICB9IGVsc2UgaWYgKHJlbW90ZVVybC5zcGxpdCgnPycpWzBdLmluY2x1ZGVzKCcuLycpKSB7XG4gICAgICAgIGVycm9yTWVzc2FnZSA9XG4gICAgICAgICAgJ2RvIG5vdCB1c2UgYW55IGRvdCB3aXRoIHNsYXNoIGZvciByZWxhdGl2ZSB1cmwgd2hpY2ggc2hvdWxkIGFsd2F5cyBiYXNlIGZyb20gYmFzZSBocmVmJztcbiAgICAgIH1cbiAgICAgIGlmIChlcnJvck1lc3NhZ2UpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihlcnJvck1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoIWlzQWJzb2x1dGUgJiYgIWlzQXBpR2F0ZVdheVJlcXVlc3QpIHtcbiAgICAgIHJlbW90ZVVybCA9XG4gICAgICAgICh0aGlzLmJhc2VIcmVmLmVuZHNXaXRoKCcvJykgPyB0aGlzLmJhc2VIcmVmIDogdGhpcy5iYXNlSHJlZiArICcvJykgK1xuICAgICAgICByZW1vdGVVcmw7XG4gICAgfVxuICAgIChMT0NBTEVfUExBQ0VIT0xERVJfUkVHRVgudGVzdChyZW1vdGVVcmwpXG4gICAgICA/IGZvcmtKb2luKFxuICAgICAgICAgIHRoaXMub3B0aW9ucy5sb2NhbGVzLm1hcChsb2NhbGUgPT5cbiAgICAgICAgICAgIHRoaXMuZmV0Y2hUcmFuc2xhdGlvbihyZW1vdGVVcmwsIGxvY2FsZSkucGlwZShcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5sb29zZSkge1xuICAgICAgICAgICAgICAgICAgY29uc3QgbG9vc2VMb2NhbGUgPSB0aGlzLl9nZXRMb29zZUxvY2FsZShsb2NhbGUpO1xuICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBsb2NhbGUgIT09IGxvb3NlTG9jYWxlICYmXG4gICAgICAgICAgICAgICAgICAgICF0aGlzLm9wdGlvbnMubG9jYWxlcy5pbmNsdWRlcyhsb29zZUxvY2FsZSlcbiAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5mZXRjaFRyYW5zbGF0aW9uKHJlbW90ZVVybCwgbG9vc2VMb2NhbGUpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gaXNEZXZNb2RlKCkgPyB0aHJvd0Vycm9yKCgpID0+IGVycm9yKSA6IEVNUFRZO1xuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgZmlsdGVyKGlzUGxhaW5PYmplY3QpLFxuICAgICAgICAgICAgICBtYXAoXG4gICAgICAgICAgICAgICAgKHRyYW5zbGF0aW9uOiBUcmFuc2xhdGlvbikgPT5cbiAgICAgICAgICAgICAgICAgICh7XG4gICAgICAgICAgICAgICAgICAgIFtsb2NhbGVdOiB0cmFuc2xhdGlvbixcbiAgICAgICAgICAgICAgICAgIH0gYXMgVHJhbnNsYXRpb25zKSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgKSxcbiAgICAgICAgKS5waXBlKG1hcChfID0+IF8ucmVkdWNlKE9iamVjdC5hc3NpZ24pKSlcbiAgICAgIDogdGhpcy5mZXRjaFRyYW5zbGF0aW9uKHJlbW90ZVVybCkucGlwZShcbiAgICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IChpc0Rldk1vZGUoKSA/IHRocm93RXJyb3IoKCkgPT4gZXJyb3IpIDogRU1QVFkpKSxcbiAgICAgICAgKVxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpLFxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5fcmVtb3RlTG9hZGVkID0gdHJ1ZSkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShyZW1vdGVUcmFuc2xhdGlvbnMgPT4ge1xuICAgICAgICBpZiAoIXJlbW90ZVRyYW5zbGF0aW9ucykge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMucmVtb3RlVHJhbnNsYXRpb25zTGlzdCkge1xuICAgICAgICAgIHRoaXMucmVtb3RlVHJhbnNsYXRpb25zTGlzdCA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVtb3RlVHJhbnNsYXRpb25zTGlzdC51bnNoaWZ0KE9iamVjdC5mcmVlemUocmVtb3RlVHJhbnNsYXRpb25zKSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiDku47ov5znqIsgdXJsIOaooeadv+WSjOWMuuWfn+iOt+WPlue/u+ivkeWMhVxuICAgKi9cbiAgZmV0Y2hUcmFuc2xhdGlvbihyZW1vdGVVcmw6IHN0cmluZyk6IE9ic2VydmFibGU8VHJhbnNsYXRpb25zPjtcbiAgZmV0Y2hUcmFuc2xhdGlvbihyZW1vdGVVcmw6IHN0cmluZywgbG9jYWxlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRyYW5zbGF0aW9uPjtcbiAgZmV0Y2hUcmFuc2xhdGlvbihyZW1vdGVVcmw6IHN0cmluZywgbG9jYWxlPzogc3RyaW5nKSB7XG4gICAgaWYgKGlzRGV2TW9kZSgpICYmIExPQ0FMRV9QTEFDRUhPTERFUl9SRUdFWC50ZXN0KHJlbW90ZVVybCkgJiYgIWxvY2FsZSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcbiAgICAgICAgJ2Bsb2NhbGVgIGlzIHJlcXVpcmVkIHNpbmUgdGhlIHByb3ZpZGVkIHJlbW90ZSB1cmwgY29udGFpbnMgbG9jYWxlIHBsYWNlaG9sZGVyJyxcbiAgICAgICk7XG4gICAgfVxuICAgIGNvbnN0IGlzSlNPTiA9IHJlbW90ZVVybC5lbmRzV2l0aCgnLmpzb24nKTtcbiAgICBjb25zdCBpc0FwaUdhdGVXYXlSZXF1ZXN0ID0gcmVtb3RlVXJsLnN0YXJ0c1dpdGgoQVBJX0dBVEVXQVkpO1xuICAgIGNvbnN0IHVybCA9IGxvY2FsZVxuICAgICAgPyByZW1vdGVVcmwucmVwbGFjZShMT0NBTEVfUExBQ0VIT0xERVJfUkVHRVgsIGxvY2FsZSlcbiAgICAgIDogcmVtb3RlVXJsO1xuICAgIGNvbnN0IHJlc3BvbnNlVHlwZSA9IGlzSlNPTiA/ICdqc29uJyA6ICd0ZXh0JztcbiAgICBpZiAoaXNBcGlHYXRlV2F5UmVxdWVzdCkge1xuICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAucmVxdWVzdCgnR0VUJywgdXJsLCB7IHJlc3BvbnNlVHlwZSB9KVxuICAgICAgICAucGlwZShtYXAoYm9keSA9PiAoaXNKU09OID8gYm9keSA6IHBhcnNlKGJvZHkpKSkpO1xuICAgIH1cbiAgICByZXR1cm4gYWpheCh7XG4gICAgICB1cmwsXG4gICAgICByZXNwb25zZVR5cGUsXG4gICAgfSkucGlwZShcbiAgICAgIG1hcCgoeyByZXNwb25zZSB9KSA9PiAoaXNKU09OID8gcmVzcG9uc2UgOiBwYXJzZShyZXNwb25zZSBhcyBzdHJpbmcpKSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldExvb3NlTG9jYWxlKGxvY2FsZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGhlYWQobG9jYWxlLnNwbGl0KC9bXy1dLykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VmFsdWUoXG4gICAgc291cmNlOiBUcmFuc2xhdGlvbixcbiAgICBsb2NhbGUgPSB0aGlzLmxvY2FsZSxcbiAgKTogVHJhbnNsYXRpb25WYWx1ZSB7XG4gICAgaWYgKCFzb3VyY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbGV0IHZhbHVlID0gc291cmNlW2xvY2FsZV07XG4gICAgaWYgKHZhbHVlID09IG51bGwgJiYgdGhpcy5vcHRpb25zLmxvb3NlKSB7XG4gICAgICBjb25zdCBsb29zZUxvY2FsZSA9IHRoaXMuX2dldExvb3NlTG9jYWxlKGxvY2FsZSk7XG4gICAgICB2YWx1ZSA9XG4gICAgICAgIGxvY2FsZSA9PT0gbG9vc2VMb2NhbGVcbiAgICAgICAgICA/IE9iamVjdC5lbnRyaWVzKHNvdXJjZSkuZmluZChcbiAgICAgICAgICAgICAgKFtrZXldKSA9PiBsb2NhbGUgPT09IHRoaXMuX2dldExvb3NlTG9jYWxlKGtleSksXG4gICAgICAgICAgICApPy5bMV1cbiAgICAgICAgICA6IHNvdXJjZVtsb29zZUxvY2FsZV07XG4gICAgfVxuICAgIGlmICh2YWx1ZSA9PSBudWxsICYmIGxvY2FsZSAhPT0gdGhpcy5vcHRpb25zLmZhbGxiYWNrTG9jYWxlKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZ2V0VmFsdWUoc291cmNlLCB0aGlzLm9wdGlvbnMuZmFsbGJhY2tMb2NhbGUpO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIF9nZXRXaXRoRmFsbGJhY2soXG4gICAga2V5OiBzdHJpbmcsXG4gICAgbG9jYWxlID0gdGhpcy5sb2NhbGUsXG4gICAgdHJhbnNsYXRpb25zOiBUcmFuc2xhdGlvbnMsXG4gICk6IHN0cmluZyB7XG4gICAgY29uc3QgdmFsdWUgPSBnZXQodGhpcy5fZ2V0VmFsdWUodHJhbnNsYXRpb25zLCBsb2NhbGUpLCBrZXkpO1xuICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgaXNEZXZNb2RlKCkgJiZcbiAgICAgICAgdHlwZW9mIGdldCh2YWx1ZSwgU3ltYm9sLnRvUHJpbWl0aXZlKSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICBgVGhlIHRyYW5zbGF0aW9uIGZvciBsb2NhbGU6IFxcYCR7bG9jYWxlfVxcYCBhbmQga2V5OlxcYCR7a2V5fVxcYCBpcyBhbiBvYmplY3QsIHdoaWNoIGNvdWxkIGJlIHVuZXhwZWN0ZWRgLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgfVxuICAgIGlmIChsb2NhbGUgIT09IHRoaXMub3B0aW9ucy5mYWxsYmFja0xvY2FsZSkge1xuICAgICAgcmV0dXJuIHRoaXMuX2dldFdpdGhGYWxsYmFjayhcbiAgICAgICAga2V5LFxuICAgICAgICB0aGlzLm9wdGlvbnMuZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgIHRyYW5zbGF0aW9ucyxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0QmFzZShcbiAgICBrZXk6IHN0cmluZyxcbiAgICBsb2NhbGUgPSB0aGlzLmxvY2FsZSxcbiAgICB0cmFuc2xhdGlvbnNMaXN0OiBUcmFuc2xhdGlvbnNbXSxcbiAgKSB7XG4gICAgaWYgKCF0cmFuc2xhdGlvbnNMaXN0IHx8IHRyYW5zbGF0aW9uc0xpc3QubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSB0cmFuc2xhdGlvbnNMaXN0Lmxlbmd0aDsgaSA+IDA7IGktLSkge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLl9nZXRXaXRoRmFsbGJhY2soa2V5LCBsb2NhbGUsIHRyYW5zbGF0aW9uc0xpc3RbaSAtIDFdKTtcbiAgICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9nZXQoa2V5OiBzdHJpbmcsIGlnbm9yZU5vbkV4aXN0ID0gZmFsc2UsIGxvY2FsZSA9IHRoaXMubG9jYWxlKSB7XG4gICAgbGV0IHZhbHVlID0gdGhpcy5fZ2V0QmFzZShrZXksIGxvY2FsZSwgdGhpcy5yZW1vdGVUcmFuc2xhdGlvbnNMaXN0KTtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSB0aGlzLl9nZXRCYXNlKGtleSwgbG9jYWxlLCB0aGlzLnRyYW5zbGF0aW9uc0xpc3QpO1xuICAgIH1cbiAgICBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICBpZiAoXG4gICAgICBpc0Rldk1vZGUoKSAmJlxuICAgICAgIWlnbm9yZU5vbkV4aXN0ICYmXG4gICAgICB0eXBlb2YgZ2V0KHZhbHVlLCBTeW1ib2wudG9QcmltaXRpdmUpICE9PSAnZnVuY3Rpb24nXG4gICAgKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBObyB0cmFuc2xhdGlvbiBmb3VuZCBmb3IgbG9jYWxlOiBcXGAke2xvY2FsZX1cXGAgYW5kIGtleTogXFxgJHtrZXl9XFxgLCB3aGljaCBjb3VsZCBiZSB1bmV4cGVjdGVkYCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBrZXk7XG4gIH1cblxuICBwcml2YXRlIF9jb21wYXJlS2V5cyhcbiAgICBsb2NhbGU6IHN0cmluZyxcbiAgICB0cmFuc2xhdGlvbjogVHJhbnNsYXRpb24sXG4gICAgcHJldlRyYW5zbGF0aW9uOiBUcmFuc2xhdGlvbixcbiAgICBwYXRoOiBzdHJpbmdbXSA9IFtdLFxuICApIHtcbiAgICBpZiAodHJhbnNsYXRpb24gPT0gbnVsbCB8fCBwcmV2VHJhbnNsYXRpb24gPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIE9iamVjdC5lbnRyaWVzKHRyYW5zbGF0aW9uKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHByZXZUcmFuc2xhdGlvbiwga2V5KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHByZXZWYWx1ZSA9IHByZXZUcmFuc2xhdGlvbltrZXldO1xuICAgICAgY29uc3QgdmFsdWVJc1BsYWluT2JqZWN0ID0gaXNQbGFpbk9iamVjdCh2YWx1ZSk7XG4gICAgICBjb25zdCBwcmV2VmFsdWVJc1BsYWluT2JqZWN0ID0gaXNQbGFpbk9iamVjdChwcmV2VmFsdWUpO1xuXG4gICAgICBpZiAodmFsdWVJc1BsYWluT2JqZWN0ICYmIHByZXZWYWx1ZUlzUGxhaW5PYmplY3QpIHtcbiAgICAgICAgdGhpcy5fY29tcGFyZUtleXMoXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIHZhbHVlIGFzIFRyYW5zbGF0aW9uLFxuICAgICAgICAgIHByZXZWYWx1ZSBhcyBUcmFuc2xhdGlvbixcbiAgICAgICAgICBbLi4ucGF0aCwga2V5XSxcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXZhbHVlSXNQbGFpbk9iamVjdCAmJiAhcHJldlZhbHVlSXNQbGFpbk9iamVjdCkge1xuICAgICAgICBjb25zdCBvdXRwdXRQYXRoID0gWy4uLnBhdGgsIGtleV0uam9pbignIC0+ICcpO1xuICAgICAgICBpZiAodmFsdWUgPT09IHByZXZWYWx1ZSkge1xuICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgIGBUaGUgY3VzdG9taXplZCB0cmFuc2xhdGlvbiBmb3IgbG9jYWxlOiBcXGAke2xvY2FsZX1cXGAgYW5kIHBhdGg6IFxcYCR7b3V0cHV0UGF0aH1cXGAgaXMgZHVwbGljYXRlZCB3aXRoIHRoZSBvdGhlciB0cmFuc2xhdGlvbiwgcGxlYXNlIHJlbW92ZSBpdCBpbiB5b3VyIHRyYW5zbGF0aW9uIGZpbGUuYCxcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgIGBUd28ga2V5cyB0aGF0IHRoZSBsb2NhbGUgaXMgXFxgJHtsb2NhbGV9XFxgIGFuZCB0aGUgcGF0aCBpcyBcXGAke291dHB1dFBhdGh9XFxgIGFyZSBzYW1lLCAgYnV0IHRoZWlyIHZhbHVlcyBhcmUgbm90IGVxdWFsICwgcGxlYXNlIHJlbW92ZSBvbmUgb2YgdGhlbSBvciBjaGFuZ2Ugb25lIG9mIHRoZSBrZXlzLmAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, Input, TemplateRef, } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
const _c0 =
|
|
4
|
-
const _c1 =
|
|
3
|
+
const _c0 = () => [];
|
|
4
|
+
const _c1 = a0 => ({ data: a0 });
|
|
5
5
|
function LegendDropdownComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
6
6
|
i0.ɵɵelementContainerStart(0);
|
|
7
|
-
i0.ɵɵelement(1, "aui-icon",
|
|
7
|
+
i0.ɵɵelement(1, "aui-icon", 4);
|
|
8
8
|
i0.ɵɵelementContainerEnd();
|
|
9
9
|
} if (rf & 2) {
|
|
10
10
|
i0.ɵɵnextContext();
|
|
11
|
-
const
|
|
12
|
-
i0.ɵɵadvance(
|
|
13
|
-
i0.ɵɵproperty("auiTooltip",
|
|
11
|
+
const dropdownItemTemplate_r1 = i0.ɵɵreference(4);
|
|
12
|
+
i0.ɵɵadvance();
|
|
13
|
+
i0.ɵɵproperty("auiTooltip", dropdownItemTemplate_r1)("auiTooltipContext", i0.ɵɵpureFunction1(3, _c1, i0.ɵɵpureFunction0(2, _c0)));
|
|
14
14
|
} }
|
|
15
15
|
function LegendDropdownComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
16
|
-
i0.ɵɵelementStart(0, "button",
|
|
17
|
-
i0.ɵɵelement(1, "aui-icon",
|
|
16
|
+
i0.ɵɵelementStart(0, "button", 5);
|
|
17
|
+
i0.ɵɵelement(1, "aui-icon", 6);
|
|
18
18
|
i0.ɵɵelementEnd();
|
|
19
19
|
} if (rf & 2) {
|
|
20
20
|
i0.ɵɵnextContext();
|
|
21
|
-
const
|
|
22
|
-
i0.ɵɵproperty("square", true)("auiTooltip",
|
|
21
|
+
const dropdownItemTemplate_r1 = i0.ɵɵreference(4);
|
|
22
|
+
i0.ɵɵproperty("square", true)("auiTooltip", dropdownItemTemplate_r1)("auiTooltipContext", i0.ɵɵpureFunction1(4, _c1, i0.ɵɵpureFunction0(3, _c0)));
|
|
23
23
|
} }
|
|
24
24
|
function LegendDropdownComponent_ng_template_3_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
25
25
|
i0.ɵɵelementContainerStart(0);
|
|
@@ -28,9 +28,9 @@ function LegendDropdownComponent_ng_template_3_ng_container_0_Template(rf, ctx)
|
|
|
28
28
|
i0.ɵɵelementEnd();
|
|
29
29
|
i0.ɵɵelementContainerEnd();
|
|
30
30
|
} if (rf & 2) {
|
|
31
|
-
const
|
|
31
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
32
32
|
i0.ɵɵadvance(2);
|
|
33
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
33
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.legendTemplate);
|
|
34
34
|
} }
|
|
35
35
|
function LegendDropdownComponent_ng_template_3_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
36
36
|
i0.ɵɵelementStart(0, "span", 9);
|
|
@@ -38,29 +38,26 @@ function LegendDropdownComponent_ng_template_3_ng_template_1_Template(rf, ctx) {
|
|
|
38
38
|
i0.ɵɵpipe(2, "translate");
|
|
39
39
|
i0.ɵɵelementEnd();
|
|
40
40
|
} if (rf & 2) {
|
|
41
|
-
i0.ɵɵadvance(
|
|
41
|
+
i0.ɵɵadvance();
|
|
42
42
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, "no_data"));
|
|
43
43
|
} }
|
|
44
44
|
function LegendDropdownComponent_ng_template_3_Template(rf, ctx) { if (rf & 1) {
|
|
45
|
-
i0.ɵɵtemplate(0, LegendDropdownComponent_ng_template_3_ng_container_0_Template, 3, 1, "ng-container",
|
|
46
|
-
i0.ɵɵtemplate(1, LegendDropdownComponent_ng_template_3_ng_template_1_Template, 3, 3, "ng-template", null, 6, i0.ɵɵtemplateRefExtractor);
|
|
45
|
+
i0.ɵɵtemplate(0, LegendDropdownComponent_ng_template_3_ng_container_0_Template, 3, 1, "ng-container", 3)(1, LegendDropdownComponent_ng_template_3_ng_template_1_Template, 3, 3, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
|
|
47
46
|
} if (rf & 2) {
|
|
48
|
-
const
|
|
49
|
-
const
|
|
50
|
-
i0.ɵɵproperty("ngIf",
|
|
47
|
+
const noDataTemplate_r3 = i0.ɵɵreference(2);
|
|
48
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
49
|
+
i0.ɵɵproperty("ngIf", ctx_r1.data.length && !ctx_r1.noData)("ngIfElse", noDataTemplate_r3);
|
|
51
50
|
} }
|
|
52
51
|
export class LegendDropdownComponent {
|
|
53
52
|
static { this.ɵfac = function LegendDropdownComponent_Factory(t) { return new (t || LegendDropdownComponent)(); }; }
|
|
54
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LegendDropdownComponent, selectors: [["acl-legend-dropdown"]], inputs: { data: "data", legendTemplate: "legendTemplate", noData: "noData", isCard: "isCard" }, decls: 5, vars: 2, consts: [[
|
|
55
|
-
i0.ɵɵtemplate(0, LegendDropdownComponent_ng_container_0_Template, 2, 5, "ng-container", 0);
|
|
56
|
-
i0.ɵɵtemplate(1, LegendDropdownComponent_ng_template_1_Template, 2, 6, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
|
|
57
|
-
i0.ɵɵtemplate(3, LegendDropdownComponent_ng_template_3_Template, 3, 2, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
|
|
53
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LegendDropdownComponent, selectors: [["acl-legend-dropdown"]], inputs: { data: "data", legendTemplate: "legendTemplate", noData: "noData", isCard: "isCard" }, decls: 5, vars: 2, consts: [["elseTemplate", ""], ["dropdownItemTemplate", ""], ["noDataTemplate", ""], [4, "ngIf", "ngIfElse"], ["icon", "prod:chart_legend", "auiTooltipType", "info", "auiTooltipPosition", "bottom end", "auiTooltipTrigger", "click", "auiTooltipActive", "legendActive", 1, "btn", 3, "auiTooltip", "auiTooltipContext"], ["aui-button", "", "icon", "prod:chart_legend", "auiTooltipType", "info", "auiTooltipPosition", "bottom end", "auiTooltipTrigger", "click", "auiTooltipActive", "legendActive", 1, "btn", 3, "square", "auiTooltip", "auiTooltipContext"], ["icon", "prod:chart_legend"], [1, "legend-vertical"], [3, "ngTemplateOutlet"], [1, "no-data"]], template: function LegendDropdownComponent_Template(rf, ctx) { if (rf & 1) {
|
|
54
|
+
i0.ɵɵtemplate(0, LegendDropdownComponent_ng_container_0_Template, 2, 5, "ng-container", 3)(1, LegendDropdownComponent_ng_template_1_Template, 2, 6, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(3, LegendDropdownComponent_ng_template_3_Template, 3, 2, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
|
|
58
55
|
} if (rf & 2) {
|
|
59
|
-
const
|
|
60
|
-
i0.ɵɵproperty("ngIf", !ctx.isCard)("ngIfElse",
|
|
56
|
+
const elseTemplate_r4 = i0.ɵɵreference(2);
|
|
57
|
+
i0.ɵɵproperty("ngIf", !ctx.isCard)("ngIfElse", elseTemplate_r4);
|
|
61
58
|
} }, styles: [".btn[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-2));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))}.no-data[_ngcontent-%COMP%]{color:rgb(var(--aui-color-n-4));font-size:14px}"], changeDetection: 0 }); }
|
|
62
59
|
}
|
|
63
|
-
(
|
|
60
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LegendDropdownComponent, [{
|
|
64
61
|
type: Component,
|
|
65
62
|
args: [{ selector: 'acl-legend-dropdown', template: `
|
|
66
63
|
<ng-container *ngIf="!isCard; else elseTemplate">
|
|
@@ -112,4 +109,5 @@ export class LegendDropdownComponent {
|
|
|
112
109
|
}], isCard: [{
|
|
113
110
|
type: Input
|
|
114
111
|
}] }); })();
|
|
115
|
-
|
|
112
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendDropdownComponent, { className: "LegendDropdownComponent" }); })();
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbGVnZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3ZpZXctY2hhcnQvY3VzdG9tLXRlbXBsYXRlL2Ryb3Bkb3duLWxlZ2VuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDOzs7OztJQU9uQiw2QkFBaUQ7SUFDL0MsOEJBU1k7Ozs7O0lBTlYsY0FBbUM7SUFDbkMsQUFEQSxvREFBbUMsNkVBQ0Q7OztJQVFwQyxpQ0FXQztJQUNDLDhCQUE4QztJQUNoRCxpQkFBUzs7OztJQVBQLEFBREEsQUFIQSw2QkFBZSx1Q0FHb0IsNkVBQ0Q7OztJQVdwQyw2QkFBa0U7SUFDaEUsOEJBQTZCO0lBQzNCLDJCQUFpRTtJQUNuRSxpQkFBTTs7OztJQURVLGVBQW1DO0lBQW5DLHdEQUFtQzs7O0lBSW5ELCtCQUFzQjtJQUFBLFlBQTJCOztJQUFBLGlCQUFPOztJQUFsQyxjQUEyQjtJQUEzQixxREFBMkI7OztJQURuRCxBQUxBLHdHQUFrRSwwSEFLckM7Ozs7SUFMZ0IsQUFBOUIsMkRBQThCLCtCQUFtQjs7QUFhdEUsTUFBTSxPQUFPLHVCQUF1Qjt3RkFBdkIsdUJBQXVCO29FQUF2Qix1QkFBdUI7WUFkaEMsQUFqQkEsQUFaQSwwRkFBaUQsNEdBWXRCLDRHQWlCUTs7O1lBN0JMLEFBQWYsa0NBQWUsNkJBQWlCOzs7aUZBMkN0Qyx1QkFBdUI7Y0E5Q25DLFNBQVM7MkJBQ0UscUJBQXFCLFlBQ3JCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NULG1CQUVnQix1QkFBdUIsQ0FBQyxNQUFNO2dCQUd0QyxJQUFJO2tCQUFaLEtBQUs7WUFDRyxjQUFjO2tCQUF0QixLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLOztrRkFKSyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi4vLi4vY2hhcnQvY29tbW9uL3B1YmxpYy1hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtbGVnZW5kLWRyb3Bkb3duJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzQ2FyZDsgZWxzZSBlbHNlVGVtcGxhdGVcIj5cbiAgICAgIDxhdWktaWNvblxuICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgIGljb249XCJwcm9kOmNoYXJ0X2xlZ2VuZFwiXG4gICAgICAgIFthdWlUb29sdGlwXT1cImRyb3Bkb3duSXRlbVRlbXBsYXRlXCJcbiAgICAgICAgW2F1aVRvb2x0aXBDb250ZXh0XT1cInsgZGF0YTogW10gfVwiXG4gICAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgICAgIGF1aVRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbSBlbmRcIlxuICAgICAgICBhdWlUb29sdGlwVHJpZ2dlcj1cImNsaWNrXCJcbiAgICAgICAgYXVpVG9vbHRpcEFjdGl2ZT1cImxlZ2VuZEFjdGl2ZVwiXG4gICAgICA+PC9hdWktaWNvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2Vsc2VUZW1wbGF0ZT5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYXVpLWJ1dHRvblxuICAgICAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgIGljb249XCJwcm9kOmNoYXJ0X2xlZ2VuZFwiXG4gICAgICAgIFthdWlUb29sdGlwXT1cImRyb3Bkb3duSXRlbVRlbXBsYXRlXCJcbiAgICAgICAgW2F1aVRvb2x0aXBDb250ZXh0XT1cInsgZGF0YTogW10gfVwiXG4gICAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgICAgIGF1aVRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbSBlbmRcIlxuICAgICAgICBhdWlUb29sdGlwVHJpZ2dlcj1cImNsaWNrXCJcbiAgICAgICAgYXVpVG9vbHRpcEFjdGl2ZT1cImxlZ2VuZEFjdGl2ZVwiXG4gICAgICA+XG4gICAgICAgIDxhdWktaWNvbiBpY29uPVwicHJvZDpjaGFydF9sZWdlbmRcIj48L2F1aS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSAjZHJvcGRvd25JdGVtVGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YS5sZW5ndGggJiYgIW5vRGF0YTsgZWxzZSBub0RhdGFUZW1wbGF0ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVnZW5kLXZlcnRpY2FsXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsZWdlbmRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNub0RhdGFUZW1wbGF0ZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJuby1kYXRhXCI+e3sgJ25vX2RhdGEnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi1sZWdlbmQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTGVnZW5kRHJvcGRvd25Db21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBMZWdlbmRJdGVtW107XG4gIEBJbnB1dCgpIGxlZ2VuZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgQElucHV0KCkgbm9EYXRhOiBib29sZWFuO1xuICBASW5wdXQoKSBpc0NhcmQ6IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -3,128 +3,126 @@ import { isTemplateRef } from '@alauda/ui';
|
|
|
3
3
|
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, Output, TemplateRef, } from '@angular/core';
|
|
4
4
|
import { get } from 'lodash-es';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
const _c0 = a0 => ({ context: a0 });
|
|
7
|
+
const _c1 = a0 => [a0, "label-symbol"];
|
|
8
|
+
const _c2 = () => ({});
|
|
6
9
|
function LegendComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
7
|
-
i0.ɵɵelementStart(0, "div",
|
|
8
|
-
i0.ɵɵelementContainer(1,
|
|
10
|
+
i0.ɵɵelementStart(0, "div", 5);
|
|
11
|
+
i0.ɵɵelementContainer(1, 6);
|
|
9
12
|
i0.ɵɵelementEnd();
|
|
10
13
|
} if (rf & 2) {
|
|
11
14
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
12
|
-
i0.ɵɵadvance(
|
|
15
|
+
i0.ɵɵadvance();
|
|
13
16
|
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.leftOperation)("ngTemplateOutletContext", ctx_r0.leftOperationContext);
|
|
14
17
|
} }
|
|
15
18
|
function LegendComponent_div_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
16
19
|
i0.ɵɵelementContainerStart(0);
|
|
17
|
-
i0.ɵɵelementContainer(1,
|
|
20
|
+
i0.ɵɵelementContainer(1, 9);
|
|
18
21
|
i0.ɵɵelementContainerEnd();
|
|
19
22
|
} if (rf & 2) {
|
|
20
23
|
i0.ɵɵnextContext(2);
|
|
21
|
-
const
|
|
22
|
-
i0.ɵɵadvance(
|
|
23
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
24
|
+
const legendTemplate_r2 = i0.ɵɵreference(4);
|
|
25
|
+
i0.ɵɵadvance();
|
|
26
|
+
i0.ɵɵproperty("ngTemplateOutlet", legendTemplate_r2);
|
|
24
27
|
} }
|
|
25
|
-
const _c0 = function (a0) { return { context: a0 }; };
|
|
26
28
|
function LegendComponent_div_1_ng_template_2_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
27
29
|
i0.ɵɵelementContainerStart(0);
|
|
28
|
-
i0.ɵɵelementContainer(1,
|
|
30
|
+
i0.ɵɵelementContainer(1, 6);
|
|
29
31
|
i0.ɵɵelementContainerEnd();
|
|
30
32
|
} if (rf & 2) {
|
|
31
|
-
const
|
|
32
|
-
i0.ɵɵadvance(
|
|
33
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
33
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
34
|
+
i0.ɵɵadvance();
|
|
35
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.template)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c0, ctx_r0.legendEntries));
|
|
34
36
|
} }
|
|
35
37
|
function LegendComponent_div_1_ng_template_2_ng_template_1_acl_legend_dropdown_1_Template(rf, ctx) { if (rf & 1) {
|
|
36
38
|
i0.ɵɵelement(0, "acl-legend-dropdown", 12);
|
|
37
39
|
} if (rf & 2) {
|
|
38
|
-
const
|
|
39
|
-
const
|
|
40
|
-
i0.ɵɵproperty("data",
|
|
40
|
+
const ctx_r0 = i0.ɵɵnextContext(4);
|
|
41
|
+
const legendTemplate_r2 = i0.ɵɵreference(4);
|
|
42
|
+
i0.ɵɵproperty("data", ctx_r0.legendEntries)("noData", ctx_r0.noData)("legendTemplate", legendTemplate_r2)("isCard", ctx_r0.mode === "card");
|
|
41
43
|
} }
|
|
42
44
|
function LegendComponent_div_1_ng_template_2_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
43
45
|
i0.ɵɵelementContainerStart(0, 10);
|
|
44
46
|
i0.ɵɵtemplate(1, LegendComponent_div_1_ng_template_2_ng_template_1_acl_legend_dropdown_1_Template, 1, 4, "acl-legend-dropdown", 11);
|
|
45
47
|
i0.ɵɵelementContainerEnd();
|
|
46
48
|
} if (rf & 2) {
|
|
47
|
-
const
|
|
48
|
-
i0.ɵɵproperty("ngSwitch",
|
|
49
|
-
i0.ɵɵadvance(
|
|
49
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
50
|
+
i0.ɵɵproperty("ngSwitch", ctx_r0.template);
|
|
51
|
+
i0.ɵɵadvance();
|
|
50
52
|
i0.ɵɵproperty("ngSwitchCase", "dropdown");
|
|
51
53
|
} }
|
|
52
54
|
function LegendComponent_div_1_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
53
|
-
i0.ɵɵtemplate(0, LegendComponent_div_1_ng_template_2_ng_container_0_Template, 2, 4, "ng-container",
|
|
54
|
-
i0.ɵɵtemplate(1, LegendComponent_div_1_ng_template_2_ng_template_1_Template, 2, 2, "ng-template", null, 9, i0.ɵɵtemplateRefExtractor);
|
|
55
|
+
i0.ɵɵtemplate(0, LegendComponent_div_1_ng_template_2_ng_container_0_Template, 2, 4, "ng-container", 8)(1, LegendComponent_div_1_ng_template_2_ng_template_1_Template, 2, 2, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
|
|
55
56
|
} if (rf & 2) {
|
|
56
|
-
const
|
|
57
|
-
const
|
|
58
|
-
i0.ɵɵproperty("ngIf",
|
|
57
|
+
const builtinTemplate_r3 = i0.ɵɵreference(2);
|
|
58
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
59
|
+
i0.ɵɵproperty("ngIf", ctx_r0.isTemplateRef(ctx_r0.template))("ngIfElse", builtinTemplate_r3);
|
|
59
60
|
} }
|
|
60
61
|
function LegendComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
61
|
-
i0.ɵɵelementStart(0, "div",
|
|
62
|
-
i0.ɵɵtemplate(1, LegendComponent_div_1_ng_container_1_Template, 2, 1, "ng-container",
|
|
63
|
-
i0.ɵɵtemplate(2, LegendComponent_div_1_ng_template_2_Template, 3, 2, "ng-template", null, 7, i0.ɵɵtemplateRefExtractor);
|
|
62
|
+
i0.ɵɵelementStart(0, "div", 7);
|
|
63
|
+
i0.ɵɵtemplate(1, LegendComponent_div_1_ng_container_1_Template, 2, 1, "ng-container", 8)(2, LegendComponent_div_1_ng_template_2_Template, 3, 2, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
|
|
64
64
|
i0.ɵɵelementEnd();
|
|
65
65
|
} if (rf & 2) {
|
|
66
|
-
const
|
|
67
|
-
const
|
|
68
|
-
i0.ɵɵadvance(
|
|
69
|
-
i0.ɵɵproperty("ngIf", !
|
|
66
|
+
const custom_r4 = i0.ɵɵreference(3);
|
|
67
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
68
|
+
i0.ɵɵadvance();
|
|
69
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.template)("ngIfElse", custom_r4);
|
|
70
70
|
} }
|
|
71
71
|
function LegendComponent_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
72
|
-
i0.ɵɵelementStart(0, "div",
|
|
73
|
-
i0.ɵɵelementContainer(1,
|
|
72
|
+
i0.ɵɵelementStart(0, "div", 5);
|
|
73
|
+
i0.ɵɵelementContainer(1, 9);
|
|
74
74
|
i0.ɵɵelementEnd();
|
|
75
75
|
} if (rf & 2) {
|
|
76
|
-
const
|
|
77
|
-
i0.ɵɵadvance(
|
|
78
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
76
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
77
|
+
i0.ɵɵadvance();
|
|
78
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.rightOperation);
|
|
79
79
|
} }
|
|
80
80
|
function LegendComponent_ng_template_3_li_1_Template(rf, ctx) { if (rf & 1) {
|
|
81
|
-
const
|
|
81
|
+
const _r5 = i0.ɵɵgetCurrentView();
|
|
82
82
|
i0.ɵɵelementStart(0, "li", 16)(1, "aui-checkbox", 17);
|
|
83
|
-
i0.ɵɵ
|
|
83
|
+
i0.ɵɵtwoWayListener("ngModelChange", function LegendComponent_ng_template_3_li_1_Template_aui_checkbox_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.allSelected, $event) || (ctx_r0.allSelected = $event); return i0.ɵɵresetView($event); });
|
|
84
|
+
i0.ɵɵlistener("ngModelChange", function LegendComponent_ng_template_3_li_1_Template_aui_checkbox_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.allSelect($event)); });
|
|
84
85
|
i0.ɵɵtext(2);
|
|
85
86
|
i0.ɵɵpipe(3, "translate");
|
|
86
87
|
i0.ɵɵelementEnd()();
|
|
87
88
|
} if (rf & 2) {
|
|
88
|
-
const
|
|
89
|
-
i0.ɵɵadvance(
|
|
90
|
-
i0.ɵɵ
|
|
91
|
-
i0.ɵɵadvance(
|
|
92
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
89
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
90
|
+
i0.ɵɵadvance();
|
|
91
|
+
i0.ɵɵtwoWayProperty("ngModel", ctx_r0.allSelected);
|
|
92
|
+
i0.ɵɵadvance();
|
|
93
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r0.selectAllName || i0.ɵɵpipeBind1(3, 2, "select_all"), " ");
|
|
93
94
|
} }
|
|
94
|
-
const _c1 = function (a0) { return [a0, "label-symbol"]; };
|
|
95
|
-
const _c2 = function () { return {}; };
|
|
96
95
|
function LegendComponent_ng_template_3_li_2_Template(rf, ctx) { if (rf & 1) {
|
|
97
|
-
const
|
|
96
|
+
const _r6 = i0.ɵɵgetCurrentView();
|
|
98
97
|
i0.ɵɵelementStart(0, "li", 18);
|
|
99
|
-
i0.ɵɵlistener("click", function LegendComponent_ng_template_3_li_2_Template_li_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const legend_r17 = restoredCtx.$implicit; const ctx_r18 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r18.selected(legend_r17)); });
|
|
100
98
|
i0.ɵɵpipe(1, "translate");
|
|
99
|
+
i0.ɵɵlistener("click", function LegendComponent_ng_template_3_li_2_Template_li_click_0_listener() { const legend_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.selected(legend_r7)); });
|
|
101
100
|
i0.ɵɵelement(2, "span", 19);
|
|
102
101
|
i0.ɵɵelementStart(3, "span", 20);
|
|
103
102
|
i0.ɵɵtext(4);
|
|
104
103
|
i0.ɵɵpipe(5, "translate");
|
|
105
104
|
i0.ɵɵelementEnd()();
|
|
106
105
|
} if (rf & 2) {
|
|
107
|
-
const
|
|
108
|
-
const
|
|
109
|
-
i0.ɵɵclassProp("disable", !
|
|
110
|
-
i0.ɵɵproperty("title", i0.ɵɵpipeBind1(1, 9,
|
|
106
|
+
const legend_r7 = ctx.$implicit;
|
|
107
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
108
|
+
i0.ɵɵclassProp("disable", !legend_r7.activate || ctx_r0.noData)("forbid", ctx_r0.noData);
|
|
109
|
+
i0.ɵɵproperty("title", i0.ɵɵpipeBind1(1, 9, legend_r7.activate ? "click_hide" : "click_show"));
|
|
111
110
|
i0.ɵɵadvance(2);
|
|
112
|
-
i0.ɵɵstyleProp("background",
|
|
113
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(15, _c1,
|
|
111
|
+
i0.ɵɵstyleProp("background", legend_r7.color);
|
|
112
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(15, _c1, ctx_r0.symbolName));
|
|
114
113
|
i0.ɵɵadvance(2);
|
|
115
|
-
i0.ɵɵtextInterpolate(
|
|
114
|
+
i0.ɵɵtextInterpolate(ctx_r0.translation ? i0.ɵɵpipeBind3(5, 11, legend_r7.name, i0.ɵɵpureFunction0(17, _c2), true) : legend_r7.name);
|
|
116
115
|
} }
|
|
117
116
|
function LegendComponent_ng_template_3_Template(rf, ctx) { if (rf & 1) {
|
|
118
117
|
i0.ɵɵelementStart(0, "ul", 13);
|
|
119
|
-
i0.ɵɵtemplate(1, LegendComponent_ng_template_3_li_1_Template, 4, 4, "li", 14);
|
|
120
|
-
i0.ɵɵtemplate(2, LegendComponent_ng_template_3_li_2_Template, 6, 18, "li", 15);
|
|
118
|
+
i0.ɵɵtemplate(1, LegendComponent_ng_template_3_li_1_Template, 4, 4, "li", 14)(2, LegendComponent_ng_template_3_li_2_Template, 6, 18, "li", 15);
|
|
121
119
|
i0.ɵɵelementEnd();
|
|
122
120
|
} if (rf & 2) {
|
|
123
|
-
const
|
|
124
|
-
i0.ɵɵadvance(
|
|
125
|
-
i0.ɵɵproperty("ngIf", !
|
|
126
|
-
i0.ɵɵadvance(
|
|
127
|
-
i0.ɵɵproperty("ngForOf",
|
|
121
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
122
|
+
i0.ɵɵadvance();
|
|
123
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.noData && ctx_r0.selectAllOperation && ctx_r0.template === "dropdown");
|
|
124
|
+
i0.ɵɵadvance();
|
|
125
|
+
i0.ɵɵproperty("ngForOf", ctx_r0.legendEntries);
|
|
128
126
|
} }
|
|
129
127
|
export class LegendPayload {
|
|
130
128
|
}
|
|
@@ -219,23 +217,20 @@ export class LegendComponent {
|
|
|
219
217
|
this.legendInstance.changeLegend(this.legendEntries[0]);
|
|
220
218
|
}
|
|
221
219
|
static { this.ɵfac = function LegendComponent_Factory(t) { return new (t || LegendComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); }; }
|
|
222
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LegendComponent, selectors: [["acl-base-legend"]], inputs: { symbol: "symbol", template: "template", mode: "mode", translation: "translation", leftOperation: "leftOperation", leftOperationContext: "leftOperationContext", rightOperation: "rightOperation", hideLegend: "hideLegend", selectAllOperation: "selectAllOperation", selectAllName: "selectAllName", chart: "chart" }, outputs: { changeLegend: "changeLegend" }, features: [i0.ɵɵNgOnChangesFeature], decls: 5, vars: 3, consts: [["
|
|
223
|
-
i0.ɵɵtemplate(0, LegendComponent_div_0_Template, 2, 2, "div", 0);
|
|
224
|
-
i0.ɵɵtemplate(1, LegendComponent_div_1_Template, 4, 2, "div", 1);
|
|
225
|
-
i0.ɵɵtemplate(2, LegendComponent_div_2_Template, 2, 1, "div", 0);
|
|
226
|
-
i0.ɵɵtemplate(3, LegendComponent_ng_template_3_Template, 3, 2, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
|
|
220
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LegendComponent, selectors: [["acl-base-legend"]], inputs: { symbol: "symbol", template: "template", mode: "mode", translation: "translation", leftOperation: "leftOperation", leftOperationContext: "leftOperationContext", rightOperation: "rightOperation", hideLegend: "hideLegend", selectAllOperation: "selectAllOperation", selectAllName: "selectAllName", chart: "chart" }, outputs: { changeLegend: "changeLegend" }, features: [i0.ɵɵNgOnChangesFeature], decls: 5, vars: 3, consts: [["legendTemplate", ""], ["custom", ""], ["builtinTemplate", ""], ["class", "operation", 4, "ngIf"], ["class", "legend-wrap operation", 4, "ngIf"], [1, "operation"], [3, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "legend-wrap", "operation"], [4, "ngIf", "ngIfElse"], [3, "ngTemplateOutlet"], [3, "ngSwitch"], ["class", "legend-vertical", 3, "data", "noData", "legendTemplate", "isCard", 4, "ngSwitchCase"], [1, "legend-vertical", 3, "data", "noData", "legendTemplate", "isCard"], [1, "legend-labels"], ["class", "select-all", 4, "ngIf"], ["class", "legend-label", 3, "disable", "forbid", "title", "click", 4, "ngFor", "ngForOf"], [1, "select-all"], [3, "ngModelChange", "ngModel"], [1, "legend-label", 3, "click", "title"], [3, "ngClass"], [1, "label-name"]], template: function LegendComponent_Template(rf, ctx) { if (rf & 1) {
|
|
221
|
+
i0.ɵɵtemplate(0, LegendComponent_div_0_Template, 2, 2, "div", 3)(1, LegendComponent_div_1_Template, 4, 2, "div", 4)(2, LegendComponent_div_2_Template, 2, 1, "div", 3)(3, LegendComponent_ng_template_3_Template, 3, 2, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
|
|
227
222
|
} if (rf & 2) {
|
|
228
223
|
i0.ɵɵproperty("ngIf", ctx.isTemplateRef(ctx.leftOperation));
|
|
229
|
-
i0.ɵɵadvance(
|
|
224
|
+
i0.ɵɵadvance();
|
|
230
225
|
i0.ɵɵproperty("ngIf", !ctx.hideLegend);
|
|
231
|
-
i0.ɵɵadvance(
|
|
226
|
+
i0.ɵɵadvance();
|
|
232
227
|
i0.ɵɵproperty("ngIf", ctx.isTemplateRef(ctx.rightOperation));
|
|
233
228
|
} }, styles: ["[_nghost-%COMP%]{flex:1;display:flex;justify-content:flex-end;align-items:center}.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:12px}.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))}.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:6px;height:6px;border-radius:50%;display:inline-block}.operation[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;margin-left:8px}.select-all[_ngcontent-%COMP%] .aui-checkbox{font-size:12px;line-height:16px;margin-bottom:8px}"], changeDetection: 0 }); }
|
|
234
229
|
}
|
|
235
|
-
(
|
|
230
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LegendComponent, [{
|
|
236
231
|
type: Component,
|
|
237
232
|
args: [{ selector: 'acl-base-legend', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"operation\"\n *ngIf=\"isTemplateRef(leftOperation)\"\n>\n <ng-container\n [ngTemplateOutlet]=\"leftOperation\"\n [ngTemplateOutletContext]=\"leftOperationContext\"\n ></ng-container>\n</div>\n\n<div\n class=\"legend-wrap operation\"\n *ngIf=\"!hideLegend\"\n>\n <ng-container *ngIf=\"!template; else custom\">\n <ng-container [ngTemplateOutlet]=\"legendTemplate\"></ng-container>\n </ng-container>\n <ng-template #custom>\n <ng-container *ngIf=\"isTemplateRef(template); else builtinTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"$any(template)\"\n [ngTemplateOutletContext]=\"{ context: legendEntries }\"\n ></ng-container>\n </ng-container>\n <ng-template #builtinTemplate>\n <ng-container [ngSwitch]=\"template\">\n <acl-legend-dropdown\n class=\"legend-vertical\"\n *ngSwitchCase=\"'dropdown'\"\n [data]=\"legendEntries\"\n [noData]=\"noData\"\n [legendTemplate]=\"legendTemplate\"\n [isCard]=\"mode === 'card'\"\n >\n </acl-legend-dropdown>\n </ng-container>\n </ng-template>\n </ng-template>\n</div>\n\n<div\n class=\"operation\"\n *ngIf=\"isTemplateRef(rightOperation)\"\n>\n <ng-container [ngTemplateOutlet]=\"rightOperation\"></ng-container>\n</div>\n\n<ng-template #legendTemplate>\n <ul class=\"legend-labels\">\n <li\n class=\"select-all\"\n *ngIf=\"!noData && selectAllOperation && template === 'dropdown'\"\n >\n <aui-checkbox\n [(ngModel)]=\"allSelected\"\n (ngModelChange)=\"allSelect($event)\"\n >\n {{ selectAllName || ('select_all' | translate) }}\n </aui-checkbox>\n </li>\n <li\n class=\"legend-label\"\n [class.disable]=\"!legend.activate || noData\"\n [class.forbid]=\"noData\"\n [title]=\"(legend.activate ? 'click_hide' : 'click_show') | translate\"\n *ngFor=\"let legend of legendEntries\"\n (click)=\"selected(legend)\"\n >\n <span\n [ngClass]=\"[symbolName, 'label-symbol']\"\n [style.background]=\"legend.color\"\n >\n </span>\n <span class=\"label-name\">{{\n translation ? (legend.name | translate: {}:true) : legend.name\n }}</span>\n </li>\n </ul>\n</ng-template>\n", styles: [":host{flex:1;display:flex;justify-content:flex-end;align-items:center}.legend-wrap{display:inline-block}.legend-wrap ul,.legend-wrap li{padding:0;margin:0;list-style:none}.legend-wrap .legend-labels{display:flex}.legend-wrap .legend-label{display:flex;align-items:center;cursor:pointer;justify-content:center}.legend-wrap .legend-label:not(:last-child){margin-right:12px}.legend-wrap .forbid{cursor:no-drop}.legend-wrap .label-name{font-size:12px;color:rgb(var(--aui-color-secondary-text))}.legend-wrap .label-symbol{margin-right:4px}.disable .label-symbol{background:rgb(var(--aui-color-n-6))!important}.disable .label-name{color:rgb(var(--aui-color-n-6))}.symbol-square{width:12px;height:12px;display:inline-block}.symbol-line{width:12px;height:2px;display:inline-block}.symbol-circle{width:6px;height:6px;border-radius:50%;display:inline-block}.operation{display:flex;justify-content:center;align-items:center;margin-left:8px}.select-all ::ng-deep .aui-checkbox{font-size:12px;line-height:16px;margin-bottom:8px}\n"] }]
|
|
238
|
-
}],
|
|
233
|
+
}], () => [{ type: i0.ChangeDetectorRef }], { symbol: [{
|
|
239
234
|
type: Input
|
|
240
235
|
}], template: [{
|
|
241
236
|
type: Input
|
|
@@ -260,4 +255,5 @@ export class LegendComponent {
|
|
|
260
255
|
}], changeLegend: [{
|
|
261
256
|
type: Output
|
|
262
257
|
}] }); })();
|
|
263
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy92aWV3LWNoYXJ0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3ZpZXctY2hhcnQvbGVnZW5kL2xlZ2VuZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsSUFBSSxFQUdKLGFBQWEsRUFDYixVQUFVLEdBR1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRU4sV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7OztJQ3RCaEMsOEJBR0M7SUFDQywyQkFHZ0I7SUFDbEIsaUJBQU07OztJQUhGLGVBQWtDO0lBQWxDLHVEQUFrQyx3REFBQTs7O0lBU3BDLDZCQUE2QztJQUMzQywyQkFBaUU7SUFDbkUsMEJBQWU7Ozs7SUFEQyxlQUFtQztJQUFuQyxzQ0FBbUM7Ozs7SUFHakQsNkJBQW9FO0lBQ2xFLDJCQUdnQjtJQUNsQiwwQkFBZTs7O0lBSFgsZUFBbUM7SUFBbkMsa0RBQW1DLDZFQUFBOzs7SUFNbkMsMENBUXNCOzs7O0lBTHBCLDRDQUFzQiwwQkFBQSx1QkFBQSxtQ0FBQTs7O0lBSjFCLGlDQUFvQztJQUNsQyxtSUFRc0I7SUFDeEIsMEJBQWU7OztJQVZELDJDQUFxQjtJQUc5QixlQUF3QjtJQUF4Qix5Q0FBd0I7OztJQVYvQixzR0FLZTtJQUNmLHFJQVljOzs7O0lBbEJDLDREQUErQixpQkFBQTs7O0lBUmxELDhCQUdDO0lBQ0Msd0ZB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LGVBQWlCO1lBQWpCLHNDQUFpQjtZQThCakIsZUFBbUM7WUFBbkMsNERBQW1DOzs7dUZETnpCLGVBQWU7Y0FOM0IsU0FBUzsyQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTTtvRUFHdEMsTUFBTTtrQkFBZCxLQUFLO1lBRUcsUUFBUTtrQkFBaEIsS0FBSztZQUVHLElBQUk7a0JBQVosS0FBSztZQUVHLFdBQVc7a0JBQW5CLEtBQUs7WUFFRyxhQUFhO2tCQUFyQixLQUFLO1lBRUcsb0JBQW9CO2tCQUE1QixLQUFLO1lBRUcsY0FBYztrQkFBdEIsS0FBSztZQUVHLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxrQkFBa0I7a0JBQTFCLEtBQUs7WUFFRyxhQUFhO2tCQUFyQixLQUFLO1lBRUcsS0FBSztrQkFBYixLQUFLO1lBRUksWUFBWTtrQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFZpZXcsXG4gIExlZ2VuZCBhcyBDaGFydExlZ2VuZCxcbiAgTGVnZW5kSXRlbSxcbiAgTEVHRU5EX0VWRU5UUyxcbiAgVklFV19IT09LUyxcbiAgQ2hhcnREYXRhLFxuICBEYXRhLFxufSBmcm9tICdAYWxhdWRhL2NoYXJ0JztcbmltcG9ydCB7IGlzVGVtcGxhdGVSZWYgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgeyBTdHJpbmdNYXAgfSBmcm9tICcuLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgY2xhc3MgTGVnZW5kUGF5bG9hZCB7XG4gIGxlZ2VuZDogTGVnZW5kSXRlbTtcbiAgc291cmNlOiBMZWdlbmRJdGVtW107XG59XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtYmFzZS1sZWdlbmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGVnZW5kLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGVnZW5kLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBMZWdlbmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHN5bWJvbDogJ2NpcmNsZScgfCAnc3F1YXJlJyB8ICdsaW5lJyA9ICdsaW5lJztcblxuICBASW5wdXQoKSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBzdHJpbmcgfCAnZHJvcGRvd24nO1xuXG4gIEBJbnB1dCgpIG1vZGU6ICdjYXJkJyB8ICdkZWZhdWx0JyA9ICdkZWZhdWx0JztcblxuICBASW5wdXQoKSB0cmFuc2xhdGlvbiA9IHRydWU7XG5cbiAgQElucHV0KCkgbGVmdE9wZXJhdGlvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgbGVmdE9wZXJhdGlvbkNvbnRleHQ6IFN0cmluZ01hcDtcblxuICBASW5wdXQoKSByaWdodE9wZXJhdGlvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgaGlkZUxlZ2VuZDogYm9vbGVhbjtcblxuICBASW5wdXQoKSBzZWxlY3RBbGxPcGVyYXRpb24gPSBmYWxzZTtcblxuICBASW5wdXQoKSBzZWxlY3RBbGxOYW1lOiBzdHJpbmc7XG5cbiAgQElucHV0KCkgY2hhcnQ6IFZpZXc7XG5cbiAgQE91dHB1dCgpIGNoYW5nZUxlZ2VuZCA9IG5ldyBFdmVudEVtaXR0ZXI8TGVnZW5kSXRlbVtdPigpO1xuXG4gIGdldCBub0RhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMubGVnZW5kRW50cmllcz8ubGVuZ3RoID09PSAwIHx8ICF0aGlzLmxlZ2VuZEVudHJpZXM7XG4gIH1cblxuICBnZXQgbGVnZW5kSW5zdGFuY2UoKTogQ2hhcnRMZWdlbmQge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0Py5nZXRDb250cm9sbGVyKCdsZWdlbmQnKTtcbiAgfVxuXG4gIGxlZ2VuZEVudHJpZXM6IExlZ2VuZEl0ZW1bXSA9IFtdO1xuXG4gIGlzVGVtcGxhdGVSZWYgPSBpc1RlbXBsYXRlUmVmO1xuXG4gIGFsbFNlbGVjdGVkID0gdHJ1ZTtcblxuICBnZXQgc3ltYm9sTmFtZSgpIHtcbiAgICByZXR1cm4gYHN5bWJvbC0ke3RoaXMuc3ltYm9sfWA7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdPbkNoYW5nZXMoeyBjaGFydCB9OiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYXJ0LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5sZWdlbmRFbnRyaWVzID0gdGhpcy5sZWdlbmRJbnN0YW5jZT8ubGVnZW5kSXRlbXM7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5sZWdlbmRFbnRyaWVzID0gdGhpcy5sZWdlbmRJbnN0YW5jZT8ubGVnZW5kSXRlbXM7XG4gICAgdGhpcy5jaGFydD8ub24oVklFV19IT09LUy5TRVRfREFUQSwgKGRhdGE6IENoYXJ0RGF0YVtdKSA9PiB7XG4gICAgICBjb25zdCBpc0JhciA9IHRoaXMuY2hhcnQub3B0aW9ucy50eXBlID09PSAnYmFyJztcbiAgICAgIGNvbnN0IHZhbHVlcyA9IGRhdGEuZmxhdE1hcChpdGVtID0+IGl0ZW0udmFsdWVzKSBhcyBBcnJheTxcbiAgICAgICAgRGF0YTx7IHg6IHN0cmluZzsgY29sb3I6IHN0cmluZzsgbmFtZTogc3RyaW5nOyB5OiBudW1iZXIgfT5cbiAgICAgID47XG4gICAgICB0aGlzLmxlZ2VuZEVudHJpZXMgPSBpc0JhclxuICAgICAgICA/IHZhbHVlcy5yZWR1Y2U8QXJyYXk8RGF0YTxMZWdlbmRJdGVtPj4+KFxuICAgICAgICAgICAgKHByZSwgY3VyKSA9PiBbXG4gICAgICAgICAgICAgIC4uLnByZSxcbiAgICAgICAgICAgICAgLi4uKHByZS5zb21lKGQgPT4gZC5uYW1lID09PSBjdXIueClcbiAgICAgICAgICAgICAgICA/IFtdXG4gICAgICAgICAgICAgICAgOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBjdXIueCxcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogY3VyLmNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGl2YXRlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgIGhvdmVyOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogY3VyLnksXG4gICAgICAgICAgICAgICAgICAgICAgc291cmNlOiBjdXIsXG4gICAgICAgICAgICAgICAgICAgICAgdW5pdDogZ2V0KGN1ciwgJ3VuaXQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAuLi5jdXIsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbXSxcbiAgICAgICAgICApXG4gICAgICAgIDogZGF0YS5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBkKSA9PiBbXG4gICAgICAgICAgICAgIC4uLmFjYyxcbiAgICAgICAgICAgICAgLi4uKGQubmFtZVxuICAgICAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgbmFtZTogZC5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBkLmNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgIGFjdGl2YXRlOiAhdGhpcy5sZWdlbmRJbnN0YW5jZT8uZGlzYWJsZWRMZWdlbmQuaGFzKFxuICAgICAgICAgICAgICAgICAgICAgICAgZC5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgaG92ZXI6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBkLnZhbHVlcz8uW2QudmFsdWVzPy5sZW5ndGggLSAxXT8ueSxcbiAgICAgICAgICAgICAgICAgICAgICBzb3VyY2U6IGQsXG4gICAgICAgICAgICAgICAgICAgICAgdW5pdDogZ2V0KGQsICd1bml0JyksXG4gICAgICAgICAgICAgICAgICAgICAgLi4uZCxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICA6IFtdKSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbXSxcbiAgICAgICAgICApO1xuICAgICAgaWYgKHRoaXMubGVnZW5kSW5zdGFuY2U/LmRpc2FibGVkTGVnZW5kLnNpemUpIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VMZWdlbmQubmV4dCh0aGlzLmxlZ2VuZEVudHJpZXMpO1xuICAgICAgfVxuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmNoYXJ0Py5vbihMRUdFTkRfRVZFTlRTLkNMSUNLLCAoZGF0YTogTGVnZW5kUGF5bG9hZCkgPT4ge1xuICAgICAgY29uc3QgeyBsZWdlbmQsIHNvdXJjZSB9ID0gZGF0YTtcbiAgICAgIGNvbnN0IGxlZ2VuZEl0ZW0gPSB0aGlzLmxlZ2VuZEVudHJpZXMuZmluZChcbiAgICAgICAgaXRlbSA9PiBpdGVtLm5hbWUgPT09IGxlZ2VuZC5uYW1lLFxuICAgICAgKTtcbiAgICAgIGxlZ2VuZEl0ZW0uYWN0aXZhdGUgPSAhbGVnZW5kLmFjdGl2YXRlO1xuICAgICAgdGhpcy5jaGFuZ2VMZWdlbmQubmV4dChzb3VyY2UpO1xuICAgIH0pO1xuICB9XG5cbiAgc2VsZWN0ZWQobGVnZW5kOiBMZWdlbmRJdGVtKSB7XG4gICAgdGhpcy5sZWdlbmRJbnN0YW5jZS5jaGFuZ2VMZWdlbmQobGVnZW5kKTtcbiAgfVxuXG4gIGFsbFNlbGVjdChzZWxlY3Q6IGJvb2xlYW4pIHtcbiAgICBpZiAoc2VsZWN0KSB7XG4gICAgICB0aGlzLmxlZ2VuZEluc3RhbmNlLmxlZ2VuZFNlbGVjdEFsbCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxlZ2VuZEluc3RhbmNlLmxlZ2VuZFVuc2VsZWN0QWxsKCk7XG4gICAgfVxuICAgIHRoaXMubGVnZW5kSW5zdGFuY2UuY2hhbmdlTGVnZW5kKHRoaXMubGVnZW5kRW50cmllc1swXSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJvcGVyYXRpb25cIlxuICAqbmdJZj1cImlzVGVtcGxhdGVSZWYobGVmdE9wZXJhdGlvbilcIlxuPlxuICA8bmctY29udGFpbmVyXG4gICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibGVmdE9wZXJhdGlvblwiXG4gICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cImxlZnRPcGVyYXRpb25Db250ZXh0XCJcbiAgPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxkaXZcbiAgY2xhc3M9XCJsZWdlbmQtd3JhcCBvcGVyYXRpb25cIlxuICAqbmdJZj1cIiFoaWRlTGVnZW5kXCJcbj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiF0ZW1wbGF0ZTsgZWxzZSBjdXN0b21cIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxlZ2VuZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2N1c3RvbT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNUZW1wbGF0ZVJlZih0ZW1wbGF0ZSk7IGVsc2UgYnVpbHRpblRlbXBsYXRlXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIiRhbnkodGVtcGxhdGUpXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgY29udGV4dDogbGVnZW5kRW50cmllcyB9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2J1aWx0aW5UZW1wbGF0ZT5cbiAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInRlbXBsYXRlXCI+XG4gICAgICAgIDxhY2wtbGVnZW5kLWRyb3Bkb3duXG4gICAgICAgICAgY2xhc3M9XCJsZWdlbmQtdmVydGljYWxcIlxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInZHJvcGRvd24nXCJcbiAgICAgICAgICBbZGF0YV09XCJsZWdlbmRFbnRyaWVzXCJcbiAgICAgICAgICBbbm9EYXRhXT1cIm5vRGF0YVwiXG4gICAgICAgICAgW2xlZ2VuZFRlbXBsYXRlXT1cImxlZ2VuZFRlbXBsYXRlXCJcbiAgICAgICAgICBbaXNDYXJkXT1cIm1vZGUgPT09ICdjYXJkJ1wiXG4gICAgICAgID5cbiAgICAgICAgPC9hY2wtbGVnZW5kLWRyb3Bkb3duPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48ZGl2XG4gIGNsYXNzPVwib3BlcmF0aW9uXCJcbiAgKm5nSWY9XCJpc1RlbXBsYXRlUmVmKHJpZ2h0T3BlcmF0aW9uKVwiXG4+XG4gIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwicmlnaHRPcGVyYXRpb25cIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2xlZ2VuZFRlbXBsYXRlPlxuICA8dWwgY2xhc3M9XCJsZWdlbmQtbGFiZWxzXCI+XG4gICAgPGxpXG4gICAgICBjbGFzcz1cInNlbGVjdC1hbGxcIlxuICAgICAgKm5nSWY9XCIhbm9EYXRhICYmIHNlbGVjdEFsbE9wZXJhdGlvbiAmJiB0ZW1wbGF0ZSA9PT0gJ2Ryb3Bkb3duJ1wiXG4gICAgPlxuICAgICAgPGF1aS1jaGVja2JveFxuICAgICAgICBbKG5nTW9kZWwpXT1cImFsbFNlbGVjdGVkXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiYWxsU2VsZWN0KCRldmVudClcIlxuICAgICAgPlxuICAgICAgICB7eyBzZWxlY3RBbGxOYW1lIHx8ICgnc2VsZWN0X2FsbCcgfCB0cmFuc2xhdGUpIH19XG4gICAgICA8L2F1aS1jaGVja2JveD5cbiAgICA8L2xpPlxuICAgIDxsaVxuICAgICAgY2xhc3M9XCJsZWdlbmQtbGFiZWxcIlxuICAgICAgW2NsYXNzLmRpc2FibGVdPVwiIWxlZ2VuZC5hY3RpdmF0ZSB8fCBub0RhdGFcIlxuICAgICAgW2NsYXNzLmZvcmJpZF09XCJub0RhdGFcIlxuICAgICAgW3RpdGxlXT1cIihsZWdlbmQuYWN0aXZhdGUgPyAnY2xpY2tfaGlkZScgOiAnY2xpY2tfc2hvdycpIHwgdHJhbnNsYXRlXCJcbiAgICAgICpuZ0Zvcj1cImxldCBsZWdlbmQgb2YgbGVnZW5kRW50cmllc1wiXG4gICAgICAoY2xpY2spPVwic2VsZWN0ZWQobGVnZW5kKVwiXG4gICAgPlxuICAgICAgPHNwYW5cbiAgICAgICAgW25nQ2xhc3NdPVwiW3N5bWJvbE5hbWUsICdsYWJlbC1zeW1ib2wnXVwiXG4gICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kXT1cImxlZ2VuZC5jb2xvclwiXG4gICAgICA+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cImxhYmVsLW5hbWVcIj57e1xuICAgICAgICB0cmFuc2xhdGlvbiA/IChsZWdlbmQubmFtZSB8IHRyYW5zbGF0ZToge306dHJ1ZSkgOiBsZWdlbmQubmFtZVxuICAgICAgfX08L3NwYW4+XG4gICAgPC9saT5cbiAgPC91bD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
258
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendComponent, { className: "LegendComponent" }); })();
|
|
259
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy92aWV3LWNoYXJ0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3ZpZXctY2hhcnQvbGVnZW5kL2xlZ2VuZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsSUFBSSxFQUdKLGFBQWEsRUFDYixVQUFVLEdBR1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRU4sV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7Ozs7OztJQ3RCaEMsOEJBR0M7SUFDQywyQkFHZ0I7SUFDbEIsaUJBQU07OztJQUhGLGNBQWtDO0lBQ2xDLEFBREEsdURBQWtDLHdEQUNjOzs7SUFRbEQsNkJBQTZDO0lBQzNDLDJCQUFpRTs7Ozs7SUFBbkQsY0FBbUM7SUFBbkMsb0RBQW1DOzs7SUFHakQsNkJBQW9FO0lBQ2xFLDJCQUdnQjs7OztJQUZkLGNBQW1DO0lBQ25DLEFBREEsa0RBQW1DLDZFQUNtQjs7O0lBS3RELDBDQVFzQjs7OztJQUZwQixBQURBLEFBREEsQUFEQSwyQ0FBc0IseUJBQ0wscUNBQ2dCLGtDQUNQOzs7SUFQOUIsaUNBQW9DO0lBQ2xDLG1JQU9DOzs7O0lBUlcsMENBQXFCO0lBRzlCLGNBQXdCO0lBQXhCLHlDQUF3Qjs7O0lBSi9CLEFBTkEsc0dBQW9FLHdIQU10Qzs7OztJQU5nQixBQUEvQiw0REFBK0IsZ0NBQW9COzs7SUFSdEUsOEJBR0M7SUFJ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LEFBOUJBLEFBVkEsZ0VBR0MsbURBVUEsbURBOEJBLG9HQUk0Qjs7WUE3QzFCLDJEQUFrQztZQVVsQyxjQUFpQjtZQUFqQixzQ0FBaUI7WUE4QmpCLGNBQW1DO1lBQW5DLDREQUFtQzs7O2lGRE56QixlQUFlO2NBTjNCLFNBQVM7MkJBQ0UsaUJBQWlCLG1CQUdWLHVCQUF1QixDQUFDLE1BQU07a0RBR3RDLE1BQU07a0JBQWQsS0FBSztZQUVHLFFBQVE7a0JBQWhCLEtBQUs7WUFFRyxJQUFJO2tCQUFaLEtBQUs7WUFFRyxXQUFXO2tCQUFuQixLQUFLO1lBRUcsYUFBYTtrQkFBckIsS0FBSztZQUVHLG9CQUFvQjtrQkFBNUIsS0FBSztZQUVHLGNBQWM7a0JBQXRCLEtBQUs7WUFFRyxVQUFVO2tCQUFsQixLQUFLO1lBRUcsa0JBQWtCO2tCQUExQixLQUFLO1lBRUcsYUFBYTtrQkFBckIsS0FBSztZQUVHLEtBQUs7a0JBQWIsS0FBSztZQUVJLFlBQVk7a0JBQXJCLE1BQU07O2tGQXZCSSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgVmlldyxcbiAgTGVnZW5kIGFzIENoYXJ0TGVnZW5kLFxuICBMZWdlbmRJdGVtLFxuICBMRUdFTkRfRVZFTlRTLFxuICBWSUVXX0hPT0tTLFxuICBDaGFydERhdGEsXG4gIERhdGEsXG59IGZyb20gJ0BhbGF1ZGEvY2hhcnQnO1xuaW1wb3J0IHsgaXNUZW1wbGF0ZVJlZiB9IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IFN0cmluZ01hcCB9IGZyb20gJy4uLy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmV4cG9ydCBjbGFzcyBMZWdlbmRQYXlsb2FkIHtcbiAgbGVnZW5kOiBMZWdlbmRJdGVtO1xuICBzb3VyY2U6IExlZ2VuZEl0ZW1bXTtcbn1cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1iYXNlLWxlZ2VuZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sZWdlbmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sZWdlbmQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIExlZ2VuZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgc3ltYm9sOiAnY2lyY2xlJyB8ICdzcXVhcmUnIHwgJ2xpbmUnID0gJ2xpbmUnO1xuXG4gIEBJbnB1dCgpIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IHN0cmluZyB8ICdkcm9wZG93bic7XG5cbiAgQElucHV0KCkgbW9kZTogJ2NhcmQnIHwgJ2RlZmF1bHQnID0gJ2RlZmF1bHQnO1xuXG4gIEBJbnB1dCgpIHRyYW5zbGF0aW9uID0gdHJ1ZTtcblxuICBASW5wdXQoKSBsZWZ0T3BlcmF0aW9uOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBsZWZ0T3BlcmF0aW9uQ29udGV4dDogU3RyaW5nTWFwO1xuXG4gIEBJbnB1dCgpIHJpZ2h0T3BlcmF0aW9uOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBoaWRlTGVnZW5kOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHNlbGVjdEFsbE9wZXJhdGlvbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIHNlbGVjdEFsbE5hbWU6IHN0cmluZztcblxuICBASW5wdXQoKSBjaGFydDogVmlldztcblxuICBAT3V0cHV0KCkgY2hhbmdlTGVnZW5kID0gbmV3IEV2ZW50RW1pdHRlcjxMZWdlbmRJdGVtW10+KCk7XG5cbiAgZ2V0IG5vRGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5sZWdlbmRFbnRyaWVzPy5sZW5ndGggPT09IDAgfHwgIXRoaXMubGVnZW5kRW50cmllcztcbiAgfVxuXG4gIGdldCBsZWdlbmRJbnN0YW5jZSgpOiBDaGFydExlZ2VuZCB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnQ/LmdldENvbnRyb2xsZXIoJ2xlZ2VuZCcpO1xuICB9XG5cbiAgbGVnZW5kRW50cmllczogTGVnZW5kSXRlbVtdID0gW107XG5cbiAgaXNUZW1wbGF0ZVJlZiA9IGlzVGVtcGxhdGVSZWY7XG5cbiAgYWxsU2VsZWN0ZWQgPSB0cnVlO1xuXG4gIGdldCBzeW1ib2xOYW1lKCkge1xuICAgIHJldHVybiBgc3ltYm9sLSR7dGhpcy5zeW1ib2x9YDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ09uQ2hhbmdlcyh7IGNoYXJ0IH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhcnQuY3VycmVudFZhbHVlKSB7XG4gICAgICB0aGlzLmxlZ2VuZEVudHJpZXMgPSB0aGlzLmxlZ2VuZEluc3RhbmNlPy5sZWdlbmRJdGVtcztcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxlZ2VuZEVudHJpZXMgPSB0aGlzLmxlZ2VuZEluc3RhbmNlPy5sZWdlbmRJdGVtcztcbiAgICB0aGlzLmNoYXJ0Py5vbihWSUVXX0hPT0tTLlNFVF9EQVRBLCAoZGF0YTogQ2hhcnREYXRhW10pID0+IHtcbiAgICAgIGNvbnN0IGlzQmFyID0gdGhpcy5jaGFydC5vcHRpb25zLnR5cGUgPT09ICdiYXInO1xuICAgICAgY29uc3QgdmFsdWVzID0gZGF0YS5mbGF0TWFwKGl0ZW0gPT4gaXRlbS52YWx1ZXMpIGFzIEFycmF5PFxuICAgICAgICBEYXRhPHsgeDogc3RyaW5nOyBjb2xvcjogc3RyaW5nOyBuYW1lOiBzdHJpbmc7IHk6IG51bWJlciB9PlxuICAgICAgPjtcbiAgICAgIHRoaXMubGVnZW5kRW50cmllcyA9IGlzQmFyXG4gICAgICAgID8gdmFsdWVzLnJlZHVjZTxBcnJheTxEYXRhPExlZ2VuZEl0ZW0+Pj4oXG4gICAgICAgICAgICAocHJlLCBjdXIpID0+IFtcbiAgICAgICAgICAgICAgLi4ucHJlLFxuICAgICAgICAgICAgICAuLi4ocHJlLnNvbWUoZCA9PiBkLm5hbWUgPT09IGN1ci54KVxuICAgICAgICAgICAgICAgID8gW11cbiAgICAgICAgICAgICAgICA6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGN1ci54LFxuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBjdXIuY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aXZhdGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgaG92ZXI6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBjdXIueSxcbiAgICAgICAgICAgICAgICAgICAgICBzb3VyY2U6IGN1cixcbiAgICAgICAgICAgICAgICAgICAgICB1bml0OiBnZXQoY3VyLCAndW5pdCcpLFxuICAgICAgICAgICAgICAgICAgICAgIC4uLmN1cixcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtdLFxuICAgICAgICAgIClcbiAgICAgICAgOiBkYXRhLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIGQpID0+IFtcbiAgICAgICAgICAgICAgLi4uYWNjLFxuICAgICAgICAgICAgICAuLi4oZC5uYW1lXG4gICAgICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBkLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGQuY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aXZhdGU6ICF0aGlzLmxlZ2VuZEluc3RhbmNlPy5kaXNhYmxlZExlZ2VuZC5oYXMoXG4gICAgICAgICAgICAgICAgICAgICAgICBkLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICBob3ZlcjogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGQudmFsdWVzPy5bZC52YWx1ZXM/Lmxlbmd0aCAtIDFdPy55LFxuICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZTogZCxcbiAgICAgICAgICAgICAgICAgICAgICB1bml0OiBnZXQoZCwgJ3VuaXQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAuLi5kLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIDogW10pLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtdLFxuICAgICAgICAgICk7XG4gICAgICBpZiAodGhpcy5sZWdlbmRJbnN0YW5jZT8uZGlzYWJsZWRMZWdlbmQuc2l6ZSkge1xuICAgICAgICB0aGlzLmNoYW5nZUxlZ2VuZC5uZXh0KHRoaXMubGVnZW5kRW50cmllcyk7XG4gICAgICB9XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcblxuICAgIHRoaXMuY2hhcnQ/Lm9uKExFR0VORF9FVkVOVFMuQ0xJQ0ssIChkYXRhOiBMZWdlbmRQYXlsb2FkKSA9PiB7XG4gICAgICBjb25zdCB7IGxlZ2VuZCwgc291cmNlIH0gPSBkYXRhO1xuICAgICAgY29uc3QgbGVnZW5kSXRlbSA9IHRoaXMubGVnZW5kRW50cmllcy5maW5kKFxuICAgICAgICBpdGVtID0+IGl0ZW0ubmFtZSA9PT0gbGVnZW5kLm5hbWUsXG4gICAgICApO1xuICAgICAgbGVnZW5kSXRlbS5hY3RpdmF0ZSA9ICFsZWdlbmQuYWN0aXZhdGU7XG4gICAgICB0aGlzLmNoYW5nZUxlZ2VuZC5uZXh0KHNvdXJjZSk7XG4gICAgfSk7XG4gIH1cblxuICBzZWxlY3RlZChsZWdlbmQ6IExlZ2VuZEl0ZW0pIHtcbiAgICB0aGlzLmxlZ2VuZEluc3RhbmNlLmNoYW5nZUxlZ2VuZChsZWdlbmQpO1xuICB9XG5cbiAgYWxsU2VsZWN0KHNlbGVjdDogYm9vbGVhbikge1xuICAgIGlmIChzZWxlY3QpIHtcbiAgICAgIHRoaXMubGVnZW5kSW5zdGFuY2UubGVnZW5kU2VsZWN0QWxsKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubGVnZW5kSW5zdGFuY2UubGVnZW5kVW5zZWxlY3RBbGwoKTtcbiAgICB9XG4gICAgdGhpcy5sZWdlbmRJbnN0YW5jZS5jaGFuZ2VMZWdlbmQodGhpcy5sZWdlbmRFbnRyaWVzWzBdKTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cIm9wZXJhdGlvblwiXG4gICpuZ0lmPVwiaXNUZW1wbGF0ZVJlZihsZWZ0T3BlcmF0aW9uKVwiXG4+XG4gIDxuZy1jb250YWluZXJcbiAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJsZWZ0T3BlcmF0aW9uXCJcbiAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwibGVmdE9wZXJhdGlvbkNvbnRleHRcIlxuICA+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPGRpdlxuICBjbGFzcz1cImxlZ2VuZC13cmFwIG9wZXJhdGlvblwiXG4gICpuZ0lmPVwiIWhpZGVMZWdlbmRcIlxuPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXRlbXBsYXRlOyBlbHNlIGN1c3RvbVwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwibGVnZW5kVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy10ZW1wbGF0ZSAjY3VzdG9tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1RlbXBsYXRlUmVmKHRlbXBsYXRlKTsgZWxzZSBidWlsdGluVGVtcGxhdGVcIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiJGFueSh0ZW1wbGF0ZSlcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBjb250ZXh0OiBsZWdlbmRFbnRyaWVzIH1cIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjYnVpbHRpblRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwidGVtcGxhdGVcIj5cbiAgICAgICAgPGFjbC1sZWdlbmQtZHJvcGRvd25cbiAgICAgICAgICBjbGFzcz1cImxlZ2VuZC12ZXJ0aWNhbFwiXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidkcm9wZG93bidcIlxuICAgICAgICAgIFtkYXRhXT1cImxlZ2VuZEVudHJpZXNcIlxuICAgICAgICAgIFtub0RhdGFdPVwibm9EYXRhXCJcbiAgICAgICAgICBbbGVnZW5kVGVtcGxhdGVdPVwibGVnZW5kVGVtcGxhdGVcIlxuICAgICAgICAgIFtpc0NhcmRdPVwibW9kZSA9PT0gJ2NhcmQnXCJcbiAgICAgICAgPlxuICAgICAgICA8L2FjbC1sZWdlbmQtZHJvcGRvd24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG5cbjxkaXZcbiAgY2xhc3M9XCJvcGVyYXRpb25cIlxuICAqbmdJZj1cImlzVGVtcGxhdGVSZWYocmlnaHRPcGVyYXRpb24pXCJcbj5cbiAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJyaWdodE9wZXJhdGlvblwiPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbGVnZW5kVGVtcGxhdGU+XG4gIDx1bCBjbGFzcz1cImxlZ2VuZC1sYWJlbHNcIj5cbiAgICA8bGlcbiAgICAgIGNsYXNzPVwic2VsZWN0LWFsbFwiXG4gICAgICAqbmdJZj1cIiFub0RhdGEgJiYgc2VsZWN0QWxsT3BlcmF0aW9uICYmIHRlbXBsYXRlID09PSAnZHJvcGRvd24nXCJcbiAgICA+XG4gICAgICA8YXVpLWNoZWNrYm94XG4gICAgICAgIFsobmdNb2RlbCldPVwiYWxsU2VsZWN0ZWRcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJhbGxTZWxlY3QoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIHt7IHNlbGVjdEFsbE5hbWUgfHwgKCdzZWxlY3RfYWxsJyB8IHRyYW5zbGF0ZSkgfX1cbiAgICAgIDwvYXVpLWNoZWNrYm94PlxuICAgIDwvbGk+XG4gICAgPGxpXG4gICAgICBjbGFzcz1cImxlZ2VuZC1sYWJlbFwiXG4gICAgICBbY2xhc3MuZGlzYWJsZV09XCIhbGVnZW5kLmFjdGl2YXRlIHx8IG5vRGF0YVwiXG4gICAgICBbY2xhc3MuZm9yYmlkXT1cIm5vRGF0YVwiXG4gICAgICBbdGl0bGVdPVwiKGxlZ2VuZC5hY3RpdmF0ZSA/ICdjbGlja19oaWRlJyA6ICdjbGlja19zaG93JykgfCB0cmFuc2xhdGVcIlxuICAgICAgKm5nRm9yPVwibGV0IGxlZ2VuZCBvZiBsZWdlbmRFbnRyaWVzXCJcbiAgICAgIChjbGljayk9XCJzZWxlY3RlZChsZWdlbmQpXCJcbiAgICA+XG4gICAgICA8c3BhblxuICAgICAgICBbbmdDbGFzc109XCJbc3ltYm9sTmFtZSwgJ2xhYmVsLXN5bWJvbCddXCJcbiAgICAgICAgW3N0eWxlLmJhY2tncm91bmRdPVwibGVnZW5kLmNvbG9yXCJcbiAgICAgID5cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwibGFiZWwtbmFtZVwiPnt7XG4gICAgICAgIHRyYW5zbGF0aW9uID8gKGxlZ2VuZC5uYW1lIHwgdHJhbnNsYXRlOiB7fTp0cnVlKSA6IGxlZ2VuZC5uYW1lXG4gICAgICB9fTwvc3Bhbj5cbiAgICA8L2xpPlxuICA8L3VsPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|