@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
|
@@ -143,7 +143,7 @@ export class StrongPasswordDirective extends BaseTooltip {
|
|
|
143
143
|
},
|
|
144
144
|
]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature] }); }
|
|
145
145
|
}
|
|
146
|
-
(
|
|
146
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StrongPasswordDirective, [{
|
|
147
147
|
type: Directive,
|
|
148
148
|
args: [{
|
|
149
149
|
selector: 'input[aclStrongPassword][ngModel],input[aclStrongPassword][formControl],input[aclStrongPassword][formControlName]',
|
|
@@ -155,7 +155,7 @@ export class StrongPasswordDirective extends BaseTooltip {
|
|
|
155
155
|
},
|
|
156
156
|
],
|
|
157
157
|
}]
|
|
158
|
-
}],
|
|
158
|
+
}], () => [{ type: i1.Overlay }, { type: i0.ViewContainerRef }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }], { aclStrongPassword: [{
|
|
159
159
|
type: Input
|
|
160
160
|
}], required: [{
|
|
161
161
|
type: Input
|
|
@@ -168,4 +168,4 @@ export class StrongPasswordDirective extends BaseTooltip {
|
|
|
168
168
|
}], notStartsWith: [{
|
|
169
169
|
type: Input
|
|
170
170
|
}] }); })();
|
|
171
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Ryb25nLXBhc3N3b3JkLXZhbGlkYXRvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvZm9ybS92YWxpZGF0b3JzL3N0cm9uZy1wYXNzd29yZC9zdHJvbmctcGFzc3dvcmQtdmFsaWRhdG9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixjQUFjLEVBQ2QsV0FBVyxHQUNaLE1BQU0sWUFBWSxDQUFDO0FBQ3BCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLFVBQVUsR0FFWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsYUFBYSxHQUdkLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFM0MsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXpELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7QUFhckYsTUFBTSxPQUFPLHVCQUNYLFNBQVEsV0FBVztJQUtuQixJQUNJLGlCQUFpQixDQUFDLE9BQXFCO1FBQ3pDLElBQUksQ0FBQyxRQUFRLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekMsQ0FBQztJQUlELElBQ0ksUUFBUSxDQUFDLFFBQXNCO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcs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QkFEUixLQUFLO1lBSU4sU0FBUztrQkFEUixLQUFLO1lBSU4sYUFBYTtrQkFEWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZVRvb2x0aXAsXG4gIGNvZXJjZUF0dHJCb29sZWFuLFxuICBUb29sdGlwVHJpZ2dlcixcbiAgVG9vbHRpcFR5cGUsXG59IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgZm9yd2FyZFJlZixcbiAgT25DaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgTkdfVkFMSURBVE9SUyxcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjb252ZXJnZSwgbWVyZ2VBbGwgfSBmcm9tICdyYW1kYSc7XG5cbmltcG9ydCB7IFNUUk9OR19QQVNTV09SRF9TUEVDSUFMX0NIQVJTIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5pbXBvcnQgeyBTdHJvbmdQYXNzd29yZFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL3N0cm9uZy1wYXNzd29yZC10b29sdGlwL2NvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnaW5wdXRbYWNsU3Ryb25nUGFzc3dvcmRdW25nTW9kZWxdLGlucHV0W2FjbFN0cm9uZ1Bhc3N3b3JkXVtmb3JtQ29udHJvbF0saW5wdXRbYWNsU3Ryb25nUGFzc3dvcmRdW2Zvcm1Db250cm9sTmFtZV0nLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU3Ryb25nUGFzc3dvcmREaXJlY3RpdmUpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU3Ryb25nUGFzc3dvcmREaXJlY3RpdmVcbiAgZXh0ZW5kcyBCYXNlVG9vbHRpcFxuICBpbXBsZW1lbnRzIFZhbGlkYXRvciwgT25DaGFuZ2VzXG57XG4gIHByaXZhdGUgX2VuYWJsZWQ6IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgc2V0IGFjbFN0cm9uZ1Bhc3N3b3JkKGVuYWJsZWQ6IGJvb2xlYW4gfCAnJykge1xuICAgIHRoaXMuX2VuYWJsZWQgPSBjb2VyY2VBdHRyQm9vbGVhbihlbmFibGVkKTtcbiAgfVxuXG4gIGdldCBhY2xTdHJvbmdQYXNzd29yZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlZCAmJiAhdGhpcy5kaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcXVpcmVkOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHNldCByZXF1aXJlZChyZXF1aXJlZDogYm9vbGVhbiB8ICcnKSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VBdHRyQm9vbGVhbihyZXF1aXJlZCk7XG4gIH1cblxuICBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkO1xuICB9XG5cbiAgQElucHV0KClcbiAgc3BlY2lhbENoYXJzID0gU1RST05HX1BBU1NXT1JEX1NQRUNJQUxfQ0hBUlM7XG5cbiAgQElucHV0KClcbiAgbWlubGVuZ3RoID0gODtcblxuICBASW5wdXQoKVxuICBtYXhsZW5ndGggPSAzMjtcblxuICBASW5wdXQoKVxuICBub3RTdGFydHNXaXRoID0gJyc7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNvbXBvbmVudENsYXNzID0gU3Ryb25nUGFzc3dvcmRUb29sdGlwQ29tcG9uZW50O1xuXG4gIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uVmFsaWRhdG9yQ2hhbmdlID0gZm47XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLm9uVmFsaWRhdG9yQ2hhbmdlPy4oKTtcbiAgfVxuXG4gIG9uVmFsaWRhdG9yQ2hhbmdlOiAoKSA9PiB2b2lkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBlbFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PixcbiAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgbmdab25lOiBOZ1pvbmUsXG4gICkge1xuICAgIHN1cGVyKG92ZXJsYXksIHZpZXdDb250YWluZXJSZWYsIGVsUmVmLCByZW5kZXJlciwgY2RyLCBuZ1pvbmUpO1xuICAgIHRoaXMudHlwZSA9IFRvb2x0aXBUeXBlLkluZm87XG4gICAgdGhpcy5wb3NpdGlvbiA9ICd0b3Agc3RhcnQnO1xuICAgIHRoaXMudHJpZ2dlciA9IFRvb2x0aXBUcmlnZ2VyLkZvY3VzO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIG9uRm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmFjbFN0cm9uZ1Bhc3N3b3JkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3VwZXIub25Gb2N1cygpO1xuICB9XG5cbiAgdmFsaWRhdGUgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyA9PiB7XG4gICAgY29uc3Qgdjogc3RyaW5nID0gY29udHJvbC52YWx1ZSA/PyAnJztcblxuICAgIGNvbnN0IGlzRm9jdXNpbmcgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQgPT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICBpZiAodGhpcy5hY2xTdHJvbmdQYXNzd29yZCAmJiB2KSB7XG4gICAgICBpZiAoaXNGb2N1c2luZykge1xuICAgICAgICB0aGlzLnNob3coKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKCFpc0ZvY3VzaW5nIHx8ICF0aGlzLnJlcXVpcmVkKSB7XG4gICAgICB0aGlzLmhpZGUoKTtcbiAgICB9XG5cbiAgICAvLyDlv4XloavmoKHpqoznlLEgcmVxdWlyZWQgdmFsaWRhdG9yIOaOp+WItlxuICAgIGNvbnN0IGVycm9ycyA9XG4gICAgICB0aGlzLmFjbFN0cm9uZ1Bhc3N3b3JkICYmICh0aGlzLnJlcXVpcmVkIHx8IHYpXG4gICAgICAgID8gY29udmVyZ2UoKC4uLmxpc3QpID0+IG1lcmdlQWxsKGxpc3QpLCBbXG4gICAgICAgICAgICB0aGlzLnZhbGlkYXRlTGVuZ3RoLFxuICAgICAgICAgICAgdGhpcy52YWxpZGF0ZVBhdHRlcm4sXG4gICAgICAgICAgXSBhcyBjb25zdCkodilcbiAgICAgICAgOiBudWxsO1xuXG4gICAgdGhpcy5yZXNldENvbnRleHQoZXJyb3JzLCB2KTtcblxuICAgIHJldHVybiBlcnJvcnM7XG4gIH07XG5cbiAgcHJpdmF0ZSByZXNldENvbnRleHQoZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgbGVuZ3RoID0gISF2YWx1ZSAmJiAhZXJyb3JzPy5tYXhsZW5ndGggJiYgIWVycm9ycz8ubWlubGVuZ3RoO1xuICAgIGNvbnN0IGVuZ2xpc2hDaGFyID0gISF2YWx1ZSAmJiAhZXJyb3JzPy5wYXR0ZXJuPy5uZWVkRW5nbGlzaENoYXI7XG4gICAgY29uc3QgbmVlZE51bWJlciA9ICEhdmFsdWUgJiYgIWVycm9ycz8ucGF0dGVybj8ubmVlZE51bWJlcjtcbiAgICBjb25zdCBzcGVjaWFsQ2hhciA9ICEhdmFsdWUgJiYgIWVycm9ycz8ucGF0dGVybj8ubmVlZFNwZWNpYWxDaGFyO1xuXG4gICAgdGhpcy5jb250ZXh0ID0ge1xuICAgICAgc3RhdGU6IHtcbiAgICAgICAgbGVuZ3RoLFxuICAgICAgICBlbmdsaXNoQ2hhcixcbiAgICAgICAgc3BlY2lhbENoYXIsXG4gICAgICAgIG51bWJlcjogbmVlZE51bWJlcixcbiAgICAgIH0sXG4gICAgICBjb25kaXRpb25zOiB7XG4gICAgICAgIHNwZWNpYWxDaGFyOiB0aGlzLnNwZWNpYWxDaGFycyxcbiAgICAgICAgbWluTGVuZ3RoOiB0aGlzLm1pbmxlbmd0aCxcbiAgICAgICAgbWF4TGVuZ3RoOiB0aGlzLm1heGxlbmd0aCxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgdmFsaWRhdGVQYXR0ZXJuID0gKHY6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgPT4ge1xuICAgIGlmICghdikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgZXJyb3JzID0gY29udmVyZ2UoKC4uLmxpc3QpID0+IG1lcmdlQWxsKGxpc3QpLCBbXG4gICAgICB0aGlzLnZhbGlkYXRlRW5nbGlzaENoYXIsXG4gICAgICB0aGlzLnZhbGlkYXRlU3BlY2lhbENoYXIsXG4gICAgICB0aGlzLnZhbGlkYXRlTnVtYmVyLFxuICAgICAgdGhpcy52YWxpZGF0ZU5vdFN0YXJ0c1dpdGgsXG4gICAgXSBhcyBjb25zdCkodik7XG5cbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZXJyb3JzKS5sZW5ndGggPyB7IHBhdHRlcm46IGVycm9ycyB9IDogbnVsbDtcbiAgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHZhbGlkYXRlTGVuZ3RoID0gKHY6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgPT4ge1xuICAgIGlmICghdiB8fCAodi5sZW5ndGggPj0gdGhpcy5taW5sZW5ndGggJiYgdi5sZW5ndGggPD0gdGhpcy5tYXhsZW5ndGgpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgPSB7fTtcbiAgICBpZiAodi5sZW5ndGggPCB0aGlzLm1pbmxlbmd0aCkge1xuICAgICAgZXJyb3JzLm1pbmxlbmd0aCA9IHtcbiAgICAgICAgcmVxdWlyZWRMZW5ndGg6IHRoaXMubWlubGVuZ3RoLFxuICAgICAgICBhY3R1YWxMZW5ndGg6IHYubGVuZ3RoLFxuICAgICAgfTtcbiAgICB9XG4gICAgaWYgKHYubGVuZ3RoID4gdGhpcy5tYXhsZW5ndGgpIHtcbiAgICAgIGVycm9ycy5tYXhsZW5ndGggPSB7XG4gICAgICAgIHJlcXVpcmVkTGVuZ3RoOiB0aGlzLm1heGxlbmd0aCxcbiAgICAgICAgYWN0dWFsTGVuZ3RoOiB2Lmxlbmd0aCxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBlcnJvcnM7XG4gIH07XG5cbiAgcHJpdmF0ZSByZWFkb25seSB2YWxpZGF0ZUVuZ2xpc2hDaGFyID0gKHY6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgPT5cbiAgICAvW0EtWmEtel0vLnRlc3QodikgPyBudWxsIDogeyBuZWVkRW5nbGlzaENoYXI6IHRydWUgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHZhbGlkYXRlTnVtYmVyID0gKHY6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgPT5cbiAgICAvXFxkLy50ZXN0KHYpID8gbnVsbCA6IHsgbmVlZE51bWJlcjogdHJ1ZSB9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdmFsaWRhdGVTcGVjaWFsQ2hhciA9ICh2OiBzdHJpbmcpOiBWYWxpZGF0aW9uRXJyb3JzID0+IHtcbiAgICBpZiAoIXRoaXMuc3BlY2lhbENoYXJzKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgY2hhcnMgPSB0aGlzLnNwZWNpYWxDaGFycy5zcGxpdCgnJykuam9pbignXFxcXCcpO1xuICAgIGNvbnN0IHVuZXhwZWN0ZWRDaGFycyA9IChcbiAgICAgIHYubWF0Y2gobmV3IFJlZ0V4cChgKD8hW2EtekEtWjAtOSR7Y2hhcnN9XSkuYCwgJ2cnKSkgPz8gW11cbiAgICApLmpvaW4oJycpO1xuICAgIHJldHVybiBuZXcgUmVnRXhwKGBbJHtjaGFyc31dYCwgJ2cnKS50ZXN0KHYpICYmICF1bmV4cGVjdGVkQ2hhcnNcbiAgICAgID8gbnVsbFxuICAgICAgOiB7XG4gICAgICAgICAgbmVlZFNwZWNpYWxDaGFyOiB7XG4gICAgICAgICAgICByZXF1aXJlZENoYXJzOiB0aGlzLnNwZWNpYWxDaGFycyxcbiAgICAgICAgICAgIGFjdHVhbENoYXJzOiB1bmV4cGVjdGVkQ2hhcnMsXG4gICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHZhbGlkYXRlTm90U3RhcnRzV2l0aCA9ICh2OiBzdHJpbmcpOiBWYWxpZGF0aW9uRXJyb3JzID0+XG4gICAgdGhpcy5ub3RTdGFydHNXaXRoICYmIHYuc3RhcnRzV2l0aCh0aGlzLm5vdFN0YXJ0c1dpdGgpXG4gICAgICA/IHsgbm90U3RhcnRzV2l0aDogdGhpcy5ub3RTdGFydHNXaXRoIH1cbiAgICAgIDogbnVsbDtcbn1cbiJdfQ==
|
|
171
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Ryb25nLXBhc3N3b3JkLXZhbGlkYXRvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvZm9ybS92YWxpZGF0b3JzL3N0cm9uZy1wYXNzd29yZC9zdHJvbmctcGFzc3dvcmQtdmFsaWRhdG9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixjQUFjLEVBQ2QsV0FBVyxHQUNaLE1BQU0sWUFBWSxDQUFDO0FBQ3BCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLFVBQVUsR0FFWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsYUFBYSxHQUdkLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFM0MsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXpELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7QUFhckYsTUFBTSxPQUFPLHVCQUNYLFNBQVEsV0FBVztJQUtuQixJQUNJLGlCQUFpQixDQUFDLE9BQXFCO1FBQ3pDLElBQUksQ0FBQyxRQUFRLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekMsQ0FBQztJQUlELElBQ0ksUUFBUSxDQUFDLFFBQXNCO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcs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O2lCQUNGO2FBQ0Y7NktBUUssaUJBQWlCO2tCQURwQixLQUFLO1lBWUYsUUFBUTtrQkFEWCxLQUFLO1lBVU4sWUFBWTtrQkFEWCxLQUFLO1lBSU4sU0FBUztrQkFEUixLQUFLO1lBSU4sU0FBUztrQkFEUixLQUFLO1lBSU4sYUFBYTtrQkFEWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZVRvb2x0aXAsXG4gIGNvZXJjZUF0dHJCb29sZWFuLFxuICBUb29sdGlwVHJpZ2dlcixcbiAgVG9vbHRpcFR5cGUsXG59IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgZm9yd2FyZFJlZixcbiAgT25DaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgTkdfVkFMSURBVE9SUyxcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjb252ZXJnZSwgbWVyZ2VBbGwgfSBmcm9tICdyYW1kYSc7XG5cbmltcG9ydCB7IFNUUk9OR19QQVNTV09SRF9TUEVDSUFMX0NIQVJTIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5pbXBvcnQgeyBTdHJvbmdQYXNzd29yZFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL3N0cm9uZy1wYXNzd29yZC10b29sdGlwL2NvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnaW5wdXRbYWNsU3Ryb25nUGFzc3dvcmRdW25nTW9kZWxdLGlucHV0W2FjbFN0cm9uZ1Bhc3N3b3JkXVtmb3JtQ29udHJvbF0saW5wdXRbYWNsU3Ryb25nUGFzc3dvcmRdW2Zvcm1Db250cm9sTmFtZV0nLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU3Ryb25nUGFzc3dvcmREaXJlY3RpdmUpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU3Ryb25nUGFzc3dvcmREaXJlY3RpdmVcbiAgZXh0ZW5kcyBCYXNlVG9vbHRpcFxuICBpbXBsZW1lbnRzIFZhbGlkYXRvciwgT25DaGFuZ2VzXG57XG4gIHByaXZhdGUgX2VuYWJsZWQ6IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgc2V0IGFjbFN0cm9uZ1Bhc3N3b3JkKGVuYWJsZWQ6IGJvb2xlYW4gfCAnJykge1xuICAgIHRoaXMuX2VuYWJsZWQgPSBjb2VyY2VBdHRyQm9vbGVhbihlbmFibGVkKTtcbiAgfVxuXG4gIGdldCBhY2xTdHJvbmdQYXNzd29yZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlZCAmJiAhdGhpcy5kaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcXVpcmVkOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHNldCByZXF1aXJlZChyZXF1aXJlZDogYm9vbGVhbiB8ICcnKSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VBdHRyQm9vbGVhbihyZXF1aXJlZCk7XG4gIH1cblxuICBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkO1xuICB9XG5cbiAgQElucHV0KClcbiAgc3BlY2lhbENoYXJzID0gU1RST05HX1BBU1NXT1JEX1NQRUNJQUxfQ0hBUlM7XG5cbiAgQElucHV0KClcbiAgbWlubGVuZ3RoID0gODtcblxuICBASW5wdXQoKVxuICBtYXhsZW5ndGggPSAzMjtcblxuICBASW5wdXQoKVxuICBub3RTdGFydHNXaXRoID0gJyc7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNvbXBvbmVudENsYXNzID0gU3Ryb25nUGFzc3dvcmRUb29sdGlwQ29tcG9uZW50O1xuXG4gIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uVmFsaWRhdG9yQ2hhbmdlID0gZm47XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLm9uVmFsaWRhdG9yQ2hhbmdlPy4oKTtcbiAgfVxuXG4gIG9uVmFsaWRhdG9yQ2hhbmdlOiAoKSA9PiB2b2lkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBlbFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PixcbiAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgbmdab25lOiBOZ1pvbmUsXG4gICkge1xuICAgIHN1cGVyKG92ZXJsYXksIHZpZXdDb250YWluZXJSZWYsIGVsUmVmLCByZW5kZXJlciwgY2RyLCBuZ1pvbmUpO1xuICAgIHRoaXMudHlwZSA9IFRvb2x0aXBUeXBlLkluZm87XG4gICAgdGhpcy5wb3NpdGlvbiA9ICd0b3Agc3RhcnQnO1xuICAgIHRoaXMudHJpZ2dlciA9IFRvb2x0aXBUcmlnZ2VyLkZvY3VzO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIG9uRm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmFjbFN0cm9uZ1Bhc3N3b3JkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3VwZXIub25Gb2N1cygpO1xuICB9XG5cbiAgdmFsaWRhdGUgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyA9PiB7XG4gICAgY29uc3Qgdjogc3RyaW5nID0gY29udHJvbC52YWx1ZSA/PyAnJztcblxuICAgIGNvbnN0IGlzRm9jdXNpbmcgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQgPT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICBpZiAodGhpcy5hY2xTdHJvbmdQYXNzd29yZCAmJiB2KSB7XG4gICAgICBpZiAoaXNGb2N1c2luZykge1xuICAgICAgICB0aGlzLnNob3coKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKCFpc0ZvY3VzaW5nIHx8ICF0aGlzLnJlcXVpcmVkKSB7XG4gICAgICB0aGlzLmhpZGUoKTtcbiAgICB9XG5cbiAgICAvLyDlv4XloavmoKHpqoznlLEgcmVxdWlyZWQgdmFsaWRhdG9yIOaOp+WItlxuICAgIGNvbnN0IGVycm9ycyA9XG4gICAgICB0aGlzLmFjbFN0cm9uZ1Bhc3N3b3JkICYmICh0aGlzLnJlcXVpcmVkIHx8IHYpXG4gICAgICAgID8gY29udmVyZ2UoKC4uLmxpc3QpID0+IG1lcmdlQWxsKGxpc3QpLCBbXG4gICAgICAgICAgICB0aGlzLnZhbGlkYXRlTGVuZ3RoLFxuICAgICAgICAgICAgdGhpcy52YWxpZGF0ZVBhdHRlcm4sXG4gICAgICAgICAgXSBhcyBjb25zdCkodilcbiAgICAgICAgOiBudWxsO1xuXG4gICAgdGhpcy5yZXNldENvbnRleHQoZXJyb3JzLCB2KTtcblxuICAgIHJldHVybiBlcnJvcnM7XG4gIH07XG5cbiAgcHJpdmF0ZSByZXNldENvbnRleHQoZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgbGVuZ3RoID0gISF2YWx1ZSAmJiAhZXJyb3JzPy5tYXhsZW5ndGggJiYgIWVycm9ycz8ubWlubGVuZ3RoO1xuICAgIGNvbnN0IGVuZ2xpc2hDaGFyID0gISF2YWx1ZSAmJiAhZXJyb3JzPy5wYXR0ZXJuPy5uZWVkRW5nbGlzaENoYXI7XG4gICAgY29uc3QgbmVlZE51bWJlciA9ICEhdmFsdWUgJiYgIWVycm9ycz8ucGF0dGVybj8ubmVlZE51bWJlcjtcbiAgICBjb25zdCBzcGVjaWFsQ2hhciA9ICEhdmFsdWUgJiYgIWVycm9ycz8ucGF0dGVybj8ubmVlZFNwZWNpYWxDaGFyO1xuXG4gICAgdGhpcy5jb250ZXh0ID0ge1xuICAgICAgc3RhdGU6IHtcbiAgICAgICAgbGVuZ3RoLFxuICAgICAgICBlbmdsaXNoQ2hhcixcbiAgICAgICAgc3BlY2lhbENoYXIsXG4gICAgICAgIG51bWJlcjogbmVlZE51bWJlcixcbiAgICAgIH0sXG4gICAgICBjb25kaXRpb25zOiB7XG4gICAgICAgIHNwZWNpYWxDaGFyOiB0aGlzLnNwZWNpYWxDaGFycyxcbiAgICAgICAgbWluTGVuZ3RoOiB0aGlzLm1pbmxlbmd0aCxcbiAgICAgICAgbWF4TGVuZ3RoOiB0aGlzLm1heGxlbmd0aCxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgdmFsaWRhdGVQYXR0ZXJuID0gKHY6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgPT4ge1xuICAgIGlmICghdikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgZXJyb3JzID0gY29udmVyZ2UoKC4uLmxpc3QpID0+IG1lcmdlQWxsKGxpc3QpLCBbXG4gICAgICB0aGlzLnZhbGlkYXRlRW5nbGlzaENoYXIsXG4gICAgICB0aGlzLnZhbGlkYXRlU3BlY2lhbENoYXIsXG4gICAgICB0aGlzLnZhbGlkYXRlTnVtYmVyLFxuICAgICAgdGhpcy52YWxpZGF0ZU5vdFN0YXJ0c1dpdGgsXG4gICAgXSBhcyBjb25zdCkodik7XG5cbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZXJyb3JzKS5sZW5ndGggPyB7IHBhdHRlcm46IGVycm9ycyB9IDogbnVsbDtcbiAgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHZhbGlkYXRlTGVuZ3RoID0gKHY6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgPT4ge1xuICAgIGlmICghdiB8fCAodi5sZW5ndGggPj0gdGhpcy5taW5sZW5ndGggJiYgdi5sZW5ndGggPD0gdGhpcy5tYXhsZW5ndGgpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgPSB7fTtcbiAgICBpZiAodi5sZW5ndGggPCB0aGlzLm1pbmxlbmd0aCkge1xuICAgICAgZXJyb3JzLm1pbmxlbmd0aCA9IHtcbiAgICAgICAgcmVxdWlyZWRMZW5ndGg6IHRoaXMubWlubGVuZ3RoLFxuICAgICAgICBhY3R1YWxMZW5ndGg6IHYubGVuZ3RoLFxuICAgICAgfTtcbiAgICB9XG4gICAgaWYgKHYubGVuZ3RoID4gdGhpcy5tYXhsZW5ndGgpIHtcbiAgICAgIGVycm9ycy5tYXhsZW5ndGggPSB7XG4gICAgICAgIHJlcXVpcmVkTGVuZ3RoOiB0aGlzLm1heGxlbmd0aCxcbiAgICAgICAgYWN0dWFsTGVuZ3RoOiB2Lmxlbmd0aCxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBlcnJvcnM7XG4gIH07XG5cbiAgcHJpdmF0ZSByZWFkb25seSB2YWxpZGF0ZUVuZ2xpc2hDaGFyID0gKHY6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgPT5cbiAgICAvW0EtWmEtel0vLnRlc3QodikgPyBudWxsIDogeyBuZWVkRW5nbGlzaENoYXI6IHRydWUgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHZhbGlkYXRlTnVtYmVyID0gKHY6IHN0cmluZyk6IFZhbGlkYXRpb25FcnJvcnMgPT5cbiAgICAvXFxkLy50ZXN0KHYpID8gbnVsbCA6IHsgbmVlZE51bWJlcjogdHJ1ZSB9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdmFsaWRhdGVTcGVjaWFsQ2hhciA9ICh2OiBzdHJpbmcpOiBWYWxpZGF0aW9uRXJyb3JzID0+IHtcbiAgICBpZiAoIXRoaXMuc3BlY2lhbENoYXJzKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgY2hhcnMgPSB0aGlzLnNwZWNpYWxDaGFycy5zcGxpdCgnJykuam9pbignXFxcXCcpO1xuICAgIGNvbnN0IHVuZXhwZWN0ZWRDaGFycyA9IChcbiAgICAgIHYubWF0Y2gobmV3IFJlZ0V4cChgKD8hW2EtekEtWjAtOSR7Y2hhcnN9XSkuYCwgJ2cnKSkgPz8gW11cbiAgICApLmpvaW4oJycpO1xuICAgIHJldHVybiBuZXcgUmVnRXhwKGBbJHtjaGFyc31dYCwgJ2cnKS50ZXN0KHYpICYmICF1bmV4cGVjdGVkQ2hhcnNcbiAgICAgID8gbnVsbFxuICAgICAgOiB7XG4gICAgICAgICAgbmVlZFNwZWNpYWxDaGFyOiB7XG4gICAgICAgICAgICByZXF1aXJlZENoYXJzOiB0aGlzLnNwZWNpYWxDaGFycyxcbiAgICAgICAgICAgIGFjdHVhbENoYXJzOiB1bmV4cGVjdGVkQ2hhcnMsXG4gICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHZhbGlkYXRlTm90U3RhcnRzV2l0aCA9ICh2OiBzdHJpbmcpOiBWYWxpZGF0aW9uRXJyb3JzID0+XG4gICAgdGhpcy5ub3RTdGFydHNXaXRoICYmIHYuc3RhcnRzV2l0aCh0aGlzLm5vdFN0YXJ0c1dpdGgpXG4gICAgICA/IHsgbm90U3RhcnRzV2l0aDogdGhpcy5ub3RTdGFydHNXaXRoIH1cbiAgICAgIDogbnVsbDtcbn1cbiJdfQ==
|
|
@@ -2,7 +2,7 @@ import { IconModule } from '@alauda/ui';
|
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { NgModule } from '@angular/core';
|
|
4
4
|
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
-
import {
|
|
5
|
+
import { TranslatePipe } from '../../../translate/public-api';
|
|
6
6
|
import { StrongPasswordTooltipComponent } from './strong-password-tooltip/component';
|
|
7
7
|
import { StrongPasswordDirective } from './strong-password-validator.directive';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -16,10 +16,9 @@ export class StrongPasswordValidatorModule {
|
|
|
16
16
|
static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
|
|
17
17
|
FormsModule,
|
|
18
18
|
ReactiveFormsModule,
|
|
19
|
-
IconModule
|
|
20
|
-
TranslateModule] }); }
|
|
19
|
+
IconModule] }); }
|
|
21
20
|
}
|
|
22
|
-
(
|
|
21
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StrongPasswordValidatorModule, [{
|
|
23
22
|
type: NgModule,
|
|
24
23
|
args: [{
|
|
25
24
|
imports: [
|
|
@@ -27,7 +26,7 @@ export class StrongPasswordValidatorModule {
|
|
|
27
26
|
FormsModule,
|
|
28
27
|
ReactiveFormsModule,
|
|
29
28
|
IconModule,
|
|
30
|
-
|
|
29
|
+
TranslatePipe,
|
|
31
30
|
],
|
|
32
31
|
declarations: EXPORTABLES,
|
|
33
32
|
exports: EXPORTABLES,
|
|
@@ -37,6 +36,6 @@ export class StrongPasswordValidatorModule {
|
|
|
37
36
|
FormsModule,
|
|
38
37
|
ReactiveFormsModule,
|
|
39
38
|
IconModule,
|
|
40
|
-
|
|
39
|
+
TranslatePipe], exports: [StrongPasswordTooltipComponent, StrongPasswordDirective] }); })();
|
|
41
40
|
i0.ɵɵsetComponentScope(StrongPasswordTooltipComponent, [i1.NgIf, i1.NgTemplateOutlet, i2.IconComponent], [i1.AsyncPipe, i3.TranslatePipe]);
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Ryb25nLXBhc3N3b3JkLXZhbGlkYXRvci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvZm9ybS92YWxpZGF0b3JzL3N0cm9uZy1wYXNzd29yZC9zdHJvbmctcGFzc3dvcmQtdmFsaWRhdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFOUQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDckYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7Ozs7O0FBRWhGLE1BQU0sV0FBVyxHQUFHLENBQUMsOEJBQThCLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztBQWE5RSxNQUFNLE9BQU8sNkJBQTZCOzhGQUE3Qiw2QkFBNkI7bUVBQTdCLDZCQUE2Qjt1RUFUdEMsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsVUFBVTs7aUZBTUQsNkJBQTZCO2NBWHpDLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixXQUFXO29CQUNYLG1CQUFtQjtvQkFDbkIsVUFBVTtvQkFDVixhQUFhO2lCQUNkO2dCQUNELFlBQVksRUFBRSxXQUFXO2dCQUN6QixPQUFPLEVBQUUsV0FBVzthQUNyQjs7d0ZBQ1ksNkJBQTZCLG1CQWJyQiw4QkFBOEIsRUFBRSx1QkFBdUIsYUFJeEUsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsVUFBVTtRQUNWLGFBQWEsYUFSSSw4QkFBOEIsRUFBRSx1QkFBdUI7dUJBQXZELDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICcuLi8uLi8uLi90cmFuc2xhdGUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IFN0cm9uZ1Bhc3N3b3JkVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vc3Ryb25nLXBhc3N3b3JkLXRvb2x0aXAvY29tcG9uZW50JztcbmltcG9ydCB7IFN0cm9uZ1Bhc3N3b3JkRGlyZWN0aXZlIH0gZnJvbSAnLi9zdHJvbmctcGFzc3dvcmQtdmFsaWRhdG9yLmRpcmVjdGl2ZSc7XG5cbmNvbnN0IEVYUE9SVEFCTEVTID0gW1N0cm9uZ1Bhc3N3b3JkVG9vbHRpcENvbXBvbmVudCwgU3Ryb25nUGFzc3dvcmREaXJlY3RpdmVdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgSWNvbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVQaXBlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IEVYUE9SVEFCTEVTLFxuICBleHBvcnRzOiBFWFBPUlRBQkxFUyxcbn0pXG5leHBvcnQgY2xhc3MgU3Ryb25nUGFzc3dvcmRWYWxpZGF0b3JNb2R1bGUge31cbiJdfQ==
|
|
@@ -152,4 +152,4 @@ export function cronValidatorBasic(value, minInterval) {
|
|
|
152
152
|
};
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvZm9ybS92YWxpZGF0b3JzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUMsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0IsT0FBTyxFQUNMLG1DQUFtQyxFQUNuQyxxQ0FBcUMsRUFDckMsZ0NBQWdDLEdBQ2pDLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixvQkFBb0IsRUFDcEIsVUFBVSxHQUNYLE1BQU0sdUJBQXVCLENBQUM7QUFHL0IsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsa0JBQWtCLENBQUM7QUFDaEUsTUFBTSxzQ0FBc0MsR0FBRyxFQUFFLENBQUM7QUFDbEQsTUFBTSx3Q0FBd0MsR0FBRyxHQUFHLENBQUM7QUFFckQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxFQUM3QixNQUFNLEdBQUcsRUFBRSxFQUNYLE9BQU8sR0FBRyw2QkFBNkIsTUFJckMsRUFBRTtJQUNKLE1BQU0sU0FBUyxHQUFHLDRCQUE0QixDQUFDO0lBQy9DLE1BQU0sU0FBUyxHQUFHLDRCQUE0QixDQUFDO0lBQy9DLE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQztJQUU3QixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUV4QyxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsRUFBVSxFQUFFO1FBQ3hFLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2YsT0FBTyxj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LEVBQUUsSUFBSTthQUNoQyxDQUFDO0tBQ1A7SUFBQyxNQUFNO1FBQ04sT0FBTztZQUNMLENBQUMsaUJBQWlCLENBQUMsRUFBRSxJQUFJO1NBQzFCLENBQUM7S0FDSDtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgcGFyc2VyIGZyb20gJ2Nyb24tcGFyc2VyJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBLOFNfUkVTT1VSQ0VfTEFCRUxfS0VZX05BTUVfUEFUVEVSTixcbiAgSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9QUkVGSVhfUEFUVEVSTixcbiAgSzhTX1JFU09VUkNFX0xBQkVMX1ZBTFVFX1BBVFRFUk4sXG59IGZyb20gJy4uLy4uL2NvcmUvY29uc3RhbnRzL3BhdHRlcm5zJztcbmltcG9ydCB7XG4gIGlzQ3JvbkZpZWxkQ291bnRDb3JyZWN0LFxuICBpc0Nyb25XZWVrRGF5Q29ycmVjdCxcbiAgcHVibGlzaFJlZixcbn0gZnJvbSAnLi4vLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi90cmFuc2xhdGUvcHVibGljLWFwaSc7XG5cbmV4cG9ydCBjb25zdCBTVFJPTkdfUEFTU1dPUkRfU1BFQ0lBTF9DSEFSUyA9ICd+IUAjJCVeJiooKS1fPSs/JztcbmNvbnN0IEs4U19SRVNPVVJDRV9MQUJFTF9LRVlfTkFNRV9NQVhfTEVOR1RIID0gNjM7XG5jb25zdCBLOFNfUkVTT1VSQ0VfTEFCRUxfS0VZX1BSRUZJWF9NQVhfTEVOR1RIID0gMjUzO1xuXG5leHBvcnQgZnVuY3Rpb24gcmFuZG9tUGFzc3dvcmQoe1xuICBsZW5ndGggPSAxMixcbiAgc3ltYm9scyA9IFNUUk9OR19QQVNTV09SRF9TUEVDSUFMX0NIQVJTLFxufToge1xuICBsZW5ndGg/OiBudW1iZXI7XG4gIHN5bWJvbHM/OiBzdHJpbmc7XG59ID0ge30pOiBzdHJpbmcge1xuICBjb25zdCBsb3dlckNhc2UgPSAnYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonO1xuICBjb25zdCB1cHBlckNhc2UgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVonO1xuICBjb25zdCBudW1iZXJzID0gJzAxMjM0NTY3ODknO1xuXG4gIGNvbnN0IHBhc3N3b3JkID0gQXJyYXkuZnJvbSh7IGxlbmd0aCB9KTtcblxuICBjb25zdCByYW5kb21Qb3NpdGlvbiA9IChpID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogbGVuZ3RoKSk6IG51bWJlciA9PiB7XG4gICAgaWYgKHBhc3N3b3JkW2ldKSB7XG4gICAgICByZXR1cm4gcmFuZG9tUG9zaXRpb24oKytpID49IGxlbmd0aCA/IGkgLSBsZW5ndGggOiBpKTtcbiAgICB9XG4gICAgcmV0dXJuIGk7XG4gIH07XG5cbiAgY29uc3QgcmFuZG9tQ2hhciA9IChvcHRpb25zOiBzdHJpbmcpID0+XG4gICAgb3B0aW9ucy5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogb3B0aW9ucy5sZW5ndGgpKTtcblxuICBjb25zdCByYW5kb21HZW5lcmF0b3IgPSAoKSA9PiB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IFtsb3dlckNhc2UsIHVwcGVyQ2FzZSwgbnVtYmVyc107XG4gICAgaWYgKHN5bWJvbHMpIHtcbiAgICAgIG9wdGlvbnMucHVzaChzeW1ib2xzKTtcbiAgICB9XG4gICAgcmV0dXJuIHJhbmRvbUNoYXIob3B0aW9uc1tNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBvcHRpb25zLmxlbmd0aCldKTtcbiAgfTtcblxuICBwYXNzd29yZFtyYW5kb21Qb3NpdGlvbigpXSA9IHJhbmRvbUNoYXIobG93ZXJDYXNlKTtcbiAgcGFzc3dvcmRbcmFuZG9tUG9zaXRpb24oKV0gPSByYW5kb21DaGFyKG51bWJlcnMpO1xuICBpZiAoc3ltYm9scykge1xuICAgIHBhc3N3b3JkW3JhbmRvbVBvc2l0aW9uKCldID0gcmFuZG9tQ2hhcihzeW1ib2xzKTtcbiAgfVxuXG4gIHBhc3N3b3JkLmZvckVhY2goKGNoYXIsIGluZGV4KSA9PiB7XG4gICAgaWYgKCFjaGFyKSB7XG4gICAgICBwYXNzd29yZFtpbmRleF0gPSByYW5kb21HZW5lcmF0b3IoKTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBwYXNzd29yZC5qb2luKCcnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGs4c1Jlc291cmNlTGFiZWxLZXlWYWxpZGF0b3IoXG4gIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCxcbik6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgaWYgKCFjb250cm9sLnZhbHVlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBrZXlQYXJ0aXRpb24gPSAoY29udHJvbC52YWx1ZSBhcyBzdHJpbmcpLnNwbGl0KCcvJyk7XG4gIGNvbnN0IFtwcmVmaXgsIC4uLm5hbWVQYXJ0c10gPSBrZXlQYXJ0aXRpb247XG4gIGxldCBjaGVja1ByZWZpeCA9IHRydWU7XG4gIGxldCBjaGVja05hbWUgPSB0cnVlO1xuICBsZXQgbmFtZTogc3RyaW5nO1xuICBpZiAoa2V5UGFydGl0aW9uLmxlbmd0aCA+IDEpIHtcbiAgICBuYW1lID0gbmFtZVBhcnRzLmpvaW4oJy8nKTtcbiAgICBjaGVja1ByZWZpeCA9IEs4U19SRVNPVVJDRV9MQUJFTF9LRVlfUFJFRklYX1BBVFRFUk4ucGF0dGVybi50ZXN0KHByZWZpeCk7XG4gICAgY2hlY2tOYW1lID0gSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9OQU1FX1BBVFRFUk4ucGF0dGVybi50ZXN0KG5hbWUpO1xuICB9IGVsc2Uge1xuICAgIG5hbWUgPSBrZXlQYXJ0aXRpb25bMF07XG4gICAgY2hlY2tOYW1lID0gSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9OQU1FX1BBVFRFUk4ucGF0dGVybi50ZXN0KFxuICAgICAga2V5UGFydGl0aW9uWzBdLFxuICAgICk7XG4gIH1cbiAgaWYgKGtleVBhcnRpdGlvbi5sZW5ndGggPiAxKSB7XG4gICAgaWYgKCFjaGVja1ByZWZpeCkge1xuICAgICAgcmV0dXJuIHsgcHJlZml4UGF0dGVybjogdHJ1ZSB9O1xuICAgIH1cbiAgICBpZiAocHJlZml4Lmxlbmd0aCA+IEs4U19SRVNPVVJDRV9MQUJFTF9LRVlfUFJFRklYX01BWF9MRU5HVEgpIHtcbiAgICAgIHJldHVybiB7IHByZWZpeFRvb0xvbmc6IHByZWZpeC5sZW5ndGggfTtcbiAgICB9XG4gIH1cblxuICBpZiAoIWNoZWNrTmFtZSkge1xuICAgIHJldHVybiB7IG5hbWVQYXR0ZXJuOiB0cnVlIH07XG4gIH1cblxuICBpZiAobmFtZS5sZW5ndGggPiBLOFNfUkVTT1VSQ0VfTEFCRUxfS0VZX05BTUVfTUFYX0xFTkdUSCkge1xuICAgIHJldHVybiB7IG5hbWVUb29Mb25nOiBuYW1lLmxlbmd0aCB9O1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBjb25zdCBrOHNSZXNvdXJjZUFubm90YXRpb25LZXlWYWxpZGF0b3IgPSBrOHNSZXNvdXJjZUxhYmVsS2V5VmFsaWRhdG9yO1xuXG5leHBvcnQgY29uc3QgazhzUmVzb3VyY2VMYWJlbFZhbHVlVmFsaWRhdG9yID0gVmFsaWRhdG9ycy5jb21wb3NlKFtcbiAgVmFsaWRhdG9ycy5wYXR0ZXJuKEs4U19SRVNPVVJDRV9MQUJFTF9WQUxVRV9QQVRURVJOLnBhdHRlcm4pLFxuICBWYWxpZGF0b3JzLm1heExlbmd0aCg2MyksXG5dKTtcblxuZXhwb3J0IGNvbnN0IGs4c1Jlc291cmNlTGFiZWxWYWxpZGF0b3IgPSB7XG4gIGtleTogazhzUmVzb3VyY2VMYWJlbEtleVZhbGlkYXRvcixcbiAgdmFsdWU6IGs4c1Jlc291cmNlTGFiZWxWYWx1ZVZhbGlkYXRvcixcbn07XG5cbmV4cG9ydCBjb25zdCBrOHNSZXNvdXJjZUFubm90YXRpb25WYWxpZGF0b3IgPSB7XG4gIGtleTogazhzUmVzb3VyY2VBbm5vdGF0aW9uS2V5VmFsaWRhdG9yLFxufTtcblxuZXhwb3J0IGNvbnN0IGdldEs4c1Jlc291cmNlTGFiZWxFcnJvck1hcHBlciA9IChcbiAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuKSA9PiAoe1xuICBrZXk6IHtcbiAgICBuYW1lUGF0dGVybjogdHJhbnNsYXRlLmdldChLOFNfUkVTT1VSQ0VfTEFCRUxfS0VZX05BTUVfUEFUVEVSTi50aXApLFxuICAgIHByZWZpeFBhdHRlcm46IHRyYW5zbGF0ZS5nZXQoSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9QUkVGSVhfUEFUVEVSTi50aXApLFxuICAgIG5hbWVUb29Mb25nOiB0cmFuc2xhdGUuZ2V0KCdrOHNfcmVzb3VyY2VfbGFiZWxfa2V5X2V4Y2VlZGluZycpLFxuICAgIHByZWZpeFRvb0xvbmc6IHRyYW5zbGF0ZS5nZXQoJ2s4c19sYWJlbF9wcmVmaXhfdG9vX2xvbmcnKSxcbiAgfSxcbiAgdmFsdWU6IHtcbiAgICBwYXR0ZXJuOiB0cmFuc2xhdGUuZ2V0KEs4U19SRVNPVVJDRV9MQUJFTF9WQUxVRV9QQVRURVJOLnRpcCksXG4gICAgbWF4bGVuZ3RoOiB0cmFuc2xhdGUuZ2V0KCdrOHNfcmVzb3VyY2VfbGFiZWxfdmFsdWVfZXhjZWVkaW5nJyksXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IGdldEs4c1Jlc291cmNlTGFiZWxFcnJvck1hcHBlciQgPSAodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSA9PlxuICB0cmFuc2xhdGUubG9jYWxlJC5waXBlKFxuICAgIG1hcCgoKSA9PiBnZXRLOHNSZXNvdXJjZUxhYmVsRXJyb3JNYXBwZXIodHJhbnNsYXRlKSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG5leHBvcnQgY29uc3QgZ2V0SzhzUmVzb3VyY2VBbm5vdGF0aW9uRXJyb3JNYXBwZXIgPSAoXG4gIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbikgPT4gKHtcbiAga2V5OiB7XG4gICAgbmFtZVBhdHRlcm46IHRyYW5zbGF0ZS5nZXQoSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9OQU1FX1BBVFRFUk4udGlwKSxcbiAgICBwcmVmaXhQYXR0ZXJuOiB0cmFuc2xhdGUuZ2V0KEs4U19SRVNPVVJDRV9MQUJFTF9LRVlfUFJFRklYX1BBVFRFUk4udGlwKSxcbiAgICBuYW1lVG9vTG9uZzogdHJhbnNsYXRlLmdldCgnazhzX3Jlc291cmNlX2xhYmVsX2tleV9leGNlZWRpbmcnKSxcbiAgICBwcmVmaXhUb29Mb25nOiB0cmFuc2xhdGUuZ2V0KCdrOHNfbGFiZWxfcHJlZml4X3Rvb19sb25nJyksXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IGdldEs4c1Jlc291cmNlQW5ub3RhdGlvbkVycm9yTWFwcGVyJCA9IChcbiAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuKSA9PlxuICB0cmFuc2xhdGUubG9jYWxlJC5waXBlKFxuICAgIG1hcCgoKSA9PiBnZXRLOHNSZXNvdXJjZUFubm90YXRpb25FcnJvck1hcHBlcih0cmFuc2xhdGUpKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG5cbi8vIENST05fRk9STUFUX0VSUk9SOiBjcm9uRm9ybWF0RXJyb3Ig5qCH6K+G5qC85byP6ZSZ6K+vXG4vLyBDUk9OX01JTl9JTlRFUlZBTF9FUlJPUjogY3Jvbk1pbkludGVydmFsRXJyb3Ig5qCH6K+G5pyA5bCP6Ze06ZqU6ZSZ6K+vXG5cbmV4cG9ydCBjb25zdCBDUk9OX0ZPUk1BVF9FUlJPUiA9ICdjcm9uRm9ybWF0RXJyb3InO1xuZXhwb3J0IGNvbnN0IENST05fTUlOX0lOVEVSVkFMX0VSUk9SID0gJ2Nyb25NaW5JbnRlcnZhbEVycm9yJztcbmV4cG9ydCBmdW5jdGlvbiBjcm9uVmFsaWRhdG9yKG1pbkludGVydmFsPzogbnVtYmVyKSB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbC52YWx1ZSBhcyBzdHJpbmc7XG4gICAgcmV0dXJuIGNyb25WYWxpZGF0b3JCYXNpYyh2YWx1ZSwgbWluSW50ZXJ2YWwpO1xuICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNyb25WYWxpZGF0b3JCYXNpYyh2YWx1ZTogc3RyaW5nLCBtaW5JbnRlcnZhbD86IG51bWJlcikge1xuICBpZiAoIXZhbHVlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAoIWlzQ3JvbldlZWtEYXlDb3JyZWN0KHZhbHVlKSkge1xuICAgIHJldHVybiB7XG4gICAgICBbQ1JPTl9GT1JNQVRfRVJST1JdOiB0cnVlLFxuICAgIH07XG4gIH1cblxuICBpZiAoIWlzQ3JvbkZpZWxkQ291bnRDb3JyZWN0KHZhbHVlKSkge1xuICAgIHJldHVybiB7XG4gICAgICBbQ1JPTl9GT1JNQVRfRVJST1JdOiB0cnVlLFxuICAgIH07XG4gIH1cbiAgdHJ5IHtcbiAgICBjb25zdCBpdGVyYXRvciA9IHBhcnNlci5wYXJzZUV4cHJlc3Npb24odmFsdWUpO1xuXG4gICAgbGV0IG1pbkludGVydmFsVmFsaWRpdHkgPSB0cnVlO1xuXG4gICAgaWYgKG1pbkludGVydmFsKSB7XG4gICAgICBjb25zdCBuZXh0MSA9IGl0ZXJhdG9yLm5leHQoKSBhcyBhbnk7XG4gICAgICBjb25zdCBuZXh0MiA9IGl0ZXJhdG9yLm5leHQoKSBhcyBhbnk7XG4gICAgICAvLyBtaW51dGVcbiAgICAgIGlmICgobmV4dDIuX2RhdGUgLSBuZXh0MS5fZGF0ZSkgLyAxMDAwIC8gNjAgPCBtaW5JbnRlcnZhbCkge1xuICAgICAgICBtaW5JbnRlcnZhbFZhbGlkaXR5ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1pbkludGVydmFsVmFsaWRpdHlcbiAgICAgID8gbnVsbFxuICAgICAgOiB7XG4gICAgICAgICAgW0NST05fTUlOX0lOVEVSVkFMX0VSUk9SXTogdHJ1ZSxcbiAgICAgICAgfTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFtDUk9OX0ZPUk1BVF9FUlJPUl06IHRydWUsXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvZm9ybS92YWxpZGF0b3JzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUMsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0IsT0FBTyxFQUNMLG1DQUFtQyxFQUNuQyxxQ0FBcUMsRUFDckMsZ0NBQWdDLEdBQ2pDLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixvQkFBb0IsRUFDcEIsVUFBVSxHQUNYLE1BQU0sdUJBQXVCLENBQUM7QUFHL0IsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsa0JBQWtCLENBQUM7QUFDaEUsTUFBTSxzQ0FBc0MsR0FBRyxFQUFFLENBQUM7QUFDbEQsTUFBTSx3Q0FBd0MsR0FBRyxHQUFHLENBQUM7QUFFckQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxFQUM3QixNQUFNLEdBQUcsRUFBRSxFQUNYLE9BQU8sR0FBRyw2QkFBNkIsTUFJckMsRUFBRTtJQUNKLE1BQU0sU0FBUyxHQUFHLDRCQUE0QixDQUFDO0lBQy9DLE1BQU0sU0FBUyxHQUFHLDRCQUE0QixDQUFDO0lBQy9DLE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQztJQUU3QixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUV4QyxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsRUFBVSxFQUFFO1FBQ3hFLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDaEIs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QyxLQUFLLENBQUMsR0FBRyxJQUFJLEdBQUcsRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDO2dCQUMxRCxtQkFBbUIsR0FBRyxLQUFLLENBQUM7WUFDOUIsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLG1CQUFtQjtZQUN4QixDQUFDLENBQUMsSUFBSTtZQUNOLENBQUMsQ0FBQztnQkFDRSxDQUFDLHVCQUF1QixDQUFDLEVBQUUsSUFBSTthQUNoQyxDQUFDO0lBQ1IsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU87WUFDTCxDQUFDLGlCQUFpQixDQUFDLEVBQUUsSUFBSTtTQUMxQixDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgcGFyc2VyIGZyb20gJ2Nyb24tcGFyc2VyJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBLOFNfUkVTT1VSQ0VfTEFCRUxfS0VZX05BTUVfUEFUVEVSTixcbiAgSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9QUkVGSVhfUEFUVEVSTixcbiAgSzhTX1JFU09VUkNFX0xBQkVMX1ZBTFVFX1BBVFRFUk4sXG59IGZyb20gJy4uLy4uL2NvcmUvY29uc3RhbnRzL3BhdHRlcm5zJztcbmltcG9ydCB7XG4gIGlzQ3JvbkZpZWxkQ291bnRDb3JyZWN0LFxuICBpc0Nyb25XZWVrRGF5Q29ycmVjdCxcbiAgcHVibGlzaFJlZixcbn0gZnJvbSAnLi4vLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi90cmFuc2xhdGUvcHVibGljLWFwaSc7XG5cbmV4cG9ydCBjb25zdCBTVFJPTkdfUEFTU1dPUkRfU1BFQ0lBTF9DSEFSUyA9ICd+IUAjJCVeJiooKS1fPSs/JztcbmNvbnN0IEs4U19SRVNPVVJDRV9MQUJFTF9LRVlfTkFNRV9NQVhfTEVOR1RIID0gNjM7XG5jb25zdCBLOFNfUkVTT1VSQ0VfTEFCRUxfS0VZX1BSRUZJWF9NQVhfTEVOR1RIID0gMjUzO1xuXG5leHBvcnQgZnVuY3Rpb24gcmFuZG9tUGFzc3dvcmQoe1xuICBsZW5ndGggPSAxMixcbiAgc3ltYm9scyA9IFNUUk9OR19QQVNTV09SRF9TUEVDSUFMX0NIQVJTLFxufToge1xuICBsZW5ndGg/OiBudW1iZXI7XG4gIHN5bWJvbHM/OiBzdHJpbmc7XG59ID0ge30pOiBzdHJpbmcge1xuICBjb25zdCBsb3dlckNhc2UgPSAnYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonO1xuICBjb25zdCB1cHBlckNhc2UgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVonO1xuICBjb25zdCBudW1iZXJzID0gJzAxMjM0NTY3ODknO1xuXG4gIGNvbnN0IHBhc3N3b3JkID0gQXJyYXkuZnJvbSh7IGxlbmd0aCB9KTtcblxuICBjb25zdCByYW5kb21Qb3NpdGlvbiA9IChpID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogbGVuZ3RoKSk6IG51bWJlciA9PiB7XG4gICAgaWYgKHBhc3N3b3JkW2ldKSB7XG4gICAgICByZXR1cm4gcmFuZG9tUG9zaXRpb24oKytpID49IGxlbmd0aCA/IGkgLSBsZW5ndGggOiBpKTtcbiAgICB9XG4gICAgcmV0dXJuIGk7XG4gIH07XG5cbiAgY29uc3QgcmFuZG9tQ2hhciA9IChvcHRpb25zOiBzdHJpbmcpID0+XG4gICAgb3B0aW9ucy5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogb3B0aW9ucy5sZW5ndGgpKTtcblxuICBjb25zdCByYW5kb21HZW5lcmF0b3IgPSAoKSA9PiB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IFtsb3dlckNhc2UsIHVwcGVyQ2FzZSwgbnVtYmVyc107XG4gICAgaWYgKHN5bWJvbHMpIHtcbiAgICAgIG9wdGlvbnMucHVzaChzeW1ib2xzKTtcbiAgICB9XG4gICAgcmV0dXJuIHJhbmRvbUNoYXIob3B0aW9uc1tNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBvcHRpb25zLmxlbmd0aCldKTtcbiAgfTtcblxuICBwYXNzd29yZFtyYW5kb21Qb3NpdGlvbigpXSA9IHJhbmRvbUNoYXIobG93ZXJDYXNlKTtcbiAgcGFzc3dvcmRbcmFuZG9tUG9zaXRpb24oKV0gPSByYW5kb21DaGFyKG51bWJlcnMpO1xuICBpZiAoc3ltYm9scykge1xuICAgIHBhc3N3b3JkW3JhbmRvbVBvc2l0aW9uKCldID0gcmFuZG9tQ2hhcihzeW1ib2xzKTtcbiAgfVxuXG4gIHBhc3N3b3JkLmZvckVhY2goKGNoYXIsIGluZGV4KSA9PiB7XG4gICAgaWYgKCFjaGFyKSB7XG4gICAgICBwYXNzd29yZFtpbmRleF0gPSByYW5kb21HZW5lcmF0b3IoKTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBwYXNzd29yZC5qb2luKCcnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGs4c1Jlc291cmNlTGFiZWxLZXlWYWxpZGF0b3IoXG4gIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCxcbik6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgaWYgKCFjb250cm9sLnZhbHVlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBrZXlQYXJ0aXRpb24gPSAoY29udHJvbC52YWx1ZSBhcyBzdHJpbmcpLnNwbGl0KCcvJyk7XG4gIGNvbnN0IFtwcmVmaXgsIC4uLm5hbWVQYXJ0c10gPSBrZXlQYXJ0aXRpb247XG4gIGxldCBjaGVja1ByZWZpeCA9IHRydWU7XG4gIGxldCBjaGVja05hbWUgPSB0cnVlO1xuICBsZXQgbmFtZTogc3RyaW5nO1xuICBpZiAoa2V5UGFydGl0aW9uLmxlbmd0aCA+IDEpIHtcbiAgICBuYW1lID0gbmFtZVBhcnRzLmpvaW4oJy8nKTtcbiAgICBjaGVja1ByZWZpeCA9IEs4U19SRVNPVVJDRV9MQUJFTF9LRVlfUFJFRklYX1BBVFRFUk4ucGF0dGVybi50ZXN0KHByZWZpeCk7XG4gICAgY2hlY2tOYW1lID0gSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9OQU1FX1BBVFRFUk4ucGF0dGVybi50ZXN0KG5hbWUpO1xuICB9IGVsc2Uge1xuICAgIG5hbWUgPSBrZXlQYXJ0aXRpb25bMF07XG4gICAgY2hlY2tOYW1lID0gSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9OQU1FX1BBVFRFUk4ucGF0dGVybi50ZXN0KFxuICAgICAga2V5UGFydGl0aW9uWzBdLFxuICAgICk7XG4gIH1cbiAgaWYgKGtleVBhcnRpdGlvbi5sZW5ndGggPiAxKSB7XG4gICAgaWYgKCFjaGVja1ByZWZpeCkge1xuICAgICAgcmV0dXJuIHsgcHJlZml4UGF0dGVybjogdHJ1ZSB9O1xuICAgIH1cbiAgICBpZiAocHJlZml4Lmxlbmd0aCA+IEs4U19SRVNPVVJDRV9MQUJFTF9LRVlfUFJFRklYX01BWF9MRU5HVEgpIHtcbiAgICAgIHJldHVybiB7IHByZWZpeFRvb0xvbmc6IHByZWZpeC5sZW5ndGggfTtcbiAgICB9XG4gIH1cblxuICBpZiAoIWNoZWNrTmFtZSkge1xuICAgIHJldHVybiB7IG5hbWVQYXR0ZXJuOiB0cnVlIH07XG4gIH1cblxuICBpZiAobmFtZS5sZW5ndGggPiBLOFNfUkVTT1VSQ0VfTEFCRUxfS0VZX05BTUVfTUFYX0xFTkdUSCkge1xuICAgIHJldHVybiB7IG5hbWVUb29Mb25nOiBuYW1lLmxlbmd0aCB9O1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBjb25zdCBrOHNSZXNvdXJjZUFubm90YXRpb25LZXlWYWxpZGF0b3IgPSBrOHNSZXNvdXJjZUxhYmVsS2V5VmFsaWRhdG9yO1xuXG5leHBvcnQgY29uc3QgazhzUmVzb3VyY2VMYWJlbFZhbHVlVmFsaWRhdG9yID0gVmFsaWRhdG9ycy5jb21wb3NlKFtcbiAgVmFsaWRhdG9ycy5wYXR0ZXJuKEs4U19SRVNPVVJDRV9MQUJFTF9WQUxVRV9QQVRURVJOLnBhdHRlcm4pLFxuICBWYWxpZGF0b3JzLm1heExlbmd0aCg2MyksXG5dKTtcblxuZXhwb3J0IGNvbnN0IGs4c1Jlc291cmNlTGFiZWxWYWxpZGF0b3IgPSB7XG4gIGtleTogazhzUmVzb3VyY2VMYWJlbEtleVZhbGlkYXRvcixcbiAgdmFsdWU6IGs4c1Jlc291cmNlTGFiZWxWYWx1ZVZhbGlkYXRvcixcbn07XG5cbmV4cG9ydCBjb25zdCBrOHNSZXNvdXJjZUFubm90YXRpb25WYWxpZGF0b3IgPSB7XG4gIGtleTogazhzUmVzb3VyY2VBbm5vdGF0aW9uS2V5VmFsaWRhdG9yLFxufTtcblxuZXhwb3J0IGNvbnN0IGdldEs4c1Jlc291cmNlTGFiZWxFcnJvck1hcHBlciA9IChcbiAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuKSA9PiAoe1xuICBrZXk6IHtcbiAgICBuYW1lUGF0dGVybjogdHJhbnNsYXRlLmdldChLOFNfUkVTT1VSQ0VfTEFCRUxfS0VZX05BTUVfUEFUVEVSTi50aXApLFxuICAgIHByZWZpeFBhdHRlcm46IHRyYW5zbGF0ZS5nZXQoSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9QUkVGSVhfUEFUVEVSTi50aXApLFxuICAgIG5hbWVUb29Mb25nOiB0cmFuc2xhdGUuZ2V0KCdrOHNfcmVzb3VyY2VfbGFiZWxfa2V5X2V4Y2VlZGluZycpLFxuICAgIHByZWZpeFRvb0xvbmc6IHRyYW5zbGF0ZS5nZXQoJ2s4c19sYWJlbF9wcmVmaXhfdG9vX2xvbmcnKSxcbiAgfSxcbiAgdmFsdWU6IHtcbiAgICBwYXR0ZXJuOiB0cmFuc2xhdGUuZ2V0KEs4U19SRVNPVVJDRV9MQUJFTF9WQUxVRV9QQVRURVJOLnRpcCksXG4gICAgbWF4bGVuZ3RoOiB0cmFuc2xhdGUuZ2V0KCdrOHNfcmVzb3VyY2VfbGFiZWxfdmFsdWVfZXhjZWVkaW5nJyksXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IGdldEs4c1Jlc291cmNlTGFiZWxFcnJvck1hcHBlciQgPSAodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSA9PlxuICB0cmFuc2xhdGUubG9jYWxlJC5waXBlKFxuICAgIG1hcCgoKSA9PiBnZXRLOHNSZXNvdXJjZUxhYmVsRXJyb3JNYXBwZXIodHJhbnNsYXRlKSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG5leHBvcnQgY29uc3QgZ2V0SzhzUmVzb3VyY2VBbm5vdGF0aW9uRXJyb3JNYXBwZXIgPSAoXG4gIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbikgPT4gKHtcbiAga2V5OiB7XG4gICAgbmFtZVBhdHRlcm46IHRyYW5zbGF0ZS5nZXQoSzhTX1JFU09VUkNFX0xBQkVMX0tFWV9OQU1FX1BBVFRFUk4udGlwKSxcbiAgICBwcmVmaXhQYXR0ZXJuOiB0cmFuc2xhdGUuZ2V0KEs4U19SRVNPVVJDRV9MQUJFTF9LRVlfUFJFRklYX1BBVFRFUk4udGlwKSxcbiAgICBuYW1lVG9vTG9uZzogdHJhbnNsYXRlLmdldCgnazhzX3Jlc291cmNlX2xhYmVsX2tleV9leGNlZWRpbmcnKSxcbiAgICBwcmVmaXhUb29Mb25nOiB0cmFuc2xhdGUuZ2V0KCdrOHNfbGFiZWxfcHJlZml4X3Rvb19sb25nJyksXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IGdldEs4c1Jlc291cmNlQW5ub3RhdGlvbkVycm9yTWFwcGVyJCA9IChcbiAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuKSA9PlxuICB0cmFuc2xhdGUubG9jYWxlJC5waXBlKFxuICAgIG1hcCgoKSA9PiBnZXRLOHNSZXNvdXJjZUFubm90YXRpb25FcnJvck1hcHBlcih0cmFuc2xhdGUpKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG5cbi8vIENST05fRk9STUFUX0VSUk9SOiBjcm9uRm9ybWF0RXJyb3Ig5qCH6K+G5qC85byP6ZSZ6K+vXG4vLyBDUk9OX01JTl9JTlRFUlZBTF9FUlJPUjogY3Jvbk1pbkludGVydmFsRXJyb3Ig5qCH6K+G5pyA5bCP6Ze06ZqU6ZSZ6K+vXG5cbmV4cG9ydCBjb25zdCBDUk9OX0ZPUk1BVF9FUlJPUiA9ICdjcm9uRm9ybWF0RXJyb3InO1xuZXhwb3J0IGNvbnN0IENST05fTUlOX0lOVEVSVkFMX0VSUk9SID0gJ2Nyb25NaW5JbnRlcnZhbEVycm9yJztcbmV4cG9ydCBmdW5jdGlvbiBjcm9uVmFsaWRhdG9yKG1pbkludGVydmFsPzogbnVtYmVyKSB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbC52YWx1ZSBhcyBzdHJpbmc7XG4gICAgcmV0dXJuIGNyb25WYWxpZGF0b3JCYXNpYyh2YWx1ZSwgbWluSW50ZXJ2YWwpO1xuICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNyb25WYWxpZGF0b3JCYXNpYyh2YWx1ZTogc3RyaW5nLCBtaW5JbnRlcnZhbD86IG51bWJlcikge1xuICBpZiAoIXZhbHVlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAoIWlzQ3JvbldlZWtEYXlDb3JyZWN0KHZhbHVlKSkge1xuICAgIHJldHVybiB7XG4gICAgICBbQ1JPTl9GT1JNQVRfRVJST1JdOiB0cnVlLFxuICAgIH07XG4gIH1cblxuICBpZiAoIWlzQ3JvbkZpZWxkQ291bnRDb3JyZWN0KHZhbHVlKSkge1xuICAgIHJldHVybiB7XG4gICAgICBbQ1JPTl9GT1JNQVRfRVJST1JdOiB0cnVlLFxuICAgIH07XG4gIH1cbiAgdHJ5IHtcbiAgICBjb25zdCBpdGVyYXRvciA9IHBhcnNlci5wYXJzZUV4cHJlc3Npb24odmFsdWUpO1xuXG4gICAgbGV0IG1pbkludGVydmFsVmFsaWRpdHkgPSB0cnVlO1xuXG4gICAgaWYgKG1pbkludGVydmFsKSB7XG4gICAgICBjb25zdCBuZXh0MSA9IGl0ZXJhdG9yLm5leHQoKSBhcyBhbnk7XG4gICAgICBjb25zdCBuZXh0MiA9IGl0ZXJhdG9yLm5leHQoKSBhcyBhbnk7XG4gICAgICAvLyBtaW51dGVcbiAgICAgIGlmICgobmV4dDIuX2RhdGUgLSBuZXh0MS5fZGF0ZSkgLyAxMDAwIC8gNjAgPCBtaW5JbnRlcnZhbCkge1xuICAgICAgICBtaW5JbnRlcnZhbFZhbGlkaXR5ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1pbkludGVydmFsVmFsaWRpdHlcbiAgICAgID8gbnVsbFxuICAgICAgOiB7XG4gICAgICAgICAgW0NST05fTUlOX0lOVEVSVkFMX0VSUk9SXTogdHJ1ZSxcbiAgICAgICAgfTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFtDUk9OX0ZPUk1BVF9FUlJPUl06IHRydWUsXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -26,7 +26,7 @@ export class GraphActionsComponent {
|
|
|
26
26
|
i0.ɵɵproperty("ngClass", ctx.positionClass);
|
|
27
27
|
} }, dependencies: [i1.NgClass], encapsulation: 2, changeDetection: 0 }); }
|
|
28
28
|
}
|
|
29
|
-
(
|
|
29
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GraphActionsComponent, [{
|
|
30
30
|
type: Component,
|
|
31
31
|
args: [{
|
|
32
32
|
selector: 'acl-graph-actions',
|
|
@@ -45,4 +45,5 @@ export class GraphActionsComponent {
|
|
|
45
45
|
type: HostListener,
|
|
46
46
|
args: ['mousedown', ['$event']]
|
|
47
47
|
}] }); })();
|
|
48
|
-
|
|
48
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GraphActionsComponent, { className: "GraphActionsComponent" }); })();
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGgtYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvZ3JhcGgtY2FudmFzL2NvbXBvbmVudHMvZ3JhcGgtYWN0aW9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7Ozs7QUFhdkIsTUFBTSxPQUFPLHFCQUFxQjtJQVhsQztRQWFFLGFBQVEsR0FBRyxXQUFXLENBQUM7S0FleEI7SUFiQyxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxRQUFRO2FBQ2pCLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDVixNQUFNLENBQ0wsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFDN0MsRUFBNkIsQ0FDOUIsQ0FBQztJQUNOLENBQUM7SUFHRCxlQUFlLENBQUMsQ0FBYTtRQUMzQixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDdEIsQ0FBQztzRkFoQlUscUJBQXFCO29FQUFyQixxQkFBcUI7WUFBckIsd0dBQUEsMkJBQXVCLElBQUY7OztZQVRyQiw4QkFHVjtZQUNDLGtCQUF5QjtZQUMzQixpQkFBTTs7WUFISiwyQ0FBeUI7OztpRkFPaEIscUJBQXFCO2NBWGpDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixRQUFRLEVBQUU7Ozs7O1NBS0g7Z0JBQ1AsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDO2dCQUdDLFFBQVE7a0JBRFAsS0FBSztZQWFOLGVBQWU7a0JBRGQsWUFBWTttQkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tGQWIxQixxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1ncmFwaC1hY3Rpb25zJyxcbiAgdGVtcGxhdGU6IGA8ZGl2XG4gICAgY2xhc3M9XCJhY2wtZ3JhcGgtY2FudmFzX19hY3Rpb24td3JhcHBlclwiXG4gICAgW25nQ2xhc3NdPVwicG9zaXRpb25DbGFzc1wiXG4gID5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PmAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFwaEFjdGlvbnNDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBwb3NpdGlvbiA9ICdyaWdodCB0b3AnO1xuXG4gIGdldCBwb3NpdGlvbkNsYXNzKCkge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uXG4gICAgICAuc3BsaXQoJyAnKVxuICAgICAgLnJlZHVjZShcbiAgICAgICAgKGFjYywgdikgPT4gKHYgPyB7IC4uLmFjYywgW3ZdOiB0cnVlIH0gOiBhY2MpLFxuICAgICAgICB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPixcbiAgICAgICk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBoYW5kbGVNb3VzZURvd24oZTogTW91c2VFdmVudCkge1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -8,6 +8,8 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
import * as i1 from "../graph-store.service";
|
|
9
9
|
const _c0 = ["canvas"];
|
|
10
10
|
const _c1 = ["surface"];
|
|
11
|
+
const _c2 = ["*", [["acl-graph-links"]], [["acl-graph-actions"]]];
|
|
12
|
+
const _c3 = ["*", "acl-graph-links", "acl-graph-actions"];
|
|
11
13
|
function GraphCanvasComponent_div_21_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
12
14
|
i0.ɵɵelementContainerStart(0);
|
|
13
15
|
i0.ɵɵelement(1, "aui-icon", 15);
|
|
@@ -21,14 +23,14 @@ function GraphCanvasComponent_div_21_ng_container_2_Template(rf, ctx) { if (rf &
|
|
|
21
23
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 1, "loading_please_wait"));
|
|
22
24
|
} }
|
|
23
25
|
function GraphCanvasComponent_div_21_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
24
|
-
const
|
|
26
|
+
const _r3 = i0.ɵɵgetCurrentView();
|
|
25
27
|
i0.ɵɵelementContainerStart(0);
|
|
26
28
|
i0.ɵɵelementStart(1, "span");
|
|
27
29
|
i0.ɵɵtext(2);
|
|
28
30
|
i0.ɵɵpipe(3, "translate");
|
|
29
31
|
i0.ɵɵelementEnd();
|
|
30
32
|
i0.ɵɵelementStart(4, "button", 16);
|
|
31
|
-
i0.ɵɵlistener("click", function GraphCanvasComponent_div_21_ng_container_3_Template_button_click_4_listener() { i0.ɵɵrestoreView(
|
|
33
|
+
i0.ɵɵlistener("click", function GraphCanvasComponent_div_21_ng_container_3_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r3); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.retry.emit()); });
|
|
32
34
|
i0.ɵɵtext(5);
|
|
33
35
|
i0.ɵɵpipe(6, "translate");
|
|
34
36
|
i0.ɵɵelementEnd();
|
|
@@ -40,21 +42,19 @@ function GraphCanvasComponent_div_21_ng_container_3_Template(rf, ctx) { if (rf &
|
|
|
40
42
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 4, "retry"), " ");
|
|
41
43
|
} }
|
|
42
44
|
function GraphCanvasComponent_div_21_Template(rf, ctx) { if (rf & 1) {
|
|
45
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
|
43
46
|
i0.ɵɵelementStart(0, "div", 12);
|
|
44
|
-
i0.ɵɵlistener("wheel", function GraphCanvasComponent_div_21_Template_div_wheel_0_listener($event) { return $event.stopPropagation(); })("mousedown", function GraphCanvasComponent_div_21_Template_div_mousedown_0_listener($event) { return $event.stopPropagation(); });
|
|
47
|
+
i0.ɵɵlistener("wheel", function GraphCanvasComponent_div_21_Template_div_wheel_0_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.stopPropagation()); })("mousedown", function GraphCanvasComponent_div_21_Template_div_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r2); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
45
48
|
i0.ɵɵelementStart(1, "div", 13);
|
|
46
|
-
i0.ɵɵtemplate(2, GraphCanvasComponent_div_21_ng_container_2_Template, 5, 3, "ng-container", 14);
|
|
47
|
-
i0.ɵɵtemplate(3, GraphCanvasComponent_div_21_ng_container_3_Template, 7, 6, "ng-container", 14);
|
|
49
|
+
i0.ɵɵtemplate(2, GraphCanvasComponent_div_21_ng_container_2_Template, 5, 3, "ng-container", 14)(3, GraphCanvasComponent_div_21_ng_container_3_Template, 7, 6, "ng-container", 14);
|
|
48
50
|
i0.ɵɵelementEnd()();
|
|
49
51
|
} if (rf & 2) {
|
|
50
|
-
const
|
|
52
|
+
const ctx_r3 = i0.ɵɵnextContext();
|
|
51
53
|
i0.ɵɵadvance(2);
|
|
52
|
-
i0.ɵɵproperty("ngIf",
|
|
53
|
-
i0.ɵɵadvance(
|
|
54
|
-
i0.ɵɵproperty("ngIf",
|
|
54
|
+
i0.ɵɵproperty("ngIf", ctx_r3.loading);
|
|
55
|
+
i0.ɵɵadvance();
|
|
56
|
+
i0.ɵɵproperty("ngIf", ctx_r3.loadFailed);
|
|
55
57
|
} }
|
|
56
|
-
const _c2 = ["*", [["acl-graph-links"]], [["acl-graph-actions"]]];
|
|
57
|
-
const _c3 = ["*", "acl-graph-links", "acl-graph-actions"];
|
|
58
58
|
const isMacSystem = isMac();
|
|
59
59
|
export class GraphCanvasComponent {
|
|
60
60
|
get dragging() {
|
|
@@ -203,33 +203,34 @@ export class GraphCanvasComponent {
|
|
|
203
203
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.surfaceRef = _t.first);
|
|
204
204
|
} }, hostBindings: function GraphCanvasComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
205
205
|
i0.ɵɵlistener("mousemove", function GraphCanvasComponent_mousemove_HostBindingHandler($event) { return ctx.handleMouseMove($event); }, false, i0.ɵɵresolveDocument)("mouseup", function GraphCanvasComponent_mouseup_HostBindingHandler($event) { return ctx.handleMouseUp($event); }, false, i0.ɵɵresolveDocument);
|
|
206
|
-
} }, inputs: { minScale: "minScale", maxScale: "maxScale", originX: "originX", originY: "originY", boundary: "boundary", loading: "loading", loadFailed: "loadFailed" }, outputs: { retry: "retry" }, features: [i0.ɵɵProvidersFeature([GraphStoreService])], ngContentSelectors: _c3, decls: 22, vars: 20, consts: [[1, "acl-graph-canvas", 3, "
|
|
206
|
+
} }, inputs: { minScale: "minScale", maxScale: "maxScale", originX: "originX", originY: "originY", boundary: "boundary", loading: "loading", loadFailed: "loadFailed" }, outputs: { retry: "retry" }, features: [i0.ɵɵProvidersFeature([GraphStoreService])], ngContentSelectors: _c3, decls: 22, vars: 20, consts: [["canvas", ""], ["surface", ""], [1, "acl-graph-canvas", 3, "wheel", "mousedown", "ngStyle"], [1, "acl-graph-canvas__surface", 3, "ngStyle"], [1, "acl-graph-canvas__action-wrapper", "right", "bottom"], [1, "acl-graph-canvas__action", "square", 3, "click", "mousedown", "title"], ["icon", "full_size"], [1, "acl-graph-canvas__scale-controller"], ["icon", "minus", 3, "click", "mousedown", "title"], ["icon", "plus", 3, "click", "mousedown", "title"], ["icon", "actual_size"], ["class", "acl-graph-canvas__loading-mask", 3, "wheel", "mousedown", 4, "ngIf"], [1, "acl-graph-canvas__loading-mask", 3, "wheel", "mousedown"], [1, "acl-graph-canvas__loading"], [4, "ngIf"], ["icon", "spinner"], ["aui-button", "text", 3, "click"]], template: function GraphCanvasComponent_Template(rf, ctx) { if (rf & 1) {
|
|
207
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
|
207
208
|
i0.ɵɵprojectionDef(_c2);
|
|
208
|
-
i0.ɵɵelementStart(0, "div",
|
|
209
|
-
i0.ɵɵlistener("wheel", function GraphCanvasComponent_Template_div_wheel_0_listener($event) { return ctx.handleWheelEvent($event); })("mousedown", function GraphCanvasComponent_Template_div_mousedown_0_listener($event) { return ctx.handleMouseDown($event); });
|
|
210
|
-
i0.ɵɵelementStart(2, "div",
|
|
209
|
+
i0.ɵɵelementStart(0, "div", 2, 0);
|
|
210
|
+
i0.ɵɵlistener("wheel", function GraphCanvasComponent_Template_div_wheel_0_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleWheelEvent($event)); })("mousedown", function GraphCanvasComponent_Template_div_mousedown_0_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.handleMouseDown($event)); });
|
|
211
|
+
i0.ɵɵelementStart(2, "div", 3, 1);
|
|
211
212
|
i0.ɵɵprojection(4);
|
|
212
213
|
i0.ɵɵprojection(5, 1);
|
|
213
214
|
i0.ɵɵelementEnd();
|
|
214
215
|
i0.ɵɵelementStart(6, "div", 4)(7, "div", 5);
|
|
215
|
-
i0.ɵɵlistener("click", function GraphCanvasComponent_Template_div_click_7_listener() { return ctx.zoomOverview(); })("mousedown", function GraphCanvasComponent_Template_div_mousedown_7_listener($event) { return $event.stopPropagation(); });
|
|
216
216
|
i0.ɵɵpipe(8, "translate");
|
|
217
|
+
i0.ɵɵlistener("click", function GraphCanvasComponent_Template_div_click_7_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.zoomOverview()); })("mousedown", function GraphCanvasComponent_Template_div_mousedown_7_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
217
218
|
i0.ɵɵelement(9, "aui-icon", 6);
|
|
218
219
|
i0.ɵɵelementEnd();
|
|
219
220
|
i0.ɵɵelementStart(10, "div", 7)(11, "aui-icon", 8);
|
|
220
|
-
i0.ɵɵlistener("click", function GraphCanvasComponent_Template_aui_icon_click_11_listener() { return ctx.zoomByDefaultStep("out"); })("mousedown", function GraphCanvasComponent_Template_aui_icon_mousedown_11_listener($event) { return $event.stopPropagation(); });
|
|
221
221
|
i0.ɵɵpipe(12, "translate");
|
|
222
|
+
i0.ɵɵlistener("click", function GraphCanvasComponent_Template_aui_icon_click_11_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.zoomByDefaultStep("out")); })("mousedown", function GraphCanvasComponent_Template_aui_icon_mousedown_11_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
222
223
|
i0.ɵɵelementEnd();
|
|
223
224
|
i0.ɵɵelementStart(13, "span");
|
|
224
225
|
i0.ɵɵtext(14);
|
|
225
226
|
i0.ɵɵelementEnd();
|
|
226
227
|
i0.ɵɵelementStart(15, "aui-icon", 9);
|
|
227
|
-
i0.ɵɵlistener("click", function GraphCanvasComponent_Template_aui_icon_click_15_listener() { return ctx.zoomByDefaultStep("in"); })("mousedown", function GraphCanvasComponent_Template_aui_icon_mousedown_15_listener($event) { return $event.stopPropagation(); });
|
|
228
228
|
i0.ɵɵpipe(16, "translate");
|
|
229
|
+
i0.ɵɵlistener("click", function GraphCanvasComponent_Template_aui_icon_click_15_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.zoomByDefaultStep("in")); })("mousedown", function GraphCanvasComponent_Template_aui_icon_mousedown_15_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
229
230
|
i0.ɵɵelementEnd()();
|
|
230
231
|
i0.ɵɵelementStart(17, "div", 5);
|
|
231
|
-
i0.ɵɵlistener("click", function GraphCanvasComponent_Template_div_click_17_listener() { return ctx.zoomOriginal(); })("mousedown", function GraphCanvasComponent_Template_div_mousedown_17_listener($event) { return $event.stopPropagation(); });
|
|
232
232
|
i0.ɵɵpipe(18, "translate");
|
|
233
|
+
i0.ɵɵlistener("click", function GraphCanvasComponent_Template_div_click_17_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.zoomOriginal()); })("mousedown", function GraphCanvasComponent_Template_div_mousedown_17_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
233
234
|
i0.ɵɵelement(19, "aui-icon", 10);
|
|
234
235
|
i0.ɵɵelementEnd()();
|
|
235
236
|
i0.ɵɵprojection(20, 2);
|
|
@@ -246,7 +247,7 @@ export class GraphCanvasComponent {
|
|
|
246
247
|
i0.ɵɵproperty("title", i0.ɵɵpipeBind1(12, 14, "zoom_out"));
|
|
247
248
|
i0.ɵɵadvance(3);
|
|
248
249
|
i0.ɵɵtextInterpolate1("", (ctx.transformState.scale * 100).toFixed(0), "%");
|
|
249
|
-
i0.ɵɵadvance(
|
|
250
|
+
i0.ɵɵadvance();
|
|
250
251
|
i0.ɵɵclassProp("disabled", ctx.transformState.scale >= ctx.maxScale);
|
|
251
252
|
i0.ɵɵproperty("title", i0.ɵɵpipeBind1(16, 16, "zoom_in"));
|
|
252
253
|
i0.ɵɵadvance(2);
|
|
@@ -255,10 +256,10 @@ export class GraphCanvasComponent {
|
|
|
255
256
|
i0.ɵɵproperty("ngIf", ctx.loading || ctx.loadFailed);
|
|
256
257
|
} }, styles: [".acl-graph-canvas{display:flex;width:100%;height:100%;border-radius:var(--aui-border-radius-l);background-color:rgb(var(--aui-color-n-9));background-image:radial-gradient(rgba(var(--aui-color-n-7),.5) 1px,transparent 1px);background-size:10px 10px;background-position:center center;position:relative;overflow:hidden}.acl-graph-canvas:after{content:\"\";display:block;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;overflow:hidden;pointer-events:none}:root .acl-graph-canvas:after{box-shadow:inset 0 0 4px rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .acl-graph-canvas:after{box-shadow:inset 0 0 4px rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .acl-graph-canvas:after{box-shadow:inset 0 0 4px rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .acl-graph-canvas:after{box-shadow:inset 0 0 4px rgba(var(--aui-color-origin-shadow),.75)}.acl-graph-canvas__surface{position:relative}.acl-graph-canvas__links{position:absolute;top:0;left:0;width:1000px;height:1000px;overflow:visible;color:rgb(var(--aui-color-primary));pointer-events:none}.acl-graph-canvas__links .acl-graph-link__line{fill:none;stroke:currentcolor;stroke-width:2px}.acl-graph-canvas__links .acl-graph-link__dot,.acl-graph-canvas__links .acl-graph-link__arrow{fill:currentcolor}.acl-graph-canvas__loading{padding:8px 16px;border-radius:var(--aui-border-radius-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-secondary-text))}:root .acl-graph-canvas__loading{background-color:rgba(var(--aui-color-n-1),.05)}html[aui-theme-mode=light] .acl-graph-canvas__loading{background-color:rgba(var(--aui-color-n-1),.05)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .acl-graph-canvas__loading{background-color:rgba(var(--aui-color-n-1),.1)}}html[aui-theme-mode=dark] .acl-graph-canvas__loading{background-color:rgba(var(--aui-color-n-1),.1)}.acl-graph-canvas__loading aui-icon{margin-right:8px;color:rgb(var(--aui-color-primary));font-size:var(--aui-icon-size-m)}.acl-graph-canvas__loading-mask{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;cursor:default}.acl-graph-canvas__action-wrapper{position:absolute;display:flex}.acl-graph-canvas__action-wrapper.top{top:var(--aui-spacing-m)}.acl-graph-canvas__action-wrapper.right{right:var(--aui-spacing-m)}.acl-graph-canvas__action-wrapper.left{left:var(--aui-spacing-m)}.acl-graph-canvas__action-wrapper.bottom{bottom:var(--aui-spacing-m)}.acl-graph-canvas acl-graph-actions .acl-graph-canvas__action-wrapper.bottom.right{right:168px}.acl-graph-canvas__action{padding:0 6px;height:24px;display:flex;align-items:center;justify-content:center;background-color:rgb(var(--aui-color-n-10));border-radius:var(--aui-border-radius-m);cursor:pointer;user-select:none;font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-secondary-text))}:root .acl-graph-canvas__action{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .acl-graph-canvas__action{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .acl-graph-canvas__action{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .acl-graph-canvas__action{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}.acl-graph-canvas__action.square{width:24px}.acl-graph-canvas__action:hover,.acl-graph-canvas__action.active{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.acl-graph-canvas__action.disabled{color:rgb(var(--aui-color-disabled-text));background-color:rgb(var(--aui-color-n-10))}.acl-graph-canvas__action+.acl-graph-canvas__action{margin-left:4px}.acl-graph-canvas__scale-controller{display:flex;align-items:center;justify-content:center;margin:0 4px;font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-secondary-text));background-color:rgb(var(--aui-color-n-10));border-radius:var(--aui-border-radius-m);user-select:none}:root .acl-graph-canvas__scale-controller{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .acl-graph-canvas__scale-controller{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .acl-graph-canvas__scale-controller{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .acl-graph-canvas__scale-controller{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}.acl-graph-canvas__scale-controller aui-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;cursor:pointer}.acl-graph-canvas__scale-controller aui-icon:hover{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.acl-graph-canvas__scale-controller aui-icon.disabled{color:rgb(var(--aui-color-disabled-text));background-color:rgb(var(--aui-color-n-10));cursor:not-allowed}.acl-graph-canvas__scale-controller span{text-align:center;height:16px;width:50px;border-left:1px solid rgb(var(--aui-color-n-8));border-right:1px solid rgb(var(--aui-color-n-8))}\n"], encapsulation: 2, changeDetection: 0 }); }
|
|
257
258
|
}
|
|
258
|
-
(
|
|
259
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GraphCanvasComponent, [{
|
|
259
260
|
type: Component,
|
|
260
261
|
args: [{ selector: 'acl-graph-canvas', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [GraphStoreService], template: "<div\n #canvas\n class=\"acl-graph-canvas\"\n [ngStyle]=\"canvasStyle\"\n (wheel)=\"handleWheelEvent($event)\"\n (mousedown)=\"handleMouseDown($event)\"\n>\n <div\n #surface\n class=\"acl-graph-canvas__surface\"\n [ngStyle]=\"surfaceStyle\"\n >\n <ng-content></ng-content>\n <ng-content select=\"acl-graph-links\"></ng-content>\n </div>\n\n <div class=\"acl-graph-canvas__action-wrapper right bottom\">\n <div\n class=\"acl-graph-canvas__action square\"\n [title]=\"'panoramic_view' | translate\"\n (click)=\"zoomOverview()\"\n (mousedown)=\"$event.stopPropagation()\"\n >\n <aui-icon icon=\"full_size\"></aui-icon>\n </div>\n <div class=\"acl-graph-canvas__scale-controller\">\n <aui-icon\n icon=\"minus\"\n [title]=\"'zoom_out' | translate\"\n [class.disabled]=\"transformState.scale <= minScale\"\n (click)=\"zoomByDefaultStep('out')\"\n (mousedown)=\"$event.stopPropagation()\"\n ></aui-icon>\n <span>{{ (transformState.scale * 100).toFixed(0) }}%</span>\n <aui-icon\n icon=\"plus\"\n [title]=\"'zoom_in' | translate\"\n [class.disabled]=\"transformState.scale >= maxScale\"\n (click)=\"zoomByDefaultStep('in')\"\n (mousedown)=\"$event.stopPropagation()\"\n ></aui-icon>\n </div>\n <div\n class=\"acl-graph-canvas__action square\"\n [title]=\"'isometric_view' | translate\"\n (click)=\"zoomOriginal()\"\n (mousedown)=\"$event.stopPropagation()\"\n >\n <aui-icon icon=\"actual_size\"></aui-icon>\n </div>\n </div>\n <ng-content select=\"acl-graph-actions\"></ng-content>\n <div\n *ngIf=\"loading || loadFailed\"\n class=\"acl-graph-canvas__loading-mask\"\n (wheel)=\"$event.stopPropagation()\"\n (mousedown)=\"$event.stopPropagation()\"\n >\n <div class=\"acl-graph-canvas__loading\">\n <ng-container *ngIf=\"loading\">\n <aui-icon icon=\"spinner\"></aui-icon>\n <span>{{ 'loading_please_wait' | translate }}</span>\n </ng-container>\n <ng-container *ngIf=\"loadFailed\">\n <span>{{ 'failed_load_please' | translate }}</span>\n <button\n aui-button=\"text\"\n (click)=\"retry.emit()\"\n >\n {{ 'retry' | translate }}\n </button>\n </ng-container>\n </div>\n </div>\n</div>\n", styles: [".acl-graph-canvas{display:flex;width:100%;height:100%;border-radius:var(--aui-border-radius-l);background-color:rgb(var(--aui-color-n-9));background-image:radial-gradient(rgba(var(--aui-color-n-7),.5) 1px,transparent 1px);background-size:10px 10px;background-position:center center;position:relative;overflow:hidden}.acl-graph-canvas:after{content:\"\";display:block;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;overflow:hidden;pointer-events:none}:root .acl-graph-canvas:after{box-shadow:inset 0 0 4px rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .acl-graph-canvas:after{box-shadow:inset 0 0 4px rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .acl-graph-canvas:after{box-shadow:inset 0 0 4px rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .acl-graph-canvas:after{box-shadow:inset 0 0 4px rgba(var(--aui-color-origin-shadow),.75)}.acl-graph-canvas__surface{position:relative}.acl-graph-canvas__links{position:absolute;top:0;left:0;width:1000px;height:1000px;overflow:visible;color:rgb(var(--aui-color-primary));pointer-events:none}.acl-graph-canvas__links .acl-graph-link__line{fill:none;stroke:currentcolor;stroke-width:2px}.acl-graph-canvas__links .acl-graph-link__dot,.acl-graph-canvas__links .acl-graph-link__arrow{fill:currentcolor}.acl-graph-canvas__loading{padding:8px 16px;border-radius:var(--aui-border-radius-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-secondary-text))}:root .acl-graph-canvas__loading{background-color:rgba(var(--aui-color-n-1),.05)}html[aui-theme-mode=light] .acl-graph-canvas__loading{background-color:rgba(var(--aui-color-n-1),.05)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .acl-graph-canvas__loading{background-color:rgba(var(--aui-color-n-1),.1)}}html[aui-theme-mode=dark] .acl-graph-canvas__loading{background-color:rgba(var(--aui-color-n-1),.1)}.acl-graph-canvas__loading aui-icon{margin-right:8px;color:rgb(var(--aui-color-primary));font-size:var(--aui-icon-size-m)}.acl-graph-canvas__loading-mask{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;cursor:default}.acl-graph-canvas__action-wrapper{position:absolute;display:flex}.acl-graph-canvas__action-wrapper.top{top:var(--aui-spacing-m)}.acl-graph-canvas__action-wrapper.right{right:var(--aui-spacing-m)}.acl-graph-canvas__action-wrapper.left{left:var(--aui-spacing-m)}.acl-graph-canvas__action-wrapper.bottom{bottom:var(--aui-spacing-m)}.acl-graph-canvas acl-graph-actions .acl-graph-canvas__action-wrapper.bottom.right{right:168px}.acl-graph-canvas__action{padding:0 6px;height:24px;display:flex;align-items:center;justify-content:center;background-color:rgb(var(--aui-color-n-10));border-radius:var(--aui-border-radius-m);cursor:pointer;user-select:none;font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-secondary-text))}:root .acl-graph-canvas__action{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .acl-graph-canvas__action{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .acl-graph-canvas__action{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .acl-graph-canvas__action{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}.acl-graph-canvas__action.square{width:24px}.acl-graph-canvas__action:hover,.acl-graph-canvas__action.active{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.acl-graph-canvas__action.disabled{color:rgb(var(--aui-color-disabled-text));background-color:rgb(var(--aui-color-n-10))}.acl-graph-canvas__action+.acl-graph-canvas__action{margin-left:4px}.acl-graph-canvas__scale-controller{display:flex;align-items:center;justify-content:center;margin:0 4px;font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-secondary-text));background-color:rgb(var(--aui-color-n-10));border-radius:var(--aui-border-radius-m);user-select:none}:root .acl-graph-canvas__scale-controller{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .acl-graph-canvas__scale-controller{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .acl-graph-canvas__scale-controller{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .acl-graph-canvas__scale-controller{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}.acl-graph-canvas__scale-controller aui-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;cursor:pointer}.acl-graph-canvas__scale-controller aui-icon:hover{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.acl-graph-canvas__scale-controller aui-icon.disabled{color:rgb(var(--aui-color-disabled-text));background-color:rgb(var(--aui-color-n-10));cursor:not-allowed}.acl-graph-canvas__scale-controller span{text-align:center;height:16px;width:50px;border-left:1px solid rgb(var(--aui-color-n-8));border-right:1px solid rgb(var(--aui-color-n-8))}\n"] }]
|
|
261
|
-
}],
|
|
262
|
+
}], () => [{ type: i1.GraphStoreService }], { minScale: [{
|
|
262
263
|
type: Input
|
|
263
264
|
}], maxScale: [{
|
|
264
265
|
type: Input
|
|
@@ -287,6 +288,7 @@ export class GraphCanvasComponent {
|
|
|
287
288
|
type: HostListener,
|
|
288
289
|
args: ['document:mouseup', ['$event']]
|
|
289
290
|
}] }); })();
|
|
291
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GraphCanvasComponent, { className: "GraphCanvasComponent" }); })();
|
|
290
292
|
function scaleLimit(scale) {
|
|
291
293
|
return clamp(round(scale, 2), 0.25, 2);
|
|
292
294
|
}
|
|
@@ -354,4 +356,4 @@ function ySelector(y, [t, c, b]) {
|
|
|
354
356
|
function coordinate(canvas, [left, top]) {
|
|
355
357
|
return [left - canvas.left, top - canvas.top];
|
|
356
358
|
}
|
|
357
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGgtY2FudmFzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9ncmFwaC1jYW52YXMvY29tcG9uZW50cy9ncmFwaC1jYW52YXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2dyYXBoLWNhbnZhcy9jb21wb25lbnRzL2dyYXBoLWNhbnZhcy50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUVuQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFTM0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7O0lDZ0M3Qiw2QkFBOEI7SUFDNUIsK0JBQW9DO0lBQ3BDLDRCQUFNO0lBQUEsWUFBdUM7O0lBQUEsaUJBQU87SUFDdEQsMEJBQWU7O0lBRFAsZUFBdUM7SUFBdkMsaUVBQXVDOzs7O0lBRS9DLDZCQUFpQztJQUMvQiw0QkFBTTtJQUFBLFlBQXNDOztJQUFBLGlCQUFPO0lBQ25ELGtDQUdDO0lBREMsa0xBQVMsZUFBQSxtQkFBWSxDQUFBLElBQUM7SUFFdEIsWUFDRjs7SUFBQSxpQkFBUztJQUNYLDBCQUFlOztJQVBQLGVBQXNDO0lBQXRDLGdFQUFzQztJQUsxQyxlQUNGO0lB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dCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjbGFtcCwgbWluLCByb3VuZCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBtZXJnZVJpZ2h0IH0gZnJvbSAncmFtZGEnO1xuXG5pbXBvcnQgeyBpc01hYyB9IGZyb20gJy4uLy4uL2NvcmUvdXRpbHMvYnJvd3Nlcic7XG5pbXBvcnQgeyBHcmFwaFN0b3JlU2VydmljZSB9IGZyb20gJy4uL2dyYXBoLXN0b3JlLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgT3JpZ2luWCxcbiAgT3JpZ2luWSxcbiAgUmVjdCxcbiAgUmVjdHMsXG4gIFRyYW5zZm9ybUFjdGlvbixcbiAgVHJhbnNmb3JtU3RhdGUsXG59IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IGdldFJlY3QgfSBmcm9tICcuLi91dGlscyc7XG5cbmNvbnN0IGlzTWFjU3lzdGVtID0gaXNNYWMoKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLWdyYXBoLWNhbnZhcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmFwaC1jYW52YXMudGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyYXBoLWNhbnZhcy5zdHlsZS5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtHcmFwaFN0b3JlU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEdyYXBoQ2FudmFzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBtaW5TY2FsZSA9IDAuMjU7XG5cbiAgQElucHV0KClcbiAgbWF4U2NhbGUgPSAyO1xuXG4gIEBJbnB1dCgpXG4gIG9yaWdpblg6IE9yaWdpblggPSAnY2VudGVyJztcblxuICBASW5wdXQoKVxuICBvcmlnaW5ZOiBPcmlnaW5ZID0gJ3RvcCc7XG5cbiAgQElucHV0KClcbiAgYm91bmRhcnkgPSA2MDtcblxuICBASW5wdXQoKVxuICBsb2FkaW5nID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgbG9hZEZhaWxlZCA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKVxuICByZXRyeSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkKCdjYW52YXMnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwcml2YXRlIHJlYWRvbmx5IGNhbnZhc1JlZjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgnc3VyZmFjZScsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgcmVhZG9ubHkgc3VyZmFjZVJlZjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBnZXRDYW52YXNSZWN0ID0gKCkgPT4gZ2V0UmVjdCh0aGlzLmNhbnZhc1JlZi5uYXRpdmVFbGVtZW50KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGdldFN1cmZhY2VSZWN0ID0gKCkgPT5cbiAgICBnZXRSZWN0KHRoaXMuc3VyZmFjZVJlZi5uYXRpdmVFbGVtZW50KTtcblxuICBwcml2YXRlIGRyYWdTdGFydFBvaW50OiBbbnVtYmVyLCBudW1iZXJdO1xuXG4gIHRyYW5zZm9ybVN0YXRlOiBUcmFuc2Zvcm1TdGF0ZTtcblxuICBnZXQgZHJhZ2dpbmcoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5kcmFnU3RhcnRQb2ludDtcbiAgfVxuXG4gIGdldCBjYW52YXNTdHlsZSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcGFkZGluZzogdGhpcy5ib3VuZGFyeSArICdweCcsXG4gICAgICBqdXN0aWZ5Q29udGVudDogeFNlbGVjdG9yKHRoaXMudHJhbnNmb3JtU3RhdGUub3JpZ2luWzBdLCBbXG4gICAgICAgICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgJ2NlbnRlcicsXG4gICAgICAgICdmbGV4LWVuZCcsXG4gICAgICBdKSxcbiAgICAgIGFsaWduSXRlbXM6IHlTZWxlY3Rvcih0aGlzLnRyYW5zZm9ybVN0YXRlLm9yaWdpblsxXSwgW1xuICAgICAgICAnZmxleC1zdGFydCcsXG4gICAgICAgICdjZW50ZXInLFxuICAgICAgICAnZmxleC1lbmQnLFxuICAgICAgXSksXG4gICAgICBjdXJzb3I6IHRoaXMuZHJhZ2dpbmcgPyAnZ3JhYmJpbmcnIDogJ2dyYWInLFxuICAgIH07XG4gIH1cblxuICBnZXQgc3VyZmFjZVN0eWxlKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IHRoaXMudHJhbnNmb3JtU3RhdGUub3JpZ2luLmpvaW4oJyAnKSxcbiAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZSgke3RoaXMudHJhbnNmb3JtU3RhdGUudHJhbnNsYXRlWzBdfXB4LCAke3RoaXMudHJhbnNmb3JtU3RhdGUudHJhbnNsYXRlWzFdfXB4KSAgc2NhbGUoJHt0aGlzLnRyYW5zZm9ybVN0YXRlLnNjYWxlfSlgLFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGdyYXBoU3RvcmU6IEdyYXBoU3RvcmVTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudHJhbnNmb3JtU3RhdGUgPSB7XG4gICAgICBvcmlnaW46IFt0aGlzLm9yaWdpblgsIHRoaXMub3JpZ2luWV0sXG4gICAgICB0cmFuc2xhdGU6IFswLCAwXSxcbiAgICAgIHNjYWxlOiB0aGlzLmdyYXBoU3RvcmUuZ2V0U2NhbGUoKSxcbiAgICB9O1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuZ3JhcGhTdG9yZS5yZWdpc3RlclN1cmZhY2VOb2RlKHsgZ2V0UmVjdDogdGhpcy5nZXRTdXJmYWNlUmVjdCB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZ3JhcGhTdG9yZS5kaXNjb25uZWN0T2JzZXJ2ZXIoKTtcbiAgfVxuXG4gIGhhbmRsZVdoZWVsRXZlbnQoZTogV2hlZWxFdmVudCkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGNvbnN0IHsgZGVsdGFYLCBkZWx0YVksIGN0cmxLZXksIHNoaWZ0S2V5LCBjbGllbnRYLCBjbGllbnRZIH0gPSBlO1xuICAgIGlmIChjdHJsS2V5KSB7XG4gICAgICB0aGlzLnpvb21CeVdoZWVsKC1kZWx0YVksIFtjbGllbnRYLCBjbGllbnRZXSk7XG4gICAgfSBlbHNlIGlmIChzaGlmdEtleSAmJiAhaXNNYWNTeXN0ZW0pIHtcbiAgICAgIHRoaXMubW92ZSgtZGVsdGFZLCAtZGVsdGFYKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tb3ZlKC1kZWx0YVgsIC1kZWx0YVkpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZU1vdXNlRG93bihlOiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5kcmFnU3RhcnRQb2ludCA9IFtlLmNsaWVudFgsIGUuY2xpZW50WV07XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDptb3VzZW1vdmUnLCBbJyRldmVudCddKVxuICBoYW5kbGVNb3VzZU1vdmUoZTogTW91c2VFdmVudCkge1xuICAgIGlmICghdGhpcy5kcmFnU3RhcnRQb2ludCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm1vdmUoXG4gICAgICBlLmNsaWVudFggLSB0aGlzLmRyYWdTdGFydFBvaW50WzBdLFxuICAgICAgZS5jbGllbnRZIC0gdGhpcy5kcmFnU3RhcnRQb2ludFsxXSxcbiAgICApO1xuICAgIHRoaXMuZHJhZ1N0YXJ0UG9pbnQgPSBbZS5jbGllbnRYLCBlLmNsaWVudFldO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6bW91c2V1cCcsIFsnJGV2ZW50J10pXG4gIGhhbmRsZU1vdXNlVXAoKSB7XG4gICAgdGhpcy5kcmFnU3RhcnRQb2ludCA9IG51bGw7XG4gIH1cblxuICB6b29tQnlXaGVlbCh2OiBudW1iZXIsIHBvaW50ZXJQb3NpdGlvbjogW251bWJlciwgbnVtYmVyXSkge1xuICAgIHRoaXMuZGlzcGF0Y2hUcmFuc2Zvcm0oKHRyYW5zZm9ybSwgcmVjdHMpID0+IHtcbiAgICAgIGNvbnN0IHsgc2NhbGUsIHRyYW5zbGF0ZSB9ID0gdHJhbnNmb3JtO1xuICAgICAgY29uc3QgbmV4dFNjYWxlID0gc2NhbGVMaW1pdChzY2FsZSArIHYgLyA1MDApO1xuICAgICAgY29uc3Qgb3JpZ2luID0gb3JpZ2luQ29vcmRpbmF0ZVBvaW50KHRyYW5zZm9ybSwgcmVjdHMpO1xuICAgICAgY29uc3QgcG9pbnRlciA9IGNvb3JkaW5hdGUocmVjdHMuY2FudmFzUmVjdCwgcG9pbnRlclBvc2l0aW9uKTtcblxuICAgICAgY29uc3QgZGVsdGFYID1cbiAgICAgICAgKChwb2ludGVyWzBdIC0gb3JpZ2luWzBdKSAvIHNjYWxlKSAqIG5leHRTY2FsZSAtXG4gICAgICAgIChwb2ludGVyWzBdIC0gb3JpZ2luWzBdKTtcbiAgICAgIGNvbnN0IGRlbHRhWSA9XG4gICAgICAgICgocG9pbnRlclsxXSAtIG9yaWdpblsxXSkgLyBzY2FsZSkgKiBuZXh0U2NhbGUgLVxuICAgICAgICAocG9pbnRlclsxXSAtIG9yaWdpblsxXSk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zbGF0ZTogW3RyYW5zbGF0ZVswXSAtIGRlbHRhWCwgdHJhbnNsYXRlWzFdIC0gZGVsdGFZXSxcbiAgICAgICAgc2NhbGU6IG5leHRTY2FsZSxcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICB6b29tQnlEZWZhdWx0U3RlcChkaXJlY3Rpb246ICdpbicgfCAnb3V0Jykge1xuICAgIHRoaXMuZGlzcGF0Y2hUcmFuc2Zvcm0oKHsgc2NhbGUgfSkgPT4gKHtcbiAgICAgIHNjYWxlOiBzY2FsZUxpbWl0KHNjYWxlICsgKGRpcmVjdGlvbiA9PT0gJ2luJyA/IDAuMjUgOiAtMC4yNSkpLFxuICAgIH0pKTtcbiAgfVxuXG4gIHpvb21PcmlnaW5hbCgpIHtcbiAgICB0aGlzLmRpc3BhdGNoVHJhbnNmb3JtKCgpID0+ICh7XG4gICAgICBvcmlnaW46IFt0aGlzLm9yaWdpblgsIHRoaXMub3JpZ2luWV0sXG4gICAgICB0cmFuc2xhdGU6IFswLCAwXSxcbiAgICAgIHNjYWxlOiAxLFxuICAgIH0pKTtcbiAgfVxuXG4gIHpvb21PdmVydmlldygpIHtcbiAgICB0aGlzLmRpc3BhdGNoVHJhbnNmb3JtKChfLCB7IGNhbnZhc1JlY3QsIHN1cmZhY2VSZWN0IH0pID0+IHtcbiAgICAgIGNvbnN0IHNjYWxlWCA9XG4gICAgICAgIChjYW52YXNSZWN0Lm9mZnNldFdpZHRoIC0gdGhpcy5ib3VuZGFyeSAqIDIpIC8gc3VyZmFjZVJlY3Qub2Zmc2V0V2lkdGg7XG4gICAgICBjb25zdCBzY2FsZVkgPVxuICAgICAgICAoY2FudmFzUmVjdC5vZmZzZXRIZWlnaHQgLSB0aGlzLmJvdW5kYXJ5ICogMikgL1xuICAgICAgICBzdXJmYWNlUmVjdC5vZmZzZXRIZWlnaHQ7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIG9yaWdpbjogWydjZW50ZXInLCAnY2VudGVyJ10sXG4gICAgICAgIHRyYW5zbGF0ZTogWzAsIDBdLFxuICAgICAgICBzY2FsZTogc2NhbGVMaW1pdChtaW4oW3NjYWxlWCwgc2NhbGVZLCAxXSkpLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIG1vdmUoeDogbnVtYmVyLCB5OiBudW1iZXIpIHtcbiAgICB0aGlzLmRpc3BhdGNoVHJhbnNmb3JtKCh7IHRyYW5zbGF0ZSB9KSA9PiAoe1xuICAgICAgdHJhbnNsYXRlOiBbdHJhbnNsYXRlWzBdICsgeCwgdHJhbnNsYXRlWzFdICsgeV0sXG4gICAgfSkpO1xuICB9XG5cbiAgZGlzcGF0Y2hUcmFuc2Zvcm0oYWN0aW9uOiBUcmFuc2Zvcm1BY3Rpb24pIHtcbiAgICBjb25zdCByZWN0cyA9IHtcbiAgICAgIGNhbnZhc1JlY3Q6IHRoaXMuZ2V0Q2FudmFzUmVjdCgpLFxuICAgICAgc3VyZmFjZVJlY3Q6IHRoaXMuZ2V0U3VyZmFjZVJlY3QoKSxcbiAgICB9O1xuXG4gICAgY29uc3QgbmV4dFRyYW5zZm9ybSA9IG1lcmdlUmlnaHQoXG4gICAgICB0aGlzLnRyYW5zZm9ybVN0YXRlLFxuICAgICAgYWN0aW9uKHRoaXMudHJhbnNmb3JtU3RhdGUsIHJlY3RzKSxcbiAgICApIGFzIFRyYW5zZm9ybVN0YXRlO1xuXG4gICAgdGhpcy50cmFuc2Zvcm1TdGF0ZSA9IGFwcGx5Q2FudmFzQm91bmRhcmllcyh7XG4gICAgICByZWN0cyxcbiAgICAgIHRyYW5zZm9ybTogbmV4dFRyYW5zZm9ybSxcbiAgICAgIGJvdW5kYXJ5OiB0aGlzLmJvdW5kYXJ5LFxuICAgIH0pO1xuXG4gICAgdGhpcy5ncmFwaFN0b3JlLnNldFNjYWxlKHRoaXMudHJhbnNmb3JtU3RhdGUuc2NhbGUpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHNjYWxlTGltaXQoc2NhbGU6IG51bWJlcikge1xuICByZXR1cm4gY2xhbXAocm91bmQoc2NhbGUsIDIpLCAwLjI1LCAyKTtcbn1cblxuZnVuY3Rpb24gYXBwbHlDYW52YXNCb3VuZGFyaWVzKHtcbiAgdHJhbnNmb3JtLFxuICByZWN0cyxcbiAgYm91bmRhcnksXG59OiB7XG4gIHRyYW5zZm9ybTogVHJhbnNmb3JtU3RhdGU7XG4gIHJlY3RzOiBSZWN0cztcbiAgYm91bmRhcnk6IG51bWJlcjtcbn0pOiBUcmFuc2Zvcm1TdGF0ZSB7XG4gIGNvbnN0IHtcbiAgICBvcmlnaW46IFtvcmlnaW5YLCBvcmlnaW5ZXSxcbiAgICBzY2FsZSxcbiAgICB0cmFuc2xhdGUsXG4gIH0gPSB0cmFuc2Zvcm07XG4gIGNvbnN0IHtcbiAgICBzdXJmYWNlUmVjdDogeyBvZmZzZXRXaWR0aDogc3VyZmFjZVdpZHRoLCBvZmZzZXRIZWlnaHQ6IHN1cmZhY2VIZWlnaHQgfSxcbiAgICBjYW52YXNSZWN0OiB7IG9mZnNldFdpZHRoOiBjYW52YXNXaWR0aCwgb2Zmc2V0SGVpZ2h0OiBjYW52YXNIZWlnaHQgfSxcbiAgfSA9IHJlY3RzO1xuXG4gIGNvbnN0IHggPSB4U2VsZWN0b3Iob3JpZ2luWCwgW1xuICAgIGJvdW5kYXJ5LFxuICAgIGNhbnZhc1dpZHRoIC8gMixcbiAgICBjYW52YXNXaWR0aCAtIGJvdW5kYXJ5LFxuICBdKTtcbiAgY29uc3QgeDEgPVxuICAgIHggK1xuICAgIHhTZWxlY3RvcihvcmlnaW5YLCBbc3VyZmFjZVdpZHRoICogc2NhbGUsIChzdXJmYWNlV2lkdGggKiBzY2FsZSkgLyAyLCAwXSk7XG4gIGNvbnN0IHgyID1cbiAgICBjYW52YXNXaWR0aCAtXG4gICAgKHggLVxuICAgICAgeFNlbGVjdG9yKG9yaWdpblgsIFtcbiAgICAgICAgMCxcbiAgICAgICAgKHN1cmZhY2VXaWR0aCAqIHNjYWxlKSAvIDIsXG4gICAgICAgIHN1cmZhY2VXaWR0aCAqIHNjYWxlLFxuICAgICAgXSkpO1xuXG4gIGNvbnN0IHkgPSB5U2VsZWN0b3Iob3JpZ2luWSwgW1xuICAgIGJvdW5kYXJ5LFxuICAgIGNhbnZhc0hlaWdodCAvIDIsXG4gICAgY2FudmFzSGVpZ2h0IC0gYm91bmRhcnksXG4gIF0pO1xuICBjb25zdCB5MSA9XG4gICAgeSArXG4gICAgeVNlbGVjdG9yKG9yaWdpblksIFtzdXJmYWNlSGVpZ2h0ICogc2NhbGUsIChzdXJmYWNlSGVpZ2h0ICogc2NhbGUpIC8gMiwgMF0pO1xuICBjb25zdCB5MiA9XG4gICAgY2FudmFzSGVpZ2h0IC1cbiAgICAoeSAtXG4gICAgICB5U2VsZWN0b3Iob3JpZ2luWSwgW1xuICAgICAgICAwLFxuICAgICAgICAoc3VyZmFjZUhlaWdodCAqIHNjYWxlKSAvIDIsXG4gICAgICAgIHN1cmZhY2VIZWlnaHQgKiBzY2FsZSxcbiAgICAgIF0pKTtcblxuICByZXR1cm4gbWVyZ2VSaWdodCh0cmFuc2Zvcm0sIHtcbiAgICB0cmFuc2xhdGU6IFtcbiAgICAgIGNsYW1wKHRyYW5zbGF0ZVswXSwgYm91bmRhcnkgLSB4MSwgeDIgLSBib3VuZGFyeSksXG4gICAgICBjbGFtcCh0cmFuc2xhdGVbMV0sIGJvdW5kYXJ5IC0geTEsIHkyIC0gYm91bmRhcnkpLFxuICAgIF0gYXMgY29uc3QsXG4gIH0pO1xufVxuXG5mdW5jdGlvbiBvcmlnaW5Db29yZGluYXRlUG9pbnQoXG4gIHsgb3JpZ2luOiBbb3JpZ2luWCwgb3JpZ2luWV0gfTogVHJhbnNmb3JtU3RhdGUsXG4gIHsgc3VyZmFjZVJlY3QsIGNhbnZhc1JlY3QgfTogUmVjdHMsXG4pIHtcbiAgY29uc3QgW2xlZnQsIHRvcF0gPSBjb29yZGluYXRlKGNhbnZhc1JlY3QsIFtcbiAgICBzdXJmYWNlUmVjdC5sZWZ0LFxuICAgIHN1cmZhY2VSZWN0LnRvcCxcbiAgXSk7XG4gIGNvbnN0IHggPSB4U2VsZWN0b3Iob3JpZ2luWCwgW1xuICAgIGxlZnQsXG4gICAgbGVmdCArIHN1cmZhY2VSZWN0LndpZHRoIC8gMixcbiAgICBsZWZ0ICsgc3VyZmFjZVJlY3Qud2lkdGgsXG4gIF0pO1xuICBjb25zdCB5ID0geVNlbGVjdG9yKG9yaWdpblksIFtcbiAgICB0b3AsXG4gICAgdG9wICsgc3VyZmFjZVJlY3QuaGVpZ2h0IC8gMixcbiAgICB0b3AgKyBzdXJmYWNlUmVjdC5oZWlnaHQsXG4gIF0pO1xuXG4gIHJldHVybiBbeCwgeV07XG59XG5cbmZ1bmN0aW9uIHhTZWxlY3RvcjxMLCBDLCBSPih4OiBPcmlnaW5YLCBbbCwgYywgcl06IFtMLCBDLCBSXSkge1xuICByZXR1cm4geCA9PT0gJ2xlZnQnID8gbCA6IHggPT09ICdjZW50ZXInID8gYyA6IHI7XG59XG5cbmZ1bmN0aW9uIHlTZWxlY3RvcjxULCBDLCBCPih5OiBPcmlnaW5ZLCBbdCwgYywgYl06IFtULCBDLCBCXSkge1xuICByZXR1cm4geSA9PT0gJ3RvcCcgPyB0IDogeSA9PT0gJ2NlbnRlcicgPyBjIDogYjtcbn1cblxuZnVuY3Rpb24gY29vcmRpbmF0ZShjYW52YXM6IFJlY3QsIFtsZWZ0LCB0b3BdOiBbbnVtYmVyLCBudW1iZXJdKSB7XG4gIHJldHVybiBbbGVmdCAtIGNhbnZhcy5sZWZ0LCB0b3AgLSBjYW52YXMudG9wXTtcbn1cbiIsIjxkaXZcbiAgI2NhbnZhc1xuICBjbGFzcz1cImFjbC1ncmFwaC1jYW52YXNcIlxuICBbbmdTdHlsZV09XCJjYW52YXNTdHlsZVwiXG4gICh3aGVlbCk9XCJoYW5kbGVXaGVlbEV2ZW50KCRldmVudClcIlxuICAobW91c2Vkb3duKT1cImhhbmRsZU1vdXNlRG93bigkZXZlbnQpXCJcbj5cbiAgPGRpdlxuICAgICNzdXJmYWNlXG4gICAgY2xhc3M9XCJhY2wtZ3JhcGgtY2FudmFzX19zdXJmYWNlXCJcbiAgICBbbmdTdHlsZV09XCJzdXJmYWNlU3R5bGVcIlxuICA+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImFjbC1ncmFwaC1saW5rc1wiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImFjbC1ncmFwaC1jYW52YXNfX2FjdGlvbi13cmFwcGVyIHJpZ2h0IGJvdHRvbVwiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiYWNsLWdyYXBoLWNhbnZhc19fYWN0aW9uIHNxdWFyZVwiXG4gICAgICBbdGl0bGVdPVwiJ3Bhbm9yYW1pY192aWV3JyB8IHRyYW5zbGF0ZVwiXG4gICAgICAoY2xpY2spPVwiem9vbU92ZXJ2aWV3KClcIlxuICAgICAgKG1vdXNlZG93bik9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgID5cbiAgICAgIDxhdWktaWNvbiBpY29uPVwiZnVsbF9zaXplXCI+PC9hdWktaWNvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYWNsLWdyYXBoLWNhbnZhc19fc2NhbGUtY29udHJvbGxlclwiPlxuICAgICAgPGF1aS1pY29uXG4gICAgICAgIGljb249XCJtaW51c1wiXG4gICAgICAgIFt0aXRsZV09XCInem9vbV9vdXQnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cInRyYW5zZm9ybVN0YXRlLnNjYWxlIDw9IG1pblNjYWxlXCJcbiAgICAgICAgKGNsaWNrKT1cInpvb21CeURlZmF1bHRTdGVwKCdvdXQnKVwiXG4gICAgICAgIChtb3VzZWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgICAgPHNwYW4+e3sgKHRyYW5zZm9ybVN0YXRlLnNjYWxlICogMTAwKS50b0ZpeGVkKDApIH19JTwvc3Bhbj5cbiAgICAgIDxhdWktaWNvblxuICAgICAgICBpY29uPVwicGx1c1wiXG4gICAgICAgIFt0aXRsZV09XCInem9vbV9pbicgfCB0cmFuc2xhdGVcIlxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwidHJhbnNmb3JtU3RhdGUuc2NhbGUgPj0gbWF4U2NhbGVcIlxuICAgICAgICAoY2xpY2spPVwiem9vbUJ5RGVmYXVsdFN0ZXAoJ2luJylcIlxuICAgICAgICAobW91c2Vkb3duKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICA+PC9hdWktaWNvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImFjbC1ncmFwaC1jYW52YXNfX2FjdGlvbiBzcXVhcmVcIlxuICAgICAgW3RpdGxlXT1cIidpc29tZXRyaWNfdmlldycgfCB0cmFuc2xhdGVcIlxuICAgICAgKGNsaWNrKT1cInpvb21PcmlnaW5hbCgpXCJcbiAgICAgIChtb3VzZWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICA+XG4gICAgICA8YXVpLWljb24gaWNvbj1cImFjdHVhbF9zaXplXCI+PC9hdWktaWNvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImFjbC1ncmFwaC1hY3Rpb25zXCI+PC9uZy1jb250ZW50PlxuICA8ZGl2XG4gICAgKm5nSWY9XCJsb2FkaW5nIHx8IGxvYWRGYWlsZWRcIlxuICAgIGNsYXNzPVwiYWNsLWdyYXBoLWNhbnZhc19fbG9hZGluZy1tYXNrXCJcbiAgICAod2hlZWwpPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAobW91c2Vkb3duKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiYWNsLWdyYXBoLWNhbnZhc19fbG9hZGluZ1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxvYWRpbmdcIj5cbiAgICAgICAgPGF1aS1pY29uIGljb249XCJzcGlubmVyXCI+PC9hdWktaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgJ2xvYWRpbmdfcGxlYXNlX3dhaXQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZEZhaWxlZFwiPlxuICAgICAgICA8c3Bhbj57eyAnZmFpbGVkX2xvYWRfcGxlYXNlJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgICAoY2xpY2spPVwicmV0cnkuZW1pdCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICdyZXRyeScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
359
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGgtY2FudmFzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9ncmFwaC1jYW52YXMvY29tcG9uZW50cy9ncmFwaC1jYW52YXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2dyYXBoLWNhbnZhcy9jb21wb25lbnRzL2dyYXBoLWNhbnZhcy50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUVuQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFTM0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7Ozs7SUNnQzdCLDZCQUE4QjtJQUM1QiwrQkFBb0M7SUFDcEMsNEJBQU07SUFBQSxZQUF1Qzs7SUFBQSxpQkFBTzs7O0lBQTlDLGVBQXVDO0lBQXZDLGlFQUF1Qzs7OztJQUUvQyw2QkFBaUM7SUFDL0IsNEJBQU07SUFBQSxZQUFzQzs7SUFBQSxpQkFBTztJQUNuRCxrQ0FHQztJQURDLGlNQUFTLG1CQUFZLEtBQUM7SUFFdEIsWUFDRjs7SUFBQSxpQkFBUzs7O0lBTkgsZUFBc0M7SUFBdEMsZ0VBQXNDO0lBSzFDLGVBQ0Y7SUFERSw4REFDRjs7OztJQWxCTiwrQkFLQztJQURD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QUFJLEdBQUcsTUFBTSxDQUFDLElBQUksRUFBRSxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2xhbXAsIG1pbiwgcm91bmQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgbWVyZ2VSaWdodCB9IGZyb20gJ3JhbWRhJztcblxuaW1wb3J0IHsgaXNNYWMgfSBmcm9tICcuLi8uLi9jb3JlL3V0aWxzL2Jyb3dzZXInO1xuaW1wb3J0IHsgR3JhcGhTdG9yZVNlcnZpY2UgfSBmcm9tICcuLi9ncmFwaC1zdG9yZS5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIE9yaWdpblgsXG4gIE9yaWdpblksXG4gIFJlY3QsXG4gIFJlY3RzLFxuICBUcmFuc2Zvcm1BY3Rpb24sXG4gIFRyYW5zZm9ybVN0YXRlLFxufSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRSZWN0IH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5jb25zdCBpc01hY1N5c3RlbSA9IGlzTWFjKCk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1ncmFwaC1jYW52YXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JhcGgtY2FudmFzLnRlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmFwaC1jYW52YXMuc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbR3JhcGhTdG9yZVNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFwaENhbnZhc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgbWluU2NhbGUgPSAwLjI1O1xuXG4gIEBJbnB1dCgpXG4gIG1heFNjYWxlID0gMjtcblxuICBASW5wdXQoKVxuICBvcmlnaW5YOiBPcmlnaW5YID0gJ2NlbnRlcic7XG5cbiAgQElucHV0KClcbiAgb3JpZ2luWTogT3JpZ2luWSA9ICd0b3AnO1xuXG4gIEBJbnB1dCgpXG4gIGJvdW5kYXJ5ID0gNjA7XG5cbiAgQElucHV0KClcbiAgbG9hZGluZyA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGxvYWRGYWlsZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KClcbiAgcmV0cnkgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgnY2FudmFzJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHJpdmF0ZSByZWFkb25seSBjYW52YXNSZWY6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ3N1cmZhY2UnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwcml2YXRlIHJlYWRvbmx5IHN1cmZhY2VSZWY6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIHJlYWRvbmx5IGdldENhbnZhc1JlY3QgPSAoKSA9PiBnZXRSZWN0KHRoaXMuY2FudmFzUmVmLm5hdGl2ZUVsZW1lbnQpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZ2V0U3VyZmFjZVJlY3QgPSAoKSA9PlxuICAgIGdldFJlY3QodGhpcy5zdXJmYWNlUmVmLm5hdGl2ZUVsZW1lbnQpO1xuXG4gIHByaXZhdGUgZHJhZ1N0YXJ0UG9pbnQ6IFtudW1iZXIsIG51bWJlcl07XG5cbiAgdHJhbnNmb3JtU3RhdGU6IFRyYW5zZm9ybVN0YXRlO1xuXG4gIGdldCBkcmFnZ2luZygpIHtcbiAgICByZXR1cm4gISF0aGlzLmRyYWdTdGFydFBvaW50O1xuICB9XG5cbiAgZ2V0IGNhbnZhc1N0eWxlKCkge1xuICAgIHJldHVybiB7XG4gICAgICBwYWRkaW5nOiB0aGlzLmJvdW5kYXJ5ICsgJ3B4JyxcbiAgICAgIGp1c3RpZnlDb250ZW50OiB4U2VsZWN0b3IodGhpcy50cmFuc2Zvcm1TdGF0ZS5vcmlnaW5bMF0sIFtcbiAgICAgICAgJ2ZsZXgtc3RhcnQnLFxuICAgICAgICAnY2VudGVyJyxcbiAgICAgICAgJ2ZsZXgtZW5kJyxcbiAgICAgIF0pLFxuICAgICAgYWxpZ25JdGVtczogeVNlbGVjdG9yKHRoaXMudHJhbnNmb3JtU3RhdGUub3JpZ2luWzFdLCBbXG4gICAgICAgICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgJ2NlbnRlcicsXG4gICAgICAgICdmbGV4LWVuZCcsXG4gICAgICBdKSxcbiAgICAgIGN1cnNvcjogdGhpcy5kcmFnZ2luZyA/ICdncmFiYmluZycgOiAnZ3JhYicsXG4gICAgfTtcbiAgfVxuXG4gIGdldCBzdXJmYWNlU3R5bGUoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRyYW5zZm9ybU9yaWdpbjogdGhpcy50cmFuc2Zvcm1TdGF0ZS5vcmlnaW4uam9pbignICcpLFxuICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlKCR7dGhpcy50cmFuc2Zvcm1TdGF0ZS50cmFuc2xhdGVbMF19cHgsICR7dGhpcy50cmFuc2Zvcm1TdGF0ZS50cmFuc2xhdGVbMV19cHgpICBzY2FsZSgke3RoaXMudHJhbnNmb3JtU3RhdGUuc2NhbGV9KWAsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZ3JhcGhTdG9yZTogR3JhcGhTdG9yZVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy50cmFuc2Zvcm1TdGF0ZSA9IHtcbiAgICAgIG9yaWdpbjogW3RoaXMub3JpZ2luWCwgdGhpcy5vcmlnaW5ZXSxcbiAgICAgIHRyYW5zbGF0ZTogWzAsIDBdLFxuICAgICAgc2NhbGU6IHRoaXMuZ3JhcGhTdG9yZS5nZXRTY2FsZSgpLFxuICAgIH07XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5ncmFwaFN0b3JlLnJlZ2lzdGVyU3VyZmFjZU5vZGUoeyBnZXRSZWN0OiB0aGlzLmdldFN1cmZhY2VSZWN0IH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5ncmFwaFN0b3JlLmRpc2Nvbm5lY3RPYnNlcnZlcigpO1xuICB9XG5cbiAgaGFuZGxlV2hlZWxFdmVudChlOiBXaGVlbEV2ZW50KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgY29uc3QgeyBkZWx0YVgsIGRlbHRhWSwgY3RybEtleSwgc2hpZnRLZXksIGNsaWVudFgsIGNsaWVudFkgfSA9IGU7XG4gICAgaWYgKGN0cmxLZXkpIHtcbiAgICAgIHRoaXMuem9vbUJ5V2hlZWwoLWRlbHRhWSwgW2NsaWVudFgsIGNsaWVudFldKTtcbiAgICB9IGVsc2UgaWYgKHNoaWZ0S2V5ICYmICFpc01hY1N5c3RlbSkge1xuICAgICAgdGhpcy5tb3ZlKC1kZWx0YVksIC1kZWx0YVgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vdmUoLWRlbHRhWCwgLWRlbHRhWSk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlTW91c2VEb3duKGU6IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLmRyYWdTdGFydFBvaW50ID0gW2UuY2xpZW50WCwgZS5jbGllbnRZXTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNlbW92ZScsIFsnJGV2ZW50J10pXG4gIGhhbmRsZU1vdXNlTW92ZShlOiBNb3VzZUV2ZW50KSB7XG4gICAgaWYgKCF0aGlzLmRyYWdTdGFydFBvaW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMubW92ZShcbiAgICAgIGUuY2xpZW50WCAtIHRoaXMuZHJhZ1N0YXJ0UG9pbnRbMF0sXG4gICAgICBlLmNsaWVudFkgLSB0aGlzLmRyYWdTdGFydFBvaW50WzFdLFxuICAgICk7XG4gICAgdGhpcy5kcmFnU3RhcnRQb2ludCA9IFtlLmNsaWVudFgsIGUuY2xpZW50WV07XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDptb3VzZXVwJywgWyckZXZlbnQnXSlcbiAgaGFuZGxlTW91c2VVcCgpIHtcbiAgICB0aGlzLmRyYWdTdGFydFBvaW50ID0gbnVsbDtcbiAgfVxuXG4gIHpvb21CeVdoZWVsKHY6IG51bWJlciwgcG9pbnRlclBvc2l0aW9uOiBbbnVtYmVyLCBudW1iZXJdKSB7XG4gICAgdGhpcy5kaXNwYXRjaFRyYW5zZm9ybSgodHJhbnNmb3JtLCByZWN0cykgPT4ge1xuICAgICAgY29uc3QgeyBzY2FsZSwgdHJhbnNsYXRlIH0gPSB0cmFuc2Zvcm07XG4gICAgICBjb25zdCBuZXh0U2NhbGUgPSBzY2FsZUxpbWl0KHNjYWxlICsgdiAvIDUwMCk7XG4gICAgICBjb25zdCBvcmlnaW4gPSBvcmlnaW5Db29yZGluYXRlUG9pbnQodHJhbnNmb3JtLCByZWN0cyk7XG4gICAgICBjb25zdCBwb2ludGVyID0gY29vcmRpbmF0ZShyZWN0cy5jYW52YXNSZWN0LCBwb2ludGVyUG9zaXRpb24pO1xuXG4gICAgICBjb25zdCBkZWx0YVggPVxuICAgICAgICAoKHBvaW50ZXJbMF0gLSBvcmlnaW5bMF0pIC8gc2NhbGUpICogbmV4dFNjYWxlIC1cbiAgICAgICAgKHBvaW50ZXJbMF0gLSBvcmlnaW5bMF0pO1xuICAgICAgY29uc3QgZGVsdGFZID1cbiAgICAgICAgKChwb2ludGVyWzFdIC0gb3JpZ2luWzFdKSAvIHNjYWxlKSAqIG5leHRTY2FsZSAtXG4gICAgICAgIChwb2ludGVyWzFdIC0gb3JpZ2luWzFdKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNsYXRlOiBbdHJhbnNsYXRlWzBdIC0gZGVsdGFYLCB0cmFuc2xhdGVbMV0gLSBkZWx0YVldLFxuICAgICAgICBzY2FsZTogbmV4dFNjYWxlLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIHpvb21CeURlZmF1bHRTdGVwKGRpcmVjdGlvbjogJ2luJyB8ICdvdXQnKSB7XG4gICAgdGhpcy5kaXNwYXRjaFRyYW5zZm9ybSgoeyBzY2FsZSB9KSA9PiAoe1xuICAgICAgc2NhbGU6IHNjYWxlTGltaXQoc2NhbGUgKyAoZGlyZWN0aW9uID09PSAnaW4nID8gMC4yNSA6IC0wLjI1KSksXG4gICAgfSkpO1xuICB9XG5cbiAgem9vbU9yaWdpbmFsKCkge1xuICAgIHRoaXMuZGlzcGF0Y2hUcmFuc2Zvcm0oKCkgPT4gKHtcbiAgICAgIG9yaWdpbjogW3RoaXMub3JpZ2luWCwgdGhpcy5vcmlnaW5ZXSxcbiAgICAgIHRyYW5zbGF0ZTogWzAsIDBdLFxuICAgICAgc2NhbGU6IDEsXG4gICAgfSkpO1xuICB9XG5cbiAgem9vbU92ZXJ2aWV3KCkge1xuICAgIHRoaXMuZGlzcGF0Y2hUcmFuc2Zvcm0oKF8sIHsgY2FudmFzUmVjdCwgc3VyZmFjZVJlY3QgfSkgPT4ge1xuICAgICAgY29uc3Qgc2NhbGVYID1cbiAgICAgICAgKGNhbnZhc1JlY3Qub2Zmc2V0V2lkdGggLSB0aGlzLmJvdW5kYXJ5ICogMikgLyBzdXJmYWNlUmVjdC5vZmZzZXRXaWR0aDtcbiAgICAgIGNvbnN0IHNjYWxlWSA9XG4gICAgICAgIChjYW52YXNSZWN0Lm9mZnNldEhlaWdodCAtIHRoaXMuYm91bmRhcnkgKiAyKSAvXG4gICAgICAgIHN1cmZhY2VSZWN0Lm9mZnNldEhlaWdodDtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3JpZ2luOiBbJ2NlbnRlcicsICdjZW50ZXInXSxcbiAgICAgICAgdHJhbnNsYXRlOiBbMCwgMF0sXG4gICAgICAgIHNjYWxlOiBzY2FsZUxpbWl0KG1pbihbc2NhbGVYLCBzY2FsZVksIDFdKSksXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgbW92ZSh4OiBudW1iZXIsIHk6IG51bWJlcikge1xuICAgIHRoaXMuZGlzcGF0Y2hUcmFuc2Zvcm0oKHsgdHJhbnNsYXRlIH0pID0+ICh7XG4gICAgICB0cmFuc2xhdGU6IFt0cmFuc2xhdGVbMF0gKyB4LCB0cmFuc2xhdGVbMV0gKyB5XSxcbiAgICB9KSk7XG4gIH1cblxuICBkaXNwYXRjaFRyYW5zZm9ybShhY3Rpb246IFRyYW5zZm9ybUFjdGlvbikge1xuICAgIGNvbnN0IHJlY3RzID0ge1xuICAgICAgY2FudmFzUmVjdDogdGhpcy5nZXRDYW52YXNSZWN0KCksXG4gICAgICBzdXJmYWNlUmVjdDogdGhpcy5nZXRTdXJmYWNlUmVjdCgpLFxuICAgIH07XG5cbiAgICBjb25zdCBuZXh0VHJhbnNmb3JtID0gbWVyZ2VSaWdodChcbiAgICAgIHRoaXMudHJhbnNmb3JtU3RhdGUsXG4gICAgICBhY3Rpb24odGhpcy50cmFuc2Zvcm1TdGF0ZSwgcmVjdHMpLFxuICAgICkgYXMgVHJhbnNmb3JtU3RhdGU7XG5cbiAgICB0aGlzLnRyYW5zZm9ybVN0YXRlID0gYXBwbHlDYW52YXNCb3VuZGFyaWVzKHtcbiAgICAgIHJlY3RzLFxuICAgICAgdHJhbnNmb3JtOiBuZXh0VHJhbnNmb3JtLFxuICAgICAgYm91bmRhcnk6IHRoaXMuYm91bmRhcnksXG4gICAgfSk7XG5cbiAgICB0aGlzLmdyYXBoU3RvcmUuc2V0U2NhbGUodGhpcy50cmFuc2Zvcm1TdGF0ZS5zY2FsZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc2NhbGVMaW1pdChzY2FsZTogbnVtYmVyKSB7XG4gIHJldHVybiBjbGFtcChyb3VuZChzY2FsZSwgMiksIDAuMjUsIDIpO1xufVxuXG5mdW5jdGlvbiBhcHBseUNhbnZhc0JvdW5kYXJpZXMoe1xuICB0cmFuc2Zvcm0sXG4gIHJlY3RzLFxuICBib3VuZGFyeSxcbn06IHtcbiAgdHJhbnNmb3JtOiBUcmFuc2Zvcm1TdGF0ZTtcbiAgcmVjdHM6IFJlY3RzO1xuICBib3VuZGFyeTogbnVtYmVyO1xufSk6IFRyYW5zZm9ybVN0YXRlIHtcbiAgY29uc3Qge1xuICAgIG9yaWdpbjogW29yaWdpblgsIG9yaWdpblldLFxuICAgIHNjYWxlLFxuICAgIHRyYW5zbGF0ZSxcbiAgfSA9IHRyYW5zZm9ybTtcbiAgY29uc3Qge1xuICAgIHN1cmZhY2VSZWN0OiB7IG9mZnNldFdpZHRoOiBzdXJmYWNlV2lkdGgsIG9mZnNldEhlaWdodDogc3VyZmFjZUhlaWdodCB9LFxuICAgIGNhbnZhc1JlY3Q6IHsgb2Zmc2V0V2lkdGg6IGNhbnZhc1dpZHRoLCBvZmZzZXRIZWlnaHQ6IGNhbnZhc0hlaWdodCB9LFxuICB9ID0gcmVjdHM7XG5cbiAgY29uc3QgeCA9IHhTZWxlY3RvcihvcmlnaW5YLCBbXG4gICAgYm91bmRhcnksXG4gICAgY2FudmFzV2lkdGggLyAyLFxuICAgIGNhbnZhc1dpZHRoIC0gYm91bmRhcnksXG4gIF0pO1xuICBjb25zdCB4MSA9XG4gICAgeCArXG4gICAgeFNlbGVjdG9yKG9yaWdpblgsIFtzdXJmYWNlV2lkdGggKiBzY2FsZSwgKHN1cmZhY2VXaWR0aCAqIHNjYWxlKSAvIDIsIDBdKTtcbiAgY29uc3QgeDIgPVxuICAgIGNhbnZhc1dpZHRoIC1cbiAgICAoeCAtXG4gICAgICB4U2VsZWN0b3Iob3JpZ2luWCwgW1xuICAgICAgICAwLFxuICAgICAgICAoc3VyZmFjZVdpZHRoICogc2NhbGUpIC8gMixcbiAgICAgICAgc3VyZmFjZVdpZHRoICogc2NhbGUsXG4gICAgICBdKSk7XG5cbiAgY29uc3QgeSA9IHlTZWxlY3RvcihvcmlnaW5ZLCBbXG4gICAgYm91bmRhcnksXG4gICAgY2FudmFzSGVpZ2h0IC8gMixcbiAgICBjYW52YXNIZWlnaHQgLSBib3VuZGFyeSxcbiAgXSk7XG4gIGNvbnN0IHkxID1cbiAgICB5ICtcbiAgICB5U2VsZWN0b3Iob3JpZ2luWSwgW3N1cmZhY2VIZWlnaHQgKiBzY2FsZSwgKHN1cmZhY2VIZWlnaHQgKiBzY2FsZSkgLyAyLCAwXSk7XG4gIGNvbnN0IHkyID1cbiAgICBjYW52YXNIZWlnaHQgLVxuICAgICh5IC1cbiAgICAgIHlTZWxlY3RvcihvcmlnaW5ZLCBbXG4gICAgICAgIDAsXG4gICAgICAgIChzdXJmYWNlSGVpZ2h0ICogc2NhbGUpIC8gMixcbiAgICAgICAgc3VyZmFjZUhlaWdodCAqIHNjYWxlLFxuICAgICAgXSkpO1xuXG4gIHJldHVybiBtZXJnZVJpZ2h0KHRyYW5zZm9ybSwge1xuICAgIHRyYW5zbGF0ZTogW1xuICAgICAgY2xhbXAodHJhbnNsYXRlWzBdLCBib3VuZGFyeSAtIHgxLCB4MiAtIGJvdW5kYXJ5KSxcbiAgICAgIGNsYW1wKHRyYW5zbGF0ZVsxXSwgYm91bmRhcnkgLSB5MSwgeTIgLSBib3VuZGFyeSksXG4gICAgXSBhcyBjb25zdCxcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIG9yaWdpbkNvb3JkaW5hdGVQb2ludChcbiAgeyBvcmlnaW46IFtvcmlnaW5YLCBvcmlnaW5ZXSB9OiBUcmFuc2Zvcm1TdGF0ZSxcbiAgeyBzdXJmYWNlUmVjdCwgY2FudmFzUmVjdCB9OiBSZWN0cyxcbikge1xuICBjb25zdCBbbGVmdCwgdG9wXSA9IGNvb3JkaW5hdGUoY2FudmFzUmVjdCwgW1xuICAgIHN1cmZhY2VSZWN0LmxlZnQsXG4gICAgc3VyZmFjZVJlY3QudG9wLFxuICBdKTtcbiAgY29uc3QgeCA9IHhTZWxlY3RvcihvcmlnaW5YLCBbXG4gICAgbGVmdCxcbiAgICBsZWZ0ICsgc3VyZmFjZVJlY3Qud2lkdGggLyAyLFxuICAgIGxlZnQgKyBzdXJmYWNlUmVjdC53aWR0aCxcbiAgXSk7XG4gIGNvbnN0IHkgPSB5U2VsZWN0b3Iob3JpZ2luWSwgW1xuICAgIHRvcCxcbiAgICB0b3AgKyBzdXJmYWNlUmVjdC5oZWlnaHQgLyAyLFxuICAgIHRvcCArIHN1cmZhY2VSZWN0LmhlaWdodCxcbiAgXSk7XG5cbiAgcmV0dXJuIFt4LCB5XTtcbn1cblxuZnVuY3Rpb24geFNlbGVjdG9yPEwsIEMsIFI+KHg6IE9yaWdpblgsIFtsLCBjLCByXTogW0wsIEMsIFJdKSB7XG4gIHJldHVybiB4ID09PSAnbGVmdCcgPyBsIDogeCA9PT0gJ2NlbnRlcicgPyBjIDogcjtcbn1cblxuZnVuY3Rpb24geVNlbGVjdG9yPFQsIEMsIEI+KHk6IE9yaWdpblksIFt0LCBjLCBiXTogW1QsIEMsIEJdKSB7XG4gIHJldHVybiB5ID09PSAndG9wJyA/IHQgOiB5ID09PSAnY2VudGVyJyA/IGMgOiBiO1xufVxuXG5mdW5jdGlvbiBjb29yZGluYXRlKGNhbnZhczogUmVjdCwgW2xlZnQsIHRvcF06IFtudW1iZXIsIG51bWJlcl0pIHtcbiAgcmV0dXJuIFtsZWZ0IC0gY2FudmFzLmxlZnQsIHRvcCAtIGNhbnZhcy50b3BdO1xufVxuIiwiPGRpdlxuICAjY2FudmFzXG4gIGNsYXNzPVwiYWNsLWdyYXBoLWNhbnZhc1wiXG4gIFtuZ1N0eWxlXT1cImNhbnZhc1N0eWxlXCJcbiAgKHdoZWVsKT1cImhhbmRsZVdoZWVsRXZlbnQoJGV2ZW50KVwiXG4gIChtb3VzZWRvd24pPVwiaGFuZGxlTW91c2VEb3duKCRldmVudClcIlxuPlxuICA8ZGl2XG4gICAgI3N1cmZhY2VcbiAgICBjbGFzcz1cImFjbC1ncmFwaC1jYW52YXNfX3N1cmZhY2VcIlxuICAgIFtuZ1N0eWxlXT1cInN1cmZhY2VTdHlsZVwiXG4gID5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYWNsLWdyYXBoLWxpbmtzXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiYWNsLWdyYXBoLWNhbnZhc19fYWN0aW9uLXdyYXBwZXIgcmlnaHQgYm90dG9tXCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJhY2wtZ3JhcGgtY2FudmFzX19hY3Rpb24gc3F1YXJlXCJcbiAgICAgIFt0aXRsZV09XCIncGFub3JhbWljX3ZpZXcnIHwgdHJhbnNsYXRlXCJcbiAgICAgIChjbGljayk9XCJ6b29tT3ZlcnZpZXcoKVwiXG4gICAgICAobW91c2Vkb3duKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgPlxuICAgICAgPGF1aS1pY29uIGljb249XCJmdWxsX3NpemVcIj48L2F1aS1pY29uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJhY2wtZ3JhcGgtY2FudmFzX19zY2FsZS1jb250cm9sbGVyXCI+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgaWNvbj1cIm1pbnVzXCJcbiAgICAgICAgW3RpdGxlXT1cIid6b29tX291dCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwidHJhbnNmb3JtU3RhdGUuc2NhbGUgPD0gbWluU2NhbGVcIlxuICAgICAgICAoY2xpY2spPVwiem9vbUJ5RGVmYXVsdFN0ZXAoJ291dCcpXCJcbiAgICAgICAgKG1vdXNlZG93bik9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgICA8c3Bhbj57eyAodHJhbnNmb3JtU3RhdGUuc2NhbGUgKiAxMDApLnRvRml4ZWQoMCkgfX0lPC9zcGFuPlxuICAgICAgPGF1aS1pY29uXG4gICAgICAgIGljb249XCJwbHVzXCJcbiAgICAgICAgW3RpdGxlXT1cIid6b29tX2luJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJ0cmFuc2Zvcm1TdGF0ZS5zY2FsZSA+PSBtYXhTY2FsZVwiXG4gICAgICAgIChjbGljayk9XCJ6b29tQnlEZWZhdWx0U3RlcCgnaW4nKVwiXG4gICAgICAgIChtb3VzZWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiYWNsLWdyYXBoLWNhbnZhc19fYWN0aW9uIHNxdWFyZVwiXG4gICAgICBbdGl0bGVdPVwiJ2lzb21ldHJpY192aWV3JyB8IHRyYW5zbGF0ZVwiXG4gICAgICAoY2xpY2spPVwiem9vbU9yaWdpbmFsKClcIlxuICAgICAgKG1vdXNlZG93bik9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgID5cbiAgICAgIDxhdWktaWNvbiBpY29uPVwiYWN0dWFsX3NpemVcIj48L2F1aS1pY29uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYWNsLWdyYXBoLWFjdGlvbnNcIj48L25nLWNvbnRlbnQ+XG4gIDxkaXZcbiAgICAqbmdJZj1cImxvYWRpbmcgfHwgbG9hZEZhaWxlZFwiXG4gICAgY2xhc3M9XCJhY2wtZ3JhcGgtY2FudmFzX19sb2FkaW5nLW1hc2tcIlxuICAgICh3aGVlbCk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgIChtb3VzZWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJhY2wtZ3JhcGgtY2FudmFzX19sb2FkaW5nXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZGluZ1wiPlxuICAgICAgICA8YXVpLWljb24gaWNvbj1cInNwaW5uZXJcIj48L2F1aS1pY29uPlxuICAgICAgICA8c3Bhbj57eyAnbG9hZGluZ19wbGVhc2Vfd2FpdCcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkRmFpbGVkXCI+XG4gICAgICAgIDxzcGFuPnt7ICdmYWlsZWRfbG9hZF9wbGVhc2UnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgICAgIChjbGljayk9XCJyZXRyeS5lbWl0KClcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgJ3JldHJ5JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|