@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
|
@@ -22,7 +22,7 @@ export class ApiGatewayInterceptor {
|
|
|
22
22
|
static { this.ɵfac = function ApiGatewayInterceptor_Factory(t) { return new (t || ApiGatewayInterceptor)(i0.ɵɵinject(i1.ApiGatewayService)); }; }
|
|
23
23
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ApiGatewayInterceptor, factory: ApiGatewayInterceptor.ɵfac }); }
|
|
24
24
|
}
|
|
25
|
-
(
|
|
25
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ApiGatewayInterceptor, [{
|
|
26
26
|
type: Injectable
|
|
27
|
-
}],
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
}], () => [{ type: i1.ApiGatewayService }], null); })();
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWdhdGV3YXkuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvYXBpL2FwaS1nYXRld2F5LmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7OztBQUUxRCx3RUFBd0U7QUFDeEUsa0RBQWtEO0FBRWxELE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsWUFBNkIsVUFBNkI7UUFBN0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7SUFBRyxDQUFDO0lBRTlELFNBQVMsQ0FBQyxHQUF5QixFQUFFLElBQWlCO1FBQ3BELElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FDekMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3JCLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUNyRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztzRkFkVSxxQkFBcUI7dUVBQXJCLHFCQUFxQixXQUFyQixxQkFBcUI7O2lGQUFyQixxQkFBcUI7Y0FEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIGFwaVxuICovXG5cbmltcG9ydCB7XG4gIEh0dHBIYW5kbGVyLFxuICBIdHRwSW50ZXJjZXB0b3IsXG4gIEh0dHBSZXF1ZXN0LFxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQVBJX0dBVEVXQVkgfSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQgeyBBcGlHYXRld2F5U2VydmljZSB9IGZyb20gJy4vYXBpLWdhdGV3YXkuc2VydmljZSc7XG5cbi8vIEludGVyY2VwdG9yIG11c3QgcHJvdmlkZSB3aXRoIGNvcnJlY3Qgb3JkZXIsIG5vdCBwcm92aWRlIGluIHJvb3QgaGVyZVxuLy8gaHR0cHM6Ly9hbmd1bGFyLmNuL2d1aWRlL2h0dHAjaW50ZXJjZXB0b3Itb3JkZXJcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBcGlHYXRld2F5SW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGFwaUdhdGV3YXk6IEFwaUdhdGV3YXlTZXJ2aWNlKSB7fVxuXG4gIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcikge1xuICAgIGlmICghcmVxLnVybC5zdGFydHNXaXRoKEFQSV9HQVRFV0FZKSkge1xuICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYXBpR2F0ZXdheS5nZXRBcGlBZGRyZXNzKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcChhcGlBZGRyZXNzID0+IHtcbiAgICAgICAgY29uc3QgdXJsID0gcmVxLnVybC5yZXBsYWNlKEFQSV9HQVRFV0FZLCBhcGlBZGRyZXNzKTtcbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcS5jbG9uZSh7IHVybCB9KSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -21,8 +21,8 @@ export class ApiGatewayService {
|
|
|
21
21
|
static { this.ɵfac = function ApiGatewayService_Factory(t) { return new (t || ApiGatewayService)(); }; }
|
|
22
22
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ApiGatewayService, factory: ApiGatewayService.ɵfac, providedIn: 'root' }); }
|
|
23
23
|
}
|
|
24
|
-
(
|
|
24
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ApiGatewayService, [{
|
|
25
25
|
type: Injectable,
|
|
26
26
|
args: [{ providedIn: 'root' }]
|
|
27
27
|
}], null, null); })();
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWdhdGV3YXkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvYXBpLWdhdGV3YXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVEvQyxNQUFNLFdBQVcsR0FBRyx5QkFBeUIsQ0FBQztBQUU5QyxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUM7QUFHdEIsTUFBTSxPQUFPLGlCQUFpQjtJQUQ5QjtRQUVtQixTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTFCLFdBQU0sR0FBRyxJQUFJLENBQUMsSUFBSTthQUNoQyxHQUFHLENBQWtCLFdBQVcsQ0FBQzthQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBSzdDO0lBSEMsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDMUQsQ0FBQztrRkFUVSxpQkFBaUI7dUVBQWpCLGlCQUFpQixXQUFqQixpQkFBaUIsbUJBREosTUFBTTs7aUZBQ25CLGlCQUFpQjtjQUQ3QixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYXBpXG4gKi9cblxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWFwLCByZXRyeSwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBBcGlHYXRld2F5U3RhdGUge1xuICBhcGlBZGRyZXNzOiBzdHJpbmc7XG4gIGFzc2V0c0hvc3RQYXRoOiBzdHJpbmc7XG4gIGFzc2V0c1VSTFBhdGg6IHN0cmluZztcbn1cblxuY29uc3QgTU9EVUxFU19BUEkgPSAnL2NvbnNvbGUvYXBpL3YxL21vZHVsZXMnO1xuXG5jb25zdCBSRVRSWV9DT1VOVCA9IDM7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXBpR2F0ZXdheVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzdGF0ZSQgPSB0aGlzLmh0dHBcbiAgICAuZ2V0PEFwaUdhdGV3YXlTdGF0ZT4oTU9EVUxFU19BUEkpXG4gICAgLnBpcGUocmV0cnkoUkVUUllfQ09VTlQpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgZ2V0QXBpQWRkcmVzcygpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZSQucGlwZShtYXAoc3RhdGUgPT4gc3RhdGUuYXBpQWRkcmVzcykpO1xuICB9XG59XG4iXX0=
|
|
@@ -54,8 +54,8 @@ export class ClusterVersionService {
|
|
|
54
54
|
static { this.ɵfac = function ClusterVersionService_Factory(t) { return new (t || ClusterVersionService)(i0.ɵɵinject(i1.K8sApiService)); }; }
|
|
55
55
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ClusterVersionService, factory: ClusterVersionService.ɵfac, providedIn: 'root' }); }
|
|
56
56
|
}
|
|
57
|
-
(
|
|
57
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ClusterVersionService, [{
|
|
58
58
|
type: Injectable,
|
|
59
59
|
args: [{ providedIn: 'root' }]
|
|
60
|
-
}],
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
}], () => [{ type: i1.K8sApiService }], null); })();
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci12ZXJzaW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvYXBpL2NsdXN0ZXItdmVyc2lvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNMLFVBQVUsRUFDVixhQUFhLEVBQ2IsR0FBRyxFQUVILEVBQUUsRUFDRixXQUFXLEVBQ1gsR0FBRyxHQUNKLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixnQkFBZ0IsRUFDaEIsVUFBVSxHQUNYLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFHbEQsTUFBTSxPQUFPLHFCQUFxQjtJQWNoQyxZQUE2QixNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBYjFDLFVBQUssR0FBMkIsRUFBRSxDQUFDO1FBRTFCLHFCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNO2FBQzVDLGlCQUFpQixDQUE0QztZQUM1RCxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFO1lBQ2xDLFNBQVMsRUFBRSxnQkFBZ0I7WUFDM0IsSUFBSSxFQUFFLFVBQVU7U0FDakIsQ0FBQzthQUNELElBQUksQ0FDSCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDM0MsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFXSixpQkFBWSxHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUU7WUFDakMsT0FBTyxhQUFhLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxlQUFlLEVBQUU7YUFDdkIsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQ0QsQ0FBQyxDQUFDLGNBQWMsRUFBRSxlQUFlLENBQUMsRUFBRSxFQUFFLENBQ3BDLG1CQUFtQixDQUFDLGNBQWMsRUFBRSxlQUFlLENBQUMsR0FBRyxDQUFDLENBQzNELEVBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUMzQixVQUFVLEVBQUUsQ0FDYixDQUFDO1FBQ0osQ0FBQyxDQUFDO0lBckJtRCxDQUFDO0lBRXREOztPQUVHO0lBQ0gsU0FBUyxDQUFDLE9BQWU7UUFDdkIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFnQkQsY0FBYyxDQUFDLE9BQWUsRUFBRSxPQUFlO1FBQzdDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDekMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUN2RSxVQUFVLEVBQUUsQ0FDYixDQUFDO0lBQ0osQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsT0FBZTtRQUMvQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN4QixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDakMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU07YUFDZixpQkFBaUIsQ0FBZ0M7WUFDaEQsVUFBVSxFQUFFO2dCQUNWLElBQUksRUFBRSxnQkFBZ0I7Z0JBQ3RCLFVBQVUsRUFBRSxVQUFVO2dCQUN0QixRQUFRLEVBQUUsbUJBQW1CO2FBQzlCO1lBQ0QsSUFBSSxFQUFFLE9BQU87U0FDZCxDQUFDO2FBQ0QsSUFBSSxDQUNILEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM3QyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztzRkFuRVUscUJBQXFCO3VFQUFyQixxQkFBcUIsV0FBckIscUJBQXFCLG1CQURSLE1BQU07O2lGQUNuQixxQkFBcUI7Y0FEakMsVUFBVTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIG1hcCxcbiAgT2JzZXJ2YWJsZSxcbiAgb2YsXG4gIHNoYXJlUmVwbGF5LFxuICB0YXAsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBjb21wYXJlTWlub3JWZXJzaW9uLFxuICBQVUJMSUNfTkFNRVNQQUNFLFxuICBwdWJsaXNoUmVmLFxufSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQgeyBLOHNBcGlTZXJ2aWNlIH0gZnJvbSAnLi9rOHMtYXBpLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIENsdXN0ZXJWZXJzaW9uU2VydmljZSB7XG4gIHByaXZhdGUgc3RvcmU6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHBsYXRmb3JtVmVyc2lvbiQgPSB0aGlzLms4c0FwaVxuICAgIC5nZXRHbG9iYWxSZXNvdXJjZTx7IHNwZWM6IG51bGw7IGRhdGE6IHsgdmVyc2lvbjogc3RyaW5nIH0gfT4oe1xuICAgICAgZGVmaW5pdGlvbjogeyB0eXBlOiAnY29uZmlnbWFwcycgfSxcbiAgICAgIG5hbWVzcGFjZTogUFVCTElDX05BTUVTUEFDRSxcbiAgICAgIG5hbWU6ICdwbGF0Zm9ybScsXG4gICAgfSlcbiAgICAucGlwZShcbiAgICAgIG1hcChjb25maWcgPT4gY29uZmlnLmRhdGEudmVyc2lvbi5zbGljZSgxKSksXG4gICAgICBzaGFyZVJlcGxheSgxKSxcbiAgICApO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgazhzQXBpOiBLOHNBcGlTZXJ2aWNlKSB7fVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKi9cbiAgaXNQcmV2TFRTKGNsdXN0ZXI6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmlzT2xkQ2x1c3RlcihjbHVzdGVyKTtcbiAgfVxuXG4gIGlzT2xkQ2x1c3RlciA9IChjbHVzdGVyOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmdldENsdXN0ZXJWZXJzaW9uKGNsdXN0ZXIpLFxuICAgICAgdGhpcy5wbGF0Zm9ybVZlcnNpb24oKSxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2NsdXN0ZXJWZXJzaW9uLCBwbGF0Zm9ybVZlcnNpb25dKSA9PlxuICAgICAgICAgIGNvbXBhcmVNaW5vclZlcnNpb24oY2x1c3RlclZlcnNpb24sIHBsYXRmb3JtVmVyc2lvbikgPCAwLFxuICAgICAgKSxcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YoZmFsc2UpKSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuICB9O1xuXG4gIGNsdXN0ZXJPbGRUaGFuKGNsdXN0ZXI6IHN0cmluZywgdmVyc2lvbjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q2x1c3RlclZlcnNpb24oY2x1c3RlcikucGlwZShcbiAgICAgIG1hcChjbHVzdGVyVmVyc2lvbiA9PiBjb21wYXJlTWlub3JWZXJzaW9uKGNsdXN0ZXJWZXJzaW9uLCB2ZXJzaW9uKSA8IDApLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG4gIH1cblxuICBwbGF0Zm9ybVZlcnNpb24oKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5wbGF0Zm9ybVZlcnNpb24kO1xuICB9XG5cbiAgZ2V0Q2x1c3RlclZlcnNpb24oY2x1c3Rlcjogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICBpZiAodGhpcy5zdG9yZVtjbHVzdGVyXSkge1xuICAgICAgcmV0dXJuIG9mKHRoaXMuc3RvcmVbY2x1c3Rlcl0pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5rOHNBcGlcbiAgICAgIC5nZXRHbG9iYWxSZXNvdXJjZTx7IHNwZWM6IHsgdmVyc2lvbjogc3RyaW5nIH0gfT4oe1xuICAgICAgICBkZWZpbml0aW9uOiB7XG4gICAgICAgICAgdHlwZTogJ2NsdXN0ZXJtb2R1bGVzJyxcbiAgICAgICAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgICAgICAgIGFwaUdyb3VwOiAnY2x1c3Rlci5hbGF1ZGEuaW8nLFxuICAgICAgICB9LFxuICAgICAgICBuYW1lOiBjbHVzdGVyLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoY2x1c3RlciA9PiBjbHVzdGVyLnNwZWMudmVyc2lvbi5zbGljZSgxKSksXG4gICAgICAgIHRhcCh2ZXJzaW9uID0+IHtcbiAgICAgICAgICB0aGlzLnN0b3JlW2NsdXN0ZXJdID0gdmVyc2lvbjtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -152,14 +152,14 @@ export class CryptoInterceptorService {
|
|
|
152
152
|
static { this.ɵfac = function CryptoInterceptorService_Factory(t) { return new (t || CryptoInterceptorService)(i0.ɵɵinject(TOKEN_CRYPTO_INTERCEPTOR_URL_REGEXPS, 8)); }; }
|
|
153
153
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CryptoInterceptorService, factory: CryptoInterceptorService.ɵfac }); }
|
|
154
154
|
}
|
|
155
|
-
(
|
|
155
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CryptoInterceptorService, [{
|
|
156
156
|
type: Injectable
|
|
157
|
-
}],
|
|
157
|
+
}], () => [{ type: undefined, decorators: [{
|
|
158
158
|
type: Optional
|
|
159
159
|
}, {
|
|
160
160
|
type: Inject,
|
|
161
161
|
args: [TOKEN_CRYPTO_INTERCEPTOR_URL_REGEXPS]
|
|
162
|
-
}] }]
|
|
162
|
+
}] }], null); })();
|
|
163
163
|
function decrypt(random, content) {
|
|
164
164
|
// 先用 hex 把 content 解密
|
|
165
165
|
const contentHex = encHex.parse(content.replaceAll('\n', ''));
|
|
@@ -183,4 +183,4 @@ function encrypt(content, random) {
|
|
|
183
183
|
})
|
|
184
184
|
.toString(formatHex);
|
|
185
185
|
}
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9jcnlwdG8uaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQVFMLFlBQVksR0FDYixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQ2hDLE9BQU8sU0FBUyxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZDLE9BQU8sT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sVUFBVSxNQUFNLHVCQUF1QixDQUFDO0FBQy9DLE9BQU8sT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBQ3pDLDRCQUE0QjtBQUM1QixPQUFPLFNBQVMsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFCLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLHdCQUF3QixFQUN4QixXQUFXLEVBQ1gsb0NBQW9DLEdBQ3JDLE1BQU0sOEJBQThCLENBQUM7QUFFdEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRXRELE1BQU0sdUJBQXVCLEdBQWE7SUFDeEMsNEJBQTRCO0lBQzVCLG9EQUFvRDtJQUNwRCx1REFBdUQ7SUFDdkQsNkNBQTZDO0NBQzlDLENBQUM7QUFDRixNQUFNLGVB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QUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDdkQsQ0FBQztJQUVGLE9BQU8sR0FBRztTQUNQLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO1FBQ3JCLEVBQUUsRUFBRSxHQUFHO1FBQ1AsSUFBSSxFQUFFLE9BQU87UUFDYixPQUFPLEVBQUUsU0FBUztLQUNuQixDQUFDO1NBQ0QsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBIdHRwRG93bmxvYWRQcm9ncmVzc0V2ZW50LFxuICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgSHR0cEV2ZW50LFxuICBIdHRwSGFuZGxlcixcbiAgSHR0cEhlYWRlcnMsXG4gIEh0dHBJbnRlcmNlcHRvcixcbiAgSHR0cFJlcXVlc3QsXG4gIEh0dHBSZXNwb25zZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBpc0Rldk1vZGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgYWVzIGZyb20gJ2NyeXB0by1qcy9hZXMnO1xuaW1wb3J0IGVuY0Jhc2U2NCBmcm9tICdjcnlwdG8tanMvZW5jLWJhc2U2NCc7XG5pbXBvcnQgZW5jSGV4IGZyb20gJ2NyeXB0by1qcy9lbmMtaGV4JztcbmltcG9ydCBlbmNVdGY4IGZyb20gJ2NyeXB0by1qcy9lbmMtdXRmOCc7XG5pbXBvcnQgZm9ybWF0SGV4IGZyb20gJ2NyeXB0by1qcy9mb3JtYXQtaGV4JztcbmltcG9ydCBobWFjU2hhMjU2IGZyb20gJ2NyeXB0by1qcy9obWFjLXNoYTI1Nic7XG5pbXBvcnQgbW9kZUN0ciBmcm9tICdjcnlwdG8tanMvbW9kZS1jdHInO1xuLy8gY3NwZWxsOiBkaXNhYmxlLW5leHQtbGluZVxuaW1wb3J0IG5vUGFkZGluZyBmcm9tICdjcnlwdG8tanMvcGFkLW5vcGFkZGluZyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIE9ic2VydmFibGUsIG9mLCB0YXAsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHY0IH0gZnJvbSAndXVpZCc7XG5cbmltcG9ydCB7XG4gIENSWVBUT19IRUFERVJfS0VZLFxuICBDUllQVE9fS0VZLFxuICBDUllQVE9fUkFORE9NX0hFQURFUl9LRVksXG4gIENSWVBUT19UWVBFLFxuICBUT0tFTl9DUllQVE9fSU5URVJDRVBUT1JfVVJMX1JFR0VYUFMsXG59IGZyb20gJy4uL2NvcmUvY29uc3RhbnRzL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQgeyBTRUFSQ0hfVVJMX1BSRUZJWCB9IGZyb20gJy4vazhzLWFwaS5zZXJ2aWNlJztcblxuY29uc3QgZGVmYXVsdEVuYWJsZVVybFJlZ2V4cHM6IFJlZ0V4cFtdID0gW1xuICAvXFwvYXBpXFwvdjFcXC8oLipcXC8pP3NlY3JldHMvaSxcbiAgL1xcL2FwaXNcXC9wbGF0Zm9ybS50a2VzdGFjay5pb1xcL3YxXFwvY2x1c3RlcnMoXFwvLiopPy9pLFxuICAvXFwvYXBpc1xcL3BsYXRmb3JtLnRrZXN0YWNrLmlvXFwvdjFcXC9jbHVzdGVyY3JlZGVudGlhbHMvaSxcbiAgL1xcL2FwaXNcXC9wbGF0Zm9ybS50a2VzdGFjay5pb1xcL3YxXFwvbWFjaGluZXMvaSxcbl07XG5jb25zdCBpc1N0YW5kYWxvbmVBcGkgPSAodXJsOiBzdHJpbmcpID0+IHtcbiAgbGV0IHBhdGggPSB1cmwubWF0Y2goLygoaHR0cHM/Oik/XFwvXFwvKT9bXi9dKihcXC9bXj9dKikvKT8uWzNdO1xuICBpZiAocGF0aCAmJiBpc0Rldk1vZGUoKSkge1xuICAgIC8vIOW8gOWPkeaooeW8j+S4i++8jOmcgOimgeaKikFQSUdhdGV3YXnnp7vpmaRcbiAgICAvLyDmraPluLjmg4XlhrXkuI3kvJrlsIbliY3nvIDorr7nva7miJDlpJrlsYLot6/lvoTvvIzmiYDku6Xnm7TmjqXnp7vpmaTnrKzkuIDlsYLot6/lvoRcbiAgICBwYXRoID0gcGF0aC5yZXBsYWNlKC9eXFwvW14vXSovLCAnJyk7XG4gIH1cbiAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKGBeKCR7U0VBUkNIX1VSTF9QUkVGSVh9KT8vKGFwaXM/fGt1YmVybmV0ZXMpL2ApO1xuICByZXR1cm4gcGF0aCAmJiByZWdleC50ZXN0KHBhdGgpO1xufTtcbmNvbnN0IGRlZmF1bHRFbmFibGUgPSAocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgZXh0cmE6IFJlZ0V4cFtdID0gW10pID0+IHtcbiAgcmV0dXJuIFsuLi5kZWZhdWx0RW5hYmxlVXJsUmVnZXhwcywgLi4uZXh0cmFdLnNvbWUoXG4gICAgcmVnZXhwID0+IHJlZ2V4cC50ZXN0KHJlcS51cmwpICYmIGlzU3RhbmRhbG9uZUFwaShyZXEudXJsKSxcbiAgKTtcbn07XG5cbi8vIOWPr+mAieeahCBhcGkg5Yqg5a+G5oum5oiq5Zmo77yM55uu5YmN5LuF5pSv5oyB5LulL2FwaSAvYXBpcyAva3ViZXJuZXRlcy8g5byA5aS055qEQVBJXG4vLyDlkI7nq6/mlrnmoYjvvJpodHRwczovL2NvbmZsdWVuY2UuYWxhdWRhLmNuL3BhZ2VzL3ZpZXdwYWdlLmFjdGlvbj9wYWdlSWQ9MTYzMDU0MzQwXG4vLyDlpoLmnpzkvb/nlKggaHR0cCDliJnpgJrov4forr7nva4gaGVhZGVycyDmnaXpgInmi6nliqDlr4bnrZbnlaXvvIxrZXkg5Li6IENSWVBUT19IRUFERVJfS0VZXG4vLyDlpoLmnpzkvb/nlKggazhzQXBpIOWImemAmui/hyBjcnlwdG8g5p2l6YCJ5oup5Yqg5a+G562W55WlXG4vLyDlj6/ku6XpgJrov4cgVE9LRU5fQ1JZUFRPX0lOVEVSQ0VQVE9SX1VSTF9SRUdFWFBTIOazqOWFpem7mOiupOeahOW8gOWQr+WKoOWvhuWMuemFjeato+WImVxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENyeXB0b0ludGVyY2VwdG9yU2VydmljZSBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChUT0tFTl9DUllQVE9fSU5URVJDRVBUT1JfVVJMX1JFR0VYUFMpXG4gICAgcHJpdmF0ZSByZWFkb25seSBleHRyYVVybFJlZ2V4cHM6IFJlZ0V4cFtdLFxuICApIHt9XG5cbiAgcHJpdmF0ZSBmYWN0b3J5Q29udGVudFR5cGUocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPikge1xuICAgIGlmICghcmVxLmhlYWRlcnMuaGFzKCdDb250ZW50LVR5cGUnKSkge1xuICAgICAgY29uc3QgZGV0ZWN0ZWRUeXBlID0gcmVxLmRldGVjdENvbnRlbnRUeXBlSGVhZGVyKCk7XG4gICAgICBpZiAoZGV0ZWN0ZWRUeXBlICE9PSBudWxsKSB7XG4gICAgICAgIHJlcSA9IHJlcS5jbG9uZSh7XG4gICAgICAgICAgaGVhZGVyczogcmVxLmhlYWRlcnMuc2V0KCdDb250ZW50LVR5cGUnLCBkZXRlY3RlZFR5cGUpLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcTtcbiAgfVxuXG4gIHByaXZhdGUgZW5jcnlwdFBheWxvYWQocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPikge1xuICAgIGlmIChyZXEuaGVhZGVycy5nZXQoQ1JZUFRPX0hFQURFUl9LRVkpICYmIHJlcS5ib2R5KSB7XG4gICAgICBsZXQgYm9keVN0ciA9ICcnO1xuICAgICAgLy8g5Y+q5a+5anNvbuWSjOWtl+espuS4suexu+Wei+eahHBheWxvYWTliqDlr4ZcbiAgICAgIGlmICh0eXBlb2YgcmVxLmJvZHkgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGJvZHlTdHIgPSByZXEuYm9keTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgYm9keVN0ciA9IEpTT04uc3RyaW5naWZ5KHJlcS5ib2R5KTtcbiAgICAgICAgfSBjYXRjaCB7fVxuICAgICAgfVxuXG4gICAgICBpZiAoYm9keVN0cikge1xuICAgICAgICAvLyDlsIYgYW5ndWxhciDoh6rliqjor4bliKvnmoTpgLvovpHliqDliLDov5nph4zmnaXvvIzpgb/lhY3liqDlr4blkI7ooqvnu5/kuIDorr7miJAgdGV4dFxuICAgICAgICByZXEgPSB0aGlzLmZhY3RvcnlDb250ZW50VHlwZShyZXEpO1xuXG4gICAgICAgIGNvbnN0IHJhbmRvbSA9IHY0KCkucmVwbGFjZUFsbCgnLScsICcnKTtcbiAgICAgICAgcmVxID0gcmVxLmNsb25lKHtcbiAgICAgICAgICBoZWFkZXJzOiByZXEuaGVhZGVycy5zZXQoQ1JZUFRPX1JBTkRPTV9IRUFERVJfS0VZLCByYW5kb20pLFxuICAgICAgICAgIGJvZHk6IGVuY3J5cHQoYm9keVN0ciwgcmFuZG9tKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcTtcbiAgfVxuXG4gIHByaXZhdGUgZmFjdG9yeVJlcShyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+KSB7XG4gICAgaWYgKFxuICAgICAgIXJlcS5oZWFkZXJzLmdldChDUllQVE9fSEVBREVSX0tFWSkgJiZcbiAgICAgIGRlZmF1bHRFbmFibGUocmVxLCB0aGlzLmV4dHJhVXJsUmVnZXhwcylcbiAgICApIHtcbiAgICAgIHJlcSA9IHJlcS5jbG9uZSh7XG4gICAgICAgIGhlYWRlcnM6IHJlcS5oZWFkZXJzLnNldChDUllQVE9fSEVBREVSX0tFWSwgQ1JZUFRPX1RZUEUuRW5hYmxlKSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJlcSA9IHRoaXMuZW5jcnlwdFBheWxvYWQocmVxKTtcblxuICAgIHJldHVybiByZXE7XG4gIH1cblxuICAvKipcbiAgICog5a6e546w5pa55qGI77yaXG4gICAqIDEuIOivt+axguWSjOWTjeW6lOWkhOeQhuWIhuW8gOWkhOeQhu+8jOWcqOivt+axgueahGhlYWRlcuS4iuWKoOS4iuWKoOWvhuagh+ivhu+8jOagueaNrui/lOWbnueahOWTjeW6lGhlYWRlcuWkhOeQhuWvueW6lOeahOWKoOWvhuetlueVpe+8jOiAjOS4jeaYr+S9v+eUqOivt+axguaXtuS9v+eUqOeahOetlueVpeOAgui/meagt+iDveinhOmBv+acjeWKoeerr+eahOS4u+WKqOWKoOWvhuetlueVpe+8iOWJjeerr+ayoeacieS9v+eUqOWKoOWvhu+8iVxuICAgKiAyLiDlpoLmnpzop6Plr4blpLHotKXvvIzlsIbkuI3lgZrku7vkvZXlpITnkIbvvIzljp/moLfov5Tlm57vvIzlm6DkuLrnkIborrrkuIrop6Plr4bkuI3lupTor6XlpLHotKXvvIzlpoLmnpzlpLHotKXlj6/og73mmK/kuI3pnIDopoHop6Plr4bvvIzmnIDkuLvopoHnmoTmmK/ov5Tlm57op6Plr4blpLHotKXnmoTkv6Hmga/mr5Tljp/moLfov5Tlm57lr7nkuJrliqHmnaXor7Tmm7TmsqHmhI/kuYlcbiAgICovXG4gIGludGVyY2VwdChcbiAgICByZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxuICAgIG5leHQ6IEh0dHBIYW5kbGVyLFxuICApOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xuICAgIHJlcSA9IHRoaXMuZmFjdG9yeVJlcShyZXEpO1xuXG4gICAgLy8g5b2T5pivIHByb2dyZXNzIO+8jOS+i+WmgiB3YXRjaCDlnLrmma/nmoTlj5jmm7TvvIzkuI3og73ojrflj5YgcmVzcG9uc2VIZWFkZXLvvIzmiYDku6XpnIDopoHlhYjlnKjlhbbku5bnirbmgIHlj4rml7borrDlvZUgcmVzcG9uc2VIZWFkZXJcbiAgICBsZXQgcmVzcG9uc2VIZWFkZXI6IEh0dHBIZWFkZXJzO1xuXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSkucGlwZShcbiAgICAgIHRhcCgoZXZlbnQ6IEh0dHBSZXNwb25zZTx1bmtub3duPikgPT4ge1xuICAgICAgICByZXNwb25zZUhlYWRlciA9IGV2ZW50LmhlYWRlcnMgfHwgcmVzcG9uc2VIZWFkZXI7XG4gICAgICB9KSxcbiAgICAgIG1hcChldmVudCA9PiB7XG4gICAgICAgIGNvbnN0IHJhbmRvbSA9IHJlc3BvbnNlSGVhZGVyPy5nZXQoQ1JZUFRPX1JBTkRPTV9IRUFERVJfS0VZKTtcbiAgICAgICAgLy8g5aaC5p6c5LiN5piv5q2j5bi455qE5ZON5bqUXG4gICAgICAgIGlmICghKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSkge1xuICAgICAgICAgIGlmICgoZXZlbnQgYXMgSHR0cERvd25sb2FkUHJvZ3Jlc3NFdmVudCkudHlwZSA9PT0gMyAmJiByYW5kb20pIHtcbiAgICAgICAgICAgIGNvbnN0IHByb2dyZXNzRXZlbnQgPSBldmVudCBhcyBIdHRwRG93bmxvYWRQcm9ncmVzc0V2ZW50O1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgcHJvZ3Jlc3NFdmVudC5wYXJ0aWFsVGV4dCA9IGRlY3J5cHQoXG4gICAgICAgICAgICAgICAgcmFuZG9tLFxuICAgICAgICAgICAgICAgIHByb2dyZXNzRXZlbnQucGFydGlhbFRleHQsXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGNhdGNoIHt9XG4gICAgICAgICAgICByZXR1cm4gcHJvZ3Jlc3NFdmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGV2ZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8g5aaC5p6c5piv5q2j5bi455qE5ZON5bqUXG4gICAgICAgIGlmICghcmFuZG9tIHx8ICFldmVudC5ib2R5KSB7XG4gICAgICAgICAgcmV0dXJuIGV2ZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByZXR1cm4gZXZlbnQuY2xvbmUoe1xuICAgICAgICAgICAgYm9keTogZGVjcnlwdChyYW5kb20sIGV2ZW50LmJvZHkgYXMgc3RyaW5nKSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCB7fVxuICAgICAgICByZXR1cm4gZXZlbnQ7XG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgLy8g5Yqg5a+G5ZCO6L+U5Zue55qE5piv5a2X56ym5Liy77yM5omA5Lul5aaC5p6c6K+35rGC55qE5pivanNvbuWImeS4gOWumuaYr2Vycm9y55qE77yI5aaC5p6cIHJlc3BvbnNlVHlwZSDmmK8ganNvbu+8jOWImeaXoOiuuuWTjeW6lOeahCBjb250ZW50LXR5cGUg5piv5LiN5pivIGpzb24g6YO95oyJ54WnanNvbuino+aekO+8iVxuICAgICAgICBjb25zdCByYW5kb20gPSBlcnI/LmhlYWRlcnM/LmdldChDUllQVE9fUkFORE9NX0hFQURFUl9LRVkpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgcmFuZG9tICYmXG4gICAgICAgICAgcmVxLnJlc3BvbnNlVHlwZSA9PT0gJ2pzb24nICYmXG4gICAgICAgICAgdHlwZW9mIGVyci5lcnJvci50ZXh0ID09PSAnc3RyaW5nJ1xuICAgICAgICApIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8g5aaC5p6c5a2Y5Zyo5Yqg5a+G5qCH6K+G5LiU6K+35rGC55qE5pivanNvbu+8jOWImei/meS4qumUmeivr+WfuuacrOS4iuWwseaYr+WboOS4uuino+aekGpzb27lr7zoh7TnmoTvvIzmiYDku6XlsJ3or5Xop6Plr4blkI7ov5vooYxqc29u6Kej5p6QXG4gICAgICAgICAgICBjb25zdCBqc29uID0gSlNPTi5wYXJzZShkZWNyeXB0KHJhbmRvbSwgZXJyLmVycm9yLnRleHQpKTtcbiAgICAgICAgICAgIC8vIOWmguaenOino+aekOaIkOWKn+WImeWFtuWwseW6lOivpeaYr+S4gOS4quato+W4uOeahOi/lOWbnu+8jOaJgOS7peeUn+aIkOS4gOS4quato+W4uOeahCBIdHRwUmVzcG9uc2VcbiAgICAgICAgICAgIHJldHVybiBvZihcbiAgICAgICAgICAgICAgbmV3IEh0dHBSZXNwb25zZSh7XG4gICAgICAgICAgICAgICAgYm9keToganNvbixcbiAgICAgICAgICAgICAgICBzdGF0dXM6IGVyci5zdGF0dXMsXG4gICAgICAgICAgICAgICAgaGVhZGVyczogZXJyLmhlYWRlcnMsXG4gICAgICAgICAgICAgICAgc3RhdHVzVGV4dDogZXJyLnN0YXR1c1RleHQsXG4gICAgICAgICAgICAgICAgdXJsOiBlcnIudXJsLFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnIpO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBkZWNyeXB0KHJhbmRvbTogc3RyaW5nLCBjb250ZW50OiBzdHJpbmcpIHtcbiAgLy8g5YWI55SoIGhleCDmioogY29udGVudCDop6Plr4ZcbiAgY29uc3QgY29udGVudEhleCA9IGVuY0hleC5wYXJzZShjb250ZW50LnJlcGxhY2VBbGwoJ1xcbicsICcnKSk7XG4gIC8vIOmaj+acuuaVsOe7j+i/h0hNQUMtc2hhMjU25ZCO5Y+W5YmN56uvMTblrZfoioLvvIxITUFD5a+G6ZKl5Li65a2X56ym5Liy4oCcYWxhdWRh4oCdXG4gIGNvbnN0IGtleSA9IGVuY0hleC5wYXJzZShcbiAgICBobWFjU2hhMjU2KHJhbmRvbSwgQ1JZUFRPX0tFWSkudG9TdHJpbmcoKS5zbGljZSgwLCAzMiksXG4gICk7XG5cbiAgcmV0dXJuIGFlc1xuICAgIC5kZWNyeXB0KGVuY0Jhc2U2NC5zdHJpbmdpZnkoY29udGVudEhleCksIGtleSwge1xuICAgICAgaXY6IGtleSxcbiAgICAgIG1vZGU6IG1vZGVDdHIsXG4gICAgICBwYWRkaW5nOiBub1BhZGRpbmcsXG4gICAgfSlcbiAgICAudG9TdHJpbmcoZW5jVXRmOCk7XG59XG5cbmZ1bmN0aW9uIGVuY3J5cHQoY29udGVudDogc3RyaW5nLCByYW5kb206IHN0cmluZykge1xuICBjb25zdCBrZXkgPSBlbmNIZXgucGFyc2UoXG4gICAgaG1hY1NoYTI1NihyYW5kb20sIENSWVBUT19LRVkpLnRvU3RyaW5nKCkuc2xpY2UoMCwgMzIpLFxuICApO1xuXG4gIHJldHVybiBhZXNcbiAgICAuZW5jcnlwdChjb250ZW50LCBrZXksIHtcbiAgICAgIGl2OiBrZXksXG4gICAgICBtb2RlOiBtb2RlQ3RyLFxuICAgICAgcGFkZGluZzogbm9QYWRkaW5nLFxuICAgIH0pXG4gICAgLnRvU3RyaW5nKGZvcm1hdEhleCk7XG59XG4iXX0=
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9jcnlwdG8uaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQVFMLFlBQVksR0FDYixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQ2hDLE9BQU8sU0FBUyxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZDLE9BQU8sT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sVUFBVSxNQUFNLHVCQUF1QixDQUFDO0FBQy9DLE9BQU8sT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBQ3pDLDRCQUE0QjtBQUM1QixPQUFPLFNBQVMsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFCLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLHdCQUF3QixFQUN4QixXQUFXLEVBQ1gsb0NBQW9DLEdBQ3JDLE1BQU0sOEJBQThCLENBQUM7QUFFdEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRXRELE1BQU0sdUJBQXVCLEdBQWE7SUFDeEMsNEJBQTRCO0lBQzVCLG9EQUFvRDtJQUNwRCx1REFBdUQ7SUFDdkQsNkNBQTZDO0NBQzlDLENBQUM7QUFDRixNQUFNLGVB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RUFBRSxPQUFPO1FBQ2IsT0FBTyxFQUFFLFNBQVM7S0FDbkIsQ0FBQztTQUNELFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUN2QixDQUFDO0FBRUQsU0FBUyxPQUFPLENBQUMsT0FBZSxFQUFFLE1BQWM7SUFDOUMsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FDdEIsVUFBVSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUN2RCxDQUFDO0lBRUYsT0FBTyxHQUFHO1NBQ1AsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7UUFDckIsRUFBRSxFQUFFLEdBQUc7UUFDUCxJQUFJLEVBQUUsT0FBTztRQUNiLE9BQU8sRUFBRSxTQUFTO0tBQ25CLENBQUM7U0FDRCxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEh0dHBEb3dubG9hZFByb2dyZXNzRXZlbnQsXG4gIEh0dHBFcnJvclJlc3BvbnNlLFxuICBIdHRwRXZlbnQsXG4gIEh0dHBIYW5kbGVyLFxuICBIdHRwSGVhZGVycyxcbiAgSHR0cEludGVyY2VwdG9yLFxuICBIdHRwUmVxdWVzdCxcbiAgSHR0cFJlc3BvbnNlLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIGlzRGV2TW9kZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBhZXMgZnJvbSAnY3J5cHRvLWpzL2Flcyc7XG5pbXBvcnQgZW5jQmFzZTY0IGZyb20gJ2NyeXB0by1qcy9lbmMtYmFzZTY0JztcbmltcG9ydCBlbmNIZXggZnJvbSAnY3J5cHRvLWpzL2VuYy1oZXgnO1xuaW1wb3J0IGVuY1V0ZjggZnJvbSAnY3J5cHRvLWpzL2VuYy11dGY4JztcbmltcG9ydCBmb3JtYXRIZXggZnJvbSAnY3J5cHRvLWpzL2Zvcm1hdC1oZXgnO1xuaW1wb3J0IGhtYWNTaGEyNTYgZnJvbSAnY3J5cHRvLWpzL2htYWMtc2hhMjU2JztcbmltcG9ydCBtb2RlQ3RyIGZyb20gJ2NyeXB0by1qcy9tb2RlLWN0cic7XG4vLyBjc3BlbGw6IGRpc2FibGUtbmV4dC1saW5lXG5pbXBvcnQgbm9QYWRkaW5nIGZyb20gJ2NyeXB0by1qcy9wYWQtbm9wYWRkaW5nJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgT2JzZXJ2YWJsZSwgb2YsIHRhcCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdjQgfSBmcm9tICd1dWlkJztcblxuaW1wb3J0IHtcbiAgQ1JZUFRPX0hFQURFUl9LRVksXG4gIENSWVBUT19LRVksXG4gIENSWVBUT19SQU5ET01fSEVBREVSX0tFWSxcbiAgQ1JZUFRPX1RZUEUsXG4gIFRPS0VOX0NSWVBUT19JTlRFUkNFUFRPUl9VUkxfUkVHRVhQUyxcbn0gZnJvbSAnLi4vY29yZS9jb25zdGFudHMvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IFNFQVJDSF9VUkxfUFJFRklYIH0gZnJvbSAnLi9rOHMtYXBpLnNlcnZpY2UnO1xuXG5jb25zdCBkZWZhdWx0RW5hYmxlVXJsUmVnZXhwczogUmVnRXhwW10gPSBbXG4gIC9cXC9hcGlcXC92MVxcLyguKlxcLyk/c2VjcmV0cy9pLFxuICAvXFwvYXBpc1xcL3BsYXRmb3JtLnRrZXN0YWNrLmlvXFwvdjFcXC9jbHVzdGVycyhcXC8uKik/L2ksXG4gIC9cXC9hcGlzXFwvcGxhdGZvcm0udGtlc3RhY2suaW9cXC92MVxcL2NsdXN0ZXJjcmVkZW50aWFscy9pLFxuICAvXFwvYXBpc1xcL3BsYXRmb3JtLnRrZXN0YWNrLmlvXFwvdjFcXC9tYWNoaW5lcy9pLFxuXTtcbmNvbnN0IGlzU3RhbmRhbG9uZUFwaSA9ICh1cmw6IHN0cmluZykgPT4ge1xuICBsZXQgcGF0aCA9IHVybC5tYXRjaCgvKChodHRwcz86KT9cXC9cXC8pP1teL10qKFxcL1teP10qKS8pPy5bM107XG4gIGlmIChwYXRoICYmIGlzRGV2TW9kZSgpKSB7XG4gICAgLy8g5byA5Y+R5qih5byP5LiL77yM6ZyA6KaB5oqKQVBJR2F0ZXdheeenu+mZpFxuICAgIC8vIOato+W4uOaDheWGteS4jeS8muWwhuWJjee8gOiuvue9ruaIkOWkmuWxgui3r+W+hO+8jOaJgOS7peebtOaOpeenu+mZpOesrOS4gOWxgui3r+W+hFxuICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoL15cXC9bXi9dKi8sICcnKTtcbiAgfVxuICBjb25zdCByZWdleCA9IG5ldyBSZWdFeHAoYF4oJHtTRUFSQ0hfVVJMX1BSRUZJWH0pPy8oYXBpcz98a3ViZXJuZXRlcykvYCk7XG4gIHJldHVybiBwYXRoICYmIHJlZ2V4LnRlc3QocGF0aCk7XG59O1xuY29uc3QgZGVmYXVsdEVuYWJsZSA9IChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBleHRyYTogUmVnRXhwW10gPSBbXSkgPT4ge1xuICByZXR1cm4gWy4uLmRlZmF1bHRFbmFibGVVcmxSZWdleHBzLCAuLi5leHRyYV0uc29tZShcbiAgICByZWdleHAgPT4gcmVnZXhwLnRlc3QocmVxLnVybCkgJiYgaXNTdGFuZGFsb25lQXBpKHJlcS51cmwpLFxuICApO1xufTtcblxuLy8g5Y+v6YCJ55qEIGFwaSDliqDlr4bmi6bmiKrlmajvvIznm67liY3ku4XmlK/mjIHku6UvYXBpIC9hcGlzIC9rdWJlcm5ldGVzLyDlvIDlpLTnmoRBUElcbi8vIOWQjuerr+aWueahiO+8mmh0dHBzOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0xNjMwNTQzNDBcbi8vIOWmguaenOS9v+eUqCBodHRwIOWImemAmui/h+iuvue9riBoZWFkZXJzIOadpemAieaLqeWKoOWvhuetlueVpe+8jGtleSDkuLogQ1JZUFRPX0hFQURFUl9LRVlcbi8vIOWmguaenOS9v+eUqCBrOHNBcGkg5YiZ6YCa6L+HIGNyeXB0byDmnaXpgInmi6nliqDlr4bnrZbnlaVcbi8vIOWPr+S7pemAmui/hyBUT0tFTl9DUllQVE9fSU5URVJDRVBUT1JfVVJMX1JFR0VYUFMg5rOo5YWl6buY6K6k55qE5byA5ZCv5Yqg5a+G5Yy56YWN5q2j5YiZXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ3J5cHRvSW50ZXJjZXB0b3JTZXJ2aWNlIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFRPS0VOX0NSWVBUT19JTlRFUkNFUFRPUl9VUkxfUkVHRVhQUylcbiAgICBwcml2YXRlIHJlYWRvbmx5IGV4dHJhVXJsUmVnZXhwczogUmVnRXhwW10sXG4gICkge31cblxuICBwcml2YXRlIGZhY3RvcnlDb250ZW50VHlwZShyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+KSB7XG4gICAgaWYgKCFyZXEuaGVhZGVycy5oYXMoJ0NvbnRlbnQtVHlwZScpKSB7XG4gICAgICBjb25zdCBkZXRlY3RlZFR5cGUgPSByZXEuZGV0ZWN0Q29udGVudFR5cGVIZWFkZXIoKTtcbiAgICAgIGlmIChkZXRlY3RlZFR5cGUgIT09IG51bGwpIHtcbiAgICAgICAgcmVxID0gcmVxLmNsb25lKHtcbiAgICAgICAgICBoZWFkZXJzOiByZXEuaGVhZGVycy5zZXQoJ0NvbnRlbnQtVHlwZScsIGRldGVjdGVkVHlwZSksXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVxO1xuICB9XG5cbiAgcHJpdmF0ZSBlbmNyeXB0UGF5bG9hZChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+KSB7XG4gICAgaWYgKHJlcS5oZWFkZXJzLmdldChDUllQVE9fSEVBREVSX0tFWSkgJiYgcmVxLmJvZHkpIHtcbiAgICAgIGxldCBib2R5U3RyID0gJyc7XG4gICAgICAvLyDlj6rlr7lqc29u5ZKM5a2X56ym5Liy57G75Z6L55qEcGF5bG9hZOWKoOWvhlxuICAgICAgaWYgKHR5cGVvZiByZXEuYm9keSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgYm9keVN0ciA9IHJlcS5ib2R5O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBib2R5U3RyID0gSlNPTi5zdHJpbmdpZnkocmVxLmJvZHkpO1xuICAgICAgICB9IGNhdGNoIHt9XG4gICAgICB9XG5cbiAgICAgIGlmIChib2R5U3RyKSB7XG4gICAgICAgIC8vIOWwhiBhbmd1bGFyIOiHquWKqOivhuWIq+eahOmAu+i+keWKoOWIsOi/memHjOadpe+8jOmBv+WFjeWKoOWvhuWQjuiiq+e7n+S4gOiuvuaIkCB0ZXh0XG4gICAgICAgIHJlcSA9IHRoaXMuZmFjdG9yeUNvbnRlbnRUeXBlKHJlcSk7XG5cbiAgICAgICAgY29uc3QgcmFuZG9tID0gdjQoKS5yZXBsYWNlQWxsKCctJywgJycpO1xuICAgICAgICByZXEgPSByZXEuY2xvbmUoe1xuICAgICAgICAgIGhlYWRlcnM6IHJlcS5oZWFkZXJzLnNldChDUllQVE9fUkFORE9NX0hFQURFUl9LRVksIHJhbmRvbSksXG4gICAgICAgICAgYm9keTogZW5jcnlwdChib2R5U3RyLCByYW5kb20pLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVxO1xuICB9XG5cbiAgcHJpdmF0ZSBmYWN0b3J5UmVxKHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4pIHtcbiAgICBpZiAoXG4gICAgICAhcmVxLmhlYWRlcnMuZ2V0KENSWVBUT19IRUFERVJfS0VZKSAmJlxuICAgICAgZGVmYXVsdEVuYWJsZShyZXEsIHRoaXMuZXh0cmFVcmxSZWdleHBzKVxuICAgICkge1xuICAgICAgcmVxID0gcmVxLmNsb25lKHtcbiAgICAgICAgaGVhZGVyczogcmVxLmhlYWRlcnMuc2V0KENSWVBUT19IRUFERVJfS0VZLCBDUllQVE9fVFlQRS5FbmFibGUpLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVxID0gdGhpcy5lbmNyeXB0UGF5bG9hZChyZXEpO1xuXG4gICAgcmV0dXJuIHJlcTtcbiAgfVxuXG4gIC8qKlxuICAgKiDlrp7njrDmlrnmoYjvvJpcbiAgICogMS4g6K+35rGC5ZKM5ZON5bqU5aSE55CG5YiG5byA5aSE55CG77yM5Zyo6K+35rGC55qEaGVhZGVy5LiK5Yqg5LiK5Yqg5a+G5qCH6K+G77yM5qC55o2u6L+U5Zue55qE5ZON5bqUaGVhZGVy5aSE55CG5a+55bqU55qE5Yqg5a+G562W55Wl77yM6ICM5LiN5piv5L2/55So6K+35rGC5pe25L2/55So55qE562W55Wl44CC6L+Z5qC36IO96KeE6YG/5pyN5Yqh56uv55qE5Li75Yqo5Yqg5a+G562W55Wl77yI5YmN56uv5rKh5pyJ5L2/55So5Yqg5a+G77yJXG4gICAqIDIuIOWmguaenOino+WvhuWksei0pe+8jOWwhuS4jeWBmuS7u+S9leWkhOeQhu+8jOWOn+agt+i/lOWbnu+8jOWboOS4uueQhuiuuuS4iuino+WvhuS4jeW6lOivpeWksei0pe+8jOWmguaenOWksei0peWPr+iDveaYr+S4jemcgOimgeino+Wvhu+8jOacgOS4u+imgeeahOaYr+i/lOWbnuino+WvhuWksei0peeahOS/oeaBr+avlOWOn+agt+i/lOWbnuWvueS4muWKoeadpeivtOabtOayoeaEj+S5iVxuICAgKi9cbiAgaW50ZXJjZXB0KFxuICAgIHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sXG4gICAgbmV4dDogSHR0cEhhbmRsZXIsXG4gICk6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XG4gICAgcmVxID0gdGhpcy5mYWN0b3J5UmVxKHJlcSk7XG5cbiAgICAvLyDlvZPmmK8gcHJvZ3Jlc3Mg77yM5L6L5aaCIHdhdGNoIOWcuuaZr+eahOWPmOabtO+8jOS4jeiDveiOt+WPliByZXNwb25zZUhlYWRlcu+8jOaJgOS7pemcgOimgeWFiOWcqOWFtuS7lueKtuaAgeWPiuaXtuiusOW9lSByZXNwb25zZUhlYWRlclxuICAgIGxldCByZXNwb25zZUhlYWRlcjogSHR0cEhlYWRlcnM7XG5cbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKS5waXBlKFxuICAgICAgdGFwKChldmVudDogSHR0cFJlc3BvbnNlPHVua25vd24+KSA9PiB7XG4gICAgICAgIHJlc3BvbnNlSGVhZGVyID0gZXZlbnQuaGVhZGVycyB8fCByZXNwb25zZUhlYWRlcjtcbiAgICAgIH0pLFxuICAgICAgbWFwKGV2ZW50ID0+IHtcbiAgICAgICAgY29uc3QgcmFuZG9tID0gcmVzcG9uc2VIZWFkZXI/LmdldChDUllQVE9fUkFORE9NX0hFQURFUl9LRVkpO1xuICAgICAgICAvLyDlpoLmnpzkuI3mmK/mraPluLjnmoTlk43lupRcbiAgICAgICAgaWYgKCEoZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpKSB7XG4gICAgICAgICAgaWYgKChldmVudCBhcyBIdHRwRG93bmxvYWRQcm9ncmVzc0V2ZW50KS50eXBlID09PSAzICYmIHJhbmRvbSkge1xuICAgICAgICAgICAgY29uc3QgcHJvZ3Jlc3NFdmVudCA9IGV2ZW50IGFzIEh0dHBEb3dubG9hZFByb2dyZXNzRXZlbnQ7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICBwcm9ncmVzc0V2ZW50LnBhcnRpYWxUZXh0ID0gZGVjcnlwdChcbiAgICAgICAgICAgICAgICByYW5kb20sXG4gICAgICAgICAgICAgICAgcHJvZ3Jlc3NFdmVudC5wYXJ0aWFsVGV4dCxcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gY2F0Y2gge31cbiAgICAgICAgICAgIHJldHVybiBwcm9ncmVzc0V2ZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gZXZlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyDlpoLmnpzmmK/mraPluLjnmoTlk43lupRcbiAgICAgICAgaWYgKCFyYW5kb20gfHwgIWV2ZW50LmJvZHkpIHtcbiAgICAgICAgICByZXR1cm4gZXZlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgIHJldHVybiBldmVudC5jbG9uZSh7XG4gICAgICAgICAgICBib2R5OiBkZWNyeXB0KHJhbmRvbSwgZXZlbnQuYm9keSBhcyBzdHJpbmcpLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIHt9XG4gICAgICAgIHJldHVybiBldmVudDtcbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICAvLyDliqDlr4blkI7ov5Tlm57nmoTmmK/lrZfnrKbkuLLvvIzmiYDku6XlpoLmnpzor7fmsYLnmoTmmK9qc29u5YiZ5LiA5a6a5pivZXJyb3LnmoTvvIjlpoLmnpwgcmVzcG9uc2VUeXBlIOaYryBqc29u77yM5YiZ5peg6K665ZON5bqU55qEIGNvbnRlbnQtdHlwZSDmmK/kuI3mmK8ganNvbiDpg73mjInnhadqc29u6Kej5p6Q77yJXG4gICAgICAgIGNvbnN0IHJhbmRvbSA9IGVycj8uaGVhZGVycz8uZ2V0KENSWVBUT19SQU5ET01fSEVBREVSX0tFWSk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICByYW5kb20gJiZcbiAgICAgICAgICByZXEucmVzcG9uc2VUeXBlID09PSAnanNvbicgJiZcbiAgICAgICAgICB0eXBlb2YgZXJyLmVycm9yLnRleHQgPT09ICdzdHJpbmcnXG4gICAgICAgICkge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyDlpoLmnpzlrZjlnKjliqDlr4bmoIfor4bkuJTor7fmsYLnmoTmmK9qc29u77yM5YiZ6L+Z5Liq6ZSZ6K+v5Z+65pys5LiK5bCx5piv5Zug5Li66Kej5p6QanNvbuWvvOiHtOeahO+8jOaJgOS7peWwneivleino+WvhuWQjui/m+ihjGpzb27op6PmnpBcbiAgICAgICAgICAgIGNvbnN0IGpzb24gPSBKU09OLnBhcnNlKGRlY3J5cHQocmFuZG9tLCBlcnIuZXJyb3IudGV4dCkpO1xuICAgICAgICAgICAgLy8g5aaC5p6c6Kej5p6Q5oiQ5Yqf5YiZ5YW25bCx5bqU6K+l5piv5LiA5Liq5q2j5bi455qE6L+U5Zue77yM5omA5Lul55Sf5oiQ5LiA5Liq5q2j5bi455qEIEh0dHBSZXNwb25zZVxuICAgICAgICAgICAgcmV0dXJuIG9mKFxuICAgICAgICAgICAgICBuZXcgSHR0cFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBib2R5OiBqc29uLFxuICAgICAgICAgICAgICAgIHN0YXR1czogZXJyLnN0YXR1cyxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiBlcnIuaGVhZGVycyxcbiAgICAgICAgICAgICAgICBzdGF0dXNUZXh0OiBlcnIuc3RhdHVzVGV4dCxcbiAgICAgICAgICAgICAgICB1cmw6IGVyci51cmwsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycik7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGRlY3J5cHQocmFuZG9tOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZykge1xuICAvLyDlhYjnlKggaGV4IOaKiiBjb250ZW50IOino+WvhlxuICBjb25zdCBjb250ZW50SGV4ID0gZW5jSGV4LnBhcnNlKGNvbnRlbnQucmVwbGFjZUFsbCgnXFxuJywgJycpKTtcbiAgLy8g6ZqP5py65pWw57uP6L+HSE1BQy1zaGEyNTblkI7lj5bliY3nq68xNuWtl+iKgu+8jEhNQUPlr4bpkqXkuLrlrZfnrKbkuLLigJxhbGF1ZGHigJ1cbiAgY29uc3Qga2V5ID0gZW5jSGV4LnBhcnNlKFxuICAgIGhtYWNTaGEyNTYocmFuZG9tLCBDUllQVE9fS0VZKS50b1N0cmluZygpLnNsaWNlKDAsIDMyKSxcbiAgKTtcblxuICByZXR1cm4gYWVzXG4gICAgLmRlY3J5cHQoZW5jQmFzZTY0LnN0cmluZ2lmeShjb250ZW50SGV4KSwga2V5LCB7XG4gICAgICBpdjoga2V5LFxuICAgICAgbW9kZTogbW9kZUN0cixcbiAgICAgIHBhZGRpbmc6IG5vUGFkZGluZyxcbiAgICB9KVxuICAgIC50b1N0cmluZyhlbmNVdGY4KTtcbn1cblxuZnVuY3Rpb24gZW5jcnlwdChjb250ZW50OiBzdHJpbmcsIHJhbmRvbTogc3RyaW5nKSB7XG4gIGNvbnN0IGtleSA9IGVuY0hleC5wYXJzZShcbiAgICBobWFjU2hhMjU2KHJhbmRvbSwgQ1JZUFRPX0tFWSkudG9TdHJpbmcoKS5zbGljZSgwLCAzMiksXG4gICk7XG5cbiAgcmV0dXJuIGFlc1xuICAgIC5lbmNyeXB0KGNvbnRlbnQsIGtleSwge1xuICAgICAgaXY6IGtleSxcbiAgICAgIG1vZGU6IG1vZGVDdHIsXG4gICAgICBwYWRkaW5nOiBub1BhZGRpbmcsXG4gICAgfSlcbiAgICAudG9TdHJpbmcoZm9ybWF0SGV4KTtcbn1cbiJdfQ==
|
package/esm2022/api/helpers.mjs
CHANGED
|
@@ -98,4 +98,4 @@ function calcNextEventType(prev, next) {
|
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFRSCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFJTCxVQUFVLEdBQ1gsTUFBTSxTQUFTLENBQUM7QUFFakIsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUc7SUFDcEMsUUFBUSxFQUFFLEVBQUU7SUFDWixVQUFVLEVBQUUsRUFBRTtDQUNOLENBQUM7QUFFWCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixTQUFpQixFQUM4QixFQUFFO0lBQ2pELElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDZCxPQUFPLHNCQUFzQixDQUFDO0tBQy9CO0lBQ0QsTUFBTSxLQUFLLEdBQXNCLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEQsT0FBTyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUM7UUFDckIsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQzlDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQzdDLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsUUFBaUIsRUFBRSxFQUFFLENBQ3JELENBQUMsUUFBUSxJQUFJLFFBQVEsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0FBRW5ELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLFVBQWEsRUFDQSxFQUFFLENB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QG1vZHVsZSBhcGlcbiAqL1xuXG5pbXBvcnQge1xuICBEZWVwUmVhZG9ubHksXG4gIEtleXMsXG4gIEt1YmVybmV0ZXNSZXNvdXJjZSxcbiAgVmFsdWVPZixcbn0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IGlmRXhpc3QsIHRvS2V5cyB9IGZyb20gJy4uL2NvcmUvdXRpbHMvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7XG4gIEs4c1Jlc291cmNlRGVmaW5pdGlvbixcbiAgSzhzUmVzb3VyY2VEZWZpbml0aW9ucyxcbiAgV2F0Y2hBUElSZXNwb25zZSxcbiAgV2F0Y2hFdmVudCxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBFTVBUWV9BUElfUFJFRklYX1BBUlRTID0ge1xuICBhcGlHcm91cDogJycsXG4gIGFwaVZlcnNpb246ICcnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IGNvbnN0IGdldEFwaVByZWZpeFBhcnRzID0gKFxuICBhcGlQcmVmaXg6IHN0cmluZyxcbik6IE9taXQ8UmVxdWlyZWQ8SzhzUmVzb3VyY2VEZWZpbml0aW9uPiwgJ3R5cGUnPiA9PiB7XG4gIGlmICghYXBpUHJlZml4KSB7XG4gICAgcmV0dXJuIEVNUFRZX0FQSV9QUkVGSVhfUEFSVFM7XG4gIH1cbiAgY29uc3QgcGFydHM6IHJlYWRvbmx5IHN0cmluZ1tdID0gYXBpUHJlZml4LnNwbGl0KCcvJyk7XG4gIHJldHVybiBwYXJ0cy5sZW5ndGggPiAxXG4gICAgPyB7IGFwaUdyb3VwOiBwYXJ0c1swXSwgYXBpVmVyc2lvbjogcGFydHNbMV0gfVxuICAgIDogeyBhcGlHcm91cDogJycsIGFwaVZlcnNpb246IHBhcnRzWzBdIH07XG59O1xuXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplQXBpR3JvdXAgPSAoYXBpR3JvdXA/OiBzdHJpbmcpID0+XG4gICFhcGlHcm91cCB8fCBhcGlHcm91cCA9PT0gJ2NvcmUnID8gJycgOiBhcGlHcm91cDtcblxuZXhwb3J0IGNvbnN0IG5vcm1hbGl6ZURlZmluaXRpb24gPSA8VCBleHRlbmRzIEs4c1Jlc291cmNlRGVmaW5pdGlvbj4oXG4gIGRlZmluaXRpb246IFQsXG4pOiBSZXF1aXJlZDxUPiA9PlxuICAoe1xuICAgIHR5cGU6IGRlZmluaXRpb24udHlwZSxcbiAgICBhcGlHcm91cDogbm9ybWFsaXplQXBpR3JvdXAoZGVmaW5pdGlvbi5hcGlHcm91cCksXG4gICAgYXBpVmVyc2lvbjogZGVmaW5pdGlvbi5hcGlWZXJzaW9uIHx8ICd2MScsXG4gIH0gYXMgUmVxdWlyZWQ8VD4pO1xuXG5mdW5jdGlvbiBpc0RlZmluaXRpb248VCBleHRlbmRzIEs4c1Jlc291cmNlRGVmaW5pdGlvbnM+KFxuICBkZWZpbml0aW9uOiBrZXlvZiBUIHwgVmFsdWVPZjxUPixcbik6IGRlZmluaXRpb24gaXMgVmFsdWVPZjxUPiB7XG4gIHJldHVybiB0eXBlb2YgZGVmaW5pdGlvbiA9PT0gJ29iamVjdCc7XG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVSZXNvdXJjZURlZmluaXRpb25zID0gPFxuICBUIGV4dGVuZHMgSzhzUmVzb3VyY2VEZWZpbml0aW9ucyxcbiAgUiBleHRlbmRzIERlZXBSZWFkb25seTx7XG4gICAgUkVTT1VSQ0VfREVGSU5JVElPTlM6IFQ7XG4gICAgUkVTT1VSQ0VfVFlQRVM6IEtleXM8VD47XG4gICAgZ2V0WWFtbEFwaVZlcnNpb246IChkZWZpbml0aW9uOiBrZXlvZiBUIHwgVmFsdWVPZjxUPikgPT4gc3RyaW5nO1xuICB9Pixcbj4oXG4gIFJFU09VUkNFX0RFRklOSVRJT05TOiBULFxuKTogUiA9PlxuICAoe1xuICAgIFJFU09VUkNFX0RFRklOSVRJT05TLFxuICAgIFJFU09VUkNFX1RZUEVTOiB0b0tleXMoUkVTT1VSQ0VfREVGSU5JVElPTlMpLFxuICAgIGdldFlhbWxBcGlWZXJzaW9uKGRlZmluaXRpb24pIHtcbiAgICAgIGlmICghaXNEZWZpbml0aW9uKGRlZmluaXRpb24pKSB7XG4gICAgICAgIGRlZmluaXRpb24gPSBSRVNPVVJDRV9ERUZJTklUSU9OU1tkZWZpbml0aW9uXSBhcyBWYWx1ZU9mPFQ+O1xuICAgICAgfVxuICAgICAgY29uc3QgeyBhcGlHcm91cCwgYXBpVmVyc2lvbiB9ID0gbm9ybWFsaXplRGVmaW5pdGlvbihkZWZpbml0aW9uKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgICghYXBpR3JvdXAgfHwgYXBpR3JvdXAgPT09ICdjb3JlJyA/ICcnIDogYXBpR3JvdXAgKyAnLycpICsgYXBpVmVyc2lvblxuICAgICAgKTtcbiAgICB9LFxuICB9IGFzIFIpO1xuXG5leHBvcnQgY29uc3QgZ2V0TWV0YWRhdGFIZWFkZXJzID0gKFxuICBpc0xpc3Q/OiBib29sZWFuLFxuICBjdXN0b21BY2NlcHQ/OiBzdHJpbmcsXG4pID0+ICh7XG4gIEFjY2VwdDpcbiAgICBjdXN0b21BY2NlcHQgfHxcbiAgICBgYXBwbGljYXRpb24vanNvbjthcz1QYXJ0aWFsT2JqZWN0TWV0YWRhdGEke2lmRXhpc3QoXG4gICAgICBpc0xpc3QsXG4gICAgICAnTGlzdCcsXG4gICAgKX07Zz1tZXRhLms4cy5pbzt2PXYxLGFwcGxpY2F0aW9uL2pzb25gLFxufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiByZWR1Y2VXYXRjaEV2ZW50czxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgZXZlbnRzOiBBcnJheTxXYXRjaEFQSVJlc3BvbnNlPFQ+Pixcbik6IEFycmF5PFdhdGNoQVBJUmVzcG9uc2U8VD4+IHtcbiAgcmV0dXJuIGV2ZW50cy5yZWR1Y2UoKGFjYywgY3VycikgPT4ge1xuICAgIGlmICghaXNSZXNvdXJjZUV2ZW50KGN1cnIpKSB7XG4gICAgICBhY2MucHVzaChjdXJyKTtcbiAgICAgIHJldHVybiBhY2M7XG4gICAgfVxuXG4gICAgY29uc3QgcHJldkluZGV4ID0gZmluZFByZXZJbmRleDxUPihhY2MsIGN1cnIpO1xuICAgIGlmIChwcmV2SW5kZXggPj0gMCkge1xuICAgICAgY29uc3QgcHJldiA9IGFjY1twcmV2SW5kZXhdO1xuICAgICAgY29uc3QgbmV4dEV2ZW50VHlwZSA9IGNhbGNOZXh0RXZlbnRUeXBlKHByZXYudHlwZSwgY3Vyci50eXBlKTtcblxuICAgICAgYWNjLnNwbGljZShwcmV2SW5kZXgsIDEpO1xuICAgICAgYWNjLnB1c2goe1xuICAgICAgICB0eXBlOiBuZXh0RXZlbnRUeXBlLFxuICAgICAgICBvYmplY3Q6IGN1cnIub2JqZWN0LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFjYy5wdXNoKGN1cnIpO1xuICAgIH1cblxuICAgIHJldHVybiBhY2M7XG4gIH0sIFtdIGFzIEFycmF5PFdhdGNoQVBJUmVzcG9uc2U8VD4+KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzUmVzb3VyY2VFdmVudDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgZXZlbnQ6IFdhdGNoQVBJUmVzcG9uc2U8VD4sXG4pOiBib29sZWFuIHtcbiAgcmV0dXJuIGV2ZW50LnR5cGUgIT09IFdhdGNoRXZlbnQuQm9va21hcmsgJiYgZXZlbnQudHlwZSAhPT0gV2F0Y2hFdmVudC5FcnJvcjtcbn1cblxuZnVuY3Rpb24gZmluZFByZXZJbmRleDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgZXZlbnRzOiBBcnJheTxXYXRjaEFQSVJlc3BvbnNlPFQ+PixcbiAgY3VycjogV2F0Y2hBUElSZXNwb25zZTxUPixcbikge1xuICBmb3IgKGxldCBpID0gZXZlbnRzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgY29uc3QgcHJldiA9IGV2ZW50c1tpXTtcbiAgICBpZiAoXG4gICAgICBpc1Jlc291cmNlRXZlbnQocHJldikgJiZcbiAgICAgIHByZXYub2JqZWN0Py5tZXRhZGF0YT8udWlkID09PSBjdXJyLm9iamVjdD8ubWV0YWRhdGE/LnVpZFxuICAgICkge1xuICAgICAgcmV0dXJuIGk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIC0xO1xufVxuXG5mdW5jdGlvbiBjYWxjTmV4dEV2ZW50VHlwZShwcmV2OiBXYXRjaEV2ZW50LCBuZXh0OiBXYXRjaEV2ZW50KSB7XG4gIHN3aXRjaCAoYCR7cHJldn0gPT0+ICR7bmV4dH1gKSB7XG4gICAgY2FzZSBgJHtXYXRjaEV2ZW50LkFkZGVkfSA9PT4gJHtXYXRjaEV2ZW50Lk1vZGlmaWVkfWA6IHtcbiAgICAgIC8vIOS4i+a4uOWPr+iDveS8mumHjeWkjeaUtuWIsCBBRERFRCDkuovku7ZcbiAgICAgIHJldHVybiBXYXRjaEV2ZW50LkFkZGVkO1xuICAgIH1cbiAgICBjYXNlIGAke1dhdGNoRXZlbnQuQWRkZWR9ID09PiAke1dhdGNoRXZlbnQuRGVsZXRlZH1gOiB7XG4gICAgICAvLyDkuIvmuLjlj6/og73lnKjmnKrmlLbliLAgQURERUQg5LqL5Lu25pe255u05o6l5pS25YiwIERFTEVURUQg5LqL5Lu2XG4gICAgICByZXR1cm4gV2F0Y2hFdmVudC5EZWxldGVkO1xuICAgIH1cbiAgICBjYXNlIGAke1dhdGNoRXZlbnQuTW9kaWZpZWR9ID09PiAke1dhdGNoRXZlbnQuTW9kaWZpZWR9YDoge1xuICAgICAgcmV0dXJuIFdhdGNoRXZlbnQuTW9kaWZpZWQ7XG4gICAgfVxuICAgIGNhc2UgYCR7V2F0Y2hFdmVudC5Nb2RpZmllZH0gPT0+ICR7V2F0Y2hFdmVudC5EZWxldGVkfWA6IHtcbiAgICAgIHJldHVybiBXYXRjaEV2ZW50LkRlbGV0ZWQ7XG4gICAgfVxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGNvbnNvbGUud2FybignVW5leHBlY3RlZCBzdGF0ZSB0cmFuc2l0aW9uOicsIGAke3ByZXZ9ID09PiAke25leHR9YCk7XG4gICAgICByZXR1cm4gbmV4dDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFRSCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFJTCxVQUFVLEdBQ1gsTUFBTSxTQUFTLENBQUM7QUFFakIsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUc7SUFDcEMsUUFBUSxFQUFFLEVBQUU7SUFDWixVQUFVLEVBQUUsRUFBRTtDQUNOLENBQUM7QUFFWCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixTQUFpQixFQUM4QixFQUFFO0lBQ2pELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNmLE9BQU8sc0JBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFzQixTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RELE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUM5QyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUM3QyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLFFBQWlCLEVBQUUsRUFBRSxDQUNyRCxDQUFDLFFBQVEsSUFBSSxRQUFRLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztBQUVuRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxVQUFhLEVB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UUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3BFLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYXBpXG4gKi9cblxuaW1wb3J0IHtcbiAgRGVlcFJlYWRvbmx5LFxuICBLZXlzLFxuICBLdWJlcm5ldGVzUmVzb3VyY2UsXG4gIFZhbHVlT2YsXG59IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBpZkV4aXN0LCB0b0tleXMgfSBmcm9tICcuLi9jb3JlL3V0aWxzL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQge1xuICBLOHNSZXNvdXJjZURlZmluaXRpb24sXG4gIEs4c1Jlc291cmNlRGVmaW5pdGlvbnMsXG4gIFdhdGNoQVBJUmVzcG9uc2UsXG4gIFdhdGNoRXZlbnQsXG59IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgRU1QVFlfQVBJX1BSRUZJWF9QQVJUUyA9IHtcbiAgYXBpR3JvdXA6ICcnLFxuICBhcGlWZXJzaW9uOiAnJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBnZXRBcGlQcmVmaXhQYXJ0cyA9IChcbiAgYXBpUHJlZml4OiBzdHJpbmcsXG4pOiBPbWl0PFJlcXVpcmVkPEs4c1Jlc291cmNlRGVmaW5pdGlvbj4sICd0eXBlJz4gPT4ge1xuICBpZiAoIWFwaVByZWZpeCkge1xuICAgIHJldHVybiBFTVBUWV9BUElfUFJFRklYX1BBUlRTO1xuICB9XG4gIGNvbnN0IHBhcnRzOiByZWFkb25seSBzdHJpbmdbXSA9IGFwaVByZWZpeC5zcGxpdCgnLycpO1xuICByZXR1cm4gcGFydHMubGVuZ3RoID4gMVxuICAgID8geyBhcGlHcm91cDogcGFydHNbMF0sIGFwaVZlcnNpb246IHBhcnRzWzFdIH1cbiAgICA6IHsgYXBpR3JvdXA6ICcnLCBhcGlWZXJzaW9uOiBwYXJ0c1swXSB9O1xufTtcblxuZXhwb3J0IGNvbnN0IG5vcm1hbGl6ZUFwaUdyb3VwID0gKGFwaUdyb3VwPzogc3RyaW5nKSA9PlxuICAhYXBpR3JvdXAgfHwgYXBpR3JvdXAgPT09ICdjb3JlJyA/ICcnIDogYXBpR3JvdXA7XG5cbmV4cG9ydCBjb25zdCBub3JtYWxpemVEZWZpbml0aW9uID0gPFQgZXh0ZW5kcyBLOHNSZXNvdXJjZURlZmluaXRpb24+KFxuICBkZWZpbml0aW9uOiBULFxuKTogUmVxdWlyZWQ8VD4gPT5cbiAgKHtcbiAgICB0eXBlOiBkZWZpbml0aW9uLnR5cGUsXG4gICAgYXBpR3JvdXA6IG5vcm1hbGl6ZUFwaUdyb3VwKGRlZmluaXRpb24uYXBpR3JvdXApLFxuICAgIGFwaVZlcnNpb246IGRlZmluaXRpb24uYXBpVmVyc2lvbiB8fCAndjEnLFxuICB9IGFzIFJlcXVpcmVkPFQ+KTtcblxuZnVuY3Rpb24gaXNEZWZpbml0aW9uPFQgZXh0ZW5kcyBLOHNSZXNvdXJjZURlZmluaXRpb25zPihcbiAgZGVmaW5pdGlvbjoga2V5b2YgVCB8IFZhbHVlT2Y8VD4sXG4pOiBkZWZpbml0aW9uIGlzIFZhbHVlT2Y8VD4ge1xuICByZXR1cm4gdHlwZW9mIGRlZmluaXRpb24gPT09ICdvYmplY3QnO1xufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlUmVzb3VyY2VEZWZpbml0aW9ucyA9IDxcbiAgVCBleHRlbmRzIEs4c1Jlc291cmNlRGVmaW5pdGlvbnMsXG4gIFIgZXh0ZW5kcyBEZWVwUmVhZG9ubHk8e1xuICAgIFJFU09VUkNFX0RFRklOSVRJT05TOiBUO1xuICAgIFJFU09VUkNFX1RZUEVTOiBLZXlzPFQ+O1xuICAgIGdldFlhbWxBcGlWZXJzaW9uOiAoZGVmaW5pdGlvbjoga2V5b2YgVCB8IFZhbHVlT2Y8VD4pID0+IHN0cmluZztcbiAgfT4sXG4+KFxuICBSRVNPVVJDRV9ERUZJTklUSU9OUzogVCxcbik6IFIgPT5cbiAgKHtcbiAgICBSRVNPVVJDRV9ERUZJTklUSU9OUyxcbiAgICBSRVNPVVJDRV9UWVBFUzogdG9LZXlzKFJFU09VUkNFX0RFRklOSVRJT05TKSxcbiAgICBnZXRZYW1sQXBpVmVyc2lvbihkZWZpbml0aW9uKSB7XG4gICAgICBpZiAoIWlzRGVmaW5pdGlvbihkZWZpbml0aW9uKSkge1xuICAgICAgICBkZWZpbml0aW9uID0gUkVTT1VSQ0VfREVGSU5JVElPTlNbZGVmaW5pdGlvbl0gYXMgVmFsdWVPZjxUPjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHsgYXBpR3JvdXAsIGFwaVZlcnNpb24gfSA9IG5vcm1hbGl6ZURlZmluaXRpb24oZGVmaW5pdGlvbik7XG4gICAgICByZXR1cm4gKFxuICAgICAgICAoIWFwaUdyb3VwIHx8IGFwaUdyb3VwID09PSAnY29yZScgPyAnJyA6IGFwaUdyb3VwICsgJy8nKSArIGFwaVZlcnNpb25cbiAgICAgICk7XG4gICAgfSxcbiAgfSBhcyBSKTtcblxuZXhwb3J0IGNvbnN0IGdldE1ldGFkYXRhSGVhZGVycyA9IChcbiAgaXNMaXN0PzogYm9vbGVhbixcbiAgY3VzdG9tQWNjZXB0Pzogc3RyaW5nLFxuKSA9PiAoe1xuICBBY2NlcHQ6XG4gICAgY3VzdG9tQWNjZXB0IHx8XG4gICAgYGFwcGxpY2F0aW9uL2pzb247YXM9UGFydGlhbE9iamVjdE1ldGFkYXRhJHtpZkV4aXN0KFxuICAgICAgaXNMaXN0LFxuICAgICAgJ0xpc3QnLFxuICAgICl9O2c9bWV0YS5rOHMuaW87dj12MSxhcHBsaWNhdGlvbi9qc29uYCxcbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVkdWNlV2F0Y2hFdmVudHM8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gIGV2ZW50czogQXJyYXk8V2F0Y2hBUElSZXNwb25zZTxUPj4sXG4pOiBBcnJheTxXYXRjaEFQSVJlc3BvbnNlPFQ+PiB7XG4gIHJldHVybiBldmVudHMucmVkdWNlKChhY2MsIGN1cnIpID0+IHtcbiAgICBpZiAoIWlzUmVzb3VyY2VFdmVudChjdXJyKSkge1xuICAgICAgYWNjLnB1c2goY3Vycik7XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH1cblxuICAgIGNvbnN0IHByZXZJbmRleCA9IGZpbmRQcmV2SW5kZXg8VD4oYWNjLCBjdXJyKTtcbiAgICBpZiAocHJldkluZGV4ID49IDApIHtcbiAgICAgIGNvbnN0IHByZXYgPSBhY2NbcHJldkluZGV4XTtcbiAgICAgIGNvbnN0IG5leHRFdmVudFR5cGUgPSBjYWxjTmV4dEV2ZW50VHlwZShwcmV2LnR5cGUsIGN1cnIudHlwZSk7XG5cbiAgICAgIGFjYy5zcGxpY2UocHJldkluZGV4LCAxKTtcbiAgICAgIGFjYy5wdXNoKHtcbiAgICAgICAgdHlwZTogbmV4dEV2ZW50VHlwZSxcbiAgICAgICAgb2JqZWN0OiBjdXJyLm9iamVjdCxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBhY2MucHVzaChjdXJyKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYWNjO1xuICB9LCBbXSBhcyBBcnJheTxXYXRjaEFQSVJlc3BvbnNlPFQ+Pik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Jlc291cmNlRXZlbnQ8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gIGV2ZW50OiBXYXRjaEFQSVJlc3BvbnNlPFQ+LFxuKTogYm9vbGVhbiB7XG4gIHJldHVybiBldmVudC50eXBlICE9PSBXYXRjaEV2ZW50LkJvb2ttYXJrICYmIGV2ZW50LnR5cGUgIT09IFdhdGNoRXZlbnQuRXJyb3I7XG59XG5cbmZ1bmN0aW9uIGZpbmRQcmV2SW5kZXg8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gIGV2ZW50czogQXJyYXk8V2F0Y2hBUElSZXNwb25zZTxUPj4sXG4gIGN1cnI6IFdhdGNoQVBJUmVzcG9uc2U8VD4sXG4pIHtcbiAgZm9yIChsZXQgaSA9IGV2ZW50cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgIGNvbnN0IHByZXYgPSBldmVudHNbaV07XG4gICAgaWYgKFxuICAgICAgaXNSZXNvdXJjZUV2ZW50KHByZXYpICYmXG4gICAgICBwcmV2Lm9iamVjdD8ubWV0YWRhdGE/LnVpZCA9PT0gY3Vyci5vYmplY3Q/Lm1ldGFkYXRhPy51aWRcbiAgICApIHtcbiAgICAgIHJldHVybiBpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiAtMTtcbn1cblxuZnVuY3Rpb24gY2FsY05leHRFdmVudFR5cGUocHJldjogV2F0Y2hFdmVudCwgbmV4dDogV2F0Y2hFdmVudCkge1xuICBzd2l0Y2ggKGAke3ByZXZ9ID09PiAke25leHR9YCkge1xuICAgIGNhc2UgYCR7V2F0Y2hFdmVudC5BZGRlZH0gPT0+ICR7V2F0Y2hFdmVudC5Nb2RpZmllZH1gOiB7XG4gICAgICAvLyDkuIvmuLjlj6/og73kvJrph43lpI3mlLbliLAgQURERUQg5LqL5Lu2XG4gICAgICByZXR1cm4gV2F0Y2hFdmVudC5BZGRlZDtcbiAgICB9XG4gICAgY2FzZSBgJHtXYXRjaEV2ZW50LkFkZGVkfSA9PT4gJHtXYXRjaEV2ZW50LkRlbGV0ZWR9YDoge1xuICAgICAgLy8g5LiL5ri45Y+v6IO95Zyo5pyq5pS25YiwIEFEREVEIOS6i+S7tuaXtuebtOaOpeaUtuWIsCBERUxFVEVEIOS6i+S7tlxuICAgICAgcmV0dXJuIFdhdGNoRXZlbnQuRGVsZXRlZDtcbiAgICB9XG4gICAgY2FzZSBgJHtXYXRjaEV2ZW50Lk1vZGlmaWVkfSA9PT4gJHtXYXRjaEV2ZW50Lk1vZGlmaWVkfWA6IHtcbiAgICAgIHJldHVybiBXYXRjaEV2ZW50Lk1vZGlmaWVkO1xuICAgIH1cbiAgICBjYXNlIGAke1dhdGNoRXZlbnQuTW9kaWZpZWR9ID09PiAke1dhdGNoRXZlbnQuRGVsZXRlZH1gOiB7XG4gICAgICByZXR1cm4gV2F0Y2hFdmVudC5EZWxldGVkO1xuICAgIH1cbiAgICBkZWZhdWx0OiB7XG4gICAgICBjb25zb2xlLndhcm4oJ1VuZXhwZWN0ZWQgc3RhdGUgdHJhbnNpdGlvbjonLCBgJHtwcmV2fSA9PT4gJHtuZXh0fWApO1xuICAgICAgcmV0dXJuIG5leHQ7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -61,13 +61,13 @@ export class K8sApiResourceService {
|
|
|
61
61
|
static { this.ɵfac = function K8sApiResourceService_Factory(t) { return new (t || K8sApiResourceService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(TOKEN_RESOURCE_DEFINITIONS)); }; }
|
|
62
62
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: K8sApiResourceService, factory: K8sApiResourceService.ɵfac, providedIn: 'root' }); }
|
|
63
63
|
}
|
|
64
|
-
(
|
|
64
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(K8sApiResourceService, [{
|
|
65
65
|
type: Injectable,
|
|
66
66
|
args: [{
|
|
67
67
|
providedIn: 'root',
|
|
68
68
|
}]
|
|
69
|
-
}],
|
|
69
|
+
}], () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
70
70
|
type: Inject,
|
|
71
71
|
args: [TOKEN_RESOURCE_DEFINITIONS]
|
|
72
|
-
}] }]
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
}] }], null); })();
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLWFwaS1yZXNvdXJjZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9rOHMtYXBpLXJlc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RFLE9BQU8sRUFJTCxXQUFXLEVBQ1gsT0FBTyxFQUNQLFVBQVUsR0FDWCxNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixtQkFBbUIsR0FDcEIsTUFBTSxXQUFXLENBQUM7OztBQU1uQixNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLFlBQ21CLElBQWdCLEVBRWhCLG1CQUEyQztRQUYzQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBRWhCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBd0I7UUFHOUQsWUFBWTtRQUNKLGdCQUFXLEdBR2YsRUFBRSxDQUFDO1FBRVAsWUFBWTtRQUNKLGdCQUFXLEdBQXVELEVBQUUsQ0FBQztJQVQxRSxDQUFDO0lBV0osYUFBYSxDQUNYLGdCQUFnRDtRQUVoRCxJQUFJLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNyQyxNQUFNLElBQUksU0FBUyxDQUNqQiwyREFBMkQsTUFBTSxDQUMvRCxnQkFBZ0IsQ0FDakIsR0FBRyxDQUNMLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxVQUFVLEdBQ2QsT0FBTyxnQkFBZ0IsS0FB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ekIscUJBQXFCLFdBQXJCLHFCQUFxQixtQkFGcEIsTUFBTTs7aUZBRVAscUJBQXFCO2NBSGpDLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7c0JBSUksTUFBTTt1QkFBQywwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSBhcGlcbiAqL1xuXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBUT0tFTl9SRVNPVVJDRV9ERUZJTklUSU9OUyB9IGZyb20gJy4uL2NvcmUvY29uc3RhbnRzL3Rva2Vucyc7XG5pbXBvcnQge1xuICBBUElSZXNvdXJjZUl0ZW0sXG4gIEFQSVJlc291cmNlTGlzdCxcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBBUElfR0FURVdBWSxcbiAgaWZFeGlzdCxcbiAgcHVibGlzaFJlZixcbn0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHtcbiAgRU1QVFlfQVBJX1BSRUZJWF9QQVJUUyxcbiAgZ2V0QXBpUHJlZml4UGFydHMsXG4gIG5vcm1hbGl6ZUFwaUdyb3VwLFxuICBub3JtYWxpemVEZWZpbml0aW9uLFxufSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IHsgSzhzUmVzb3VyY2VEZWZpbml0aW9uLCBLOHNSZXNvdXJjZURlZmluaXRpb25zIH0gZnJvbSAnLi90eXBlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBLOHNBcGlSZXNvdXJjZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXG4gICAgQEluamVjdChUT0tFTl9SRVNPVVJDRV9ERUZJTklUSU9OUylcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlRGVmaW5pdGlvbnM6IEs4c1Jlc291cmNlRGVmaW5pdGlvbnMsXG4gICkge31cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfbGlzdENhY2hlczogUmVjb3JkPFxuICAgIHN0cmluZyxcbiAgICBSZWNvcmQ8c3RyaW5nLCBPYnNlcnZhYmxlPEFQSVJlc291cmNlSXRlbVtdPj5cbiAgPiA9IHt9O1xuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF90eXBlQ2FjaGVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBPYnNlcnZhYmxlPHN0cmluZz4+PiA9IHt9O1xuXG4gIGdldERlZmluaXRpb24oXG4gICAgdHlwZU9yRGVmaW5pdGlvbjogc3RyaW5nIHwgSzhzUmVzb3VyY2VEZWZpbml0aW9uLFxuICApOiBSZXF1aXJlZDxLOHNSZXNvdXJjZURlZmluaXRpb24+IHtcbiAgICBpZiAoaXNEZXZNb2RlKCkgJiYgIXR5cGVPckRlZmluaXRpb24pIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgIGByZXNvdXJjZSB0eXBlIG9yIGRlZmluaXRpb24gaXMgcmVxdWlyZWQsIGJ1dCByZWNlaXZlZDogJyR7U3RyaW5nKFxuICAgICAgICAgIHR5cGVPckRlZmluaXRpb24sXG4gICAgICAgICl9J2AsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGRlZmluaXRpb24gPVxuICAgICAgdHlwZW9mIHR5cGVPckRlZmluaXRpb24gPT09ICdzdHJpbmcnXG4gICAgICAgID8gdGhpcy5yZXNvdXJjZURlZmluaXRpb25zW3R5cGVPckRlZmluaXRpb25dXG4gICAgICAgIDogdHlwZU9yRGVmaW5pdGlvbjtcblxuICAgIGlmIChkZWZpbml0aW9uKSB7XG4gICAgICByZXR1cm4gbm9ybWFsaXplRGVmaW5pdGlvbihkZWZpbml0aW9uKTtcbiAgICB9XG5cbiAgICBjb25zdCB0eXBlID0gdHlwZU9yRGVmaW5pdGlvbiBhcyBzdHJpbmc7XG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBcIiR7dHlwZX1cIiBjb3VsZCBub3QgYmUgZm91bmQgaW4gXFxgVE9LRU5fUkVTT1VSQ0VfREVGSU5JVElPTlNcXGAsIGhhdmUgeW91IHByb3ZpZGVkIGl0IGNvcnJlY3RseT9gLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHsgdHlwZSwgLi4uRU1QVFlfQVBJX1BSRUZJWF9QQVJUUyB9O1xuICB9XG5cbiAgZ2V0QXBpUGF0aCh7XG4gICAgY2x1c3RlcixcbiAgICBuYW1lc3BhY2UsXG4gICAgbmFtZSxcbiAgICB0eXBlLFxuICAgIGFwaUdyb3VwLFxuICAgIGFwaVZlcnNpb24sXG4gIH06IHtcbiAgICBjbHVzdGVyPzogc3RyaW5nO1xuICAgIG5hbWVzcGFjZT86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHR5cGU/OiBzdHJpbmc7XG4gICAgYXBpR3JvdXA/OiBzdHJpbmc7XG4gICAgYXBpVmVyc2lvbj86IHN0cmluZztcbiAgfSk6IHN0cmluZyB7XG4gICAgYXBpR3JvdXAgPSBub3JtYWxpemVBcGlHcm91cChhcGlHcm91cCk7XG4gICAgLyogZXNsaW50LWRpc2FibGUgc29uYXJqcy9uby1uZXN0ZWQtdGVtcGxhdGUtbGl0ZXJhbHMgKi9cbiAgICByZXR1cm4gYCR7QVBJX0dBVEVXQVl9JHtpZkV4aXN0KGNsdXN0ZXIsIGAva3ViZXJuZXRlcy8ke2NsdXN0ZXJ9YCl9L2FwaSR7XG4gICAgICBhcGlHcm91cCAmJiAncydcbiAgICB9JHtpZkV4aXN0KGFwaUdyb3VwLCBgLyR7YXBpR3JvdXB9YCl9LyR7YXBpVmVyc2lvbiB8fCAndjEnfSR7aWZFeGlzdChcbiAgICAgIG5hbWVzcGFjZSxcbiAgICAgIGAvbmFtZXNwYWNlcy8ke25hbWVzcGFjZX1gLFxuICAgICl9JHtpZkV4aXN0KHR5cGUsIGAvJHt0eXBlfWApfSR7aWZFeGlzdChuYW1lLCBgLyR7bmFtZX1gKX1gO1xuICAgIC8qIGVzbGludC1lbmFibGUgc29uYXJqcy9uby1uZXN0ZWQtdGVtcGxhdGUtbGl0ZXJhbHMgKi9cbiAgfVxuXG4gIGdldFJlc291cmNlTGlzdDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihyZXNvdXJjZTogVCwgY2x1c3Rlcjogc3RyaW5nKSB7XG4gICAgY29uc3QgeyBhcGlWZXJzaW9uIH0gPSByZXNvdXJjZTtcblxuICAgIGNvbnN0IGNhY2hlZCA9XG4gICAgICB0aGlzLl9saXN0Q2FjaGVzW2NsdXN0ZXJdIHx8ICh0aGlzLl9saXN0Q2FjaGVzW2NsdXN0ZXJdID0ge30pO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIGNhY2hlZFthcGlWZXJzaW9uXSB8fFxuICAgICAgKGNhY2hlZFthcGlWZXJzaW9uXSA9IHRoaXMuaHR0cFxuICAgICAgICAuZ2V0PEFQSVJlc291cmNlTGlzdD4oXG4gICAgICAgICAgdGhpcy5nZXRBcGlQYXRoKHtcbiAgICAgICAgICAgIGNsdXN0ZXIsXG4gICAgICAgICAgICAuLi5nZXRBcGlQcmVmaXhQYXJ0cyhhcGlWZXJzaW9uKSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtYXAoKHsgcmVzb3VyY2VzIH0pID0+IHJlc291cmNlcyksXG4gICAgICAgICAgcHVibGlzaFJlZigpLFxuICAgICAgICApKVxuICAgICk7XG4gIH1cblxuICBnZXRSZXNvdXJjZVR5cGU8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4ocmVzb3VyY2U6IFQsIGNsdXN0ZXI6IHN0cmluZykge1xuICAgIGNvbnN0IHsgYXBpVmVyc2lvbiwga2luZCB9ID0gcmVzb3VyY2U7XG5cbiAgICBjb25zdCBjYWNoZWQgPVxuICAgICAgdGhpcy5fdHlwZUNhY2hlc1tjbHVzdGVyXSB8fCAodGhpcy5fdHlwZUNhY2hlc1tjbHVzdGVyXSA9IHt9KTtcblxuICAgIHJldHVybiAoXG4gICAgICBjYWNoZWRbYXBpVmVyc2lvbl0gfHxcbiAgICAgIChjYWNoZWRbYXBpVmVyc2lvbl0gPSB0aGlzLmdldFJlc291cmNlTGlzdChyZXNvdXJjZSwgY2x1c3RlcikucGlwZShcbiAgICAgICAgbWFwKHJlc291cmNlcyA9PiByZXNvdXJjZXMuZmluZChpdGVtID0+IGl0ZW0ua2luZCA9PT0ga2luZCkubmFtZSksXG4gICAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICAgICkpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { HttpClient, HttpEventType, } from '@angular/common/http';
|
|
6
6
|
import { Inject, Injectable } from '@angular/core';
|
|
7
|
-
import { get,
|
|
7
|
+
import { get, set } from 'lodash-es';
|
|
8
8
|
import { NEVER, Observable, combineLatest, from, of, throwError, filter, map, retryWhen, startWith, switchMap, concatMap, delay, distinctUntilChanged, } from 'rxjs';
|
|
9
9
|
import { API_GATEWAY, DOWNGRADE_WATCH_ENABLED, NOTIFY_ON_ERROR_HEADERS, NOT_NOTIFY_ON_ERROR_HEADERS, TRUE, } from '../core/constants/constants';
|
|
10
10
|
import { TOKEN_GLOBAL_NAMESPACE } from '../core/constants/tokens';
|
|
11
11
|
import { CRYPTO_HEADER_KEY, } from '../core/public-api';
|
|
12
12
|
import { METADATA, NAME, NAMESPACE } from '../core/services/public-api';
|
|
13
13
|
import { createPollObservable } from '../core/utils/observable';
|
|
14
|
-
import { parseJSONStream } from '../core/utils/public-api';
|
|
14
|
+
import { isEqual, parseJSONStream } from '../core/utils/public-api';
|
|
15
15
|
import { normalizeParams } from '../k8s-resource-list/utils';
|
|
16
16
|
import { getApiPrefixParts, getMetadataHeaders, isResourceEvent, reduceWatchEvents, } from './helpers';
|
|
17
17
|
import { K8sApiResourceService } from './k8s-api-resource.service';
|
|
@@ -384,11 +384,11 @@ export class K8sApiService {
|
|
|
384
384
|
static { this.ɵfac = function K8sApiService_Factory(t) { return new (t || K8sApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.K8sApiResourceService), i0.ɵɵinject(i3.PageVisibilityService), i0.ɵɵinject(TOKEN_GLOBAL_NAMESPACE)); }; }
|
|
385
385
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: K8sApiService, factory: K8sApiService.ɵfac, providedIn: 'root' }); }
|
|
386
386
|
}
|
|
387
|
-
(
|
|
387
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(K8sApiService, [{
|
|
388
388
|
type: Injectable,
|
|
389
389
|
args: [{ providedIn: 'root' }]
|
|
390
|
-
}],
|
|
390
|
+
}], () => [{ type: i1.HttpClient }, { type: i2.K8sApiResourceService }, { type: i3.PageVisibilityService }, { type: undefined, decorators: [{
|
|
391
391
|
type: Inject,
|
|
392
392
|
args: [TOKEN_GLOBAL_NAMESPACE]
|
|
393
|
-
}] }]
|
|
394
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9rOHMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUNMLFVBQVUsRUFFVixhQUFhLEdBQ2QsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDOUMsT0FBTyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBRVYsYUFBYSxFQUNiLElBQUksRUFDSixFQUFFLEVBQ0YsVUFBVSxFQUNWLE1BQU0sRUFDTixHQUFHLEVBQ0gsU0FBUyxFQUNULFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNULEtBQUssRUFDTCxvQkFBb0IsR0FDckIsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsV0FBVyxFQUNYLHVCQUF1QixFQUN2Qix1QkFBdUIsRUFDdkIsMkJBQTJCLEVBQzNCLElBQUksR0FDTCxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFDTCxpQkFBaUIsR0FJbEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTdELE9BQU8sRUFDTCxpQkFBaUIsRUFD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VTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7c0JBTTdCLE1BQU07dUJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYXBpXG4gKi9cblxuaW1wb3J0IHtcbiAgSHR0cENsaWVudCxcbiAgSHR0cERvd25sb2FkUHJvZ3Jlc3NFdmVudCxcbiAgSHR0cEV2ZW50VHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXQsIGlzRXF1YWwsIHNldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge1xuICBORVZFUixcbiAgT2JzZXJ2YWJsZSxcbiAgU3Vic2NyaXB0aW9uLFxuICBjb21iaW5lTGF0ZXN0LFxuICBmcm9tLFxuICBvZixcbiAgdGhyb3dFcnJvcixcbiAgZmlsdGVyLFxuICBtYXAsXG4gIHJldHJ5V2hlbixcbiAgc3RhcnRXaXRoLFxuICBzd2l0Y2hNYXAsXG4gIGNvbmNhdE1hcCxcbiAgZGVsYXksXG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgQVBJX0dBVEVXQVksXG4gIERPV05HUkFERV9XQVRDSF9FTkFCTEVELFxuICBOT1RJRllfT05fRVJST1JfSEVBREVSUyxcbiAgTk9UX05PVElGWV9PTl9FUlJPUl9IRUFERVJTLFxuICBUUlVFLFxufSBmcm9tICcuLi9jb3JlL2NvbnN0YW50cy9jb25zdGFudHMnO1xuaW1wb3J0IHsgVE9LRU5fR0xPQkFMX05BTUVTUEFDRSB9IGZyb20gJy4uL2NvcmUvY29uc3RhbnRzL3Rva2Vucyc7XG5pbXBvcnQge1xuICBDUllQVE9fSEVBREVSX0tFWSxcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBLdWJlcm5ldGVzUmVzb3VyY2VMaXN0LFxuICBTdGF0dXMsXG59IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBNRVRBREFUQSwgTkFNRSwgTkFNRVNQQUNFIH0gZnJvbSAnLi4vY29yZS9zZXJ2aWNlcy9wdWJsaWMtYXBpJztcbmltcG9ydCB7IGNyZWF0ZVBvbGxPYnNlcnZhYmxlIH0gZnJvbSAnLi4vY29yZS91dGlscy9vYnNlcnZhYmxlJztcbmltcG9ydCB7IHBhcnNlSlNPTlN0cmVhbSB9IGZyb20gJy4uL2NvcmUvdXRpbHMvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBub3JtYWxpemVQYXJhbXMgfSBmcm9tICcuLi9rOHMtcmVzb3VyY2UtbGlzdC91dGlscyc7XG5cbmltcG9ydCB7XG4gIGdldEFwaVByZWZpeFBhcnRzLFxuICBnZXRNZXRhZGF0YUhlYWRlcnMsXG4gIGlzUmVzb3VyY2VFdmVudCxcbiAgcmVkdWNlV2F0Y2hFdmVudHMsXG59IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBLOHNBcGlSZXNvdXJjZVNlcnZpY2UgfSBmcm9tICcuL2s4cy1hcGktcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBQYWdlVmlzaWJpbGl0eVNlcnZpY2UgfSBmcm9tICcuL3BhZ2UtdmlzaWJpbGl0eS5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIEFwaUJhc2VQYXJhbXMsXG4gIEVyZWJ1c1Jlc291cmNlRGVsZXRlUGFyYW1zLFxuICBFcmVidXNSZXNvdXJjZUxpc3RQYXJhbXMsXG4gIEVyZWJ1c1Jlc291cmNlUGFyYW1zLFxuICBFcmVidXNSZXNvdXJjZVBhdGNoUGFyYW1zLFxuICBFcmVidXNSZXNvdXJjZVdyaXRlUGFyYW1zLFxuICBHbG9iYWxSZXNvdXJjZURlbGV0ZVBhcmFtcyxcbiAgR2xvYmFsUmVzb3VyY2VMaXN0UGFyYW1zLFxuICBHbG9iYWxSZXNvdXJjZVBhcmFtcyxcbiAgR2xvYmFsUmVzb3VyY2VQYXRjaFBhcmFtcyxcbiAgR2xvYmFsUmVzb3VyY2VXcml0ZVBhcmFtcyxcbiAgUGF0Y2hPcGVyYXRpb24sXG4gIFJlc291cmNlQXBpUGFyYW1zLFxuICBSZXNvdXJjZURlbGV0ZVBhcmFtcyxcbiAgUmVzb3VyY2VMaXN0UmVhZFBhcmFtcyxcbiAgUmVzb3VyY2VQYXRjaFBhcmFtcyxcbiAgUmVzb3VyY2VSZWFkUGFyYW1zLFxuICBSZXNvdXJjZVdyaXRlUGFyYW1zLFxuICBXYXRjaEFQSVJlc3BvbnNlLFxuICBXYXRjaEFwaVBhcmFtcyxcbiAgV2F0Y2hFcmVidXNSZXNvdXJjZUxpc3RQYXJhbXMsXG4gIFdhdGNoRXJlYnVzUmVzb3VyY2VQYXJhbXMsXG4gIFdhdGNoRXZlbnQsXG4gIFdhdGNoR2xvYmFsUmVzb3VyY2VMaXN0UGFyYW1zLFxuICBXYXRjaEdsb2JhbFJlc291cmNlUGFyYW1zLFxuICBXYXRjaFJlc291cmNlTGlzdFJlYWRQYXJhbXMsXG4gIFdhdGNoUmVzb3VyY2VSZWFkUGFyYW1zLFxuICBFcmVidXNSZXNvdXJjZUJhdGNoRGVsZXRlUGFyYW1zLFxufSBmcm9tICcuL3R5cGVzJztcblxuLy8g5ZCN56ew5YmN57yAIEVyZWJ1cyDlj4LogIMgaHR0cDovL2NvbmZsdWVuY2UuYWxhdWRhLmNuL3BhZ2VzL3ZpZXdwYWdlLmFjdGlvbj9wYWdlSWQ9NDQ2NjM0ODQg5oyHIC9rdWJlcm5ldGVzLyDlvIDlpLTnmoQgYXBpIOe7hOS7tlxuXG5leHBvcnQgY29uc3QgVElNRU9VVF9TRUNPTkRTID0gNTk7XG5leHBvcnQgY29uc3QgU0VBUkNIX1VSTF9QUkVGSVggPSAnL2FjcC92MS9yZXNvdXJjZXMvc2VhcmNoJztcblxuY29uc3QgUkVUUllfREVMQVkgPSA1MDAwO1xuXG5jb25zdCBSRVRSWV9DT1VOVCA9IDM7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgSzhzQXBpU2VydmljZTxSIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nPiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGs4c0FwaVJlc291cmNlOiBLOHNBcGlSZXNvdXJjZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYWdlVmlzaWJpbGl0eTogUGFnZVZpc2liaWxpdHlTZXJ2aWNlLFxuICAgIEBJbmplY3QoVE9LRU5fR0xPQkFMX05BTUVTUEFDRSkgcHJpdmF0ZSByZWFkb25seSBnbG9iYWxOYW1lc3BhY2U6IHN0cmluZyxcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiDojrflj5YgR2xvYmFsIOmbhue+pOWNleS4qui1hOa6kOWvueixoVxuICAgKi9cbiAgZ2V0R2xvYmFsUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBHbG9iYWxSZXNvdXJjZVBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog55uR5ZCsIEdsb2JhbCDpm4bnvqTljZXkuKrotYTmupDlr7nosaFcbiAgICovXG4gIHdhdGNoR2xvYmFsUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBXYXRjaEdsb2JhbFJlc291cmNlUGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gRE9XTkdSQURFX1dBVENIX0VOQUJMRUQgJiYgcGFyYW1zLmRvd25ncmFkZVBvbGxpbmdcbiAgICAgID8gY3JlYXRlUG9sbE9ic2VydmFibGU8VD4oXG4gICAgICAgICAgdGhpcy5nZXRHbG9iYWxSZXNvdXJjZShwYXJhbXMpLFxuICAgICAgICAgIHRoaXMuX2dldERvd25ncmFkZVBvbGxpbmcocGFyYW1zKSxcbiAgICAgICAgKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKChhLCBiKSA9PiBpc0VxdWFsKGEsIGIpKSlcbiAgICAgIDogdGhpcy5fd2F0Y2hSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOebkeWQrCBHbG9iYWwg6ZuG576k6LWE5rqQ5YiX6KGo5Y+Y5YyWXG4gICAqL1xuICB3YXRjaEdsb2JhbFJlc291cmNlQ2hhbmdlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHNlZWRWZXJzaW9uOiBzdHJpbmcsXG4gICAgcGFyYW1zOiBXYXRjaEdsb2JhbFJlc291cmNlTGlzdFBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX2tlZXBXYXRjaFJlc291cmNlQ2hhbmdlPFQ+KHNlZWRWZXJzaW9uLCBwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOiOt+WPliBHbG9iYWwg6ZuG576k6LWE5rqQ5a+56LGh5YiX6KGo77yM5YyF5ZCr5YiG6aG15L+h5oGvXG4gICAqL1xuICBnZXRHbG9iYWxSZXNvdXJjZUxpc3Q8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBHbG9iYWxSZXNvdXJjZUxpc3RQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9nZXRSZXNvdXJjZUxpc3Q8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDliJvlu7ogR2xvYmFsIOmbhue+pOi1hOa6kFxuICAgKi9cbiAgcG9zdEdsb2JhbFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogR2xvYmFsUmVzb3VyY2VXcml0ZVBhcmFtczxULCBSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Bvc3RSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWujOaVtOimhuebluabtOaWsCBHbG9iYWwg6ZuG576k5Y2V5Liq6LWE5rqQ5a+56LGhXG4gICAqL1xuICBwdXRHbG9iYWxSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEdsb2JhbFJlc291cmNlV3JpdGVQYXJhbXM8VCwgUj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9wdXRSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWinumHj+abtOaWsCBHbG9iYWwg6ZuG576k5Y2V5Liq6LWE5rqQ5a+56LGh55qE6YOo5YiG5bGe5oCnXG4gICAqL1xuICBwYXRjaEdsb2JhbFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogR2xvYmFsUmVzb3VyY2VQYXRjaFBhcmFtczxULCBSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX3BhdGNoUmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDliKDpmaQgR2xvYmFsIOmbhue+pOWNleS4qui1hOa6kFxuICAgKi9cbiAgZGVsZXRlR2xvYmFsUmVzb3VyY2U8XG4gICAgUyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSA9IFN0YXR1cyxcbiAgICBUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlID0gUyBleHRlbmRzIFN0YXR1cyA/IEt1YmVybmV0ZXNSZXNvdXJjZSA6IFMsXG4gID4ocGFyYW1zOiBHbG9iYWxSZXNvdXJjZURlbGV0ZVBhcmFtczxULCBSPikge1xuICAgIHJldHVybiB0aGlzLl9kZWxldGVSZXNvdXJjZTxTLCBUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOiOt+WPluS4muWKoembhue+pOWNleS4qui1hOa6kOWvueixoVxuICAgKi9cbiAgZ2V0UmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4ocGFyYW1zOiBFcmVidXNSZXNvdXJjZVBhcmFtczxSPikge1xuICAgIHJldHVybiB0aGlzLl9nZXRSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOebkeWQrOS4muWKoembhue+pOWNleS4qui1hOa6kOWvueixoVxuICAgKi9cbiAgd2F0Y2hSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFdhdGNoRXJlYnVzUmVzb3VyY2VQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiBET1dOR1JBREVfV0FUQ0hfRU5BQkxFRCAmJiBwYXJhbXMuZG93bmdyYWRlUG9sbGluZ1xuICAgICAgPyBjcmVhdGVQb2xsT2JzZXJ2YWJsZTxUPihcbiAgICAgICAgICB0aGlzLl9nZXRSZXNvdXJjZTxUPihwYXJhbXMpLFxuICAgICAgICAgIHRoaXMuX2dldERvd25ncmFkZVBvbGxpbmcocGFyYW1zKSxcbiAgICAgICAgKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKChhLCBiKSA9PiBpc0VxdWFsKGEsIGIpKSlcbiAgICAgIDogdGhpcy5fd2F0Y2hSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOebkeWQrOi1hOa6kOWIl+ihqOWPmOWMllxuICAgKi9cbiAgd2F0Y2hSZXNvdXJjZUNoYW5nZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBzZWVkVmVyc2lvbjogc3RyaW5nLFxuICAgIHBhcmFtczogV2F0Y2hFcmVidXNSZXNvdXJjZUxpc3RQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9rZWVwV2F0Y2hSZXNvdXJjZUNoYW5nZTxUPihzZWVkVmVyc2lvbiwgcGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDojrflj5bkuJrliqHpm4bnvqTotYTmupDlr7nosaHliJfooajvvIzljIXlkKvliIbpobXkv6Hmga9cbiAgICovXG4gIGdldFJlc291cmNlTGlzdDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEVyZWJ1c1Jlc291cmNlTGlzdFBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldFJlc291cmNlTGlzdDxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWIm+W7uuS4muWKoembhue+pOi1hOa6kFxuICAgKi9cbiAgcG9zdFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogRXJlYnVzUmVzb3VyY2VXcml0ZVBhcmFtczxULCBSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Bvc3RSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWujOaVtOimhuebluabtOaWsOS4muWKoembhue+pOWNleS4qui1hOa6kOWvueixoVxuICAgKi9cbiAgcHV0UmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBFcmVidXNSZXNvdXJjZVdyaXRlUGFyYW1zPFQsIFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fcHV0UmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDlop7ph4/mm7TmlrDkuJrliqHpm4bnvqTljZXkuKrotYTmupDlr7nosaHnmoTpg6jliIblsZ7mgKdcbiAgICovXG4gIHBhdGNoUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBFcmVidXNSZXNvdXJjZVBhdGNoUGFyYW1zPFQsIFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fcGF0Y2hSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWIoOmZpOS4muWKoembhue+pOWNleS4qui1hOa6kFxuICAgKi9cbiAgZGVsZXRlUmVzb3VyY2U8XG4gICAgUyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSA9IFN0YXR1cyxcbiAgICBUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlID0gUyBleHRlbmRzIFN0YXR1cyA/IEt1YmVybmV0ZXNSZXNvdXJjZSA6IFMsXG4gID4ocGFyYW1zOiBFcmVidXNSZXNvdXJjZURlbGV0ZVBhcmFtczxULCBSPikge1xuICAgIGlmICgnbmFtZScgaW4gcGFyYW1zICYmICFwYXJhbXMubmFtZSkge1xuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKCdkZWxldGUgcmVzb3VyY2UgbmVlZCByZXNvdXJjZSBuYW1lJykpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fZGVsZXRlUmVzb3VyY2U8UywgVD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDmibnph4/liKDpmaTkuJrliqHpm4bnvqTnmoTotYTmupBcbiAgICovXG4gIGJhdGNoRGVsZXRlUmVzb3VyY2U8XG4gICAgUyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSA9IFN0YXR1cyxcbiAgICBUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlID0gUyBleHRlbmRzIFN0YXR1cyA/IEt1YmVybmV0ZXNSZXNvdXJjZSA6IFMsXG4gID4ocGFyYW1zOiBFcmVidXNSZXNvdXJjZUJhdGNoRGVsZXRlUGFyYW1zPFI+KSB7XG4gICAgcmV0dXJuIHRoaXMuX2JhdGNoRGVsZXRlUmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9nZXRSZXNvdXJjZURlZmluaXRpb24ocGFyYW1zOiBSZXNvdXJjZUFwaVBhcmFtczxSPikge1xuICAgIGNvbnN0IGRlZmluaXRpb24gPSB0aGlzLms4c0FwaVJlc291cmNlLmdldERlZmluaXRpb24oXG4gICAgICAnZGVmaW5pdGlvbicgaW4gcGFyYW1zICYmIHBhcmFtcy5kZWZpbml0aW9uXG4gICAgICAgID8gcGFyYW1zLmRlZmluaXRpb25cbiAgICAgICAgOiAndHlwZScgaW4gcGFyYW1zICYmIHBhcmFtcy50eXBlLFxuICAgICk7XG4gICAgaWYgKCdyZXNvdXJjZScgaW4gcGFyYW1zICYmIHBhcmFtcy5yZXNvdXJjZSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZTogZGVmaW5pdGlvbi50eXBlLFxuICAgICAgICAuLi5nZXRBcGlQcmVmaXhQYXJ0cyhwYXJhbXMucmVzb3VyY2UuYXBpVmVyc2lvbiksXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gZGVmaW5pdGlvbjtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9nZXRBcGlQYXRoKHBhcmFtczogUmVzb3VyY2VBcGlQYXJhbXM8Uj4sIGlnbm9yZU5hbWUgPSBmYWxzZSkge1xuICAgIHJldHVybiB0aGlzLms4c0FwaVJlc291cmNlLmdldEFwaVBhdGgoe1xuICAgICAgLi4udGhpcy5fZ2V0UmVzb3VyY2VEZWZpbml0aW9uKHBhcmFtcyksXG4gICAgICBjbHVzdGVyOiAnY2x1c3RlcicgaW4gcGFyYW1zICYmIHBhcmFtcy5jbHVzdGVyLFxuICAgICAgbmFtZXNwYWNlOiB0aGlzLl9nZXROYW1lc3BhY2UocGFyYW1zKSxcbiAgICAgIG5hbWU6IGlnbm9yZU5hbWUgPyBudWxsIDogdGhpcy5fZ2V0TmFtZShwYXJhbXMpLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2dldE5hbWVzcGFjZShwYXJhbXM6IFJlc291cmNlQXBpUGFyYW1zPFI+KSB7XG4gICAgcmV0dXJuICduYW1lc3BhY2UnIGluIHBhcmFtcyAmJiBwYXJhbXMubmFtZXNwYWNlXG4gICAgICA/IHBhcmFtcy5uYW1lc3BhY2VcbiAgICAgIDogJ25hbWVzcGFjZWQnIGluIHBhcmFtcyAmJiBwYXJhbXMubmFtZXNwYWNlZFxuICAgICAgPyB0aGlzLmdsb2JhbE5hbWVzcGFjZVxuICAgICAgOiAncmVzb3VyY2UnIGluIHBhcmFtcyAmJiBnZXQocGFyYW1zLnJlc291cmNlLCBbTUVUQURBVEEsIE5BTUVTUEFDRV0pO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2dldE5hbWUocGFyYW1zOiBSZXNvdXJjZUFwaVBhcmFtczxSPikge1xuICAgIHJldHVybiAnbmFtZScgaW4gcGFyYW1zXG4gICAgICA/IHBhcmFtcy5uYW1lXG4gICAgICA6ICdyZXNvdXJjZScgaW4gcGFyYW1zICYmIGdldChwYXJhbXMucmVzb3VyY2UsIFtNRVRBREFUQSwgTkFNRV0pO1xuICB9XG5cbiAgLyoqXG4gICAqIGs4cyBsaXN0IGFwaSDov5Tlm57nmoTnu5Pmnpzph4zvvIxpdGVtcyDnvLrlpLEga2luZCDlkowgYXBpVmVyc2lvbiDlrZfmrrVcbiAgICog6KeE5YiZ5aaCIFNlcnZpY2Ug57G75Z6L5a+55bqUIGtpbmQ6IFNlcnZpY2VMaXN077yM5Y675o6J5pyA5ZCO5Zub5Liq5a2X56ym5Y+v5b6X5Yiw6LWE5rqQ55qEIGtpbmRcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIF9nZXROb3JtYWxpemVkTGlzdDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlTGlzdD4obGlzdDogVCk6IFQge1xuICAgIGNvbnN0IHsgYXBpVmVyc2lvbiwgaXRlbXMgfSA9IGxpc3Q7XG5cbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4ubGlzdCxcbiAgICAgICAgaXRlbXM6IFtdLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdCBraW5kID0gbGlzdC5raW5kLnNsaWNlKDAsIC00KTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ubGlzdCxcbiAgICAgIGl0ZW1zOiBpdGVtcy5tYXAoaXRlbSA9PiAoe1xuICAgICAgICAvLyBrZXkg6aG65bqP5Lya5b2x5ZON6L2sIHlhbWwg5ZCO55qE6aG65bqPXG4gICAgICAgIGtpbmQsXG4gICAgICAgIGFwaVZlcnNpb24sXG4gICAgICAgIC4uLml0ZW0sXG4gICAgICB9KSksXG4gICAgfTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9nZXRSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFJlc291cmNlUmVhZFBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8VD4odGhpcy5fZ2V0QXBpUGF0aChwYXJhbXMpLCB7XG4gICAgICBoZWFkZXJzOiB0aGlzLl9nZXRIZWFkZXJzKHBhcmFtcyksXG4gICAgfSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfd2F0Y2hSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFdhdGNoUmVzb3VyY2VSZWFkUGFyYW1zPFI+LFxuICApIHtcbiAgICBjb25zdCBkZXRhaWxQYXJhbXMgPSB7XG4gICAgICAuLi5wYXJhbXMsXG4gICAgICBxdWVyeVBhcmFtczogeyBmaWVsZFNlbGVjdG9yOiAnbWV0YWRhdGEubmFtZT0nICsgdGhpcy5fZ2V0TmFtZShwYXJhbXMpIH0sXG4gICAgfTtcbiAgICBjb25zdCBkZWZhdWx0UmV0cnkgPSB7XG4gICAgICBjb3VudDogUkVUUllfQ09VTlQsXG4gICAgICBkZWxheTogUkVUUllfREVMQVksXG4gICAgfTtcbiAgICBjb25zdCB7IGNvdW50LCBkZWxheTogZGVsYXlUaW1lIH0gPVxuICAgICAgcGFyYW1zLnJldHJ5ID09PSB0cnVlXG4gICAgICAgID8ge1xuICAgICAgICAgICAgLi4uZGVmYXVsdFJldHJ5LFxuICAgICAgICAgICAgY291bnQ6IEluZmluaXR5LFxuICAgICAgICAgIH1cbiAgICAgICAgOiB7XG4gICAgICAgICAgICAuLi5kZWZhdWx0UmV0cnksXG4gICAgICAgICAgICAuLi5wYXJhbXMucmV0cnksXG4gICAgICAgICAgfTtcbiAgICBsZXQgc29GYXIgPSAwO1xuICAgIHJldHVybiB0aGlzLl9nZXRSZXNvdXJjZUxpc3Q8VD4oZGV0YWlsUGFyYW1zKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKGxpc3QgPT5cbiAgICAgICAgdGhpcy5fa2VlcFdhdGNoUmVzb3VyY2VDaGFuZ2U8VD4oXG4gICAgICAgICAgbGlzdC5tZXRhZGF0YS5yZXNvdXJjZVZlcnNpb24sXG4gICAgICAgICAgZGV0YWlsUGFyYW1zLFxuICAgICAgICApLnBpcGUoXG4gICAgICAgICAgZmlsdGVyKGlzUmVzb3VyY2VFdmVudCksXG4gICAgICAgICAgbWFwKHJlcyA9PiAocmVzLnR5cGUgPT09IFdhdGNoRXZlbnQuRGVsZXRlZCA/IG51bGwgOiByZXMub2JqZWN0KSksXG4gICAgICAgICAgc3RhcnRXaXRoKGxpc3QuaXRlbXNbMF0gPz8gbnVsbCksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgcmV0cnlXaGVuKGVyciQgPT5cbiAgICAgICAgZXJyJC5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcChlcnIgPT4ge1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gV2F0Y2hFdmVudC5FcnJvciB8fCAoY291bnQgJiYgc29GYXIrKyA8IGNvdW50KSkge1xuICAgICAgICAgICAgICByZXR1cm4gb2YoZXJyKS5waXBlKGRlbGF5KGNvdW50ID8gZGVsYXlUaW1lIDogMCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9rZWVwV2F0Y2hSZXNvdXJjZUNoYW5nZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBzZWVkVmVyc2lvbjogc3RyaW5nLFxuICAgIHBhcmFtczogV2F0Y2hSZXNvdXJjZUxpc3RSZWFkUGFyYW1zPFI+LFxuICApIHtcbiAgICBsZXQgcmVzb3VyY2VWZXJzaW9uID0gc2VlZFZlcnNpb247XG4gICAgbGV0IHN1YjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3Qgd2F0Y2gkID0gbmV3IE9ic2VydmFibGU8V2F0Y2hBUElSZXNwb25zZTxUPj4ob2JzZXJ2ZXIgPT4ge1xuICAgICAgY29uc3QgdW5zdWJzY3JpYmUgPSAoKSA9PiB7XG4gICAgICAgIGlmIChzdWIgJiYgIXN1Yi5jbG9zZWQpIHtcbiAgICAgICAgICBzdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgY29uc3Qgd2F0Y2ggPSAoKSA9PiB7XG4gICAgICAgIHVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHN1YiA9IHRoaXMuX3dhdGNoUmVzb3VyY2VDaGFuZ2U8VD4oe1xuICAgICAgICAgIC4uLnBhcmFtcyxcbiAgICAgICAgICBxdWVyeVBhcmFtczogbm9ybWFsaXplUGFyYW1zKHtcbiAgICAgICAgICAgIC4uLnBhcmFtcy5xdWVyeVBhcmFtcyxcbiAgICAgICAgICAgIHdhdGNoOiBUUlVFLFxuICAgICAgICAgICAgYWxsb3dXYXRjaEJvb2ttYXJrczogVFJVRSxcbiAgICAgICAgICAgIHRpbWVvdXRTZWNvbmRzOiBTdHJpbmcoVElNRU9VVF9TRUNPTkRTKSxcbiAgICAgICAgICAgIHJlc291cmNlVmVyc2lvbixcbiAgICAgICAgICB9KSxcbiAgICAgICAgfSkuc3Vic2NyaWJlKHtcbiAgICAgICAgICBuZXh0KHJlcykge1xuICAgICAgICAgICAgaWYgKHJlcy50eXBlID09PSBXYXRjaEV2ZW50LkVycm9yKSB7XG4gICAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHJlcy50eXBlKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXNvdXJjZVZlcnNpb24gPSByZXMub2JqZWN0Lm1ldGFkYXRhLnJlc291cmNlVmVyc2lvbjtcbiAgICAgICAgICAgIG9ic2VydmVyLm5leHQocmVzKTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGVycm9yKGVycikge1xuICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZXJyKTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNvbXBsZXRlOiB3YXRjaCxcbiAgICAgICAgfSk7XG4gICAgICB9O1xuXG4gICAgICB3YXRjaCgpO1xuICAgICAgcmV0dXJuIHVuc3Vic2NyaWJlO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHBhcmFtcy5rZWVwYWxpdmVcbiAgICAgID8gd2F0Y2gkXG4gICAgICA6IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgIHRoaXMucGFnZVZpc2liaWxpdHkuZ2V0UGFnZVZpc2liaWxpdHkoKSxcbiAgICAgICAgICBwYXJhbXMuYWN0aXZlJCB8fCBvZih0cnVlKSxcbiAgICAgICAgXSkucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoKFt2aXNpYmxlLCBhY3RpdmVdKSA9PlxuICAgICAgICAgICAgdmlzaWJsZSAmJiBhY3RpdmUgPyB3YXRjaCQgOiBORVZFUixcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX3dhdGNoUmVzb3VyY2VDaGFuZ2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBSZXNvdXJjZUxpc3RSZWFkUGFyYW1zPFI+LFxuICApOiBPYnNlcnZhYmxlPFdhdGNoQVBJUmVzcG9uc2U8VD4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0KHRoaXMuX2dldEFwaVBhdGgocGFyYW1zLCB0cnVlKSwge1xuICAgICAgICByZXNwb25zZVR5cGU6ICd0ZXh0JyxcbiAgICAgICAgb2JzZXJ2ZTogJ2V2ZW50cycsXG4gICAgICAgIHJlcG9ydFByb2dyZXNzOiB0cnVlLFxuICAgICAgICBoZWFkZXJzOiB0aGlzLl9nZXRIZWFkZXJzKHBhcmFtcyksXG4gICAgICAgIHBhcmFtczogcGFyYW1zLnF1ZXJ5UGFyYW1zLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoZXYgPT4gZXYudHlwZSA9PT0gSHR0cEV2ZW50VHlwZS5Eb3dubG9hZFByb2dyZXNzKSxcbiAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICh7IHBhcnRpYWxUZXh0IH06IEh0dHBEb3dubG9hZFByb2dyZXNzRXZlbnQpID0+ICEhcGFydGlhbFRleHQ/LnRyaW0oKSxcbiAgICAgICAgKSxcbiAgICAgICAgY29uY2F0TWFwKCh7IHBhcnRpYWxUZXh0IH0pID0+XG4gICAgICAgICAgZnJvbShcbiAgICAgICAgICAgIHJlZHVjZVdhdGNoRXZlbnRzKFxuICAgICAgICAgICAgICBwYXJzZUpTT05TdHJlYW08V2F0Y2hBUElSZXNwb25zZTxUPj4ocGFydGlhbFRleHQpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9nZXRSZXNvdXJjZUxpc3Q8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBSZXNvdXJjZUxpc3RSZWFkUGFyYW1zPFI+LFxuICApIHtcbiAgICAvLyDljIXlkKsga2V5d29yZCDliY3nvIDpnIDopoHliqDkuIrliY3nvIAgJ2FjcC92MS9yZXNvdXJjZXMvc2VhcmNoJ1xuICAgIC8vIOWPguiAgyBodHRwOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD00ODczMTA1OFxuICAgIGxldCB1cmwgPSB0aGlzLl9nZXRBcGlQYXRoKHBhcmFtcywgdHJ1ZSk7XG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB7IC4uLnBhcmFtcy5xdWVyeVBhcmFtcyB9O1xuICAgIGlmIChxdWVyeVBhcmFtcy5rZXl3b3JkKSB7XG4gICAgICB1cmwgPSB1cmwucmVwbGFjZShBUElfR0FURVdBWSwgYCR7QVBJX0dBVEVXQVl9JHtTRUFSQ0hfVVJMX1BSRUZJWH1gKTtcbiAgICAgIGlmICghcXVlcnlQYXJhbXMuZmllbGQpIHtcbiAgICAgICAgcXVlcnlQYXJhbXMuZmllbGQgPSAnbWV0YWRhdGEubmFtZSc7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxUPj4odXJsLCB7XG4gICAgICAgIHBhcmFtczogcXVlcnlQYXJhbXMsXG4gICAgICAgIGhlYWRlcnM6IHRoaXMuX2dldEhlYWRlcnMocGFyYW1zLCB0cnVlKSxcbiAgICAgIH0pXG4gICAgICAucGlwZShtYXAodGhpcy5fZ2V0Tm9ybWFsaXplZExpc3QpKTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9wb3N0UmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBSZXNvdXJjZVdyaXRlUGFyYW1zPFIsIFQ+LFxuICApIHtcbiAgICBpZiAoXG4gICAgICAoJ25hbWVzcGFjZScgaW4gcGFyYW1zICYmIHBhcmFtcy5uYW1lc3BhY2UpIHx8XG4gICAgICAoJ25hbWVzcGFjZWQnIGluIHBhcmFtcyAmJiBwYXJhbXMubmFtZXNwYWNlZClcbiAgICApIHtcbiAgICAgIGNvbnN0IHJlc291cmNlTmFtZXNwYWNlID0gZ2V0KHBhcmFtcy5yZXNvdXJjZSwgW01FVEFEQVRBLCBOQU1FU1BBQ0VdKTtcbiAgICAgIGlmICghcmVzb3VyY2VOYW1lc3BhY2UpIHtcbiAgICAgICAgc2V0KFxuICAgICAgICAgIHBhcmFtcy5yZXNvdXJjZSxcbiAgICAgICAgICBbTUVUQURBVEEsIE5BTUVTUEFDRV0sXG4gICAgICAgICAgcGFyYW1zLm5hbWVzcGFjZSB8fCB0aGlzLmdsb2JhbE5hbWVzcGFjZSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFQ+KHRoaXMuX2dldEFwaVBhdGgocGFyYW1zLCB0cnVlKSwgcGFyYW1zLnJlc291cmNlLCB7XG4gICAgICBoZWFkZXJzOiB0aGlzLl9nZXRIZWFkZXJzKHBhcmFtcyksXG4gICAgfSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfcHV0UmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBSZXNvdXJjZVdyaXRlUGFyYW1zPFIsIFQ+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dDxUPih0aGlzLl9nZXRBcGlQYXRoKHBhcmFtcyksIHBhcmFtcy5yZXNvdXJjZSwge1xuICAgICAgaGVhZGVyczogdGhpcy5fZ2V0SGVhZGVycyhwYXJhbXMpLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX3BhdGNoUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBSZXNvdXJjZVBhdGNoUGFyYW1zPFIsIFQ+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBhdGNoPFQ+KHRoaXMuX2dldEFwaVBhdGgocGFyYW1zKSwgcGFyYW1zLnBhcnQsIHtcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgLi4udGhpcy5fZ2V0SGVhZGVycyhwYXJhbXMpLFxuICAgICAgICAnQ29udGVudC1UeXBlJzogcGFyYW1zLm9wZXJhdGlvbiB8fCBQYXRjaE9wZXJhdGlvbi5NZXJnZSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfZGVsZXRlUmVzb3VyY2U8XG4gICAgUyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSxcbiAgICBUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlLFxuICA+KHBhcmFtczogUmVzb3VyY2VEZWxldGVQYXJhbXM8UiwgVD4pIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnJlcXVlc3Q8Uz4oJ2RlbGV0ZScsIHRoaXMuX2dldEFwaVBhdGgocGFyYW1zKSwge1xuICAgICAgaGVhZGVyczogdGhpcy5fZ2V0SGVhZGVycyhwYXJhbXMpLFxuICAgICAgYm9keTogcGFyYW1zLmJvZHksXG4gICAgfSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfYmF0Y2hEZWxldGVSZXNvdXJjZTxTIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEVyZWJ1c1Jlc291cmNlQmF0Y2hEZWxldGVQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLmh0dHAucmVxdWVzdDxTPignZGVsZXRlJywgdGhpcy5fZ2V0QXBpUGF0aChwYXJhbXMpLCB7XG4gICAgICBoZWFkZXJzOiB0aGlzLl9nZXRIZWFkZXJzKHBhcmFtcyksXG4gICAgICBib2R5OiBwYXJhbXMuYm9keSxcbiAgICAgIHBhcmFtczogcGFyYW1zLnF1ZXJ5UGFyYW1zLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgcmVhZG9ubHkgX2dldEhlYWRlcnMgPSAoXG4gICAgeyBub3RpZnlPbkVycm9yLCBvbmx5TWV0YWRhdGEsIGN1c3RvbUFjY2VwdCwgY3J5cHRvIH06IEFwaUJhc2VQYXJhbXM8Uj4sXG4gICAgaXNMaXN0PzogYm9vbGVhbixcbiAgKSA9PiB7XG4gICAgY29uc3QgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgc3RyaW5nW10+ID0ge307XG4gICAgaWYgKHR5cGVvZiBub3RpZnlPbkVycm9yID09PSAnYm9vbGVhbicpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oXG4gICAgICAgIGhlYWRlcnMsXG4gICAgICAgIG5vdGlmeU9uRXJyb3IgPyBOT1RJRllfT05fRVJST1JfSEVBREVSUyA6IE5PVF9OT1RJRllfT05fRVJST1JfSEVBREVSUyxcbiAgICAgICk7XG4gICAgfVxuICAgIGlmIChjcnlwdG8pIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oaGVhZGVycywge1xuICAgICAgICBbQ1JZUFRPX0hFQURFUl9LRVldOiBjcnlwdG8sXG4gICAgICB9KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20va3ViZXJuZXRlcy9kZXNpZ24tcHJvcG9zYWxzLWFyY2hpdmUvYmxvYi9tYWluL2FwaS1tYWNoaW5lcnkvYWx0ZXJuYXRlLWFwaS1yZXByZXNlbnRhdGlvbnMubWRcbiAgICAgKi9cbiAgICBpZiAob25seU1ldGFkYXRhKSB7XG4gICAgICBPYmplY3QuYXNzaWduKGhlYWRlcnMsIGdldE1ldGFkYXRhSGVhZGVycyhpc0xpc3QsIGN1c3RvbUFjY2VwdCkpO1xuICAgIH1cbiAgICByZXR1cm4gaGVhZGVycztcbiAgfTtcblxuICBwcml2YXRlIF9nZXREb3duZ3JhZGVQb2xsaW5nKHtcbiAgICBrZWVwYWxpdmUsXG4gICAgZG93bmdyYWRlUG9sbGluZyxcbiAgfTogV2F0Y2hBcGlQYXJhbXMpIHtcbiAgICByZXR1cm4ga2VlcGFsaXZlXG4gICAgICA/IGRvd25ncmFkZVBvbGxpbmdcbiAgICAgIDogdGhpcy5wYWdlVmlzaWJpbGl0eVxuICAgICAgICAgIC5nZXRQYWdlVmlzaWJpbGl0eSgpXG4gICAgICAgICAgLnBpcGUobWFwKHZpc2libGUgPT4gKHZpc2libGUgPyBkb3duZ3JhZGVQb2xsaW5nIDogMCkpKTtcbiAgfVxufVxuIl19
|
|
393
|
+
}] }], null); })();
|
|
394
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9rOHMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUNMLFVBQVUsRUFFVixhQUFhLEdBQ2QsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFFVixhQUFhLEVBQ2IsSUFBSSxFQUNKLEVBQUUsRUFDRixVQUFVLEVBQ1YsTUFBTSxFQUNOLEdBQUcsRUFDSCxTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsRUFDVCxTQUFTLEVBQ1QsS0FBSyxFQUNMLG9CQUFvQixHQUNyQixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFDTCxXQUFXLEVBQ1gsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2QiwyQkFBMkIsRUFDM0IsSUFBSSxHQUNMLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbEUsT0FBTyxFQUNMLGlCQUFpQixHQUlsQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTdELE9BQU8sRUFDTCxpQkFBaUIsRUFD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QUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEUsQ0FBQzs4RUE5ZlUsYUFBYSx3SEFLZCxzQkFBc0I7dUVBTHJCLGFBQWEsV0FBYixhQUFhLG1CQURBLE1BQU07O2lGQUNuQixhQUFhO2NBRHpCLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O3NCQU03QixNQUFNO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIGFwaVxuICovXG5cbmltcG9ydCB7XG4gIEh0dHBDbGllbnQsXG4gIEh0dHBEb3dubG9hZFByb2dyZXNzRXZlbnQsXG4gIEh0dHBFdmVudFR5cGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0LCBzZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtcbiAgTkVWRVIsXG4gIE9ic2VydmFibGUsXG4gIFN1YnNjcmlwdGlvbixcbiAgY29tYmluZUxhdGVzdCxcbiAgZnJvbSxcbiAgb2YsXG4gIHRocm93RXJyb3IsXG4gIGZpbHRlcixcbiAgbWFwLFxuICByZXRyeVdoZW4sXG4gIHN0YXJ0V2l0aCxcbiAgc3dpdGNoTWFwLFxuICBjb25jYXRNYXAsXG4gIGRlbGF5LFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIEFQSV9HQVRFV0FZLFxuICBET1dOR1JBREVfV0FUQ0hfRU5BQkxFRCxcbiAgTk9USUZZX09OX0VSUk9SX0hFQURFUlMsXG4gIE5PVF9OT1RJRllfT05fRVJST1JfSEVBREVSUyxcbiAgVFJVRSxcbn0gZnJvbSAnLi4vY29yZS9jb25zdGFudHMvY29uc3RhbnRzJztcbmltcG9ydCB7IFRPS0VOX0dMT0JBTF9OQU1FU1BBQ0UgfSBmcm9tICcuLi9jb3JlL2NvbnN0YW50cy90b2tlbnMnO1xuaW1wb3J0IHtcbiAgQ1JZUFRPX0hFQURFUl9LRVksXG4gIEt1YmVybmV0ZXNSZXNvdXJjZSxcbiAgS3ViZXJuZXRlc1Jlc291cmNlTGlzdCxcbiAgU3RhdHVzLFxufSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgTUVUQURBVEEsIE5BTUUsIE5BTUVTUEFDRSB9IGZyb20gJy4uL2NvcmUvc2VydmljZXMvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBjcmVhdGVQb2xsT2JzZXJ2YWJsZSB9IGZyb20gJy4uL2NvcmUvdXRpbHMvb2JzZXJ2YWJsZSc7XG5pbXBvcnQgeyBpc0VxdWFsLCBwYXJzZUpTT05TdHJlYW0gfSBmcm9tICcuLi9jb3JlL3V0aWxzL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgbm9ybWFsaXplUGFyYW1zIH0gZnJvbSAnLi4vazhzLXJlc291cmNlLWxpc3QvdXRpbHMnO1xuXG5pbXBvcnQge1xuICBnZXRBcGlQcmVmaXhQYXJ0cyxcbiAgZ2V0TWV0YWRhdGFIZWFkZXJzLFxuICBpc1Jlc291cmNlRXZlbnQsXG4gIHJlZHVjZVdhdGNoRXZlbnRzLFxufSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IHsgSzhzQXBpUmVzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi9rOHMtYXBpLXJlc291cmNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFnZVZpc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi9wYWdlLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQge1xuICBBcGlCYXNlUGFyYW1zLFxuICBFcmVidXNSZXNvdXJjZURlbGV0ZVBhcmFtcyxcbiAgRXJlYnVzUmVzb3VyY2VMaXN0UGFyYW1zLFxuICBFcmVidXNSZXNvdXJjZVBhcmFtcyxcbiAgRXJlYnVzUmVzb3VyY2VQYXRjaFBhcmFtcyxcbiAgRXJlYnVzUmVzb3VyY2VXcml0ZVBhcmFtcyxcbiAgR2xvYmFsUmVzb3VyY2VEZWxldGVQYXJhbXMsXG4gIEdsb2JhbFJlc291cmNlTGlzdFBhcmFtcyxcbiAgR2xvYmFsUmVzb3VyY2VQYXJhbXMsXG4gIEdsb2JhbFJlc291cmNlUGF0Y2hQYXJhbXMsXG4gIEdsb2JhbFJlc291cmNlV3JpdGVQYXJhbXMsXG4gIFBhdGNoT3BlcmF0aW9uLFxuICBSZXNvdXJjZUFwaVBhcmFtcyxcbiAgUmVzb3VyY2VEZWxldGVQYXJhbXMsXG4gIFJlc291cmNlTGlzdFJlYWRQYXJhbXMsXG4gIFJlc291cmNlUGF0Y2hQYXJhbXMsXG4gIFJlc291cmNlUmVhZFBhcmFtcyxcbiAgUmVzb3VyY2VXcml0ZVBhcmFtcyxcbiAgV2F0Y2hBUElSZXNwb25zZSxcbiAgV2F0Y2hBcGlQYXJhbXMsXG4gIFdhdGNoRXJlYnVzUmVzb3VyY2VMaXN0UGFyYW1zLFxuICBXYXRjaEVyZWJ1c1Jlc291cmNlUGFyYW1zLFxuICBXYXRjaEV2ZW50LFxuICBXYXRjaEdsb2JhbFJlc291cmNlTGlzdFBhcmFtcyxcbiAgV2F0Y2hHbG9iYWxSZXNvdXJjZVBhcmFtcyxcbiAgV2F0Y2hSZXNvdXJjZUxpc3RSZWFkUGFyYW1zLFxuICBXYXRjaFJlc291cmNlUmVhZFBhcmFtcyxcbiAgRXJlYnVzUmVzb3VyY2VCYXRjaERlbGV0ZVBhcmFtcyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIOWQjeensOWJjee8gCBFcmVidXMg5Y+C6ICDIGh0dHA6Ly9jb25mbHVlbmNlLmFsYXVkYS5jbi9wYWdlcy92aWV3cGFnZS5hY3Rpb24/cGFnZUlkPTQ0NjYzNDg0IOaMhyAva3ViZXJuZXRlcy8g5byA5aS055qEIGFwaSDnu4Tku7ZcblxuZXhwb3J0IGNvbnN0IFRJTUVPVVRfU0VDT05EUyA9IDU5O1xuZXhwb3J0IGNvbnN0IFNFQVJDSF9VUkxfUFJFRklYID0gJy9hY3AvdjEvcmVzb3VyY2VzL3NlYXJjaCc7XG5cbmNvbnN0IFJFVFJZX0RFTEFZID0gNTAwMDtcblxuY29uc3QgUkVUUllfQ09VTlQgPSAzO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEs4c0FwaVNlcnZpY2U8UiBleHRlbmRzIHN0cmluZyA9IHN0cmluZz4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSByZWFkb25seSBrOHNBcGlSZXNvdXJjZTogSzhzQXBpUmVzb3VyY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGFnZVZpc2liaWxpdHk6IFBhZ2VWaXNpYmlsaXR5U2VydmljZSxcbiAgICBASW5qZWN0KFRPS0VOX0dMT0JBTF9OQU1FU1BBQ0UpIHByaXZhdGUgcmVhZG9ubHkgZ2xvYmFsTmFtZXNwYWNlOiBzdHJpbmcsXG4gICkge31cblxuICAvKipcbiAgICog6I635Y+WIEdsb2JhbCDpm4bnvqTljZXkuKrotYTmupDlr7nosaFcbiAgICovXG4gIGdldEdsb2JhbFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogR2xvYmFsUmVzb3VyY2VQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9nZXRSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOebkeWQrCBHbG9iYWwg6ZuG576k5Y2V5Liq6LWE5rqQ5a+56LGhXG4gICAqL1xuICB3YXRjaEdsb2JhbFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogV2F0Y2hHbG9iYWxSZXNvdXJjZVBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIERPV05HUkFERV9XQVRDSF9FTkFCTEVEICYmIHBhcmFtcy5kb3duZ3JhZGVQb2xsaW5nXG4gICAgICA/IGNyZWF0ZVBvbGxPYnNlcnZhYmxlPFQ+KFxuICAgICAgICAgIHRoaXMuZ2V0R2xvYmFsUmVzb3VyY2UocGFyYW1zKSxcbiAgICAgICAgICB0aGlzLl9nZXREb3duZ3JhZGVQb2xsaW5nKHBhcmFtcyksXG4gICAgICAgICkucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgoYSwgYikgPT4gaXNFcXVhbChhLCBiKSkpXG4gICAgICA6IHRoaXMuX3dhdGNoUmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDnm5HlkKwgR2xvYmFsIOmbhue+pOi1hOa6kOWIl+ihqOWPmOWMllxuICAgKi9cbiAgd2F0Y2hHbG9iYWxSZXNvdXJjZUNoYW5nZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBzZWVkVmVyc2lvbjogc3RyaW5nLFxuICAgIHBhcmFtczogV2F0Y2hHbG9iYWxSZXNvdXJjZUxpc3RQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9rZWVwV2F0Y2hSZXNvdXJjZUNoYW5nZTxUPihzZWVkVmVyc2lvbiwgcGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDojrflj5YgR2xvYmFsIOmbhue+pOi1hOa6kOWvueixoeWIl+ihqO+8jOWMheWQq+WIhumhteS/oeaBr1xuICAgKi9cbiAgZ2V0R2xvYmFsUmVzb3VyY2VMaXN0PFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogR2xvYmFsUmVzb3VyY2VMaXN0UGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0UmVzb3VyY2VMaXN0PFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5Yib5bu6IEdsb2JhbCDpm4bnvqTotYTmupBcbiAgICovXG4gIHBvc3RHbG9iYWxSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEdsb2JhbFJlc291cmNlV3JpdGVQYXJhbXM8VCwgUj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9wb3N0UmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDlrozmlbTopobnm5bmm7TmlrAgR2xvYmFsIOmbhue+pOWNleS4qui1hOa6kOWvueixoVxuICAgKi9cbiAgcHV0R2xvYmFsUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBHbG9iYWxSZXNvdXJjZVdyaXRlUGFyYW1zPFQsIFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fcHV0UmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDlop7ph4/mm7TmlrAgR2xvYmFsIOmbhue+pOWNleS4qui1hOa6kOWvueixoeeahOmDqOWIhuWxnuaAp1xuICAgKi9cbiAgcGF0Y2hHbG9iYWxSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEdsb2JhbFJlc291cmNlUGF0Y2hQYXJhbXM8VCwgUj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9wYXRjaFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5Yig6ZmkIEdsb2JhbCDpm4bnvqTljZXkuKrotYTmupBcbiAgICovXG4gIGRlbGV0ZUdsb2JhbFJlc291cmNlPFxuICAgIFMgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UgPSBTdGF0dXMsXG4gICAgVCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSA9IFMgZXh0ZW5kcyBTdGF0dXMgPyBLdWJlcm5ldGVzUmVzb3VyY2UgOiBTLFxuICA+KHBhcmFtczogR2xvYmFsUmVzb3VyY2VEZWxldGVQYXJhbXM8VCwgUj4pIHtcbiAgICByZXR1cm4gdGhpcy5fZGVsZXRlUmVzb3VyY2U8UywgVD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDojrflj5bkuJrliqHpm4bnvqTljZXkuKrotYTmupDlr7nosaFcbiAgICovXG4gIGdldFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHBhcmFtczogRXJlYnVzUmVzb3VyY2VQYXJhbXM8Uj4pIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0UmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDnm5HlkKzkuJrliqHpm4bnvqTljZXkuKrotYTmupDlr7nosaFcbiAgICovXG4gIHdhdGNoUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBXYXRjaEVyZWJ1c1Jlc291cmNlUGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gRE9XTkdSQURFX1dBVENIX0VOQUJMRUQgJiYgcGFyYW1zLmRvd25ncmFkZVBvbGxpbmdcbiAgICAgID8gY3JlYXRlUG9sbE9ic2VydmFibGU8VD4oXG4gICAgICAgICAgdGhpcy5fZ2V0UmVzb3VyY2U8VD4ocGFyYW1zKSxcbiAgICAgICAgICB0aGlzLl9nZXREb3duZ3JhZGVQb2xsaW5nKHBhcmFtcyksXG4gICAgICAgICkucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgoYSwgYikgPT4gaXNFcXVhbChhLCBiKSkpXG4gICAgICA6IHRoaXMuX3dhdGNoUmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDnm5HlkKzotYTmupDliJfooajlj5jljJZcbiAgICovXG4gIHdhdGNoUmVzb3VyY2VDaGFuZ2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgc2VlZFZlcnNpb246IHN0cmluZyxcbiAgICBwYXJhbXM6IFdhdGNoRXJlYnVzUmVzb3VyY2VMaXN0UGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fa2VlcFdhdGNoUmVzb3VyY2VDaGFuZ2U8VD4oc2VlZFZlcnNpb24sIHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog6I635Y+W5Lia5Yqh6ZuG576k6LWE5rqQ5a+56LGh5YiX6KGo77yM5YyF5ZCr5YiG6aG15L+h5oGvXG4gICAqL1xuICBnZXRSZXNvdXJjZUxpc3Q8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBFcmVidXNSZXNvdXJjZUxpc3RQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9nZXRSZXNvdXJjZUxpc3Q8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDliJvlu7rkuJrliqHpm4bnvqTotYTmupBcbiAgICovXG4gIHBvc3RSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEVyZWJ1c1Jlc291cmNlV3JpdGVQYXJhbXM8VCwgUj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9wb3N0UmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDlrozmlbTopobnm5bmm7TmlrDkuJrliqHpm4bnvqTljZXkuKrotYTmupDlr7nosaFcbiAgICovXG4gIHB1dFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogRXJlYnVzUmVzb3VyY2VXcml0ZVBhcmFtczxULCBSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX3B1dFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5aKe6YeP5pu05paw5Lia5Yqh6ZuG576k5Y2V5Liq6LWE5rqQ5a+56LGh55qE6YOo5YiG5bGe5oCnXG4gICAqL1xuICBwYXRjaFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogRXJlYnVzUmVzb3VyY2VQYXRjaFBhcmFtczxULCBSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX3BhdGNoUmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDliKDpmaTkuJrliqHpm4bnvqTljZXkuKrotYTmupBcbiAgICovXG4gIGRlbGV0ZVJlc291cmNlPFxuICAgIFMgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UgPSBTdGF0dXMsXG4gICAgVCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSA9IFMgZXh0ZW5kcyBTdGF0dXMgPyBLdWJlcm5ldGVzUmVzb3VyY2UgOiBTLFxuICA+KHBhcmFtczogRXJlYnVzUmVzb3VyY2VEZWxldGVQYXJhbXM8VCwgUj4pIHtcbiAgICBpZiAoJ25hbWUnIGluIHBhcmFtcyAmJiAhcGFyYW1zLm5hbWUpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcignZGVsZXRlIHJlc291cmNlIG5lZWQgcmVzb3VyY2UgbmFtZScpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX2RlbGV0ZVJlc291cmNlPFMsIFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5om56YeP5Yig6Zmk5Lia5Yqh6ZuG576k55qE6LWE5rqQXG4gICAqL1xuICBiYXRjaERlbGV0ZVJlc291cmNlPFxuICAgIFMgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UgPSBTdGF0dXMsXG4gICAgVCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSA9IFMgZXh0ZW5kcyBTdGF0dXMgPyBLdWJlcm5ldGVzUmVzb3VyY2UgOiBTLFxuICA+KHBhcmFtczogRXJlYnVzUmVzb3VyY2VCYXRjaERlbGV0ZVBhcmFtczxSPikge1xuICAgIHJldHVybiB0aGlzLl9iYXRjaERlbGV0ZVJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfZ2V0UmVzb3VyY2VEZWZpbml0aW9uKHBhcmFtczogUmVzb3VyY2VBcGlQYXJhbXM8Uj4pIHtcbiAgICBjb25zdCBkZWZpbml0aW9uID0gdGhpcy5rOHNBcGlSZXNvdXJjZS5nZXREZWZpbml0aW9uKFxuICAgICAgJ2RlZmluaXRpb24nIGluIHBhcmFtcyAmJiBwYXJhbXMuZGVmaW5pdGlvblxuICAgICAgICA/IHBhcmFtcy5kZWZpbml0aW9uXG4gICAgICAgIDogJ3R5cGUnIGluIHBhcmFtcyAmJiBwYXJhbXMudHlwZSxcbiAgICApO1xuICAgIGlmICgncmVzb3VyY2UnIGluIHBhcmFtcyAmJiBwYXJhbXMucmVzb3VyY2UpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6IGRlZmluaXRpb24udHlwZSxcbiAgICAgICAgLi4uZ2V0QXBpUHJlZml4UGFydHMocGFyYW1zLnJlc291cmNlLmFwaVZlcnNpb24pLFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIGRlZmluaXRpb247XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfZ2V0QXBpUGF0aChwYXJhbXM6IFJlc291cmNlQXBpUGFyYW1zPFI+LCBpZ25vcmVOYW1lID0gZmFsc2UpIHtcbiAgICByZXR1cm4gdGhpcy5rOHNBcGlSZXNvdXJjZS5nZXRBcGlQYXRoKHtcbiAgICAgIC4uLnRoaXMuX2dldFJlc291cmNlRGVmaW5pdGlvbihwYXJhbXMpLFxuICAgICAgY2x1c3RlcjogJ2NsdXN0ZXInIGluIHBhcmFtcyAmJiBwYXJhbXMuY2x1c3RlcixcbiAgICAgIG5hbWVzcGFjZTogdGhpcy5fZ2V0TmFtZXNwYWNlKHBhcmFtcyksXG4gICAgICBuYW1lOiBpZ25vcmVOYW1lID8gbnVsbCA6IHRoaXMuX2dldE5hbWUocGFyYW1zKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9nZXROYW1lc3BhY2UocGFyYW1zOiBSZXNvdXJjZUFwaVBhcmFtczxSPikge1xuICAgIHJldHVybiAnbmFtZXNwYWNlJyBpbiBwYXJhbXMgJiYgcGFyYW1zLm5hbWVzcGFjZVxuICAgICAgPyBwYXJhbXMubmFtZXNwYWNlXG4gICAgICA6ICduYW1lc3BhY2VkJyBpbiBwYXJhbXMgJiYgcGFyYW1zLm5hbWVzcGFjZWRcbiAgICAgID8gdGhpcy5nbG9iYWxOYW1lc3BhY2VcbiAgICAgIDogJ3Jlc291cmNlJyBpbiBwYXJhbXMgJiYgZ2V0KHBhcmFtcy5yZXNvdXJjZSwgW01FVEFEQVRBLCBOQU1FU1BBQ0VdKTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9nZXROYW1lKHBhcmFtczogUmVzb3VyY2VBcGlQYXJhbXM8Uj4pIHtcbiAgICByZXR1cm4gJ25hbWUnIGluIHBhcmFtc1xuICAgICAgPyBwYXJhbXMubmFtZVxuICAgICAgOiAncmVzb3VyY2UnIGluIHBhcmFtcyAmJiBnZXQocGFyYW1zLnJlc291cmNlLCBbTUVUQURBVEEsIE5BTUVdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBrOHMgbGlzdCBhcGkg6L+U5Zue55qE57uT5p6c6YeM77yMaXRlbXMg57y65aSxIGtpbmQg5ZKMIGFwaVZlcnNpb24g5a2X5q61XG4gICAqIOinhOWImeWmgiBTZXJ2aWNlIOexu+Wei+WvueW6lCBraW5kOiBTZXJ2aWNlTGlzdO+8jOWOu+aOieacgOWQjuWbm+S4quWtl+espuWPr+W+l+WIsOi1hOa6kOeahCBraW5kXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0Tm9ybWFsaXplZExpc3Q8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZUxpc3Q+KGxpc3Q6IFQpOiBUIHtcbiAgICBjb25zdCB7IGFwaVZlcnNpb24sIGl0ZW1zIH0gPSBsaXN0O1xuXG4gICAgaWYgKCFpdGVtcyB8fCBpdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmxpc3QsXG4gICAgICAgIGl0ZW1zOiBbXSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3Qga2luZCA9IGxpc3Qua2luZC5zbGljZSgwLCAtNCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmxpc3QsXG4gICAgICBpdGVtczogaXRlbXMubWFwKGl0ZW0gPT4gKHtcbiAgICAgICAgLy8ga2V5IOmhuuW6j+S8muW9seWTjei9rCB5YW1sIOWQjueahOmhuuW6j1xuICAgICAgICBraW5kLFxuICAgICAgICBhcGlWZXJzaW9uLFxuICAgICAgICAuLi5pdGVtLFxuICAgICAgfSkpLFxuICAgIH07XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfZ2V0UmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBSZXNvdXJjZVJlYWRQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFQ+KHRoaXMuX2dldEFwaVBhdGgocGFyYW1zKSwge1xuICAgICAgaGVhZGVyczogdGhpcy5fZ2V0SGVhZGVycyhwYXJhbXMpLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX3dhdGNoUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBXYXRjaFJlc291cmNlUmVhZFBhcmFtczxSPixcbiAgKSB7XG4gICAgY29uc3QgZGV0YWlsUGFyYW1zID0ge1xuICAgICAgLi4ucGFyYW1zLFxuICAgICAgcXVlcnlQYXJhbXM6IHsgZmllbGRTZWxlY3RvcjogJ21ldGFkYXRhLm5hbWU9JyArIHRoaXMuX2dldE5hbWUocGFyYW1zKSB9LFxuICAgIH07XG4gICAgY29uc3QgZGVmYXVsdFJldHJ5ID0ge1xuICAgICAgY291bnQ6IFJFVFJZX0NPVU5ULFxuICAgICAgZGVsYXk6IFJFVFJZX0RFTEFZLFxuICAgIH07XG4gICAgY29uc3QgeyBjb3VudCwgZGVsYXk6IGRlbGF5VGltZSB9ID1cbiAgICAgIHBhcmFtcy5yZXRyeSA9PT0gdHJ1ZVxuICAgICAgICA/IHtcbiAgICAgICAgICAgIC4uLmRlZmF1bHRSZXRyeSxcbiAgICAgICAgICAgIGNvdW50OiBJbmZpbml0eSxcbiAgICAgICAgICB9XG4gICAgICAgIDoge1xuICAgICAgICAgICAgLi4uZGVmYXVsdFJldHJ5LFxuICAgICAgICAgICAgLi4ucGFyYW1zLnJldHJ5LFxuICAgICAgICAgIH07XG4gICAgbGV0IHNvRmFyID0gMDtcbiAgICByZXR1cm4gdGhpcy5fZ2V0UmVzb3VyY2VMaXN0PFQ+KGRldGFpbFBhcmFtcykucGlwZShcbiAgICAgIHN3aXRjaE1hcChsaXN0ID0+XG4gICAgICAgIHRoaXMuX2tlZXBXYXRjaFJlc291cmNlQ2hhbmdlPFQ+KFxuICAgICAgICAgIGxpc3QubWV0YWRhdGEucmVzb3VyY2VWZXJzaW9uLFxuICAgICAgICAgIGRldGFpbFBhcmFtcyxcbiAgICAgICAgKS5waXBlKFxuICAgICAgICAgIGZpbHRlcihpc1Jlc291cmNlRXZlbnQpLFxuICAgICAgICAgIG1hcChyZXMgPT4gKHJlcy50eXBlID09PSBXYXRjaEV2ZW50LkRlbGV0ZWQgPyBudWxsIDogcmVzLm9iamVjdCkpLFxuICAgICAgICAgIHN0YXJ0V2l0aChsaXN0Lml0ZW1zWzBdID8/IG51bGwpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICAgIHJldHJ5V2hlbihlcnIkID0+XG4gICAgICAgIGVyciQucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoZXJyID0+IHtcbiAgICAgICAgICAgIGlmIChlcnIgPT09IFdhdGNoRXZlbnQuRXJyb3IgfHwgKGNvdW50ICYmIHNvRmFyKysgPCBjb3VudCkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIG9mKGVycikucGlwZShkZWxheShjb3VudCA/IGRlbGF5VGltZSA6IDApKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycik7XG4gICAgICAgICAgfSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfa2VlcFdhdGNoUmVzb3VyY2VDaGFuZ2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgc2VlZFZlcnNpb246IHN0cmluZyxcbiAgICBwYXJhbXM6IFdhdGNoUmVzb3VyY2VMaXN0UmVhZFBhcmFtczxSPixcbiAgKSB7XG4gICAgbGV0IHJlc291cmNlVmVyc2lvbiA9IHNlZWRWZXJzaW9uO1xuICAgIGxldCBzdWI6IFN1YnNjcmlwdGlvbjtcblxuICAgIGNvbnN0IHdhdGNoJCA9IG5ldyBPYnNlcnZhYmxlPFdhdGNoQVBJUmVzcG9uc2U8VD4+KG9ic2VydmVyID0+IHtcbiAgICAgIGNvbnN0IHVuc3Vic2NyaWJlID0gKCkgPT4ge1xuICAgICAgICBpZiAoc3ViICYmICFzdWIuY2xvc2VkKSB7XG4gICAgICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IHdhdGNoID0gKCkgPT4ge1xuICAgICAgICB1bnN1YnNjcmliZSgpO1xuICAgICAgICBzdWIgPSB0aGlzLl93YXRjaFJlc291cmNlQ2hhbmdlPFQ+KHtcbiAgICAgICAgICAuLi5wYXJhbXMsXG4gICAgICAgICAgcXVlcnlQYXJhbXM6IG5vcm1hbGl6ZVBhcmFtcyh7XG4gICAgICAgICAgICAuLi5wYXJhbXMucXVlcnlQYXJhbXMsXG4gICAgICAgICAgICB3YXRjaDogVFJVRSxcbiAgICAgICAgICAgIGFsbG93V2F0Y2hCb29rbWFya3M6IFRSVUUsXG4gICAgICAgICAgICB0aW1lb3V0U2Vjb25kczogU3RyaW5nKFRJTUVPVVRfU0VDT05EUyksXG4gICAgICAgICAgICByZXNvdXJjZVZlcnNpb24sXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dChyZXMpIHtcbiAgICAgICAgICAgIGlmIChyZXMudHlwZSA9PT0gV2F0Y2hFdmVudC5FcnJvcikge1xuICAgICAgICAgICAgICBvYnNlcnZlci5lcnJvcihyZXMudHlwZSk7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmVzb3VyY2VWZXJzaW9uID0gcmVzLm9iamVjdC5tZXRhZGF0YS5yZXNvdXJjZVZlcnNpb247XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlcyk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnJvcihlcnIpIHtcbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKGVycik7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBjb21wbGV0ZTogd2F0Y2gsXG4gICAgICAgIH0pO1xuICAgICAgfTtcblxuICAgICAgd2F0Y2goKTtcbiAgICAgIHJldHVybiB1bnN1YnNjcmliZTtcbiAgICB9KTtcblxuICAgIHJldHVybiBwYXJhbXMua2VlcGFsaXZlXG4gICAgICA/IHdhdGNoJFxuICAgICAgOiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICB0aGlzLnBhZ2VWaXNpYmlsaXR5LmdldFBhZ2VWaXNpYmlsaXR5KCksXG4gICAgICAgICAgcGFyYW1zLmFjdGl2ZSQgfHwgb2YodHJ1ZSksXG4gICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKChbdmlzaWJsZSwgYWN0aXZlXSkgPT5cbiAgICAgICAgICAgIHZpc2libGUgJiYgYWN0aXZlID8gd2F0Y2gkIDogTkVWRVIsXG4gICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF93YXRjaFJlc291cmNlQ2hhbmdlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogUmVzb3VyY2VMaXN0UmVhZFBhcmFtczxSPixcbiAgKTogT2JzZXJ2YWJsZTxXYXRjaEFQSVJlc3BvbnNlPFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldCh0aGlzLl9nZXRBcGlQYXRoKHBhcmFtcywgdHJ1ZSksIHtcbiAgICAgICAgcmVzcG9uc2VUeXBlOiAndGV4dCcsXG4gICAgICAgIG9ic2VydmU6ICdldmVudHMnLFxuICAgICAgICByZXBvcnRQcm9ncmVzczogdHJ1ZSxcbiAgICAgICAgaGVhZGVyczogdGhpcy5fZ2V0SGVhZGVycyhwYXJhbXMpLFxuICAgICAgICBwYXJhbXM6IHBhcmFtcy5xdWVyeVBhcmFtcyxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKGV2ID0+IGV2LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuRG93bmxvYWRQcm9ncmVzcyksXG4gICAgICAgIGZpbHRlcihcbiAgICAgICAgICAoeyBwYXJ0aWFsVGV4dCB9OiBIdHRwRG93bmxvYWRQcm9ncmVzc0V2ZW50KSA9PiAhIXBhcnRpYWxUZXh0Py50cmltKCksXG4gICAgICAgICksXG4gICAgICAgIGNvbmNhdE1hcCgoeyBwYXJ0aWFsVGV4dCB9KSA9PlxuICAgICAgICAgIGZyb20oXG4gICAgICAgICAgICByZWR1Y2VXYXRjaEV2ZW50cyhcbiAgICAgICAgICAgICAgcGFyc2VKU09OU3RyZWFtPFdhdGNoQVBJUmVzcG9uc2U8VD4+KHBhcnRpYWxUZXh0KSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfZ2V0UmVzb3VyY2VMaXN0PFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogUmVzb3VyY2VMaXN0UmVhZFBhcmFtczxSPixcbiAgKSB7XG4gICAgLy8g5YyF5ZCrIGtleXdvcmQg5YmN57yA6ZyA6KaB5Yqg5LiK5YmN57yAICdhY3AvdjEvcmVzb3VyY2VzL3NlYXJjaCdcbiAgICAvLyDlj4LogIMgaHR0cDovL2NvbmZsdWVuY2UuYWxhdWRhLmNuL3BhZ2VzL3ZpZXdwYWdlLmFjdGlvbj9wYWdlSWQ9NDg3MzEwNThcbiAgICBsZXQgdXJsID0gdGhpcy5fZ2V0QXBpUGF0aChwYXJhbXMsIHRydWUpO1xuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0geyAuLi5wYXJhbXMucXVlcnlQYXJhbXMgfTtcbiAgICBpZiAocXVlcnlQYXJhbXMua2V5d29yZCkge1xuICAgICAgdXJsID0gdXJsLnJlcGxhY2UoQVBJX0dBVEVXQVksIGAke0FQSV9HQVRFV0FZfSR7U0VBUkNIX1VSTF9QUkVGSVh9YCk7XG4gICAgICBpZiAoIXF1ZXJ5UGFyYW1zLmZpZWxkKSB7XG4gICAgICAgIHF1ZXJ5UGFyYW1zLmZpZWxkID0gJ21ldGFkYXRhLm5hbWUnO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PEt1YmVybmV0ZXNSZXNvdXJjZUxpc3Q8VD4+KHVybCwge1xuICAgICAgICBwYXJhbXM6IHF1ZXJ5UGFyYW1zLFxuICAgICAgICBoZWFkZXJzOiB0aGlzLl9nZXRIZWFkZXJzKHBhcmFtcywgdHJ1ZSksXG4gICAgICB9KVxuICAgICAgLnBpcGUobWFwKHRoaXMuX2dldE5vcm1hbGl6ZWRMaXN0KSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfcG9zdFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogUmVzb3VyY2VXcml0ZVBhcmFtczxSLCBUPixcbiAgKSB7XG4gICAgaWYgKFxuICAgICAgKCduYW1lc3BhY2UnIGluIHBhcmFtcyAmJiBwYXJhbXMubmFtZXNwYWNlKSB8fFxuICAgICAgKCduYW1lc3BhY2VkJyBpbiBwYXJhbXMgJiYgcGFyYW1zLm5hbWVzcGFjZWQpXG4gICAgKSB7XG4gICAgICBjb25zdCByZXNvdXJjZU5hbWVzcGFjZSA9IGdldChwYXJhbXMucmVzb3VyY2UsIFtNRVRBREFUQSwgTkFNRVNQQUNFXSk7XG4gICAgICBpZiAoIXJlc291cmNlTmFtZXNwYWNlKSB7XG4gICAgICAgIHNldChcbiAgICAgICAgICBwYXJhbXMucmVzb3VyY2UsXG4gICAgICAgICAgW01FVEFEQVRBLCBOQU1FU1BBQ0VdLFxuICAgICAgICAgIHBhcmFtcy5uYW1lc3BhY2UgfHwgdGhpcy5nbG9iYWxOYW1lc3BhY2UsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxUPih0aGlzLl9nZXRBcGlQYXRoKHBhcmFtcywgdHJ1ZSksIHBhcmFtcy5yZXNvdXJjZSwge1xuICAgICAgaGVhZGVyczogdGhpcy5fZ2V0SGVhZGVycyhwYXJhbXMpLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX3B1dFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogUmVzb3VyY2VXcml0ZVBhcmFtczxSLCBUPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQ8VD4odGhpcy5fZ2V0QXBpUGF0aChwYXJhbXMpLCBwYXJhbXMucmVzb3VyY2UsIHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuX2dldEhlYWRlcnMocGFyYW1zKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9wYXRjaFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogUmVzb3VyY2VQYXRjaFBhcmFtczxSLCBUPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaDxUPih0aGlzLl9nZXRBcGlQYXRoKHBhcmFtcyksIHBhcmFtcy5wYXJ0LCB7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIC4uLnRoaXMuX2dldEhlYWRlcnMocGFyYW1zKSxcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6IHBhcmFtcy5vcGVyYXRpb24gfHwgUGF0Y2hPcGVyYXRpb24uTWVyZ2UsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2RlbGV0ZVJlc291cmNlPFxuICAgIFMgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UsXG4gICAgVCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSxcbiAgPihwYXJhbXM6IFJlc291cmNlRGVsZXRlUGFyYW1zPFIsIFQ+KSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5yZXF1ZXN0PFM+KCdkZWxldGUnLCB0aGlzLl9nZXRBcGlQYXRoKHBhcmFtcyksIHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuX2dldEhlYWRlcnMocGFyYW1zKSxcbiAgICAgIGJvZHk6IHBhcmFtcy5ib2R5LFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2JhdGNoRGVsZXRlUmVzb3VyY2U8UyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBFcmVidXNSZXNvdXJjZUJhdGNoRGVsZXRlUGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnJlcXVlc3Q8Uz4oJ2RlbGV0ZScsIHRoaXMuX2dldEFwaVBhdGgocGFyYW1zKSwge1xuICAgICAgaGVhZGVyczogdGhpcy5fZ2V0SGVhZGVycyhwYXJhbXMpLFxuICAgICAgYm9keTogcGFyYW1zLmJvZHksXG4gICAgICBwYXJhbXM6IHBhcmFtcy5xdWVyeVBhcmFtcyxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIHJlYWRvbmx5IF9nZXRIZWFkZXJzID0gKFxuICAgIHsgbm90aWZ5T25FcnJvciwgb25seU1ldGFkYXRhLCBjdXN0b21BY2NlcHQsIGNyeXB0byB9OiBBcGlCYXNlUGFyYW1zPFI+LFxuICAgIGlzTGlzdD86IGJvb2xlYW4sXG4gICkgPT4ge1xuICAgIGNvbnN0IGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdPiA9IHt9O1xuICAgIGlmICh0eXBlb2Ygbm90aWZ5T25FcnJvciA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICBPYmplY3QuYXNzaWduKFxuICAgICAgICBoZWFkZXJzLFxuICAgICAgICBub3RpZnlPbkVycm9yID8gTk9USUZZX09OX0VSUk9SX0hFQURFUlMgOiBOT1RfTk9USUZZX09OX0VSUk9SX0hFQURFUlMsXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAoY3J5cHRvKSB7XG4gICAgICBPYmplY3QuYXNzaWduKGhlYWRlcnMsIHtcbiAgICAgICAgW0NSWVBUT19IRUFERVJfS0VZXTogY3J5cHRvLFxuICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2t1YmVybmV0ZXMvZGVzaWduLXByb3Bvc2Fscy1hcmNoaXZlL2Jsb2IvbWFpbi9hcGktbWFjaGluZXJ5L2FsdGVybmF0ZS1hcGktcmVwcmVzZW50YXRpb25zLm1kXG4gICAgICovXG4gICAgaWYgKG9ubHlNZXRhZGF0YSkge1xuICAgICAgT2JqZWN0LmFzc2lnbihoZWFkZXJzLCBnZXRNZXRhZGF0YUhlYWRlcnMoaXNMaXN0LCBjdXN0b21BY2NlcHQpKTtcbiAgICB9XG4gICAgcmV0dXJuIGhlYWRlcnM7XG4gIH07XG5cbiAgcHJpdmF0ZSBfZ2V0RG93bmdyYWRlUG9sbGluZyh7XG4gICAga2VlcGFsaXZlLFxuICAgIGRvd25ncmFkZVBvbGxpbmcsXG4gIH06IFdhdGNoQXBpUGFyYW1zKSB7XG4gICAgcmV0dXJuIGtlZXBhbGl2ZVxuICAgICAgPyBkb3duZ3JhZGVQb2xsaW5nXG4gICAgICA6IHRoaXMucGFnZVZpc2liaWxpdHlcbiAgICAgICAgICAuZ2V0UGFnZVZpc2liaWxpdHkoKVxuICAgICAgICAgIC5waXBlKG1hcCh2aXNpYmxlID0+ICh2aXNpYmxlID8gZG93bmdyYWRlUG9sbGluZyA6IDApKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -11,8 +11,8 @@ export class PageVisibilityService {
|
|
|
11
11
|
static { this.ɵfac = function PageVisibilityService_Factory(t) { return new (t || PageVisibilityService)(); }; }
|
|
12
12
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: PageVisibilityService, factory: PageVisibilityService.ɵfac, providedIn: 'root' }); }
|
|
13
13
|
}
|
|
14
|
-
(
|
|
14
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PageVisibilityService, [{
|
|
15
15
|
type: Injectable,
|
|
16
16
|
args: [{ providedIn: 'root' }]
|
|
17
17
|
}], null, null); })();
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS12aXNpYmlsaXR5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvYXBpL3BhZ2UtdmlzaWJpbGl0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNMLFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsR0FBRyxFQUNILFdBQVcsRUFDWCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7O0FBR2QsTUFBTSxPQUFPLHFCQUFxQjtJQURsQztRQUVtQixvQkFBZSxHQUFHLFNBQVMsQ0FDMUMsUUFBUSxFQUNSLGtCQUFrQixDQUNuQixDQUFDLElBQUksQ0FDSixHQUFHLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBRSxNQUFtQixDQUFDLGVBQWUsS0FBSyxTQUFTLENBQUMsRUFDdkUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEtBQUssU0FBUyxDQUFDLEVBQ2pELG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0tBS0g7SUFIQyxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztzRkFiVSxxQkFBcUI7dUVBQXJCLHFCQUFxQixXQUFyQixxQkFBcUIsbUJBRFIsTUFBTTs7aUZBQ25CLHFCQUFxQjtjQURqQyxVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgZnJvbUV2ZW50LFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgbWFwLFxuICBzaGFyZVJlcGxheSxcbiAgc3RhcnRXaXRoLFxufSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBQYWdlVmlzaWJpbGl0eVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHBhZ2VWaXNpYmlsaXR5JCA9IGZyb21FdmVudChcbiAgICBkb2N1bWVudCxcbiAgICAndmlzaWJpbGl0eWNoYW5nZScsXG4gICkucGlwZShcbiAgICBtYXAoKHsgdGFyZ2V0IH0pID0+ICh0YXJnZXQgYXMgRG9jdW1lbnQpLnZpc2liaWxpdHlTdGF0ZSA9PT0gJ3Zpc2libGUnKSxcbiAgICBzdGFydFdpdGgoZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlID09PSAndmlzaWJsZScpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSksXG4gICk7XG5cbiAgZ2V0UGFnZVZpc2liaWxpdHkoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFnZVZpc2liaWxpdHkkO1xuICB9XG59XG4iXX0=
|
|
@@ -88,8 +88,8 @@ export class PlatformUIService {
|
|
|
88
88
|
static { this.ɵfac = function PlatformUIService_Factory(t) { return new (t || PlatformUIService)(); }; }
|
|
89
89
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: PlatformUIService, factory: PlatformUIService.ɵfac, providedIn: 'root' }); }
|
|
90
90
|
}
|
|
91
|
-
(
|
|
91
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PlatformUIService, [{
|
|
92
92
|
type: Injectable,
|
|
93
93
|
args: [{ providedIn: 'root' }]
|
|
94
94
|
}], null, null); })();
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhdGZvcm0tdWkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvcGxhdGZvcm0tdWkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXRDLE9BQU8sRUFDTCxpQkFBaUIsRUFJakIsY0FBYyxHQUNmLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQUVsRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxlQUFlLENBQUM7QUFDckQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsZ0JBQWdCLENBQUM7QUFDckQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsZ0JBQWdCLENBQUM7QUFDckQsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsc0JBQXNCLENBQUM7QUFDbkUsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsc0JBQXNCLENBQUM7QUFFbkUsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsbUJBQW1CLENBQUM7QUFDNUQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsbUJBQW1CLENBQUM7QUFDNUQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsa0JBQWtCLENBQUM7QUFDMUQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsa0JBQWtCLENBQUM7QUFDMUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsV0FBVyxDQUFDO0FBQzdDLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLG1CQUFtQixDQUFDO0FBQzdELE1BQU0s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QUN2RCxXQUFXLEVBQ1QsaUJBQWlCLENBQUMsV0FBVyxDQUFDO3dCQUM5QixVQUFVLEtBQUssSUFBSSxtQ0FBbUMsRUFBRTtpQkFDM0QsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztrRkExRVUsaUJBQWlCO3VFQUFqQixpQkFBaUIsV0FBakIsaUJBQWlCLG1CQURKLE1BQU07O2lGQUNuQixpQkFBaUI7Y0FEN0IsVUFBVTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBhcHBlbmRJbWFnZUhlYWRlcixcbiAgQ29uZmlnTWFwLFxuICBQcm9kdWN0RG9jc0VudHJ5LFxuICBQcm9kdWN0RW50cnksXG4gIFJFU09VUkNFX1RZUEVTLFxufSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQgeyBLOHNBcGlTZXJ2aWNlIH0gZnJvbSAnLi9rOHMtYXBpLnNlcnZpY2UnO1xuXG5leHBvcnQgY29uc3QgUExBVEZPUk1fSU5GT19DTV9OQU1FID0gJ3BsYXRmb3JtLWluZm8nO1xuZXhwb3J0IGNvbnN0IFBMQVRGT1JNX05BTUVfWkhfS0VZID0gJ3BsYXRmb3JtTmFtZVpIJztcbmV4cG9ydCBjb25zdCBQTEFURk9STV9OQU1FX0VOX0tFWSA9ICdwbGF0Zm9ybU5hbWVFTic7XG5leHBvcnQgY29uc3QgREVGQVVMVF9QTEFURk9STV9OQU1FX1pIX0tFWSA9ICdvcmlnaW5QbGF0Zm9ybU5hbWVaSCc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9QTEFURk9STV9OQU1FX0VOX0tFWSA9ICdvcmlnaW5QbGF0Zm9ybU5hbWVFTic7XG5cbmV4cG9ydCBjb25zdCBQT1JUQUxfTUFJTl9USVRMRV9FTl9LRVkgPSAncG9ydGFsTWFpblRpdGxlRU4nO1xuZXhwb3J0IGNvbnN0IFBPUlRBTF9NQUlOX1RJVExFX1pIX0tFWSA9ICdwb3J0YWxNYWluVGl0bGVaSCc7XG5leHBvcnQgY29uc3QgUE9SVEFMX1NVQl9USVRMRV9aSF9LRVkgPSAncG9ydGFsU3ViVGl0bGVaSCc7XG5leHBvcnQgY29uc3QgUE9SVEFMX1NVQl9USVRMRV9FTl9LRVkgPSAncG9ydGFsU3ViVGl0bGVFTic7XG5leHBvcnQgY29uc3QgUE9SVEFMX1VJX0NNX05BTUUgPSAndWktcG9ydGFsJztcbmV4cG9ydCBjb25zdCBQT1JUQUxfVUlfQ01fTkFNRV9ERUZBVUxUID0gJ3VpLXBvcnRhbC1kZWZhdWx0JztcbmV4cG9ydCBjb25zdCBQT1JUQUxfVE9QX0lNQUdFX0tFWSA9ICd0b3AtYmcnO1xuZXhwb3J0IGNvbnN0IFBPUlRBTF9CT1RUT01fSU1BR0VfS0VZID0gJ2JvdHRvbS1iZyc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1BPUlRBTF9UT1BfUkVTT1VSQ0VfTkFNRSA9ICdwb3J0YWwtdG9wLnBuZyc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9QT1JUQUxfQk9UVE9NX1JFU09VUkNFX05BTUUgPSAncG9ydGFsLWJvdHRvbS5wbmcnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUE9SVEFMX1RPUF9SRVNPVVJDRV9VUkwgPSAnaW1hZ2VzL2xpZ2h0L3BvcnRhbC10b3AucG5nJztcbmV4cG9ydCBjb25zdCBERUZBVUxUX1BPUlRBTF9CT1RUT01fUkVTT1VSQ0VfVVJMID1cbiAgJ2ltYWdlcy9saWdodC9wb3J0YWwtYm90dG9tLnBuZyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgUGxhdGZvcm1VSVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGs4c0FwaSA9IGluamVjdChLOHNBcGlTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSB0aGVtZSA9IGluamVjdChUaGVtZVNlcnZpY2UpO1xuXG4gIGdldEVudHJpZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuazhzQXBpXG4gICAgICAuZ2V0R2xvYmFsUmVzb3VyY2VMaXN0PFByb2R1Y3RFbnRyeT4oe1xuICAgICAgICB0eXBlOiBSRVNPVVJDRV9UWVBFUy5QUk9EVUNUX0VOVFJZLFxuICAgICAgICBxdWVyeVBhcmFtczoge1xuICAgICAgICAgIGZpZWxkU2VsZWN0b3I6ICdtZXRhZGF0YS5uYW1lIT1jb25zb2xlLXBvcnRhbCcsXG4gICAgICAgICAgbGltaXQ6ICcwJyxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgICAucGlwZShtYXAobGlzdCA9PiBsaXN0Lml0ZW1zKSk7XG4gIH1cblxuICBnZXREb2NzRW50cnkoKSB7XG4gICAgcmV0dXJuIHRoaXMuazhzQXBpLmdldEdsb2JhbFJlc291cmNlPFByb2R1Y3REb2NzRW50cnk+KHtcbiAgICAgIHR5cGU6IFJFU09VUkNFX1RZUEVTLlBST0RVQ1RfRE9DU19FTlRSWSxcbiAgICAgIG5hbWU6ICdwcm9kdWN0LWRvY3MtZW50cnknLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0UGxhdGZvcm1JbmZvKCkge1xuICAgIHJldHVybiB0aGlzLms4c0FwaVxuICAgICAgLmdldEdsb2JhbFJlc291cmNlPENvbmZpZ01hcD4oe1xuICAgICAgICB0eXBlOiBSRVNPVVJDRV9UWVBFUy5DT05GSUdfTUFQLFxuICAgICAgICBuYW1lOiBQTEFURk9STV9JTkZPX0NNX05BTUUsXG4gICAgICAgIG5hbWVzcGFjZWQ6IHRydWUsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChjbSA9PiAoe1xuICAgICAgICAgIG5hbWU6IHtcbiAgICAgICAgICAgIHpoOiBjbS5kYXRhW1BMQVRGT1JNX05BTUVfWkhfS0VZXSxcbiAgICAgICAgICAgIGVuOiBjbS5kYXRhW1BMQVRGT1JNX05BTUVfRU5fS0VZXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIG1haW5UaXRsZToge1xuICAgICAgICAgICAgemg6IGNtLmRhdGFbUE9SVEFMX01BSU5fVElUTEVfWkhfS0VZXSxcbiAgICAgICAgICAgIGVuOiBjbS5kYXRhW1BPUlRBTF9NQUlOX1RJVExFX0VOX0tFWV0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzdWJUaXRsZToge1xuICAgICAgICAgICAgemg6IGNtLmRhdGFbUE9SVEFMX1NVQl9USVRMRV9aSF9LRVldLFxuICAgICAgICAgICAgZW46IGNtLmRhdGFbUE9SVEFMX1NVQl9USVRMRV9FTl9LRVldLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pKSxcbiAgICAgICk7XG4gIH1cblxuICBnZXRCYWNrZ3JvdW5kSW1hZ2VzKCkge1xuICAgIHJldHVybiB0aGlzLms4c0FwaVxuICAgICAgLmdldEdsb2JhbFJlc291cmNlPENvbmZpZ01hcD4oe1xuICAgICAgICB0eXBlOiBSRVNPVVJDRV9UWVBFUy5DT05GSUdfTUFQLFxuICAgICAgICBuYW1lOiBQT1JUQUxfVUlfQ01fTkFNRSxcbiAgICAgICAgbmFtZXNwYWNlZDogdHJ1ZSxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKGNtID0+IHtcbiAgICAgICAgICBjb25zdCB0b3BJbWFnZSA9IGNtLmJpbmFyeURhdGE/LltQT1JUQUxfVE9QX0lNQUdFX0tFWV07XG4gICAgICAgICAgY29uc3QgYm90dG9tSW1hZ2UgPSBjbS5iaW5hcnlEYXRhPy5bUE9SVEFMX0JPVFRPTV9JTUFHRV9LRVldO1xuXG4gICAgICAgICAgcmV0dXJuIHRoaXMudGhlbWUuY3VycmVudFRoZW1lJC5waXBlKFxuICAgICAgICAgICAgbWFwKHRoZW1lID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB0b3BJbWFnZTpcbiAgICAgICAgICAgICAgICAgIGFwcGVuZEltYWdlSGVhZGVyKHRvcEltYWdlKSB8fFxuICAgICAgICAgICAgICAgICAgYGltYWdlcy8ke3RoZW1lfS8ke0RFRkFVTFRfUE9SVEFMX1RPUF9SRVNPVVJDRV9OQU1FfWAsXG4gICAgICAgICAgICAgICAgYm90dG9tSW1hZ2U6XG4gICAgICAgICAgICAgICAgICBhcHBlbmRJbWFnZUhlYWRlcihib3R0b21JbWFnZSkgfHxcbiAgICAgICAgICAgICAgICAgIGBpbWFnZXMvJHt0aGVtZX0vJHtERUZBVUxUX1BPUlRBTF9CT1RUT01fUkVTT1VSQ0VfTkFNRX1gLFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG59XG4iXX0=
|