@alauda-fe/common 1.0.0 → 1.0.1
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/a-chart/chart.component.d.ts +1 -1
- package/a-chart/components/{index.d.ts → public-api.d.ts} +1 -1
- package/a-chart/public-api.d.ts +1 -1
- package/a-metric-chart/public-api.d.ts +1 -0
- package/a-metric-chart/types.d.ts +4 -2
- package/a-metric-chart/utils/util.d.ts +6 -4
- package/api/api-compatible.interceptor.d.ts +46 -0
- package/api/helpers.d.ts +1 -1
- package/api/k8s-api-resource.service.d.ts +1 -1
- package/api/k8s-api.service.d.ts +1 -1
- package/api/monitor-api.service.d.ts +2 -1
- package/api/platform-ui.service.d.ts +1 -1
- package/api/product.service.d.ts +1 -1
- package/api/project-api.service.d.ts +1 -1
- package/api/public-api.d.ts +1 -0
- package/api/resource-update.service.d.ts +1 -1
- package/api/types.d.ts +1 -1
- package/array-form-table/base-string-map-form.component.d.ts +1 -1
- package/array-form-table/form/component.d.ts +12 -1
- package/array-form-table/form/module.d.ts +1 -1
- package/array-form-table/key-value-form/component.d.ts +1 -1
- package/array-form-table/public-api.d.ts +1 -0
- package/array-form-table/string-array-form/component.d.ts +39 -0
- package/assets/icons/prod-icons.js +1 -1
- package/async-data/async-data-loader.d.ts +1 -1
- package/async-data/types.d.ts +1 -1
- package/authorization/guard.service.d.ts +1 -1
- package/authorization/state.service.d.ts +1 -1
- package/business/module-info/api.service.d.ts +2 -2
- package/business/notification-disabled-container/component.d.ts +14 -0
- package/business/notification-disabled-container/public-api.d.ts +1 -0
- package/business/public-api.d.ts +1 -0
- package/business/resource-select/base-list.d.ts +2 -2
- package/business/resource-select/context.service.d.ts +2 -2
- package/business/resource-select/exports/namespace-page/component.d.ts +1 -1
- package/business/resource-select/exports/namespace-selector/component.d.ts +1 -1
- package/business/resource-select/internals/cluster-list/component.d.ts +1 -2
- package/business/resource-select/internals/namespace-list/component.d.ts +2 -3
- package/business/resource-select/internals/project-list/component.d.ts +1 -1
- package/business/resource-select/project.service.d.ts +3 -2
- package/business/resource-select/types.d.ts +1 -1
- package/business/resource-select/utils.d.ts +1 -1
- package/chart/common/chart/chart.component.d.ts +2 -3
- package/chart/common/{index.d.ts → public-api.d.ts} +0 -1
- package/chart/public-api.d.ts +2 -1
- package/chart/utils.d.ts +1 -1
- package/code/code-editor-configs.d.ts +2 -1
- package/code/code.module.d.ts +8 -8
- package/code/k8s-yaml-display-dialog/component.d.ts +1 -1
- package/code/resource-yaml-display/component.d.ts +2 -4
- package/core/abstract/base-form-container.d.ts +1 -1
- package/core/components/public-api.d.ts +6 -0
- package/core/constants/constants.d.ts +1 -0
- package/core/constants/patterns.d.ts +83 -1
- package/core/constants/status-icons.d.ts +3 -0
- package/core/guards/leave-edit-page.guard.d.ts +1 -1
- package/core/module.d.ts +19 -19
- package/core/pipes/duration.pipe.d.ts +10 -0
- package/core/pipes/img-theme.pipe.d.ts +1 -1
- package/core/pipes/k8s-util.pipe.d.ts +2 -2
- package/core/pipes/page-env.pipe.d.ts +1 -1
- package/core/pipes/{index.d.ts → public-api.d.ts} +2 -1
- package/core/pipes/sanitize.pipe.d.ts +10 -0
- package/core/pipes/time.pipe.d.ts +2 -2
- package/core/public-api.d.ts +9 -9
- package/core/services/aui-paginator-intl.service.d.ts +1 -1
- package/core/services/aui-tooltip-copy-intl.service.d.ts +1 -1
- package/core/services/custom-code-editor-intl.service.d.ts +1 -1
- package/core/services/intercept-deactivate.service.d.ts +1 -1
- package/core/services/k8s-util.service.d.ts +2 -2
- package/core/services/workspace-helper.service.d.ts +1 -1
- package/core/services/yaml-util.service.d.ts +1 -1
- package/core/types/k8s/core.d.ts +11 -1
- package/core/types/k8s/crd.d.ts +98 -3
- package/core/types/k8s/raw.d.ts +9 -12
- package/core/types/{index.d.ts → public-api.d.ts} +1 -1
- package/core/types/resource-definitions.d.ts +27 -2
- package/core/utils/browser.d.ts +1 -0
- package/core/utils/common.d.ts +12 -1
- package/core/utils/decorators.d.ts +3 -1
- package/core/utils/k8s-util.d.ts +3 -1
- package/core/utils/node.d.ts +1 -1
- package/core/utils/observable.d.ts +1 -0
- package/core/utils/{index.d.ts → public-api.d.ts} +1 -1
- package/core/utils/sort-fn.d.ts +2 -0
- package/core/utils/unit.d.ts +0 -3
- package/core/utils/version.d.ts +1 -1
- package/core/utils/workspace.d.ts +1 -1
- package/core/utils/yaml.d.ts +2 -1
- package/custom-columns-setting/component.d.ts +1 -1
- package/esm2022/a-chart/a-chart.module.mjs +2 -2
- package/esm2022/a-chart/chart-status.component.mjs +2 -2
- package/esm2022/a-chart/chart.component.mjs +5 -4
- package/esm2022/a-chart/components/base-component.mjs +2 -2
- package/esm2022/a-chart/components/legend/public-api.mjs +4 -0
- package/esm2022/a-chart/components/public-api.mjs +4 -0
- package/esm2022/a-chart/components/title.component.mjs +4 -4
- package/esm2022/a-chart/public-api.mjs +2 -2
- package/esm2022/a-chart/utils.mjs +2 -2
- package/esm2022/a-metric-chart/a-metric-chart.component.mjs +57 -32
- package/esm2022/a-metric-chart/a-metric-chart.module.mjs +4 -4
- package/esm2022/a-metric-chart/bar-gauge/bar-gauge.component.mjs +2 -2
- package/esm2022/a-metric-chart/base-chart.component.mjs +2 -2
- package/esm2022/a-metric-chart/public-api.mjs +2 -1
- package/esm2022/a-metric-chart/table-chart/table-chart.component.mjs +2 -2
- package/esm2022/a-metric-chart/types.mjs +2 -1
- package/esm2022/a-metric-chart/utils/public-api.mjs +4 -0
- package/esm2022/a-metric-chart/utils/unit.mjs +2 -2
- package/esm2022/a-metric-chart/utils/util.mjs +28 -23
- package/esm2022/api/api-compatible.interceptor.mjs +101 -0
- package/esm2022/api/cluster-version.service.mjs +2 -2
- package/esm2022/api/crypto.interceptor.mjs +2 -2
- package/esm2022/api/helpers.mjs +2 -2
- package/esm2022/api/k8s-api-resource.service.mjs +2 -2
- package/esm2022/api/k8s-api.service.mjs +4 -4
- package/esm2022/api/monitor-api.service.mjs +2 -2
- package/esm2022/api/platform-ui.service.mjs +2 -2
- package/esm2022/api/product.service.mjs +2 -2
- package/esm2022/api/project-api.service.mjs +2 -2
- package/esm2022/api/public-api.mjs +2 -1
- package/esm2022/api/resource-update.service.mjs +1 -1
- package/esm2022/api/types.mjs +1 -1
- package/esm2022/array-form-table/base-string-map-form.component.mjs +1 -1
- package/esm2022/array-form-table/form/component.mjs +93 -50
- package/esm2022/array-form-table/form/module.mjs +7 -4
- package/esm2022/array-form-table/key-value-form/component.mjs +4 -4
- package/esm2022/array-form-table/key-value-table/component.mjs +3 -3
- package/esm2022/array-form-table/public-api.mjs +2 -1
- package/esm2022/array-form-table/string-array-form/component.mjs +267 -0
- package/esm2022/async-data/async-data-loader.mjs +1 -1
- package/esm2022/async-data/error-page/component.mjs +2 -2
- package/esm2022/async-data/types.mjs +1 -1
- package/esm2022/authorization/guard.service.mjs +3 -3
- package/esm2022/authorization/interceptor.service.mjs +2 -2
- package/esm2022/authorization/state.service.mjs +3 -3
- package/esm2022/business/module-info/api.service.mjs +5 -5
- package/esm2022/business/notification-disabled-container/component.mjs +87 -0
- package/esm2022/business/notification-disabled-container/public-api.mjs +2 -0
- package/esm2022/business/public-api.mjs +2 -1
- package/esm2022/business/resource-select/base-list.mjs +4 -4
- package/esm2022/business/resource-select/context.service.mjs +3 -3
- package/esm2022/business/resource-select/exports/namespace-page/component.mjs +3 -3
- package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +3 -3
- package/esm2022/business/resource-select/internals/cluster-list/component.mjs +1 -1
- package/esm2022/business/resource-select/internals/data-grid/component.mjs +2 -2
- package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +2 -3
- package/esm2022/business/resource-select/internals/namespace-list/component.mjs +7 -7
- package/esm2022/business/resource-select/internals/no-data/component.mjs +3 -3
- package/esm2022/business/resource-select/internals/project-list/component.mjs +3 -3
- package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +3 -3
- package/esm2022/business/resource-select/internals/selector-popup/component.mjs +2 -2
- package/esm2022/business/resource-select/module.mjs +3 -3
- package/esm2022/business/resource-select/project.service.mjs +4 -4
- package/esm2022/business/resource-select/types.mjs +1 -1
- package/esm2022/business/resource-select/utils.mjs +1 -1
- package/esm2022/chart/chart.module.mjs +2 -2
- package/esm2022/chart/chart.service.mjs +2 -2
- package/esm2022/chart/common/chart/chart.component.mjs +2 -2
- package/esm2022/chart/common/{index.mjs → public-api.mjs} +1 -2
- package/esm2022/chart/common/tooltip/tooltip.component.mjs +2 -2
- package/esm2022/chart/public-api.mjs +3 -2
- package/esm2022/chart/utils.mjs +1 -1
- package/esm2022/code/code-editor-configs.mjs +5 -1
- package/esm2022/code/code.module.mjs +12 -11
- package/esm2022/code/k8s-yaml-display-dialog/component.mjs +1 -1
- package/esm2022/code/resource-yaml-display/component.mjs +26 -7
- package/esm2022/core/abstract/base-form-container.mjs +3 -3
- package/esm2022/core/abstract/public-api.mjs +3 -0
- package/esm2022/core/components/public-api.mjs +7 -0
- package/esm2022/core/constants/constants.mjs +2 -1
- package/esm2022/core/constants/patterns.mjs +102 -4
- package/esm2022/core/constants/public-api.mjs +6 -0
- package/esm2022/core/constants/status-icons.mjs +30 -1
- package/esm2022/core/constants/tokens.mjs +2 -2
- package/esm2022/core/directives/public-api.mjs +11 -0
- package/esm2022/core/guards/leave-edit-page.guard.mjs +5 -5
- package/esm2022/core/guards/public-api.mjs +5 -0
- package/esm2022/core/module.mjs +11 -11
- package/esm2022/core/pipes/duration.pipe.mjs +51 -0
- package/esm2022/core/pipes/img-header.pipe.mjs +2 -2
- package/esm2022/core/pipes/img-theme.pipe.mjs +3 -2
- package/esm2022/core/pipes/k8s-util.pipe.mjs +4 -4
- package/esm2022/core/pipes/page-env.pipe.mjs +3 -3
- package/esm2022/core/pipes/public-api.mjs +19 -0
- package/esm2022/core/pipes/safe.pipe.mjs +7 -2
- package/esm2022/core/pipes/sanitize.pipe.mjs +31 -0
- package/esm2022/core/pipes/time.pipe.mjs +8 -8
- package/esm2022/core/public-api.mjs +10 -10
- 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 +2 -2
- package/esm2022/core/services/custom-code-editor-intl.service.mjs +4 -4
- package/esm2022/core/services/feature-gate.service.mjs +3 -3
- package/esm2022/core/services/intercept-deactivate.service.mjs +3 -3
- package/esm2022/core/services/k8s-util.service.mjs +4 -6
- package/esm2022/core/services/public-api.mjs +15 -0
- package/esm2022/core/services/time.service.mjs +2 -2
- package/esm2022/core/services/workspace-helper.service.mjs +1 -1
- package/esm2022/core/services/yaml-util.service.mjs +5 -4
- package/esm2022/core/types/k8s/core.mjs +1 -1
- package/esm2022/core/types/k8s/crd.mjs +16 -1
- package/esm2022/core/types/k8s/public-api.mjs +4 -0
- package/esm2022/core/types/k8s/raw.mjs +3 -2
- package/esm2022/core/types/public-api.mjs +11 -0
- package/esm2022/core/types/resource-definitions.mjs +19 -4
- package/esm2022/core/utils/browser.mjs +5 -1
- package/esm2022/core/utils/cache-store.mjs +2 -2
- package/esm2022/core/utils/common.mjs +55 -3
- package/esm2022/core/utils/decorators.mjs +22 -1
- package/esm2022/core/utils/k8s-util.mjs +5 -3
- package/esm2022/core/utils/node.mjs +2 -2
- package/esm2022/core/utils/observable.mjs +11 -2
- package/esm2022/core/utils/public-api.mjs +23 -0
- package/esm2022/core/utils/sort-fn.mjs +7 -0
- package/esm2022/core/utils/unit.mjs +1 -13
- package/esm2022/core/utils/workspace.mjs +1 -1
- package/esm2022/core/utils/yaml.mjs +9 -1
- package/esm2022/custom-columns-setting/component.mjs +1 -1
- package/esm2022/editable-text/public-api.mjs +3 -0
- package/esm2022/effect-directive/event.directive.mjs +2 -2
- package/esm2022/exec/public-api.mjs +8 -0
- package/esm2022/exec/service.mjs +2 -3
- package/esm2022/exec/terminal/component.mjs +13 -17
- package/esm2022/exec/terminal-group/component.mjs +2 -2
- package/esm2022/feature-gate-forbidden/public-api.mjs +3 -0
- package/esm2022/form/errors-mapper/base-errors-mapper.mjs +42 -0
- package/esm2022/form/errors-mapper/default-errors-mapper.service.mjs +65 -0
- package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +71 -0
- package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +115 -0
- package/esm2022/{errors-mapper → form/errors-mapper}/errors-mapper.module.mjs +1 -1
- package/esm2022/form/errors-mapper/public-api.mjs +5 -0
- package/esm2022/form/errors-mapper/types.mjs +2 -0
- package/esm2022/form/labels-editor/component.mjs +5 -6
- package/esm2022/form/public-api.mjs +7 -0
- package/esm2022/form/taints-editor/component.mjs +5 -5
- package/esm2022/form/upload-file/component.mjs +114 -0
- package/esm2022/form/validators/module.mjs +2 -2
- package/esm2022/form/validators/public-api.mjs +2 -2
- package/esm2022/form/validators/resource-limit.mjs +2 -2
- package/esm2022/form/validators/strong-password/public-api.mjs +4 -0
- package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +2 -2
- package/esm2022/form/validators/utils.mjs +3 -3
- package/esm2022/graph-canvas/components/graph-canvas.component.mjs +6 -3
- package/esm2022/graph-canvas/components/graph-link.component.mjs +8 -2
- package/esm2022/graph-canvas/components/graph-node.directive.mjs +2 -2
- package/esm2022/graph-canvas/graph-store.service.mjs +13 -2
- package/esm2022/graph-canvas/types.mjs +1 -1
- package/esm2022/grid-layout/grid-layout.service.mjs +1 -1
- package/esm2022/grid-layout/grid-placeholder.service.mjs +1 -1
- package/esm2022/grid-layout/public-api.mjs +11 -0
- package/esm2022/grid-layout/utils/client-rect.utils.mjs +1 -1
- package/esm2022/grid-layout/utils/scroll.utils.mjs +1 -1
- package/esm2022/help-document/component.mjs +14 -16
- package/esm2022/help-document/directive.mjs +17 -4
- package/esm2022/help-document/module.mjs +5 -6
- package/esm2022/help-document/service.mjs +7 -4
- package/esm2022/k8s-resource-list/footer/component.mjs +2 -2
- package/esm2022/k8s-resource-list/k8s-resource-list.mjs +2 -2
- package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +2 -3
- package/esm2022/k8s-resource-list/types.mjs +1 -1
- package/esm2022/k8s-resource-list/utils.mjs +1 -1
- package/esm2022/k8s-shared/k8s-shared-util.service.mjs +152 -0
- package/esm2022/k8s-shared/public-api.mjs +10 -0
- package/esm2022/k8s-shared/update-description-dialog/component.mjs +112 -0
- package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +133 -0
- package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +111 -0
- package/esm2022/license/license-api.mjs +1 -1
- package/esm2022/license/license-error/module.mjs +2 -2
- package/esm2022/license/license.guard.mjs +3 -3
- package/esm2022/license/license.service.mjs +1 -1
- package/esm2022/metric-chart/helpers.mjs +3 -3
- package/esm2022/metric-chart/metric-chart.component.mjs +6 -4
- package/esm2022/metric-chart/public-api.mjs +1 -2
- package/esm2022/metric-chart/types.mjs +1 -1
- package/esm2022/metric-chart/utils.mjs +2 -2
- package/esm2022/multi-search/action-input/component.mjs +4 -4
- package/esm2022/multi-search/form/component.mjs +3 -3
- package/esm2022/multi-search/multi-search-tags/component.mjs +2 -2
- package/esm2022/multi-search/public-api.mjs +5 -0
- package/esm2022/mutable/mosaic/mosaic.component.mjs +2 -2
- package/esm2022/notification/errors-mapper.mjs +1 -1
- package/esm2022/notification/helpers.mjs +1 -1
- package/esm2022/notification/notification-util.service.mjs +4 -4
- package/esm2022/notification/resource-error.interceptor.mjs +2 -2
- package/esm2022/page-guard/component/component.mjs +3 -3
- package/esm2022/page-guard/module.mjs +4 -4
- package/esm2022/page-scaffold/module.mjs +5 -5
- package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +1 -1
- package/esm2022/page-scaffold/navigation/breadcrumb/module.mjs +2 -2
- package/esm2022/page-scaffold/navigation/breadcrumb/public-api.mjs +5 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/public-api.mjs +3 -0
- package/esm2022/page-scaffold/navigation/module.mjs +2 -2
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +5 -5
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.module.mjs +2 -2
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.types.mjs +1 -1
- package/esm2022/page-scaffold/navigation/nav-menu/public-api.mjs +4 -0
- package/esm2022/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.mjs +2 -2
- package/esm2022/page-scaffold/navigation/navconfig-loader/public-api.mjs +8 -0
- package/esm2022/page-scaffold/navigation/public-api.mjs +7 -0
- package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +32 -26
- package/esm2022/page-scaffold/page/page.component.mjs +20 -12
- package/esm2022/page-scaffold/page/page.module.mjs +2 -2
- package/esm2022/page-scaffold/page/public-api.mjs +5 -0
- package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +2 -2
- package/esm2022/page-scaffold/page-header/common-layout/common-layout.module.mjs +3 -3
- package/esm2022/page-scaffold/page-header/common-layout/context.service.mjs +2 -2
- package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +3 -4
- package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +7 -7
- package/esm2022/page-scaffold/page-header/common-layout/project-select/base-selection.mjs +2 -2
- package/esm2022/page-scaffold/page-header/common-layout/store.service.mjs +3 -3
- package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +2 -2
- package/esm2022/page-scaffold/page-header/header-notify/notify.service.mjs +3 -3
- package/esm2022/page-scaffold/page-header/header-notify/utils.mjs +1 -1
- package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +3 -3
- package/esm2022/page-scaffold/page-header/public-api.mjs +14 -0
- package/esm2022/page-scaffold/public-api.mjs +5 -0
- package/esm2022/permission/helpers.mjs +2 -5
- package/esm2022/permission/k8s-permission.service.mjs +2 -3
- package/esm2022/permission/permission.guard.mjs +3 -3
- package/esm2022/permission/public-api.mjs +1 -2
- package/esm2022/permission/types.mjs +2 -2
- package/esm2022/pie-derivative-chart/donut-status/component.mjs +1 -1
- package/esm2022/public-api.mjs +11 -11
- package/esm2022/scm/declare.directive.mjs +27 -0
- package/esm2022/scm/password-input/component.mjs +104 -67
- package/esm2022/scm/password-input/module.mjs +16 -13
- package/esm2022/scm/password-input/public-api.mjs +3 -0
- package/esm2022/scm/public-api.mjs +10 -0
- package/esm2022/scm/pure-pipe/calc.pipe.mjs +3 -2
- package/esm2022/scm/pure-pipe/module.mjs +3 -4
- package/esm2022/scm/pure-pipe/public-api.mjs +4 -0
- package/esm2022/scm/pure-pipe/pure.pipe.mjs +1 -1
- package/esm2022/scm/resource-multi-select/component.mjs +7 -9
- package/esm2022/scm/resource-multi-select/util.mjs +1 -1
- package/esm2022/scm/search-panel/component.mjs +2 -2
- package/esm2022/searchable-selector/component.mjs +4 -2
- package/esm2022/skeleton/item/component.mjs +1 -1
- package/esm2022/skeleton/module.mjs +2 -2
- package/esm2022/table/component.mjs +4 -4
- package/esm2022/table/helper.mjs +2 -2
- package/esm2022/table/module.mjs +1 -1
- package/esm2022/table/types.mjs +1 -1
- package/esm2022/table/util.service.mjs +3 -3
- package/esm2022/translate/constants.mjs +1 -1
- package/esm2022/translate/en.json +30 -4
- package/esm2022/translate/helpers.mjs +15 -1
- package/esm2022/translate/public-api.mjs +1 -2
- package/esm2022/translate/translate.module.mjs +3 -7
- package/esm2022/translate/types.mjs +1 -1
- package/esm2022/translate/zh.json +28 -2
- package/esm2022/view-chart/custom-template/dropdown-legend.mjs +1 -1
- package/esm2022/view-chart/legend/legend.component.mjs +1 -1
- package/esm2022/view-chart/view-chart.module.mjs +2 -2
- package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +1 -1
- package/esm2022/view-zchart/legend/legend.component.mjs +1 -1
- package/esm2022/view-zchart/types.mjs +2 -0
- package/esm2022/view-zchart/units.mjs +2 -2
- package/esm2022/view-zchart/view-zchart.component.mjs +10 -5
- package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +2 -2
- package/esm2022/widget/confirm-delete/utils.mjs +1 -1
- package/esm2022/widget/current-time/component.mjs +4 -4
- package/esm2022/widget/date-range-picker/component.mjs +10 -11
- package/esm2022/widget/field-set/index.mjs +14 -0
- package/esm2022/widget/field-set/item/component.mjs +2 -2
- package/esm2022/widget/foldable-block/component.mjs +2 -2
- package/esm2022/widget/foldable-item-in-table/component.mjs +3 -3
- package/esm2022/widget/loading-mask/loading-mask.component.mjs +2 -2
- package/esm2022/widget/public-api.mjs +3 -4
- package/esm2022/widget/relative-time/component.mjs +4 -4
- package/esm2022/widget/status-icon/status-icon.component.mjs +102 -0
- package/esm2022/widget/tags-label/component.mjs +3 -3
- package/esm2022/widget/terminating-tag/component.mjs +1 -1
- package/esm2022/widget/zero-state/zero-state.component.mjs +3 -3
- package/esm2022/window-channel/base-window-channel.mjs +1 -1
- package/esm2022/window-channel/host-window-channel.service.mjs +15 -15
- package/esm2022/window-channel/public-api.mjs +5 -0
- package/esm2022/window-channel/utils.mjs +1 -1
- package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +4 -4
- package/esm2022/xterm/xterm.component.mjs +5 -2
- package/exec/service.d.ts +1 -1
- package/exec/terminal/component.d.ts +1 -1
- package/{errors-mapper → form/errors-mapper}/base-errors-mapper.d.ts +2 -2
- package/{errors-mapper → form/errors-mapper}/default-errors-mapper.service.d.ts +1 -1
- package/{errors-mapper → form/errors-mapper}/errors-mapper-component/component.d.ts +1 -1
- package/{errors-mapper → form/errors-mapper}/errors-mapper.directive.d.ts +1 -1
- package/{errors-mapper → form/errors-mapper}/types.d.ts +1 -1
- package/form/labels-editor/component.d.ts +1 -1
- package/form/{index.d.ts → public-api.d.ts} +2 -0
- package/form/taints-editor/component.d.ts +2 -2
- package/form/upload-file/component.d.ts +32 -0
- package/form/validators/public-api.d.ts +1 -1
- package/form/validators/resource-limit.d.ts +1 -1
- package/form/validators/strong-password/{index.d.ts → public-api.d.ts} +1 -1
- package/form/validators/utils.d.ts +1 -1
- package/graph-canvas/components/graph-canvas.component.d.ts +3 -2
- package/graph-canvas/graph-store.service.d.ts +3 -1
- package/graph-canvas/types.d.ts +2 -0
- package/grid-layout/grid-layout.service.d.ts +2 -2
- package/grid-layout/grid-placeholder.service.d.ts +1 -1
- package/grid-layout/utils/client-rect.utils.d.ts +1 -1
- package/help-document/component.d.ts +0 -1
- package/help-document/directive.d.ts +10 -1
- package/k8s-resource-list/footer/component.d.ts +1 -1
- package/k8s-resource-list/k8s-resource-list.d.ts +1 -1
- package/k8s-resource-list/k8s-resource-paged-list.d.ts +1 -1
- package/k8s-resource-list/types.d.ts +1 -1
- package/k8s-resource-list/utils.d.ts +1 -1
- package/k8s-shared/k8s-shared-util.service.d.ts +40 -0
- package/k8s-shared/public-api.d.ts +9 -0
- package/k8s-shared/update-description-dialog/component.d.ts +25 -0
- package/k8s-shared/update-display-name-dialog/component.d.ts +27 -0
- package/k8s-shared/update-key-value-dialog/component.d.ts +39 -0
- package/license/license-api.d.ts +1 -1
- package/license/license.guard.d.ts +1 -1
- package/metric-chart/metric-chart.component.d.ts +3 -2
- package/metric-chart/public-api.d.ts +0 -1
- package/metric-chart/types.d.ts +1 -1
- package/metric-chart/utils.d.ts +1 -1
- package/notification/errors-mapper.d.ts +1 -1
- package/notification/helpers.d.ts +1 -1
- package/notification/notification-util.service.d.ts +2 -2
- package/notification/resource-error.interceptor.d.ts +1 -1
- package/package.json +2 -1
- package/page-guard/module.d.ts +3 -0
- package/page-scaffold/navigation/breadcrumb/breadcrumb.component.d.ts +2 -2
- package/page-scaffold/navigation/nav-menu/nav-menu.component.d.ts +1 -1
- package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts +1 -1
- package/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.d.ts +2 -2
- package/page-scaffold/navigation/public-api.d.ts +6 -0
- package/page-scaffold/page/notices/maintenance.component.d.ts +7 -7
- package/page-scaffold/page/page.component.d.ts +2 -1
- package/page-scaffold/page-header/common-layout/context.service.d.ts +1 -1
- package/page-scaffold/page-header/common-layout/namespace-select/component.d.ts +1 -1
- package/page-scaffold/page-header/common-layout/product-select/component.d.ts +2 -2
- package/page-scaffold/page-header/common-layout/store.service.d.ts +1 -1
- package/page-scaffold/page-header/header-notify/notify.service.d.ts +1 -1
- package/page-scaffold/page-header/header-notify/utils.d.ts +1 -1
- package/page-scaffold/page-header/help-menu/component/component.d.ts +1 -1
- package/page-scaffold/public-api.d.ts +4 -0
- package/permission/helpers.d.ts +1 -10
- package/permission/k8s-permission.service.d.ts +1 -1
- package/permission/permission.guard.d.ts +1 -1
- package/permission/public-api.d.ts +0 -1
- package/permission/types.d.ts +1 -1
- package/pie-derivative-chart/donut-status/component.d.ts +1 -1
- package/public-api.d.ts +10 -10
- package/scm/declare.directive.d.ts +8 -0
- package/scm/password-input/component.d.ts +5 -1
- package/scm/password-input/module.d.ts +2 -2
- package/scm/{index.d.ts → public-api.d.ts} +3 -2
- package/scm/pure-pipe/calc.pipe.d.ts +1 -1
- package/scm/pure-pipe/module.d.ts +3 -3
- package/scm/pure-pipe/pure.pipe.d.ts +1 -1
- package/scm/resource-multi-select/component.d.ts +4 -3
- package/scm/resource-multi-select/util.d.ts +1 -1
- package/skeleton/item/component.d.ts +1 -1
- package/styles/global.scss +1 -2
- package/styles/mixins.scss +39 -0
- package/styles/tailwind-preset.scss +1 -1
- package/table/component.d.ts +1 -1
- package/table/helper.d.ts +1 -1
- package/table/types.d.ts +1 -1
- package/table/util.service.d.ts +1 -1
- package/translate/constants.d.ts +1 -1
- package/translate/helpers.d.ts +3 -0
- package/translate/public-api.d.ts +0 -1
- package/translate/translate.module.d.ts +54 -3
- package/translate/types.d.ts +1 -1
- package/view-chart/custom-template/dropdown-legend.d.ts +1 -1
- package/view-chart/legend/legend.component.d.ts +1 -1
- package/view-zchart/custom-template/dropdown-legend.d.ts +1 -1
- package/view-zchart/legend/legend.component.d.ts +1 -1
- package/view-zchart/types.d.ts +22 -0
- package/view-zchart/units.d.ts +1 -1
- package/view-zchart/view-zchart.component.d.ts +7 -2
- package/widget/confirm-delete/utils.d.ts +1 -1
- package/widget/current-time/component.d.ts +1 -1
- package/widget/date-range-picker/component.d.ts +1 -1
- package/widget/field-set/index.d.ts +7 -0
- package/widget/foldable-item-in-table/component.d.ts +1 -1
- package/widget/public-api.d.ts +2 -3
- package/widget/relative-time/component.d.ts +1 -1
- package/widget/status-icon/status-icon.component.d.ts +16 -0
- package/widget/tags-label/component.d.ts +1 -1
- package/widget/terminating-tag/component.d.ts +1 -1
- package/window-channel/base-window-channel.d.ts +1 -1
- package/window-channel/utils.d.ts +0 -1
- package/core/components/index.d.ts +0 -1
- package/core/components/tree/index.d.ts +0 -1
- package/core/components/tree/public-api.d.ts +0 -6
- package/core/index.d.ts +0 -1
- package/core/pipes/trust-url.pipe.d.ts +0 -19
- package/core/utils/k8s-pattern.d.ts +0 -12
- package/esm2022/a-chart/components/index.mjs +0 -4
- package/esm2022/a-chart/components/legend/index.mjs +0 -4
- package/esm2022/a-metric-chart/utils/index.mjs +0 -4
- package/esm2022/core/abstract/index.mjs +0 -3
- package/esm2022/core/components/index.mjs +0 -2
- package/esm2022/core/components/tree/index.mjs +0 -2
- package/esm2022/core/components/tree/public-api.mjs +0 -7
- package/esm2022/core/constants/index.mjs +0 -6
- package/esm2022/core/directives/index.mjs +0 -11
- package/esm2022/core/guards/index.mjs +0 -5
- package/esm2022/core/index.mjs +0 -2
- package/esm2022/core/pipes/index.mjs +0 -18
- package/esm2022/core/pipes/trust-url.pipe.mjs +0 -28
- package/esm2022/core/services/index.mjs +0 -15
- package/esm2022/core/types/index.mjs +0 -11
- package/esm2022/core/types/k8s/index.mjs +0 -4
- package/esm2022/core/utils/index.mjs +0 -23
- package/esm2022/core/utils/k8s-pattern.mjs +0 -13
- package/esm2022/editable-text/index.mjs +0 -3
- package/esm2022/errors-mapper/base-errors-mapper.mjs +0 -42
- package/esm2022/errors-mapper/default-errors-mapper.service.mjs +0 -65
- package/esm2022/errors-mapper/errors-mapper-component/component.mjs +0 -71
- package/esm2022/errors-mapper/errors-mapper.directive.mjs +0 -115
- package/esm2022/errors-mapper/public-api.mjs +0 -5
- package/esm2022/errors-mapper/types.mjs +0 -2
- package/esm2022/exec/index.mjs +0 -8
- package/esm2022/feature-gate-forbidden/index.mjs +0 -3
- package/esm2022/form/index.mjs +0 -5
- package/esm2022/form/validators/strong-password/index.mjs +0 -4
- package/esm2022/form/validators/strong-password/strong-password-tooltip/index.mjs +0 -2
- package/esm2022/grid-layout/index.mjs +0 -11
- package/esm2022/metric-chart/range-util.mjs +0 -35
- package/esm2022/multi-search/index.mjs +0 -5
- package/esm2022/page-scaffold/index.mjs +0 -5
- package/esm2022/page-scaffold/navigation/breadcrumb/index.mjs +0 -5
- package/esm2022/page-scaffold/navigation/index.mjs +0 -7
- package/esm2022/page-scaffold/navigation/lottie-icons/index.mjs +0 -3
- package/esm2022/page-scaffold/navigation/nav-menu/index.mjs +0 -4
- package/esm2022/page-scaffold/navigation/navconfig-loader/index.mjs +0 -8
- package/esm2022/page-scaffold/page/index.mjs +0 -5
- package/esm2022/page-scaffold/page-header/index.mjs +0 -14
- package/esm2022/permission/admin.guard.mjs +0 -43
- package/esm2022/scm/index.mjs +0 -9
- package/esm2022/scm/password-input/index.mjs +0 -3
- package/esm2022/scm/pure-pipe/index.mjs +0 -4
- package/esm2022/translate/pick-locale.pipe.mjs +0 -34
- package/esm2022/window-channel/index.mjs +0 -5
- package/form/validators/strong-password/strong-password-tooltip/index.d.ts +0 -1
- package/metric-chart/range-util.d.ts +0 -1
- package/page-scaffold/index.d.ts +0 -4
- package/page-scaffold/navigation/index.d.ts +0 -6
- package/permission/admin.guard.d.ts +0 -14
- package/translate/pick-locale.pipe.d.ts +0 -12
- /package/a-chart/components/legend/{index.d.ts → public-api.d.ts} +0 -0
- /package/a-metric-chart/utils/{index.d.ts → public-api.d.ts} +0 -0
- /package/core/abstract/{index.d.ts → public-api.d.ts} +0 -0
- /package/core/constants/{index.d.ts → public-api.d.ts} +0 -0
- /package/core/directives/{index.d.ts → public-api.d.ts} +0 -0
- /package/core/guards/{index.d.ts → public-api.d.ts} +0 -0
- /package/core/services/{index.d.ts → public-api.d.ts} +0 -0
- /package/core/types/k8s/{index.d.ts → public-api.d.ts} +0 -0
- /package/editable-text/{index.d.ts → public-api.d.ts} +0 -0
- /package/exec/{index.d.ts → public-api.d.ts} +0 -0
- /package/feature-gate-forbidden/{index.d.ts → public-api.d.ts} +0 -0
- /package/{errors-mapper → form/errors-mapper}/errors-mapper.module.d.ts +0 -0
- /package/{errors-mapper → form/errors-mapper}/public-api.d.ts +0 -0
- /package/grid-layout/{index.d.ts → public-api.d.ts} +0 -0
- /package/multi-search/{index.d.ts → public-api.d.ts} +0 -0
- /package/page-scaffold/navigation/breadcrumb/{index.d.ts → public-api.d.ts} +0 -0
- /package/page-scaffold/navigation/lottie-icons/{index.d.ts → public-api.d.ts} +0 -0
- /package/page-scaffold/navigation/nav-menu/{index.d.ts → public-api.d.ts} +0 -0
- /package/page-scaffold/navigation/navconfig-loader/{index.d.ts → public-api.d.ts} +0 -0
- /package/page-scaffold/page/{index.d.ts → public-api.d.ts} +0 -0
- /package/page-scaffold/page-header/{index.d.ts → public-api.d.ts} +0 -0
- /package/scm/password-input/{index.d.ts → public-api.d.ts} +0 -0
- /package/scm/pure-pipe/{index.d.ts → public-api.d.ts} +0 -0
- /package/window-channel/{index.d.ts → public-api.d.ts} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { catchError, combineLatest, map, of, shareReplay, tap, } from 'rxjs';
|
|
3
|
-
import { compareMinorVersion, PUBLIC_NAMESPACE, publishRef } from '../core';
|
|
3
|
+
import { compareMinorVersion, PUBLIC_NAMESPACE, publishRef, } from '../core/public-api';
|
|
4
4
|
import { K8sApiService } from './k8s-api.service';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "./k8s-api.service";
|
|
@@ -64,4 +64,4 @@ export class ClusterVersionService {
|
|
|
64
64
|
type: Injectable,
|
|
65
65
|
args: [{ providedIn: 'root' }]
|
|
66
66
|
}], function () { return [{ type: i1.K8sApiService }]; }, null); })();
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci12ZXJzaW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvYXBpL2NsdXN0ZXItdmVyc2lvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNMLFVBQVUsRUFDVixhQUFhLEVBQ2IsR0FBRyxFQUVILEVBQUUsRUFDRixXQUFXLEVBQ1gsR0FBRyxHQUNKLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixnQkFBZ0IsRUFDaEIsVUFBVSxHQUNYLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFHbEQsTUFBTSxPQUFPLHFCQUFxQjtJQWVoQyxZQUE2QixNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBZDFDLFVBQUssR0FBMkIsRUFBRSxDQUFDO1FBRzFCLHFCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNO2FBQzVDLGlCQUFpQixDQUE0QztZQUM1RCxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFO1lBQ2xDLFNBQVMsRUFBRSxnQkFBZ0I7WUFDM0IsSUFBSSxFQUFFLFVBQVU7U0FDakIsQ0FBQzthQUNELElBQUksQ0FDSCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDM0MsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7UUFXSixpQkFBWSxHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUU7WUFDakMsT0FBTyxhQUFhLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxlQUFlLEVBQUU7YUFDdkIsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQ0QsQ0FBQyxDQUFDLGNBQWMsRUFBRSxlQUFlLENBQUMsRUFBRSxFQUFFLENBQ3BDLG1CQUFtQixDQUFDLGNBQWMsRUFBRSxlQUFlLENBQUMsR0FBRyxDQUFDLENBQzNELEVBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUMzQixVQUFVLEVBQUUsQ0FDYixDQUFDO1FBQ0osQ0FBQyxDQUFDO0lBckJtRCxDQUFDO0lBRXREOztPQUVHO0lBQ0gsU0FBUyxDQUFDLE9BQWU7UUFDdkIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFnQkQsY0FBYyxDQUFDLE9BQWUsRUFBRSxPQUFlO1FBQzdDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDekMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUN2RSxVQUFVLEVBQUUsQ0FDYixDQUFDO0lBQ0osQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsT0FBZTtRQUMvQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDdkIsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1NBQ2hDO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTTthQUNmLGlCQUFpQixDQUFnQztZQUNoRCxVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxFQUFFLGdCQUFnQjtnQkFDdEIsVUFBVSxFQUFFLFVBQVU7Z0JBQ3RCLFFBQVEsRUFBRSxtQkFBbUI7YUFDOUI7WUFDRCxJQUFJLEVBQUUsT0FBTztTQUNkLENBQUM7YUFDRCxJQUFJLENBQ0gsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzdDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxjQUFjLENBQUMsT0FBZTtRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO3NGQTVFVSxxQkFBcUI7dUVBQXJCLHFCQUFxQixXQUFyQixxQkFBcUIsbUJBRFIsTUFBTTs7dUZBQ25CLHFCQUFxQjtjQURqQyxVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgY2F0Y2hFcnJvcixcbiAgY29tYmluZUxhdGVzdCxcbiAgbWFwLFxuICBPYnNlcnZhYmxlLFxuICBvZixcbiAgc2hhcmVSZXBsYXksXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIGNvbXBhcmVNaW5vclZlcnNpb24sXG4gIFBVQkxJQ19OQU1FU1BBQ0UsXG4gIHB1Ymxpc2hSZWYsXG59IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IEs4c0FwaVNlcnZpY2UgfSBmcm9tICcuL2s4cy1hcGkuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQ2x1c3RlclZlcnNpb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSBzdG9yZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICBwcml2YXRlIHZlcnNpb246IHN0cmluZztcblxuICBwcml2YXRlIHJlYWRvbmx5IHBsYXRmb3JtVmVyc2lvbiQgPSB0aGlzLms4c0FwaVxuICAgIC5nZXRHbG9iYWxSZXNvdXJjZTx7IHNwZWM6IG51bGw7IGRhdGE6IHsgdmVyc2lvbjogc3RyaW5nIH0gfT4oe1xuICAgICAgZGVmaW5pdGlvbjogeyB0eXBlOiAnY29uZmlnbWFwcycgfSxcbiAgICAgIG5hbWVzcGFjZTogUFVCTElDX05BTUVTUEFDRSxcbiAgICAgIG5hbWU6ICdwbGF0Zm9ybScsXG4gICAgfSlcbiAgICAucGlwZShcbiAgICAgIG1hcChjb25maWcgPT4gY29uZmlnLmRhdGEudmVyc2lvbi5zbGljZSgxKSksXG4gICAgICBzaGFyZVJlcGxheSgxKSxcbiAgICApO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgazhzQXBpOiBLOHNBcGlTZXJ2aWNlKSB7fVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKi9cbiAgaXNQcmV2TFRTKGNsdXN0ZXI6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmlzT2xkQ2x1c3RlcihjbHVzdGVyKTtcbiAgfVxuXG4gIGlzT2xkQ2x1c3RlciA9IChjbHVzdGVyOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmdldENsdXN0ZXJWZXJzaW9uKGNsdXN0ZXIpLFxuICAgICAgdGhpcy5wbGF0Zm9ybVZlcnNpb24oKSxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2NsdXN0ZXJWZXJzaW9uLCBwbGF0Zm9ybVZlcnNpb25dKSA9PlxuICAgICAgICAgIGNvbXBhcmVNaW5vclZlcnNpb24oY2x1c3RlclZlcnNpb24sIHBsYXRmb3JtVmVyc2lvbikgPCAwLFxuICAgICAgKSxcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YoZmFsc2UpKSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuICB9O1xuXG4gIGNsdXN0ZXJPbGRUaGFuKGNsdXN0ZXI6IHN0cmluZywgdmVyc2lvbjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q2x1c3RlclZlcnNpb24oY2x1c3RlcikucGlwZShcbiAgICAgIG1hcChjbHVzdGVyVmVyc2lvbiA9PiBjb21wYXJlTWlub3JWZXJzaW9uKGNsdXN0ZXJWZXJzaW9uLCB2ZXJzaW9uKSA8IDApLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG4gIH1cblxuICBwbGF0Zm9ybVZlcnNpb24oKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5wbGF0Zm9ybVZlcnNpb24kO1xuICB9XG5cbiAgZ2V0Q2x1c3RlclZlcnNpb24oY2x1c3Rlcjogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICBpZiAodGhpcy5zdG9yZVtjbHVzdGVyXSkge1xuICAgICAgcmV0dXJuIG9mKHRoaXMuc3RvcmVbY2x1c3Rlcl0pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5rOHNBcGlcbiAgICAgIC5nZXRHbG9iYWxSZXNvdXJjZTx7IHNwZWM6IHsgdmVyc2lvbjogc3RyaW5nIH0gfT4oe1xuICAgICAgICBkZWZpbml0aW9uOiB7XG4gICAgICAgICAgdHlwZTogJ2NsdXN0ZXJtb2R1bGVzJyxcbiAgICAgICAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgICAgICAgIGFwaUdyb3VwOiAnY2x1c3Rlci5hbGF1ZGEuaW8nLFxuICAgICAgICB9LFxuICAgICAgICBuYW1lOiBjbHVzdGVyLFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoY2x1c3RlciA9PiBjbHVzdGVyLnNwZWMudmVyc2lvbi5zbGljZSgxKSksXG4gICAgICAgIHRhcCh2ZXJzaW9uID0+IHtcbiAgICAgICAgICB0aGlzLnN0b3JlW2NsdXN0ZXJdID0gdmVyc2lvbjtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgc2V0IGNsdXN0ZXJWZXJzaW9uKHZlcnNpb246IHN0cmluZykge1xuICAgIHRoaXMudmVyc2lvbiA9IHZlcnNpb247XG4gIH1cblxuICBnZXQgY2x1c3RlclZlcnNpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudmVyc2lvbjtcbiAgfVxufVxuIl19
|
|
@@ -11,7 +11,7 @@ import modeCtr from 'crypto-js/mode-ctr';
|
|
|
11
11
|
import noPadding from 'crypto-js/pad-nopadding';
|
|
12
12
|
import { catchError, map, of, tap, throwError } from 'rxjs';
|
|
13
13
|
import { v4 } from 'uuid';
|
|
14
|
-
import { CRYPTO_HEADER_KEY, CRYPTO_KEY, CRYPTO_RANDOM_HEADER_KEY, CRYPTO_TYPE, TOKEN_CRYPTO_INTERCEPTOR_URL_REGEXPS, } from '../core/constants';
|
|
14
|
+
import { CRYPTO_HEADER_KEY, CRYPTO_KEY, CRYPTO_RANDOM_HEADER_KEY, CRYPTO_TYPE, TOKEN_CRYPTO_INTERCEPTOR_URL_REGEXPS, } from '../core/constants/public-api';
|
|
15
15
|
import { SEARCH_URL_PREFIX } from './k8s-api.service';
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
17
17
|
const defaultEnableUrlRegexps = [
|
|
@@ -183,4 +183,4 @@ function encrypt(content, random) {
|
|
|
183
183
|
})
|
|
184
184
|
.toString(formatHex);
|
|
185
185
|
}
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9jcnlwdG8uaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQVFMLFlBQVksR0FDYixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQ2hDLE9BQU8sU0FBUyxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZDLE9BQU8sT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sVUFBVSxNQUFNLHVCQUF1QixDQUFDO0FBQy9DLE9BQU8sT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBQ3pDLDRCQUE0QjtBQUM1QixPQUFPLFNBQVMsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFCLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLHdCQUF3QixFQUN4QixXQUFXLEVBQ1gsb0NBQW9DLEdBQ3JDLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRXRELE1BQU0sdUJBQXVCLEdBQWE7SUFDeEMsNEJBQTRCO0lBQzVCLG9EQUFvRDtJQUNwRCx1REFBdUQ7SUFDdkQsNkNBQTZDO0NBQzlDLENBQUM7QUFDRixNQUFNLGVB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QUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDdkQsQ0FBQztJQUVGLE9BQU8sR0FBRztTQUNQLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO1FBQ3JCLEVBQUUsRUFBRSxHQUFHO1FBQ1AsSUFBSSxFQUFFLE9BQU87UUFDYixPQUFPLEVBQUUsU0FBUztLQUNuQixDQUFDO1NBQ0QsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBIdHRwRG93bmxvYWRQcm9ncmVzc0V2ZW50LFxuICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgSHR0cEV2ZW50LFxuICBIdHRwSGFuZGxlcixcbiAgSHR0cEhlYWRlcnMsXG4gIEh0dHBJbnRlcmNlcHRvcixcbiAgSHR0cFJlcXVlc3QsXG4gIEh0dHBSZXNwb25zZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBpc0Rldk1vZGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgYWVzIGZyb20gJ2NyeXB0by1qcy9hZXMnO1xuaW1wb3J0IGVuY0Jhc2U2NCBmcm9tICdjcnlwdG8tanMvZW5jLWJhc2U2NCc7XG5pbXBvcnQgZW5jSGV4IGZyb20gJ2NyeXB0by1qcy9lbmMtaGV4JztcbmltcG9ydCBlbmNVdGY4IGZyb20gJ2NyeXB0by1qcy9lbmMtdXRmOCc7XG5pbXBvcnQgZm9ybWF0SGV4IGZyb20gJ2NyeXB0by1qcy9mb3JtYXQtaGV4JztcbmltcG9ydCBobWFjU2hhMjU2IGZyb20gJ2NyeXB0by1qcy9obWFjLXNoYTI1Nic7XG5pbXBvcnQgbW9kZUN0ciBmcm9tICdjcnlwdG8tanMvbW9kZS1jdHInO1xuLy8gY3NwZWxsOiBkaXNhYmxlLW5leHQtbGluZVxuaW1wb3J0IG5vUGFkZGluZyBmcm9tICdjcnlwdG8tanMvcGFkLW5vcGFkZGluZyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIE9ic2VydmFibGUsIG9mLCB0YXAsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHY0IH0gZnJvbSAndXVpZCc7XG5cbmltcG9ydCB7XG4gIENSWVBUT19IRUFERVJfS0VZLFxuICBDUllQVE9fS0VZLFxuICBDUllQVE9fUkFORE9NX0hFQURFUl9LRVksXG4gIENSWVBUT19UWVBFLFxuICBUT0tFTl9DUllQVE9fSU5URVJDRVBUT1JfVVJMX1JFR0VYUFMsXG59IGZyb20gJy4uL2NvcmUvY29uc3RhbnRzJztcblxuaW1wb3J0IHsgU0VBUkNIX1VSTF9QUkVGSVggfSBmcm9tICcuL2s4cy1hcGkuc2VydmljZSc7XG5cbmNvbnN0IGRlZmF1bHRFbmFibGVVcmxSZWdleHBzOiBSZWdFeHBbXSA9IFtcbiAgL1xcL2FwaVxcL3YxXFwvKC4qXFwvKT9zZWNyZXRzL2ksXG4gIC9cXC9hcGlzXFwvcGxhdGZvcm0udGtlc3RhY2suaW9cXC92MVxcL2NsdXN0ZXJzKFxcLy4qKT8vaSxcbiAgL1xcL2FwaXNcXC9wbGF0Zm9ybS50a2VzdGFjay5pb1xcL3YxXFwvY2x1c3RlcmNyZWRlbnRpYWxzL2ksXG4gIC9cXC9hcGlzXFwvcGxhdGZvcm0udGtlc3RhY2suaW9cXC92MVxcL21hY2hpbmVzL2ksXG5dO1xuY29uc3QgaXNTdGFuZGFsb25lQXBpID0gKHVybDogc3RyaW5nKSA9PiB7XG4gIGxldCBwYXRoID0gdXJsLm1hdGNoKC8oKGh0dHBzPzopP1xcL1xcLyk/W14vXSooXFwvW14/XSopLyk/LlszXTtcbiAgaWYgKHBhdGggJiYgaXNEZXZNb2RlKCkpIHtcbiAgICAvLyDlvIDlj5HmqKHlvI/kuIvvvIzpnIDopoHmiopBUElHYXRld2F556e76ZmkXG4gICAgLy8g5q2j5bi45oOF5Ya15LiN5Lya5bCG5YmN57yA6K6+572u5oiQ5aSa5bGC6Lev5b6E77yM5omA5Lul55u05o6l56e76Zmk56ys5LiA5bGC6Lev5b6EXG4gICAgcGF0aCA9IHBhdGgucmVwbGFjZSgvXlxcL1teL10qLywgJycpO1xuICB9XG4gIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChgXigke1NFQVJDSF9VUkxfUFJFRklYfSk/LyhhcGlzP3xrdWJlcm5ldGVzKS9gKTtcbiAgcmV0dXJuIHBhdGggJiYgcmVnZXgudGVzdChwYXRoKTtcbn07XG5jb25zdCBkZWZhdWx0RW5hYmxlID0gKHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIGV4dHJhOiBSZWdFeHBbXSA9IFtdKSA9PiB7XG4gIHJldHVybiBbLi4uZGVmYXVsdEVuYWJsZVVybFJlZ2V4cHMsIC4uLmV4dHJhXS5zb21lKFxuICAgIHJlZ2V4cCA9PiByZWdleHAudGVzdChyZXEudXJsKSAmJiBpc1N0YW5kYWxvbmVBcGkocmVxLnVybCksXG4gICk7XG59O1xuXG4vLyDlj6/pgInnmoQgYXBpIOWKoOWvhuaLpuaIquWZqO+8jOebruWJjeS7heaUr+aMgeS7pS9hcGkgL2FwaXMgL2t1YmVybmV0ZXMvIOW8gOWktOeahEFQSVxuLy8g5ZCO56uv5pa55qGI77yaaHR0cHM6Ly9jb25mbHVlbmNlLmFsYXVkYS5jbi9wYWdlcy92aWV3cGFnZS5hY3Rpb24/cGFnZUlkPTE2MzA1NDM0MFxuLy8g5aaC5p6c5L2/55SoIGh0dHAg5YiZ6YCa6L+H6K6+572uIGhlYWRlcnMg5p2l6YCJ5oup5Yqg5a+G562W55Wl77yMa2V5IOS4uiBDUllQVE9fSEVBREVSX0tFWVxuLy8g5aaC5p6c5L2/55SoIGs4c0FwaSDliJnpgJrov4cgY3J5cHRvIOadpemAieaLqeWKoOWvhuetlueVpVxuLy8g5Y+v5Lul6YCa6L+HIFRPS0VOX0NSWVBUT19JTlRFUkNFUFRPUl9VUkxfUkVHRVhQUyDms6jlhaXpu5jorqTnmoTlvIDlkK/liqDlr4bljLnphY3mraPliJlcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDcnlwdG9JbnRlcmNlcHRvclNlcnZpY2UgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoVE9LRU5fQ1JZUFRPX0lOVEVSQ0VQVE9SX1VSTF9SRUdFWFBTKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZXh0cmFVcmxSZWdleHBzOiBSZWdFeHBbXSxcbiAgKSB7fVxuXG4gIHByaXZhdGUgZmFjdG9yeUNvbnRlbnRUeXBlKHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4pIHtcbiAgICBpZiAoIXJlcS5oZWFkZXJzLmhhcygnQ29udGVudC1UeXBlJykpIHtcbiAgICAgIGNvbnN0IGRldGVjdGVkVHlwZSA9IHJlcS5kZXRlY3RDb250ZW50VHlwZUhlYWRlcigpO1xuICAgICAgaWYgKGRldGVjdGVkVHlwZSAhPT0gbnVsbCkge1xuICAgICAgICByZXEgPSByZXEuY2xvbmUoe1xuICAgICAgICAgIGhlYWRlcnM6IHJlcS5oZWFkZXJzLnNldCgnQ29udGVudC1UeXBlJywgZGV0ZWN0ZWRUeXBlKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXE7XG4gIH1cblxuICBwcml2YXRlIGVuY3J5cHRQYXlsb2FkKHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4pIHtcbiAgICBpZiAocmVxLmhlYWRlcnMuZ2V0KENSWVBUT19IRUFERVJfS0VZKSAmJiByZXEuYm9keSkge1xuICAgICAgbGV0IGJvZHlTdHIgPSAnJztcbiAgICAgIC8vIOWPquWvuWpzb27lkozlrZfnrKbkuLLnsbvlnovnmoRwYXlsb2Fk5Yqg5a+GXG4gICAgICBpZiAodHlwZW9mIHJlcS5ib2R5ID09PSAnc3RyaW5nJykge1xuICAgICAgICBib2R5U3RyID0gcmVxLmJvZHk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGJvZHlTdHIgPSBKU09OLnN0cmluZ2lmeShyZXEuYm9keSk7XG4gICAgICAgIH0gY2F0Y2gge31cbiAgICAgIH1cblxuICAgICAgaWYgKGJvZHlTdHIpIHtcbiAgICAgICAgLy8g5bCGIGFuZ3VsYXIg6Ieq5Yqo6K+G5Yir55qE6YC76L6R5Yqg5Yiw6L+Z6YeM5p2l77yM6YG/5YWN5Yqg5a+G5ZCO6KKr57uf5LiA6K6+5oiQIHRleHRcbiAgICAgICAgcmVxID0gdGhpcy5mYWN0b3J5Q29udGVudFR5cGUocmVxKTtcblxuICAgICAgICBjb25zdCByYW5kb20gPSB2NCgpLnJlcGxhY2VBbGwoJy0nLCAnJyk7XG4gICAgICAgIHJlcSA9IHJlcS5jbG9uZSh7XG4gICAgICAgICAgaGVhZGVyczogcmVxLmhlYWRlcnMuc2V0KENSWVBUT19SQU5ET01fSEVBREVSX0tFWSwgcmFuZG9tKSxcbiAgICAgICAgICBib2R5OiBlbmNyeXB0KGJvZHlTdHIsIHJhbmRvbSksXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXE7XG4gIH1cblxuICBwcml2YXRlIGZhY3RvcnlSZXEocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPikge1xuICAgIGlmIChcbiAgICAgICFyZXEuaGVhZGVycy5nZXQoQ1JZUFRPX0hFQURFUl9LRVkpICYmXG4gICAgICBkZWZhdWx0RW5hYmxlKHJlcSwgdGhpcy5leHRyYVVybFJlZ2V4cHMpXG4gICAgKSB7XG4gICAgICByZXEgPSByZXEuY2xvbmUoe1xuICAgICAgICBoZWFkZXJzOiByZXEuaGVhZGVycy5zZXQoQ1JZUFRPX0hFQURFUl9LRVksIENSWVBUT19UWVBFLkVuYWJsZSksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXEgPSB0aGlzLmVuY3J5cHRQYXlsb2FkKHJlcSk7XG5cbiAgICByZXR1cm4gcmVxO1xuICB9XG5cbiAgLyoqXG4gICAqIOWunueOsOaWueahiO+8mlxuICAgKiAxLiDor7fmsYLlkozlk43lupTlpITnkIbliIblvIDlpITnkIbvvIzlnKjor7fmsYLnmoRoZWFkZXLkuIrliqDkuIrliqDlr4bmoIfor4bvvIzmoLnmja7ov5Tlm57nmoTlk43lupRoZWFkZXLlpITnkIblr7nlupTnmoTliqDlr4bnrZbnlaXvvIzogIzkuI3mmK/kvb/nlKjor7fmsYLml7bkvb/nlKjnmoTnrZbnlaXjgILov5nmoLfog73op4Tpgb/mnI3liqHnq6/nmoTkuLvliqjliqDlr4bnrZbnlaXvvIjliY3nq6/msqHmnInkvb/nlKjliqDlr4bvvIlcbiAgICogMi4g5aaC5p6c6Kej5a+G5aSx6LSl77yM5bCG5LiN5YGa5Lu75L2V5aSE55CG77yM5Y6f5qC36L+U5Zue77yM5Zug5Li655CG6K665LiK6Kej5a+G5LiN5bqU6K+l5aSx6LSl77yM5aaC5p6c5aSx6LSl5Y+v6IO95piv5LiN6ZyA6KaB6Kej5a+G77yM5pyA5Li76KaB55qE5piv6L+U5Zue6Kej5a+G5aSx6LSl55qE5L+h5oGv5q+U5Y6f5qC36L+U5Zue5a+55Lia5Yqh5p2l6K+05pu05rKh5oSP5LmJXG4gICAqL1xuICBpbnRlcmNlcHQoXG4gICAgcmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPixcbiAgICBuZXh0OiBIdHRwSGFuZGxlcixcbiAgKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcbiAgICByZXEgPSB0aGlzLmZhY3RvcnlSZXEocmVxKTtcblxuICAgIC8vIOW9k+aYryBwcm9ncmVzcyDvvIzkvovlpoIgd2F0Y2gg5Zy65pmv55qE5Y+Y5pu077yM5LiN6IO96I635Y+WIHJlc3BvbnNlSGVhZGVy77yM5omA5Lul6ZyA6KaB5YWI5Zyo5YW25LuW54q25oCB5Y+K5pe26K6w5b2VIHJlc3BvbnNlSGVhZGVyXG4gICAgbGV0IHJlc3BvbnNlSGVhZGVyOiBIdHRwSGVhZGVycztcblxuICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpLnBpcGUoXG4gICAgICB0YXAoKGV2ZW50OiBIdHRwUmVzcG9uc2U8dW5rbm93bj4pID0+IHtcbiAgICAgICAgcmVzcG9uc2VIZWFkZXIgPSBldmVudC5oZWFkZXJzIHx8IHJlc3BvbnNlSGVhZGVyO1xuICAgICAgfSksXG4gICAgICBtYXAoZXZlbnQgPT4ge1xuICAgICAgICBjb25zdCByYW5kb20gPSByZXNwb25zZUhlYWRlcj8uZ2V0KENSWVBUT19SQU5ET01fSEVBREVSX0tFWSk7XG4gICAgICAgIC8vIOWmguaenOS4jeaYr+ato+W4uOeahOWTjeW6lFxuICAgICAgICBpZiAoIShldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSkpIHtcbiAgICAgICAgICBpZiAoKGV2ZW50IGFzIEh0dHBEb3dubG9hZFByb2dyZXNzRXZlbnQpLnR5cGUgPT09IDMgJiYgcmFuZG9tKSB7XG4gICAgICAgICAgICBjb25zdCBwcm9ncmVzc0V2ZW50ID0gZXZlbnQgYXMgSHR0cERvd25sb2FkUHJvZ3Jlc3NFdmVudDtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIHByb2dyZXNzRXZlbnQucGFydGlhbFRleHQgPSBkZWNyeXB0KFxuICAgICAgICAgICAgICAgIHJhbmRvbSxcbiAgICAgICAgICAgICAgICBwcm9ncmVzc0V2ZW50LnBhcnRpYWxUZXh0LFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSBjYXRjaCB7fVxuICAgICAgICAgICAgcmV0dXJuIHByb2dyZXNzRXZlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBldmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIOWmguaenOaYr+ato+W4uOeahOWTjeW6lFxuICAgICAgICBpZiAoIXJhbmRvbSB8fCAhZXZlbnQuYm9keSkge1xuICAgICAgICAgIHJldHVybiBldmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgcmV0dXJuIGV2ZW50LmNsb25lKHtcbiAgICAgICAgICAgIGJvZHk6IGRlY3J5cHQocmFuZG9tLCBldmVudC5ib2R5IGFzIHN0cmluZyksXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gY2F0Y2gge31cbiAgICAgICAgcmV0dXJuIGV2ZW50O1xuICAgICAgfSksXG4gICAgICBjYXRjaEVycm9yKChlcnI6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIC8vIOWKoOWvhuWQjui/lOWbnueahOaYr+Wtl+espuS4su+8jOaJgOS7peWmguaenOivt+axgueahOaYr2pzb27liJnkuIDlrprmmK9lcnJvcueahO+8iOWmguaenCByZXNwb25zZVR5cGUg5pivIGpzb27vvIzliJnml6Dorrrlk43lupTnmoQgY29udGVudC10eXBlIOaYr+S4jeaYryBqc29uIOmDveaMieeFp2pzb27op6PmnpDvvIlcbiAgICAgICAgY29uc3QgcmFuZG9tID0gZXJyPy5oZWFkZXJzPy5nZXQoQ1JZUFRPX1JBTkRPTV9IRUFERVJfS0VZKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHJhbmRvbSAmJlxuICAgICAgICAgIHJlcS5yZXNwb25zZVR5cGUgPT09ICdqc29uJyAmJlxuICAgICAgICAgIHR5cGVvZiBlcnIuZXJyb3IudGV4dCA9PT0gJ3N0cmluZydcbiAgICAgICAgKSB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIOWmguaenOWtmOWcqOWKoOWvhuagh+ivhuS4lOivt+axgueahOaYr2pzb27vvIzliJnov5nkuKrplJnor6/ln7rmnKzkuIrlsLHmmK/lm6DkuLrop6PmnpBqc29u5a+86Ie055qE77yM5omA5Lul5bCd6K+V6Kej5a+G5ZCO6L+b6KGManNvbuino+aekFxuICAgICAgICAgICAgY29uc3QganNvbiA9IEpTT04ucGFyc2UoZGVjcnlwdChyYW5kb20sIGVyci5lcnJvci50ZXh0KSk7XG4gICAgICAgICAgICAvLyDlpoLmnpzop6PmnpDmiJDlip/liJnlhbblsLHlupTor6XmmK/kuIDkuKrmraPluLjnmoTov5Tlm57vvIzmiYDku6XnlJ/miJDkuIDkuKrmraPluLjnmoQgSHR0cFJlc3BvbnNlXG4gICAgICAgICAgICByZXR1cm4gb2YoXG4gICAgICAgICAgICAgIG5ldyBIdHRwUmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIGJvZHk6IGpzb24sXG4gICAgICAgICAgICAgICAgc3RhdHVzOiBlcnIuc3RhdHVzLFxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IGVyci5oZWFkZXJzLFxuICAgICAgICAgICAgICAgIHN0YXR1c1RleHQ6IGVyci5zdGF0dXNUZXh0LFxuICAgICAgICAgICAgICAgIHVybDogZXJyLnVybCxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZGVjcnlwdChyYW5kb206IHN0cmluZywgY29udGVudDogc3RyaW5nKSB7XG4gIC8vIOWFiOeUqCBoZXgg5oqKIGNvbnRlbnQg6Kej5a+GXG4gIGNvbnN0IGNvbnRlbnRIZXggPSBlbmNIZXgucGFyc2UoY29udGVudC5yZXBsYWNlQWxsKCdcXG4nLCAnJykpO1xuICAvLyDpmo/mnLrmlbDnu4/ov4dITUFDLXNoYTI1NuWQjuWPluWJjeerrzE25a2X6IqC77yMSE1BQ+WvhumSpeS4uuWtl+espuS4suKAnGFsYXVkYeKAnVxuICBjb25zdCBrZXkgPSBlbmNIZXgucGFyc2UoXG4gICAgaG1hY1NoYTI1NihyYW5kb20sIENSWVBUT19LRVkpLnRvU3RyaW5nKCkuc2xpY2UoMCwgMzIpLFxuICApO1xuXG4gIHJldHVybiBhZXNcbiAgICAuZGVjcnlwdChlbmNCYXNlNjQuc3RyaW5naWZ5KGNvbnRlbnRIZXgpLCBrZXksIHtcbiAgICAgIGl2OiBrZXksXG4gICAgICBtb2RlOiBtb2RlQ3RyLFxuICAgICAgcGFkZGluZzogbm9QYWRkaW5nLFxuICAgIH0pXG4gICAgLnRvU3RyaW5nKGVuY1V0ZjgpO1xufVxuXG5mdW5jdGlvbiBlbmNyeXB0KGNvbnRlbnQ6IHN0cmluZywgcmFuZG9tOiBzdHJpbmcpIHtcbiAgY29uc3Qga2V5ID0gZW5jSGV4LnBhcnNlKFxuICAgIGhtYWNTaGEyNTYocmFuZG9tLCBDUllQVE9fS0VZKS50b1N0cmluZygpLnNsaWNlKDAsIDMyKSxcbiAgKTtcblxuICByZXR1cm4gYWVzXG4gICAgLmVuY3J5cHQoY29udGVudCwga2V5LCB7XG4gICAgICBpdjoga2V5LFxuICAgICAgbW9kZTogbW9kZUN0cixcbiAgICAgIHBhZGRpbmc6IG5vUGFkZGluZyxcbiAgICB9KVxuICAgIC50b1N0cmluZyhmb3JtYXRIZXgpO1xufVxuIl19
|
|
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=
|
package/esm2022/api/helpers.mjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @packageDocumentation
|
|
3
3
|
* @module api
|
|
4
4
|
*/
|
|
5
|
-
import { ifExist, toKeys } from '../core/utils';
|
|
5
|
+
import { ifExist, toKeys } from '../core/utils/public-api';
|
|
6
6
|
import { WatchEvent, } from './types';
|
|
7
7
|
export const EMPTY_API_PREFIX_PARTS = {
|
|
8
8
|
apiGroup: '',
|
|
@@ -98,4 +98,4 @@ function calcNextEventType(prev, next) {
|
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFHSCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRCxPQUFPLEVBSUwsVUFBVSxHQUNYLE1BQU0sU0FBUyxDQUFDO0FBRWpCLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHO0lBQ3BDLFFBQVEsRUFBRSxFQUFFO0lBQ1osVUFBVSxFQUFFLEVBQUU7Q0FDTixDQUFDO0FBRVgsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FDL0IsU0FBaUIsRUFDOEIsRUFBRTtJQUNqRCxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2QsT0FBTyxzQkFBc0IsQ0FBQztLQUMvQjtJQUNELE1BQU0sS0FBSyxHQUFzQixTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RELE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUM5QyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUM3QyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLFFBQWlCLEVBQUUsRUFBRSxDQUNyRCxDQUFDLFFBQVEsSUFBSSxRQUFRLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztBQUVuRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxVQUFhLEVBQ0EsRUFBRSxDQUNm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b2R1bGUgYXBpXG4gKi9cblxuaW1wb3J0IHsgRGVlcFJlYWRvbmx5LCBLZXlzLCBLdWJlcm5ldGVzUmVzb3VyY2UsIFZhbHVlT2YgfSBmcm9tICcuLi9jb3JlJztcbmltcG9ydCB7IGlmRXhpc3QsIHRvS2V5cyB9IGZyb20gJy4uL2NvcmUvdXRpbHMnO1xuXG5pbXBvcnQge1xuICBLOHNSZXNvdXJjZURlZmluaXRpb24sXG4gIEs4c1Jlc291cmNlRGVmaW5pdGlvbnMsXG4gIFdhdGNoQVBJUmVzcG9uc2UsXG4gIFdhdGNoRXZlbnQsXG59IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgRU1QVFlfQVBJX1BSRUZJWF9QQVJUUyA9IHtcbiAgYXBpR3JvdXA6ICcnLFxuICBhcGlWZXJzaW9uOiAnJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBnZXRBcGlQcmVmaXhQYXJ0cyA9IChcbiAgYXBpUHJlZml4OiBzdHJpbmcsXG4pOiBPbWl0PFJlcXVpcmVkPEs4c1Jlc291cmNlRGVmaW5pdGlvbj4sICd0eXBlJz4gPT4ge1xuICBpZiAoIWFwaVByZWZpeCkge1xuICAgIHJldHVybiBFTVBUWV9BUElfUFJFRklYX1BBUlRTO1xuICB9XG4gIGNvbnN0IHBhcnRzOiByZWFkb25seSBzdHJpbmdbXSA9IGFwaVByZWZpeC5zcGxpdCgnLycpO1xuICByZXR1cm4gcGFydHMubGVuZ3RoID4gMVxuICAgID8geyBhcGlHcm91cDogcGFydHNbMF0sIGFwaVZlcnNpb246IHBhcnRzWzFdIH1cbiAgICA6IHsgYXBpR3JvdXA6ICcnLCBhcGlWZXJzaW9uOiBwYXJ0c1swXSB9O1xufTtcblxuZXhwb3J0IGNvbnN0IG5vcm1hbGl6ZUFwaUdyb3VwID0gKGFwaUdyb3VwPzogc3RyaW5nKSA9PlxuICAhYXBpR3JvdXAgfHwgYXBpR3JvdXAgPT09ICdjb3JlJyA/ICcnIDogYXBpR3JvdXA7XG5cbmV4cG9ydCBjb25zdCBub3JtYWxpemVEZWZpbml0aW9uID0gPFQgZXh0ZW5kcyBLOHNSZXNvdXJjZURlZmluaXRpb24+KFxuICBkZWZpbml0aW9uOiBULFxuKTogUmVxdWlyZWQ8VD4gPT5cbiAgKHtcbiAgICB0eXBlOiBkZWZpbml0aW9uLnR5cGUsXG4gICAgYXBpR3JvdXA6IG5vcm1hbGl6ZUFwaUdyb3VwKGRlZmluaXRpb24uYXBpR3JvdXApLFxuICAgIGFwaVZlcnNpb246IGRlZmluaXRpb24uYXBpVmVyc2lvbiB8fCAndjEnLFxuICB9IGFzIFJlcXVpcmVkPFQ+KTtcblxuZnVuY3Rpb24gaXNEZWZpbml0aW9uPFQgZXh0ZW5kcyBLOHNSZXNvdXJjZURlZmluaXRpb25zPihcbiAgZGVmaW5pdGlvbjoga2V5b2YgVCB8IFZhbHVlT2Y8VD4sXG4pOiBkZWZpbml0aW9uIGlzIFZhbHVlT2Y8VD4ge1xuICByZXR1cm4gdHlwZW9mIGRlZmluaXRpb24gPT09ICdvYmplY3QnO1xufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlUmVzb3VyY2VEZWZpbml0aW9ucyA9IDxcbiAgVCBleHRlbmRzIEs4c1Jlc291cmNlRGVmaW5pdGlvbnMsXG4gIFIgZXh0ZW5kcyBEZWVwUmVhZG9ubHk8e1xuICAgIFJFU09VUkNFX0RFRklOSVRJT05TOiBUO1xuICAgIFJFU09VUkNFX1RZUEVTOiBLZXlzPFQ+O1xuICAgIGdldFlhbWxBcGlWZXJzaW9uOiAoZGVmaW5pdGlvbjoga2V5b2YgVCB8IFZhbHVlT2Y8VD4pID0+IHN0cmluZztcbiAgfT4sXG4+KFxuICBSRVNPVVJDRV9ERUZJTklUSU9OUzogVCxcbik6IFIgPT5cbiAgKHtcbiAgICBSRVNPVVJDRV9ERUZJTklUSU9OUyxcbiAgICBSRVNPVVJDRV9UWVBFUzogdG9LZXlzKFJFU09VUkNFX0RFRklOSVRJT05TKSxcbiAgICBnZXRZYW1sQXBpVmVyc2lvbihkZWZpbml0aW9uKSB7XG4gICAgICBpZiAoIWlzRGVmaW5pdGlvbihkZWZpbml0aW9uKSkge1xuICAgICAgICBkZWZpbml0aW9uID0gUkVTT1VSQ0VfREVGSU5JVElPTlNbZGVmaW5pdGlvbl0gYXMgVmFsdWVPZjxUPjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHsgYXBpR3JvdXAsIGFwaVZlcnNpb24gfSA9IG5vcm1hbGl6ZURlZmluaXRpb24oZGVmaW5pdGlvbik7XG4gICAgICByZXR1cm4gKFxuICAgICAgICAoIWFwaUdyb3VwIHx8IGFwaUdyb3VwID09PSAnY29yZScgPyAnJyA6IGFwaUdyb3VwICsgJy8nKSArIGFwaVZlcnNpb25cbiAgICAgICk7XG4gICAgfSxcbiAgfSBhcyBSKTtcblxuZXhwb3J0IGNvbnN0IGdldE1ldGFkYXRhSGVhZGVycyA9IChcbiAgaXNMaXN0PzogYm9vbGVhbixcbiAgY3VzdG9tQWNjZXB0Pzogc3RyaW5nLFxuKSA9PiAoe1xuICBBY2NlcHQ6XG4gICAgY3VzdG9tQWNjZXB0IHx8XG4gICAgYGFwcGxpY2F0aW9uL2pzb247YXM9UGFydGlhbE9iamVjdE1ldGFkYXRhJHtpZkV4aXN0KFxuICAgICAgaXNMaXN0LFxuICAgICAgJ0xpc3QnLFxuICAgICl9O2c9bWV0YS5rOHMuaW87dj12MSxhcHBsaWNhdGlvbi9qc29uYCxcbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVkdWNlV2F0Y2hFdmVudHM8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gIGV2ZW50czogQXJyYXk8V2F0Y2hBUElSZXNwb25zZTxUPj4sXG4pOiBBcnJheTxXYXRjaEFQSVJlc3BvbnNlPFQ+PiB7XG4gIHJldHVybiBldmVudHMucmVkdWNlKChhY2MsIGN1cnIpID0+IHtcbiAgICBpZiAoIWlzUmVzb3VyY2VFdmVudChjdXJyKSkge1xuICAgICAgYWNjLnB1c2goY3Vycik7XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH1cblxuICAgIGNvbnN0IHByZXZJbmRleCA9IGZpbmRQcmV2SW5kZXg8VD4oYWNjLCBjdXJyKTtcbiAgICBpZiAocHJldkluZGV4ID49IDApIHtcbiAgICAgIGNvbnN0IHByZXYgPSBhY2NbcHJldkluZGV4XTtcbiAgICAgIGNvbnN0IG5leHRFdmVudFR5cGUgPSBjYWxjTmV4dEV2ZW50VHlwZShwcmV2LnR5cGUsIGN1cnIudHlwZSk7XG5cbiAgICAgIGFjYy5zcGxpY2UocHJldkluZGV4LCAxKTtcbiAgICAgIGFjYy5wdXNoKHtcbiAgICAgICAgdHlwZTogbmV4dEV2ZW50VHlwZSxcbiAgICAgICAgb2JqZWN0OiBjdXJyLm9iamVjdCxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBhY2MucHVzaChjdXJyKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYWNjO1xuICB9LCBbXSBhcyBBcnJheTxXYXRjaEFQSVJlc3BvbnNlPFQ+Pik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Jlc291cmNlRXZlbnQ8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gIGV2ZW50OiBXYXRjaEFQSVJlc3BvbnNlPFQ+LFxuKTogYm9vbGVhbiB7XG4gIHJldHVybiBldmVudC50eXBlICE9PSBXYXRjaEV2ZW50LkJvb2ttYXJrICYmIGV2ZW50LnR5cGUgIT09IFdhdGNoRXZlbnQuRXJyb3I7XG59XG5cbmZ1bmN0aW9uIGZpbmRQcmV2SW5kZXg8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gIGV2ZW50czogQXJyYXk8V2F0Y2hBUElSZXNwb25zZTxUPj4sXG4gIGN1cnI6IFdhdGNoQVBJUmVzcG9uc2U8VD4sXG4pIHtcbiAgZm9yIChsZXQgaSA9IGV2ZW50cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgIGNvbnN0IHByZXYgPSBldmVudHNbaV07XG4gICAgaWYgKFxuICAgICAgaXNSZXNvdXJjZUV2ZW50KHByZXYpICYmXG4gICAgICBwcmV2Lm9iamVjdD8ubWV0YWRhdGE/LnVpZCA9PT0gY3Vyci5vYmplY3Q/Lm1ldGFkYXRhPy51aWRcbiAgICApIHtcbiAgICAgIHJldHVybiBpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiAtMTtcbn1cblxuZnVuY3Rpb24gY2FsY05leHRFdmVudFR5cGUocHJldjogV2F0Y2hFdmVudCwgbmV4dDogV2F0Y2hFdmVudCkge1xuICBzd2l0Y2ggKGAke3ByZXZ9ID09PiAke25leHR9YCkge1xuICAgIGNhc2UgYCR7V2F0Y2hFdmVudC5BZGRlZH0gPT0+ICR7V2F0Y2hFdmVudC5Nb2RpZmllZH1gOiB7XG4gICAgICAvLyDkuIvmuLjlj6/og73kvJrph43lpI3mlLbliLAgQURERUQg5LqL5Lu2XG4gICAgICByZXR1cm4gV2F0Y2hFdmVudC5BZGRlZDtcbiAgICB9XG4gICAgY2FzZSBgJHtXYXRjaEV2ZW50LkFkZGVkfSA9PT4gJHtXYXRjaEV2ZW50LkRlbGV0ZWR9YDoge1xuICAgICAgLy8g5LiL5ri45Y+v6IO95Zyo5pyq5pS25YiwIEFEREVEIOS6i+S7tuaXtuebtOaOpeaUtuWIsCBERUxFVEVEIOS6i+S7tlxuICAgICAgcmV0dXJuIFdhdGNoRXZlbnQuRGVsZXRlZDtcbiAgICB9XG4gICAgY2FzZSBgJHtXYXRjaEV2ZW50Lk1vZGlmaWVkfSA9PT4gJHtXYXRjaEV2ZW50Lk1vZGlmaWVkfWA6IHtcbiAgICAgIHJldHVybiBXYXRjaEV2ZW50Lk1vZGlmaWVkO1xuICAgIH1cbiAgICBjYXNlIGAke1dhdGNoRXZlbnQuTW9kaWZpZWR9ID09PiAke1dhdGNoRXZlbnQuRGVsZXRlZH1gOiB7XG4gICAgICByZXR1cm4gV2F0Y2hFdmVudC5EZWxldGVkO1xuICAgIH1cbiAgICBkZWZhdWx0OiB7XG4gICAgICBjb25zb2xlLndhcm4oJ1VuZXhwZWN0ZWQgc3RhdGUgdHJhbnNpdGlvbjonLCBgJHtwcmV2fSA9PT4gJHtuZXh0fWApO1xuICAgICAgcmV0dXJuIG5leHQ7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
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==
|
|
@@ -6,7 +6,7 @@ import { HttpClient } from '@angular/common/http';
|
|
|
6
6
|
import { Inject, Injectable, isDevMode } from '@angular/core';
|
|
7
7
|
import { map } from 'rxjs';
|
|
8
8
|
import { TOKEN_RESOURCE_DEFINITIONS } from '../core/constants/tokens';
|
|
9
|
-
import { API_GATEWAY, ifExist, publishRef } from '../core/public-api';
|
|
9
|
+
import { API_GATEWAY, ifExist, publishRef, } from '../core/public-api';
|
|
10
10
|
import { EMPTY_API_PREFIX_PARTS, getApiPrefixParts, normalizeApiGroup, normalizeDefinition, } from './helpers';
|
|
11
11
|
import * as i0 from "@angular/core";
|
|
12
12
|
import * as i1 from "@angular/common/http";
|
|
@@ -70,4 +70,4 @@ export class K8sApiResourceService {
|
|
|
70
70
|
type: Inject,
|
|
71
71
|
args: [TOKEN_RESOURCE_DEFINITIONS]
|
|
72
72
|
}] }]; }, null); })();
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLWFwaS1yZXNvdXJjZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9rOHMtYXBpLXJlc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RFLE9BQU8sRUFJTCxXQUFXLEVBQ1gsT0FBTyxFQUNQLFVBQVUsR0FDWCxNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixtQkFBbUIsR0FDcEIsTUFBTSxXQUFXLENBQUM7OztBQU1uQixNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLFlBQ21CLElBQWdCLEVBRWhCLG1CQUEyQztRQUYzQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBRWhCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBd0I7UUFHOUQsWUFBWTtRQUNKLGdCQUFXLEdBR2YsRUFBRSxDQUFDO1FBRVAsWUFBWTtRQUNKLGdCQUFXLEdBQXVELEVBQUUsQ0FBQztJQVQxRSxDQUFDO0lBV0osYUFBYSxDQUNYLGdCQUFnRDtRQUVoRCxJQUFJLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDcEMsTUFBTSxJQUFJLFNBQVMsQ0FDakIsMkRBQTJELE1BQU0sQ0FDL0QsZ0JBQWdCLENBQ2pCLEdBQUcsQ0FDTCxDQUFDO1NBQ0g7UUFFRCxNQUFNLFVBQVUsR0FDZCxPQUFPLGdCQUFnQixLQUFLLFFBQVE7WUFD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QUFNOzt1RkFFUCxxQkFBcUI7Y0FIakMsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COztzQkFJSSxNQUFNO3VCQUFDLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIGFwaVxuICovXG5cbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIGlzRGV2TW9kZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgbWFwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFRPS0VOX1JFU09VUkNFX0RFRklOSVRJT05TIH0gZnJvbSAnLi4vY29yZS9jb25zdGFudHMvdG9rZW5zJztcbmltcG9ydCB7XG4gIEFQSVJlc291cmNlSXRlbSxcbiAgQVBJUmVzb3VyY2VMaXN0LFxuICBLdWJlcm5ldGVzUmVzb3VyY2UsXG4gIEFQSV9HQVRFV0FZLFxuICBpZkV4aXN0LFxuICBwdWJsaXNoUmVmLFxufSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuXG5pbXBvcnQge1xuICBFTVBUWV9BUElfUFJFRklYX1BBUlRTLFxuICBnZXRBcGlQcmVmaXhQYXJ0cyxcbiAgbm9ybWFsaXplQXBpR3JvdXAsXG4gIG5vcm1hbGl6ZURlZmluaXRpb24sXG59IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBLOHNSZXNvdXJjZURlZmluaXRpb24sIEs4c1Jlc291cmNlRGVmaW5pdGlvbnMgfSBmcm9tICcuL3R5cGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEs4c0FwaVJlc291cmNlU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBASW5qZWN0KFRPS0VOX1JFU09VUkNFX0RFRklOSVRJT05TKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzb3VyY2VEZWZpbml0aW9uczogSzhzUmVzb3VyY2VEZWZpbml0aW9ucyxcbiAgKSB7fVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9saXN0Q2FjaGVzOiBSZWNvcmQ8XG4gICAgc3RyaW5nLFxuICAgIFJlY29yZDxzdHJpbmcsIE9ic2VydmFibGU8QVBJUmVzb3VyY2VJdGVtW10+PlxuICA+ID0ge307XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX3R5cGVDYWNoZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIE9ic2VydmFibGU8c3RyaW5nPj4+ID0ge307XG5cbiAgZ2V0RGVmaW5pdGlvbihcbiAgICB0eXBlT3JEZWZpbml0aW9uOiBzdHJpbmcgfCBLOHNSZXNvdXJjZURlZmluaXRpb24sXG4gICk6IFJlcXVpcmVkPEs4c1Jlc291cmNlRGVmaW5pdGlvbj4ge1xuICAgIGlmIChpc0Rldk1vZGUoKSAmJiAhdHlwZU9yRGVmaW5pdGlvbikge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcbiAgICAgICAgYHJlc291cmNlIHR5cGUgb3IgZGVmaW5pdGlvbiBpcyByZXF1aXJlZCwgYnV0IHJlY2VpdmVkOiAnJHtTdHJpbmcoXG4gICAgICAgICAgdHlwZU9yRGVmaW5pdGlvbixcbiAgICAgICAgKX0nYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgZGVmaW5pdGlvbiA9XG4gICAgICB0eXBlb2YgdHlwZU9yRGVmaW5pdGlvbiA9PT0gJ3N0cmluZydcbiAgICAgICAgPyB0aGlzLnJlc291cmNlRGVmaW5pdGlvbnNbdHlwZU9yRGVmaW5pdGlvbl1cbiAgICAgICAgOiB0eXBlT3JEZWZpbml0aW9uO1xuXG4gICAgaWYgKGRlZmluaXRpb24pIHtcbiAgICAgIHJldHVybiBub3JtYWxpemVEZWZpbml0aW9uKGRlZmluaXRpb24pO1xuICAgIH1cblxuICAgIGNvbnN0IHR5cGUgPSB0eXBlT3JEZWZpbml0aW9uIGFzIHN0cmluZztcbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYFwiJHt0eXBlfVwiIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiBcXGBUT0tFTl9SRVNPVVJDRV9ERUZJTklUSU9OU1xcYCwgaGF2ZSB5b3UgcHJvdmlkZWQgaXQgY29ycmVjdGx5P2AsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4geyB0eXBlLCAuLi5FTVBUWV9BUElfUFJFRklYX1BBUlRTIH07XG4gIH1cblxuICBnZXRBcGlQYXRoKHtcbiAgICBjbHVzdGVyLFxuICAgIG5hbWVzcGFjZSxcbiAgICBuYW1lLFxuICAgIHR5cGUsXG4gICAgYXBpR3JvdXAsXG4gICAgYXBpVmVyc2lvbixcbiAgfToge1xuICAgIGNsdXN0ZXI/OiBzdHJpbmc7XG4gICAgbmFtZXNwYWNlPzogc3RyaW5nO1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgdHlwZT86IHN0cmluZztcbiAgICBhcGlHcm91cD86IHN0cmluZztcbiAgICBhcGlWZXJzaW9uPzogc3RyaW5nO1xuICB9KTogc3RyaW5nIHtcbiAgICBhcGlHcm91cCA9IG5vcm1hbGl6ZUFwaUdyb3VwKGFwaUdyb3VwKTtcbiAgICAvKiBlc2xpbnQtZGlzYWJsZSBzb25hcmpzL25vLW5lc3RlZC10ZW1wbGF0ZS1saXRlcmFscyAqL1xuICAgIHJldHVybiBgJHtBUElfR0FURVdBWX0ke2lmRXhpc3QoY2x1c3RlciwgYC9rdWJlcm5ldGVzLyR7Y2x1c3Rlcn1gKX0vYXBpJHtcbiAgICAgIGFwaUdyb3VwICYmICdzJ1xuICAgIH0ke2lmRXhpc3QoYXBpR3JvdXAsIGAvJHthcGlHcm91cH1gKX0vJHthcGlWZXJzaW9uIHx8ICd2MSd9JHtpZkV4aXN0KFxuICAgICAgbmFtZXNwYWNlLFxuICAgICAgYC9uYW1lc3BhY2VzLyR7bmFtZXNwYWNlfWAsXG4gICAgKX0ke2lmRXhpc3QodHlwZSwgYC8ke3R5cGV9YCl9JHtpZkV4aXN0KG5hbWUsIGAvJHtuYW1lfWApfWA7XG4gICAgLyogZXNsaW50LWVuYWJsZSBzb25hcmpzL25vLW5lc3RlZC10ZW1wbGF0ZS1saXRlcmFscyAqL1xuICB9XG5cbiAgZ2V0UmVzb3VyY2VMaXN0PFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHJlc291cmNlOiBULCBjbHVzdGVyOiBzdHJpbmcpIHtcbiAgICBjb25zdCB7IGFwaVZlcnNpb24gfSA9IHJlc291cmNlO1xuXG4gICAgY29uc3QgY2FjaGVkID1cbiAgICAgIHRoaXMuX2xpc3RDYWNoZXNbY2x1c3Rlcl0gfHwgKHRoaXMuX2xpc3RDYWNoZXNbY2x1c3Rlcl0gPSB7fSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgY2FjaGVkW2FwaVZlcnNpb25dIHx8XG4gICAgICAoY2FjaGVkW2FwaVZlcnNpb25dID0gdGhpcy5odHRwXG4gICAgICAgIC5nZXQ8QVBJUmVzb3VyY2VMaXN0PihcbiAgICAgICAgICB0aGlzLmdldEFwaVBhdGgoe1xuICAgICAgICAgICAgY2x1c3RlcixcbiAgICAgICAgICAgIC4uLmdldEFwaVByZWZpeFBhcnRzKGFwaVZlcnNpb24pLFxuICAgICAgICAgIH0pLFxuICAgICAgICApXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcCgoeyByZXNvdXJjZXMgfSkgPT4gcmVzb3VyY2VzKSxcbiAgICAgICAgICBwdWJsaXNoUmVmKCksXG4gICAgICAgICkpXG4gICAgKTtcbiAgfVxuXG4gIGdldFJlc291cmNlVHlwZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihyZXNvdXJjZTogVCwgY2x1c3Rlcjogc3RyaW5nKSB7XG4gICAgY29uc3QgeyBhcGlWZXJzaW9uLCBraW5kIH0gPSByZXNvdXJjZTtcblxuICAgIGNvbnN0IGNhY2hlZCA9XG4gICAgICB0aGlzLl90eXBlQ2FjaGVzW2NsdXN0ZXJdIHx8ICh0aGlzLl90eXBlQ2FjaGVzW2NsdXN0ZXJdID0ge30pO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIGNhY2hlZFthcGlWZXJzaW9uXSB8fFxuICAgICAgKGNhY2hlZFthcGlWZXJzaW9uXSA9IHRoaXMuZ2V0UmVzb3VyY2VMaXN0KHJlc291cmNlLCBjbHVzdGVyKS5waXBlKFxuICAgICAgICBtYXAocmVzb3VyY2VzID0+IHJlc291cmNlcy5maW5kKGl0ZW0gPT4gaXRlbS5raW5kID09PSBraW5kKS5uYW1lKSxcbiAgICAgICAgcHVibGlzaFJlZigpLFxuICAgICAgKSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -6,12 +6,12 @@ import { HttpClient, HttpEventType, } from '@angular/common/http';
|
|
|
6
6
|
import { Inject, Injectable } from '@angular/core';
|
|
7
7
|
import { get, isEqual, set } from 'lodash-es';
|
|
8
8
|
import { NEVER, Observable, combineLatest, from, of, throwError, filter, map, retryWhen, startWith, switchMap, concatMap, delay, distinctUntilChanged, } from 'rxjs';
|
|
9
|
-
import { CRYPTO_HEADER_KEY, } from '../core';
|
|
10
9
|
import { API_GATEWAY, DOWNGRADE_WATCH_ENABLED, NOTIFY_ON_ERROR_HEADERS, NOT_NOTIFY_ON_ERROR_HEADERS, TRUE, } from '../core/constants/constants';
|
|
11
10
|
import { TOKEN_GLOBAL_NAMESPACE } from '../core/constants/tokens';
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
11
|
+
import { CRYPTO_HEADER_KEY, } from '../core/public-api';
|
|
12
|
+
import { METADATA, NAME, NAMESPACE } from '../core/services/public-api';
|
|
14
13
|
import { createPollObservable } from '../core/utils/observable';
|
|
14
|
+
import { 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';
|
|
@@ -391,4 +391,4 @@ export class K8sApiService {
|
|
|
391
391
|
type: Inject,
|
|
392
392
|
args: [TOKEN_GLOBAL_NAMESPACE]
|
|
393
393
|
}] }]; }, null); })();
|
|
394
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9rOHMtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUNMLFVBQVUsRUFFVixhQUFhLEdBQ2QsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDOUMsT0FBTyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBRVYsYUFBYSxFQUNiLElBQUksRUFDSixFQUFFLEVBQ0YsVUFBVSxFQUNWLE1BQU0sRUFDTixHQUFHLEVBQ0gsU0FBUyxFQUNULFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNULEtBQUssRUFDTCxvQkFBb0IsR0FDckIsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsaUJBQWlCLEdBSWxCLE1BQU0sU0FBUyxDQUFDO0FBQ2pCLE9BQU8sRUFDTCxXQUFXLEVBQ1gsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2QiwyQkFBMkIsRUFDM0IsSUFBSSxHQUNMLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFN0QsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixr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QUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztzQkFNN0IsTUFBTTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSBhcGlcbiAqL1xuXG5pbXBvcnQge1xuICBIdHRwQ2xpZW50LFxuICBIdHRwRG93bmxvYWRQcm9ncmVzc0V2ZW50LFxuICBIdHRwRXZlbnRUeXBlLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldCwgaXNFcXVhbCwgc2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7XG4gIE5FVkVSLFxuICBPYnNlcnZhYmxlLFxuICBTdWJzY3JpcHRpb24sXG4gIGNvbWJpbmVMYXRlc3QsXG4gIGZyb20sXG4gIG9mLFxuICB0aHJvd0Vycm9yLFxuICBmaWx0ZXIsXG4gIG1hcCxcbiAgcmV0cnlXaGVuLFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbiAgY29uY2F0TWFwLFxuICBkZWxheSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBDUllQVE9fSEVBREVSX0tFWSxcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBLdWJlcm5ldGVzUmVzb3VyY2VMaXN0LFxuICBTdGF0dXMsXG59IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHtcbiAgQVBJX0dBVEVXQVksXG4gIERPV05HUkFERV9XQVRDSF9FTkFCTEVELFxuICBOT1RJRllfT05fRVJST1JfSEVBREVSUyxcbiAgTk9UX05PVElGWV9PTl9FUlJPUl9IRUFERVJTLFxuICBUUlVFLFxufSBmcm9tICcuLi9jb3JlL2NvbnN0YW50cy9jb25zdGFudHMnO1xuaW1wb3J0IHsgVE9LRU5fR0xPQkFMX05BTUVTUEFDRSB9IGZyb20gJy4uL2NvcmUvY29uc3RhbnRzL3Rva2Vucyc7XG5pbXBvcnQgeyBNRVRBREFUQSwgTkFNRSwgTkFNRVNQQUNFIH0gZnJvbSAnLi4vY29yZS9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBwYXJzZUpTT05TdHJlYW0gfSBmcm9tICcuLi9jb3JlL3V0aWxzJztcbmltcG9ydCB7IGNyZWF0ZVBvbGxPYnNlcnZhYmxlIH0gZnJvbSAnLi4vY29yZS91dGlscy9vYnNlcnZhYmxlJztcbmltcG9ydCB7IG5vcm1hbGl6ZVBhcmFtcyB9IGZyb20gJy4uL2s4cy1yZXNvdXJjZS1saXN0L3V0aWxzJztcblxuaW1wb3J0IHtcbiAgZ2V0QXBpUHJlZml4UGFydHMsXG4gIGdldE1ldGFkYXRhSGVhZGVycyxcbiAgaXNSZXNvdXJjZUV2ZW50LFxuICByZWR1Y2VXYXRjaEV2ZW50cyxcbn0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IEs4c0FwaVJlc291cmNlU2VydmljZSB9IGZyb20gJy4vazhzLWFwaS1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCB7IFBhZ2VWaXNpYmlsaXR5U2VydmljZSB9IGZyb20gJy4vcGFnZS12aXNpYmlsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQXBpQmFzZVBhcmFtcyxcbiAgRXJlYnVzUmVzb3VyY2VEZWxldGVQYXJhbXMsXG4gIEVyZWJ1c1Jlc291cmNlTGlzdFBhcmFtcyxcbiAgRXJlYnVzUmVzb3VyY2VQYXJhbXMsXG4gIEVyZWJ1c1Jlc291cmNlUGF0Y2hQYXJhbXMsXG4gIEVyZWJ1c1Jlc291cmNlV3JpdGVQYXJhbXMsXG4gIEdsb2JhbFJlc291cmNlRGVsZXRlUGFyYW1zLFxuICBHbG9iYWxSZXNvdXJjZUxpc3RQYXJhbXMsXG4gIEdsb2JhbFJlc291cmNlUGFyYW1zLFxuICBHbG9iYWxSZXNvdXJjZVBhdGNoUGFyYW1zLFxuICBHbG9iYWxSZXNvdXJjZVdyaXRlUGFyYW1zLFxuICBQYXRjaE9wZXJhdGlvbixcbiAgUmVzb3VyY2VBcGlQYXJhbXMsXG4gIFJlc291cmNlRGVsZXRlUGFyYW1zLFxuICBSZXNvdXJjZUxpc3RSZWFkUGFyYW1zLFxuICBSZXNvdXJjZVBhdGNoUGFyYW1zLFxuICBSZXNvdXJjZVJlYWRQYXJhbXMsXG4gIFJlc291cmNlV3JpdGVQYXJhbXMsXG4gIFdhdGNoQVBJUmVzcG9uc2UsXG4gIFdhdGNoQXBpUGFyYW1zLFxuICBXYXRjaEVyZWJ1c1Jlc291cmNlTGlzdFBhcmFtcyxcbiAgV2F0Y2hFcmVidXNSZXNvdXJjZVBhcmFtcyxcbiAgV2F0Y2hFdmVudCxcbiAgV2F0Y2hHbG9iYWxSZXNvdXJjZUxpc3RQYXJhbXMsXG4gIFdhdGNoR2xvYmFsUmVzb3VyY2VQYXJhbXMsXG4gIFdhdGNoUmVzb3VyY2VMaXN0UmVhZFBhcmFtcyxcbiAgV2F0Y2hSZXNvdXJjZVJlYWRQYXJhbXMsXG4gIEVyZWJ1c1Jlc291cmNlQmF0Y2hEZWxldGVQYXJhbXMsXG59IGZyb20gJy4vdHlwZXMnO1xuXG4vLyDlkI3np7DliY3nvIAgRXJlYnVzIOWPguiAgyBodHRwOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD00NDY2MzQ4NCDmjIcgL2t1YmVybmV0ZXMvIOW8gOWktOeahCBhcGkg57uE5Lu2XG5cbmV4cG9ydCBjb25zdCBUSU1FT1VUX1NFQ09ORFMgPSA1OTtcbmV4cG9ydCBjb25zdCBTRUFSQ0hfVVJMX1BSRUZJWCA9ICcvYWNwL3YxL3Jlc291cmNlcy9zZWFyY2gnO1xuXG5jb25zdCBSRVRSWV9ERUxBWSA9IDUwMDA7XG5cbmNvbnN0IFJFVFJZX0NPVU5UID0gMztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBLOHNBcGlTZXJ2aWNlPFIgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgazhzQXBpUmVzb3VyY2U6IEs4c0FwaVJlc291cmNlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhZ2VWaXNpYmlsaXR5OiBQYWdlVmlzaWJpbGl0eVNlcnZpY2UsXG4gICAgQEluamVjdChUT0tFTl9HTE9CQUxfTkFNRVNQQUNFKSBwcml2YXRlIHJlYWRvbmx5IGdsb2JhbE5hbWVzcGFjZTogc3RyaW5nLFxuICApIHt9XG5cbiAgLyoqXG4gICAqIOiOt+WPliBHbG9iYWwg6ZuG576k5Y2V5Liq6LWE5rqQ5a+56LGhXG4gICAqL1xuICBnZXRHbG9iYWxSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEdsb2JhbFJlc291cmNlUGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0UmVzb3VyY2U8VD4ocGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDnm5HlkKwgR2xvYmFsIOmbhue+pOWNleS4qui1hOa6kOWvueixoVxuICAgKi9cbiAgd2F0Y2hHbG9iYWxSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFdhdGNoR2xvYmFsUmVzb3VyY2VQYXJhbXM8Uj4sXG4gICkge1xuICAgIHJldHVybiBET1dOR1JBREVfV0FUQ0hfRU5BQkxFRCAmJiBwYXJhbXMuZG93bmdyYWRlUG9sbGluZ1xuICAgICAgPyBjcmVhdGVQb2xsT2JzZXJ2YWJsZTxUPihcbiAgICAgICAgICB0aGlzLmdldEdsb2JhbFJlc291cmNlKHBhcmFtcyksXG4gICAgICAgICAgdGhpcy5fZ2V0RG93bmdyYWRlUG9sbGluZyhwYXJhbXMpLFxuICAgICAgICApLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGlzRXF1YWwoYSwgYikpKVxuICAgICAgOiB0aGlzLl93YXRjaFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog55uR5ZCsIEdsb2JhbCDpm4bnvqTotYTmupDliJfooajlj5jljJZcbiAgICovXG4gIHdhdGNoR2xvYmFsUmVzb3VyY2VDaGFuZ2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgc2VlZFZlcnNpb246IHN0cmluZyxcbiAgICBwYXJhbXM6IFdhdGNoR2xvYmFsUmVzb3VyY2VMaXN0UGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fa2VlcFdhdGNoUmVzb3VyY2VDaGFuZ2U8VD4oc2VlZFZlcnNpb24sIHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog6I635Y+WIEdsb2JhbCDpm4bnvqTotYTmupDlr7nosaHliJfooajvvIzljIXlkKvliIbpobXkv6Hmga9cbiAgICovXG4gIGdldEdsb2JhbFJlc291cmNlTGlzdDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEdsb2JhbFJlc291cmNlTGlzdFBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldFJlc291cmNlTGlzdDxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWIm+W7uiBHbG9iYWwg6ZuG576k6LWE5rqQXG4gICAqL1xuICBwb3N0R2xvYmFsUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBHbG9iYWxSZXNvdXJjZVdyaXRlUGFyYW1zPFQsIFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fcG9zdFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5a6M5pW06KaG55uW5pu05pawIEdsb2JhbCDpm4bnvqTljZXkuKrotYTmupDlr7nosaFcbiAgICovXG4gIHB1dEdsb2JhbFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogR2xvYmFsUmVzb3VyY2VXcml0ZVBhcmFtczxULCBSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX3B1dFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5aKe6YeP5pu05pawIEdsb2JhbCDpm4bnvqTljZXkuKrotYTmupDlr7nosaHnmoTpg6jliIblsZ7mgKdcbiAgICovXG4gIHBhdGNoR2xvYmFsUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBHbG9iYWxSZXNvdXJjZVBhdGNoUGFyYW1zPFQsIFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fcGF0Y2hSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWIoOmZpCBHbG9iYWwg6ZuG576k5Y2V5Liq6LWE5rqQXG4gICAqL1xuICBkZWxldGVHbG9iYWxSZXNvdXJjZTxcbiAgICBTIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlID0gU3RhdHVzLFxuICAgIFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UgPSBTIGV4dGVuZHMgU3RhdHVzID8gS3ViZXJuZXRlc1Jlc291cmNlIDogUyxcbiAgPihwYXJhbXM6IEdsb2JhbFJlc291cmNlRGVsZXRlUGFyYW1zPFQsIFI+KSB7XG4gICAgcmV0dXJuIHRoaXMuX2RlbGV0ZVJlc291cmNlPFMsIFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog6I635Y+W5Lia5Yqh6ZuG576k5Y2V5Liq6LWE5rqQ5a+56LGhXG4gICAqL1xuICBnZXRSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihwYXJhbXM6IEVyZWJ1c1Jlc291cmNlUGFyYW1zPFI+KSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog55uR5ZCs5Lia5Yqh6ZuG576k5Y2V5Liq6LWE5rqQ5a+56LGhXG4gICAqL1xuICB3YXRjaFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogV2F0Y2hFcmVidXNSZXNvdXJjZVBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIERPV05HUkFERV9XQVRDSF9FTkFCTEVEICYmIHBhcmFtcy5kb3duZ3JhZGVQb2xsaW5nXG4gICAgICA/IGNyZWF0ZVBvbGxPYnNlcnZhYmxlPFQ+KFxuICAgICAgICAgIHRoaXMuX2dldFJlc291cmNlPFQ+KHBhcmFtcyksXG4gICAgICAgICAgdGhpcy5fZ2V0RG93bmdyYWRlUG9sbGluZyhwYXJhbXMpLFxuICAgICAgICApLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGlzRXF1YWwoYSwgYikpKVxuICAgICAgOiB0aGlzLl93YXRjaFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog55uR5ZCs6LWE5rqQ5YiX6KGo5Y+Y5YyWXG4gICAqL1xuICB3YXRjaFJlc291cmNlQ2hhbmdlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHNlZWRWZXJzaW9uOiBzdHJpbmcsXG4gICAgcGFyYW1zOiBXYXRjaEVyZWJ1c1Jlc291cmNlTGlzdFBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuX2tlZXBXYXRjaFJlc291cmNlQ2hhbmdlPFQ+KHNlZWRWZXJzaW9uLCBwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOiOt+WPluS4muWKoembhue+pOi1hOa6kOWvueixoeWIl+ihqO+8jOWMheWQq+WIhumhteS/oeaBr1xuICAgKi9cbiAgZ2V0UmVzb3VyY2VMaXN0PFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogRXJlYnVzUmVzb3VyY2VMaXN0UGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0UmVzb3VyY2VMaXN0PFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5Yib5bu65Lia5Yqh6ZuG576k6LWE5rqQXG4gICAqL1xuICBwb3N0UmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBFcmVidXNSZXNvdXJjZVdyaXRlUGFyYW1zPFQsIFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5fcG9zdFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5a6M5pW06KaG55uW5pu05paw5Lia5Yqh6ZuG576k5Y2V5Liq6LWE5rqQ5a+56LGhXG4gICAqL1xuICBwdXRSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEVyZWJ1c1Jlc291cmNlV3JpdGVQYXJhbXM8VCwgUj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9wdXRSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOWinumHj+abtOaWsOS4muWKoembhue+pOWNleS4qui1hOa6kOWvueixoeeahOmDqOWIhuWxnuaAp1xuICAgKi9cbiAgcGF0Y2hSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IEVyZWJ1c1Jlc291cmNlUGF0Y2hQYXJhbXM8VCwgUj4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLl9wYXRjaFJlc291cmNlPFQ+KHBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICog5Yig6Zmk5Lia5Yqh6ZuG576k5Y2V5Liq6LWE5rqQXG4gICAqL1xuICBkZWxldGVSZXNvdXJjZTxcbiAgICBTIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlID0gU3RhdHVzLFxuICAgIFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UgPSBTIGV4dGVuZHMgU3RhdHVzID8gS3ViZXJuZXRlc1Jlc291cmNlIDogUyxcbiAgPihwYXJhbXM6IEVyZWJ1c1Jlc291cmNlRGVsZXRlUGFyYW1zPFQsIFI+KSB7XG4gICAgaWYgKCduYW1lJyBpbiBwYXJhbXMgJiYgIXBhcmFtcy5uYW1lKSB7XG4gICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoJ2RlbGV0ZSByZXNvdXJjZSBuZWVkIHJlc291cmNlIG5hbWUnKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9kZWxldGVSZXNvdXJjZTxTLCBUPihwYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIOaJuemHj+WIoOmZpOS4muWKoembhue+pOeahOi1hOa6kFxuICAgKi9cbiAgYmF0Y2hEZWxldGVSZXNvdXJjZTxcbiAgICBTIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlID0gU3RhdHVzLFxuICAgIFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UgPSBTIGV4dGVuZHMgU3RhdHVzID8gS3ViZXJuZXRlc1Jlc291cmNlIDogUyxcbiAgPihwYXJhbXM6IEVyZWJ1c1Jlc291cmNlQmF0Y2hEZWxldGVQYXJhbXM8Uj4pIHtcbiAgICByZXR1cm4gdGhpcy5fYmF0Y2hEZWxldGVSZXNvdXJjZTxUPihwYXJhbXMpO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2dldFJlc291cmNlRGVmaW5pdGlvbihwYXJhbXM6IFJlc291cmNlQXBpUGFyYW1zPFI+KSB7XG4gICAgY29uc3QgZGVmaW5pdGlvbiA9IHRoaXMuazhzQXBpUmVzb3VyY2UuZ2V0RGVmaW5pdGlvbihcbiAgICAgICdkZWZpbml0aW9uJyBpbiBwYXJhbXMgJiYgcGFyYW1zLmRlZmluaXRpb25cbiAgICAgICAgPyBwYXJhbXMuZGVmaW5pdGlvblxuICAgICAgICA6ICd0eXBlJyBpbiBwYXJhbXMgJiYgcGFyYW1zLnR5cGUsXG4gICAgKTtcbiAgICBpZiAoJ3Jlc291cmNlJyBpbiBwYXJhbXMgJiYgcGFyYW1zLnJlc291cmNlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiBkZWZpbml0aW9uLnR5cGUsXG4gICAgICAgIC4uLmdldEFwaVByZWZpeFBhcnRzKHBhcmFtcy5yZXNvdXJjZS5hcGlWZXJzaW9uKSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBkZWZpbml0aW9uO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2dldEFwaVBhdGgocGFyYW1zOiBSZXNvdXJjZUFwaVBhcmFtczxSPiwgaWdub3JlTmFtZSA9IGZhbHNlKSB7XG4gICAgcmV0dXJuIHRoaXMuazhzQXBpUmVzb3VyY2UuZ2V0QXBpUGF0aCh7XG4gICAgICAuLi50aGlzLl9nZXRSZXNvdXJjZURlZmluaXRpb24ocGFyYW1zKSxcbiAgICAgIGNsdXN0ZXI6ICdjbHVzdGVyJyBpbiBwYXJhbXMgJiYgcGFyYW1zLmNsdXN0ZXIsXG4gICAgICBuYW1lc3BhY2U6IHRoaXMuX2dldE5hbWVzcGFjZShwYXJhbXMpLFxuICAgICAgbmFtZTogaWdub3JlTmFtZSA/IG51bGwgOiB0aGlzLl9nZXROYW1lKHBhcmFtcyksXG4gICAgfSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfZ2V0TmFtZXNwYWNlKHBhcmFtczogUmVzb3VyY2VBcGlQYXJhbXM8Uj4pIHtcbiAgICByZXR1cm4gJ25hbWVzcGFjZScgaW4gcGFyYW1zICYmIHBhcmFtcy5uYW1lc3BhY2VcbiAgICAgID8gcGFyYW1zLm5hbWVzcGFjZVxuICAgICAgOiAnbmFtZXNwYWNlZCcgaW4gcGFyYW1zICYmIHBhcmFtcy5uYW1lc3BhY2VkXG4gICAgICA/IHRoaXMuZ2xvYmFsTmFtZXNwYWNlXG4gICAgICA6ICdyZXNvdXJjZScgaW4gcGFyYW1zICYmIGdldChwYXJhbXMucmVzb3VyY2UsIFtNRVRBREFUQSwgTkFNRVNQQUNFXSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfZ2V0TmFtZShwYXJhbXM6IFJlc291cmNlQXBpUGFyYW1zPFI+KSB7XG4gICAgcmV0dXJuICduYW1lJyBpbiBwYXJhbXNcbiAgICAgID8gcGFyYW1zLm5hbWVcbiAgICAgIDogJ3Jlc291cmNlJyBpbiBwYXJhbXMgJiYgZ2V0KHBhcmFtcy5yZXNvdXJjZSwgW01FVEFEQVRBLCBOQU1FXSk7XG4gIH1cblxuICAvKipcbiAgICogazhzIGxpc3QgYXBpIOi/lOWbnueahOe7k+aenOmHjO+8jGl0ZW1zIOe8uuWksSBraW5kIOWSjCBhcGlWZXJzaW9uIOWtl+autVxuICAgKiDop4TliJnlpoIgU2VydmljZSDnsbvlnovlr7nlupQga2luZDogU2VydmljZUxpc3TvvIzljrvmjonmnIDlkI7lm5vkuKrlrZfnrKblj6/lvpfliLDotYTmupDnmoQga2luZFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHByaXZhdGUgX2dldE5vcm1hbGl6ZWRMaXN0PFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PihsaXN0OiBUKTogVCB7XG4gICAgY29uc3QgeyBhcGlWZXJzaW9uLCBpdGVtcyB9ID0gbGlzdDtcblxuICAgIGlmICghaXRlbXMgfHwgaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5saXN0LFxuICAgICAgICBpdGVtczogW10sXG4gICAgICB9O1xuICAgIH1cblxuICAgIGNvbnN0IGtpbmQgPSBsaXN0LmtpbmQuc2xpY2UoMCwgLTQpO1xuICAgIHJldHVybiB7XG4gICAgICAuLi5saXN0LFxuICAgICAgaXRlbXM6IGl0ZW1zLm1hcChpdGVtID0+ICh7XG4gICAgICAgIC8vIGtleSDpobrluo/kvJrlvbHlk43ovawgeWFtbCDlkI7nmoTpobrluo9cbiAgICAgICAga2luZCxcbiAgICAgICAgYXBpVmVyc2lvbixcbiAgICAgICAgLi4uaXRlbSxcbiAgICAgIH0pKSxcbiAgICB9O1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2dldFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogUmVzb3VyY2VSZWFkUGFyYW1zPFI+LFxuICApIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxUPih0aGlzLl9nZXRBcGlQYXRoKHBhcmFtcyksIHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuX2dldEhlYWRlcnMocGFyYW1zKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF93YXRjaFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogV2F0Y2hSZXNvdXJjZVJlYWRQYXJhbXM8Uj4sXG4gICkge1xuICAgIGNvbnN0IGRldGFpbFBhcmFtcyA9IHtcbiAgICAgIC4uLnBhcmFtcyxcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7IGZpZWxkU2VsZWN0b3I6ICdtZXRhZGF0YS5uYW1lPScgKyB0aGlzLl9nZXROYW1lKHBhcmFtcykgfSxcbiAgICB9O1xuICAgIGNvbnN0IGRlZmF1bHRSZXRyeSA9IHtcbiAgICAgIGNvdW50OiBSRVRSWV9DT1VOVCxcbiAgICAgIGRlbGF5OiBSRVRSWV9ERUxBWSxcbiAgICB9O1xuICAgIGNvbnN0IHsgY291bnQsIGRlbGF5OiBkZWxheVRpbWUgfSA9XG4gICAgICBwYXJhbXMucmV0cnkgPT09IHRydWVcbiAgICAgICAgPyB7XG4gICAgICAgICAgICAuLi5kZWZhdWx0UmV0cnksXG4gICAgICAgICAgICBjb3VudDogSW5maW5pdHksXG4gICAgICAgICAgfVxuICAgICAgICA6IHtcbiAgICAgICAgICAgIC4uLmRlZmF1bHRSZXRyeSxcbiAgICAgICAgICAgIC4uLnBhcmFtcy5yZXRyeSxcbiAgICAgICAgICB9O1xuICAgIGxldCBzb0ZhciA9IDA7XG4gICAgcmV0dXJuIHRoaXMuX2dldFJlc291cmNlTGlzdDxUPihkZXRhaWxQYXJhbXMpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAobGlzdCA9PlxuICAgICAgICB0aGlzLl9rZWVwV2F0Y2hSZXNvdXJjZUNoYW5nZTxUPihcbiAgICAgICAgICBsaXN0Lm1ldGFkYXRhLnJlc291cmNlVmVyc2lvbixcbiAgICAgICAgICBkZXRhaWxQYXJhbXMsXG4gICAgICAgICkucGlwZShcbiAgICAgICAgICBmaWx0ZXIoaXNSZXNvdXJjZUV2ZW50KSxcbiAgICAgICAgICBtYXAocmVzID0+IChyZXMudHlwZSA9PT0gV2F0Y2hFdmVudC5EZWxldGVkID8gbnVsbCA6IHJlcy5vYmplY3QpKSxcbiAgICAgICAgICBzdGFydFdpdGgobGlzdC5pdGVtc1swXSA/PyBudWxsKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICByZXRyeVdoZW4oZXJyJCA9PlxuICAgICAgICBlcnIkLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKGVyciA9PiB7XG4gICAgICAgICAgICBpZiAoZXJyID09PSBXYXRjaEV2ZW50LkVycm9yIHx8IChjb3VudCAmJiBzb0ZhcisrIDwgY291bnQpKSB7XG4gICAgICAgICAgICAgIHJldHVybiBvZihlcnIpLnBpcGUoZGVsYXkoY291bnQgPyBkZWxheVRpbWUgOiAwKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnIpO1xuICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2tlZXBXYXRjaFJlc291cmNlQ2hhbmdlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHNlZWRWZXJzaW9uOiBzdHJpbmcsXG4gICAgcGFyYW1zOiBXYXRjaFJlc291cmNlTGlzdFJlYWRQYXJhbXM8Uj4sXG4gICkge1xuICAgIGxldCByZXNvdXJjZVZlcnNpb24gPSBzZWVkVmVyc2lvbjtcbiAgICBsZXQgc3ViOiBTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdCB3YXRjaCQgPSBuZXcgT2JzZXJ2YWJsZTxXYXRjaEFQSVJlc3BvbnNlPFQ+PihvYnNlcnZlciA9PiB7XG4gICAgICBjb25zdCB1bnN1YnNjcmliZSA9ICgpID0+IHtcbiAgICAgICAgaWYgKHN1YiAmJiAhc3ViLmNsb3NlZCkge1xuICAgICAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICBjb25zdCB3YXRjaCA9ICgpID0+IHtcbiAgICAgICAgdW5zdWJzY3JpYmUoKTtcbiAgICAgICAgc3ViID0gdGhpcy5fd2F0Y2hSZXNvdXJjZUNoYW5nZTxUPih7XG4gICAgICAgICAgLi4ucGFyYW1zLFxuICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBub3JtYWxpemVQYXJhbXMoe1xuICAgICAgICAgICAgLi4ucGFyYW1zLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgd2F0Y2g6IFRSVUUsXG4gICAgICAgICAgICBhbGxvd1dhdGNoQm9va21hcmtzOiBUUlVFLFxuICAgICAgICAgICAgdGltZW91dFNlY29uZHM6IFN0cmluZyhUSU1FT1VUX1NFQ09ORFMpLFxuICAgICAgICAgICAgcmVzb3VyY2VWZXJzaW9uLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9KS5zdWJzY3JpYmUoe1xuICAgICAgICAgIG5leHQocmVzKSB7XG4gICAgICAgICAgICBpZiAocmVzLnR5cGUgPT09IFdhdGNoRXZlbnQuRXJyb3IpIHtcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IocmVzLnR5cGUpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJlc291cmNlVmVyc2lvbiA9IHJlcy5vYmplY3QubWV0YWRhdGEucmVzb3VyY2VWZXJzaW9uO1xuICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgZXJyb3IoZXJyKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihlcnIpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgY29tcGxldGU6IHdhdGNoLFxuICAgICAgICB9KTtcbiAgICAgIH07XG5cbiAgICAgIHdhdGNoKCk7XG4gICAgICByZXR1cm4gdW5zdWJzY3JpYmU7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcGFyYW1zLmtlZXBhbGl2ZVxuICAgICAgPyB3YXRjaCRcbiAgICAgIDogY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgdGhpcy5wYWdlVmlzaWJpbGl0eS5nZXRQYWdlVmlzaWJpbGl0eSgpLFxuICAgICAgICAgIHBhcmFtcy5hY3RpdmUkIHx8IG9mKHRydWUpLFxuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcCgoW3Zpc2libGUsIGFjdGl2ZV0pID0+XG4gICAgICAgICAgICB2aXNpYmxlICYmIGFjdGl2ZSA/IHdhdGNoJCA6IE5FVkVSLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfd2F0Y2hSZXNvdXJjZUNoYW5nZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFJlc291cmNlTGlzdFJlYWRQYXJhbXM8Uj4sXG4gICk6IE9ic2VydmFibGU8V2F0Y2hBUElSZXNwb25zZTxUPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQodGhpcy5fZ2V0QXBpUGF0aChwYXJhbXMsIHRydWUpLCB7XG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ3RleHQnLFxuICAgICAgICBvYnNlcnZlOiAnZXZlbnRzJyxcbiAgICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWUsXG4gICAgICAgIGhlYWRlcnM6IHRoaXMuX2dldEhlYWRlcnMocGFyYW1zKSxcbiAgICAgICAgcGFyYW1zOiBwYXJhbXMucXVlcnlQYXJhbXMsXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcihldiA9PiBldi50eXBlID09PSBIdHRwRXZlbnRUeXBlLkRvd25sb2FkUHJvZ3Jlc3MpLFxuICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgKHsgcGFydGlhbFRleHQgfTogSHR0cERvd25sb2FkUHJvZ3Jlc3NFdmVudCkgPT4gISFwYXJ0aWFsVGV4dD8udHJpbSgpLFxuICAgICAgICApLFxuICAgICAgICBjb25jYXRNYXAoKHsgcGFydGlhbFRleHQgfSkgPT5cbiAgICAgICAgICBmcm9tKFxuICAgICAgICAgICAgcmVkdWNlV2F0Y2hFdmVudHMoXG4gICAgICAgICAgICAgIHBhcnNlSlNPTlN0cmVhbTxXYXRjaEFQSVJlc3BvbnNlPFQ+PihwYXJ0aWFsVGV4dCksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICApO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX2dldFJlc291cmNlTGlzdDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFJlc291cmNlTGlzdFJlYWRQYXJhbXM8Uj4sXG4gICkge1xuICAgIC8vIOWMheWQqyBrZXl3b3JkIOWJjee8gOmcgOimgeWKoOS4iuWJjee8gCAnYWNwL3YxL3Jlc291cmNlcy9zZWFyY2gnXG4gICAgLy8g5Y+C6ICDIGh0dHA6Ly9jb25mbHVlbmNlLmFsYXVkYS5jbi9wYWdlcy92aWV3cGFnZS5hY3Rpb24/cGFnZUlkPTQ4NzMxMDU4XG4gICAgbGV0IHVybCA9IHRoaXMuX2dldEFwaVBhdGgocGFyYW1zLCB0cnVlKTtcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHsgLi4ucGFyYW1zLnF1ZXJ5UGFyYW1zIH07XG4gICAgaWYgKHF1ZXJ5UGFyYW1zLmtleXdvcmQpIHtcbiAgICAgIHVybCA9IHVybC5yZXBsYWNlKEFQSV9HQVRFV0FZLCBgJHtBUElfR0FURVdBWX0ke1NFQVJDSF9VUkxfUFJFRklYfWApO1xuICAgICAgaWYgKCFxdWVyeVBhcmFtcy5maWVsZCkge1xuICAgICAgICBxdWVyeVBhcmFtcy5maWVsZCA9ICdtZXRhZGF0YS5uYW1lJztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PFQ+Pih1cmwsIHtcbiAgICAgICAgcGFyYW1zOiBxdWVyeVBhcmFtcyxcbiAgICAgICAgaGVhZGVyczogdGhpcy5fZ2V0SGVhZGVycyhwYXJhbXMsIHRydWUpLFxuICAgICAgfSlcbiAgICAgIC5waXBlKG1hcCh0aGlzLl9nZXROb3JtYWxpemVkTGlzdCkpO1xuICB9XG5cbiAgLy8gQGludGVybmFsXG4gIHByaXZhdGUgX3Bvc3RSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFJlc291cmNlV3JpdGVQYXJhbXM8UiwgVD4sXG4gICkge1xuICAgIGlmIChcbiAgICAgICgnbmFtZXNwYWNlJyBpbiBwYXJhbXMgJiYgcGFyYW1zLm5hbWVzcGFjZSkgfHxcbiAgICAgICgnbmFtZXNwYWNlZCcgaW4gcGFyYW1zICYmIHBhcmFtcy5uYW1lc3BhY2VkKVxuICAgICkge1xuICAgICAgY29uc3QgcmVzb3VyY2VOYW1lc3BhY2UgPSBnZXQocGFyYW1zLnJlc291cmNlLCBbTUVUQURBVEEsIE5BTUVTUEFDRV0pO1xuICAgICAgaWYgKCFyZXNvdXJjZU5hbWVzcGFjZSkge1xuICAgICAgICBzZXQoXG4gICAgICAgICAgcGFyYW1zLnJlc291cmNlLFxuICAgICAgICAgIFtNRVRBREFUQSwgTkFNRVNQQUNFXSxcbiAgICAgICAgICBwYXJhbXMubmFtZXNwYWNlIHx8IHRoaXMuZ2xvYmFsTmFtZXNwYWNlLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VD4odGhpcy5fZ2V0QXBpUGF0aChwYXJhbXMsIHRydWUpLCBwYXJhbXMucmVzb3VyY2UsIHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuX2dldEhlYWRlcnMocGFyYW1zKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9wdXRSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFJlc291cmNlV3JpdGVQYXJhbXM8UiwgVD4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0PFQ+KHRoaXMuX2dldEFwaVBhdGgocGFyYW1zKSwgcGFyYW1zLnJlc291cmNlLCB7XG4gICAgICBoZWFkZXJzOiB0aGlzLl9nZXRIZWFkZXJzKHBhcmFtcyksXG4gICAgfSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSBfcGF0Y2hSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFJlc291cmNlUGF0Y2hQYXJhbXM8UiwgVD4sXG4gICkge1xuICAgIHJldHVybiB0aGlzLmh0dHAucGF0Y2g8VD4odGhpcy5fZ2V0QXBpUGF0aChwYXJhbXMpLCBwYXJhbXMucGFydCwge1xuICAgICAgaGVhZGVyczoge1xuICAgICAgICAuLi50aGlzLl9nZXRIZWFkZXJzKHBhcmFtcyksXG4gICAgICAgICdDb250ZW50LVR5cGUnOiBwYXJhbXMub3BlcmF0aW9uIHx8IFBhdGNoT3BlcmF0aW9uLk1lcmdlLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9kZWxldGVSZXNvdXJjZTxcbiAgICBTIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlLFxuICAgIFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UsXG4gID4ocGFyYW1zOiBSZXNvdXJjZURlbGV0ZVBhcmFtczxSLCBUPikge1xuICAgIHJldHVybiB0aGlzLmh0dHAucmVxdWVzdDxTPignZGVsZXRlJywgdGhpcy5fZ2V0QXBpUGF0aChwYXJhbXMpLCB7XG4gICAgICBoZWFkZXJzOiB0aGlzLl9nZXRIZWFkZXJzKHBhcmFtcyksXG4gICAgICBib2R5OiBwYXJhbXMuYm9keSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBpbnRlcm5hbFxuICBwcml2YXRlIF9iYXRjaERlbGV0ZVJlc291cmNlPFMgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHBhcmFtczogRXJlYnVzUmVzb3VyY2VCYXRjaERlbGV0ZVBhcmFtczxSPixcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5yZXF1ZXN0PFM+KCdkZWxldGUnLCB0aGlzLl9nZXRBcGlQYXRoKHBhcmFtcyksIHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuX2dldEhlYWRlcnMocGFyYW1zKSxcbiAgICAgIGJvZHk6IHBhcmFtcy5ib2R5LFxuICAgICAgcGFyYW1zOiBwYXJhbXMucXVlcnlQYXJhbXMsXG4gICAgfSk7XG4gIH1cblxuICAvLyBAaW50ZXJuYWxcbiAgcHJpdmF0ZSByZWFkb25seSBfZ2V0SGVhZGVycyA9IChcbiAgICB7IG5vdGlmeU9uRXJyb3IsIG9ubHlNZXRhZGF0YSwgY3VzdG9tQWNjZXB0LCBjcnlwdG8gfTogQXBpQmFzZVBhcmFtczxSPixcbiAgICBpc0xpc3Q/OiBib29sZWFuLFxuICApID0+IHtcbiAgICBjb25zdCBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT4gPSB7fTtcbiAgICBpZiAodHlwZW9mIG5vdGlmeU9uRXJyb3IgPT09ICdib29sZWFuJykge1xuICAgICAgT2JqZWN0LmFzc2lnbihcbiAgICAgICAgaGVhZGVycyxcbiAgICAgICAgbm90aWZ5T25FcnJvciA/IE5PVElGWV9PTl9FUlJPUl9IRUFERVJTIDogTk9UX05PVElGWV9PTl9FUlJPUl9IRUFERVJTLFxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKGNyeXB0bykge1xuICAgICAgT2JqZWN0LmFzc2lnbihoZWFkZXJzLCB7XG4gICAgICAgIFtDUllQVE9fSEVBREVSX0tFWV06IGNyeXB0byxcbiAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9rdWJlcm5ldGVzL2Rlc2lnbi1wcm9wb3NhbHMtYXJjaGl2ZS9ibG9iL21haW4vYXBpLW1hY2hpbmVyeS9hbHRlcm5hdGUtYXBpLXJlcHJlc2VudGF0aW9ucy5tZFxuICAgICAqL1xuICAgIGlmIChvbmx5TWV0YWRhdGEpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oaGVhZGVycywgZ2V0TWV0YWRhdGFIZWFkZXJzKGlzTGlzdCwgY3VzdG9tQWNjZXB0KSk7XG4gICAgfVxuICAgIHJldHVybiBoZWFkZXJzO1xuICB9O1xuXG4gIHByaXZhdGUgX2dldERvd25ncmFkZVBvbGxpbmcoe1xuICAgIGtlZXBhbGl2ZSxcbiAgICBkb3duZ3JhZGVQb2xsaW5nLFxuICB9OiBXYXRjaEFwaVBhcmFtcykge1xuICAgIHJldHVybiBrZWVwYWxpdmVcbiAgICAgID8gZG93bmdyYWRlUG9sbGluZ1xuICAgICAgOiB0aGlzLnBhZ2VWaXNpYmlsaXR5XG4gICAgICAgICAgLmdldFBhZ2VWaXNpYmlsaXR5KClcbiAgICAgICAgICAucGlwZShtYXAodmlzaWJsZSA9PiAodmlzaWJsZSA/IGRvd25ncmFkZVBvbGxpbmcgOiAwKSkpO1xuICB9XG59XG4iXX0=
|
|
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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { HttpClient } from '@angular/common/http';
|
|
2
2
|
import { Injectable } from '@angular/core';
|
|
3
3
|
import { catchError, map, of, shareReplay } from 'rxjs';
|
|
4
|
-
import { API_GATEWAY, CacheStore, GLOBAL_CLUSTER, RESOURCE_TYPES, parseJson, } from '../core';
|
|
4
|
+
import { API_GATEWAY, CacheStore, GLOBAL_CLUSTER, RESOURCE_TYPES, parseJson, } from '../core/public-api';
|
|
5
5
|
import { K8sApiService } from './k8s-api.service';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@angular/common/http";
|
|
@@ -155,4 +155,4 @@ export function stringifyMetricParams(params) {
|
|
|
155
155
|
return acc;
|
|
156
156
|
}, {});
|
|
157
157
|
}
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uaXRvci1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvbW9uaXRvci1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsVUFBVSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSXBFLE9BQU8sRUFDTCxXQUFXLEVBQ1gsVUFBVSxFQUVWLGNBQWMsRUFDZCxjQUFjLEVBR2QsU0FBUyxHQUNWLE1BQU0sU0FBUyxDQUFDO0FBRWpCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7OztBQUVsRCxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FDNUMsMENBQTBDLENBQUM7QUFDN0MsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsa0NBQWtDLENBQUM7QUFNNUUsZ0ZBQWdGO0FBQ2hGLDRDQUE0QztBQUU1QyxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxNQUFNLENBQUM7QUFHL0MsTUFBTSxPQUFPLGlCQUFpQjtJQUc1QixZQUNtQixJQUFnQixFQUNoQixNQUFxQjtRQURyQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFKdkIsY0FBUyxHQUFHLEdBQUcsV0FBVyx3Q0FBd0MsQ0FBQztRQU9wRixzQkFBaUIsR0FBRyxDQUFDLE9BQWUsRUFBRSxNQUE0QixFQUFFLEVBQUU7WUFDcEUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDbEIsR0FBRyxJQUFJLENBQUMsU0FBUyxhQUFhLE9BQU8sVUFBVSxFQUMvQztnQkFDRSxNQUFNLEVBQUUscUJBQXFCLENBQUMs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QUUsRUFBNEIsQ0FBQyxDQUFDO0FBQ25DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY2F0Y2hFcnJvciwgbWFwLCBvZiwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFhPUiB9IGZyb20gJ3RzLWVzc2VudGlhbHMnO1xuXG5pbXBvcnQgeyBJbmRpY2F0b3JVbml0IH0gZnJvbSAnLi4vYS1tZXRyaWMtY2hhcnQvdHlwZXMnO1xuaW1wb3J0IHtcbiAgQVBJX0dBVEVXQVksXG4gIENhY2hlU3RvcmUsXG4gIENvbmZpZ01hcCxcbiAgR0xPQkFMX0NMVVNURVIsXG4gIFJFU09VUkNFX1RZUEVTLFxuICBTdHJpbmdNYXAsXG4gIFdvcmtzcGFjZVBhcmFtcyxcbiAgcGFyc2VKc29uLFxufSBmcm9tICcuLi9jb3JlJztcblxuaW1wb3J0IHsgSzhzQXBpU2VydmljZSB9IGZyb20gJy4vazhzLWFwaS5zZXJ2aWNlJztcblxuZXhwb3J0IGNvbnN0IElORElDQVRPUl9QUk9NRVRIRVVTX05PVF9ERVBMT1lFRCA9XG4gICdwbGF0Zm9ybS5jbHVzdGVyLnByb21ldGhldXMubm90LmRlcGxveWVkJztcbmV4cG9ydCBjb25zdCBJTkRJQ0FUT1JfUFJPTUVUSEVVU19ET1dOID0gJ3BsYXRmb3JtLmNsdXN0ZXIucHJvbWV0aGV1cy5kb3duJztcblxuZXhwb3J0IGludGVyZmFjZSBWYXJpYWJsZXNSZXN1bHQge1xuICBvcHRpb25zOiBzdHJpbmdbXTtcbn1cblxuLy8g55uR5o6nIEFQSSDor7TmmI4gaHR0cHM6Ly9jb25mbHVlbmNlLmFsYXVkYS5jbi9wYWdlcy92aWV3cGFnZS5hY3Rpb24/cGFnZUlkPTE0MDgxMTgzNFxuLy8g55uR5o6n5oyH5qCHIGh0dHA6Ly9jb25mbHVlbmNlLmFsYXVkYS5jbi94L1NJZWVBUVxuXG5leHBvcnQgY29uc3QgTElNSVRFRF9PTERfVkVSU0lPTl8zXzE0ID0gJzMuMTInO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1vbml0b3JBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSB1cmxQcmVmaXggPSBgJHtBUElfR0FURVdBWX0vcGxhdGZvcm0vbW9uaXRvcmluZy5hbGF1ZGEuaW8vdjFiZXRhMWA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgazhzQXBpOiBLOHNBcGlTZXJ2aWNlLFxuICApIHt9XG5cbiAgZ2V0Q2x1c3Rlck1ldHJpY3MgPSAoY2x1c3Rlcjogc3RyaW5nLCBwYXJhbXM/OiBNb25pdG9yTWV0cmljUGFyYW1zKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8TW9uaXRvck1ldHJpY1tdPihcbiAgICAgIGAke3RoaXMudXJsUHJlZml4fS9jbHVzdGVycy8ke2NsdXN0ZXJ9L21ldHJpY3NgLFxuICAgICAge1xuICAgICAgICBwYXJhbXM6IHN0cmluZ2lmeU1ldHJpY1BhcmFtcyhwYXJhbXMpLFxuICAgICAgfSxcbiAgICApO1xuICB9O1xuXG4gIGdldFByb2plY3RNZXRyaWNzID0gKHByb2plY3Q6IHN0cmluZywgcGFyYW1zPzogTW9uaXRvck1ldHJpY1BhcmFtcykgPT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE1vbml0b3JNZXRyaWNbXT4oXG4gICAgICBgJHt0aGlzLnVybFByZWZpeH0vcHJvamVjdHMvJHtwcm9qZWN0fS9tZXRyaWNzYCxcbiAgICAgIHtcbiAgICAgICAgcGFyYW1zOiBzdHJpbmdpZnlNZXRyaWNQYXJhbXMocGFyYW1zKSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcblxuICBnZXROYW1lc3BhY2VNZXRyaWNzID0gKFxuICAgIHdvcmtzcGFjZTogV29ya3NwYWNlUGFyYW1zLFxuICAgIHBhcmFtcz86IE1vbml0b3JNZXRyaWNQYXJhbXMsXG4gICkgPT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE1vbml0b3JNZXRyaWNbXT4oXG4gICAgICBgJHt0aGlzLnVybFByZWZpeH0vcHJvamVjdHMvJHt3b3Jrc3BhY2UucHJvamVjdH0vY2x1c3RlcnMvJHt3b3Jrc3BhY2UuY2x1c3Rlcn0vbmFtZXNwYWNlcy8ke3dvcmtzcGFjZS5uYW1lc3BhY2V9L21ldHJpY3NgLFxuICAgICAge1xuICAgICAgICBwYXJhbXM6IHN0cmluZ2lmeU1ldHJpY1BhcmFtcyhwYXJhbXMpLFxuICAgICAgfSxcbiAgICApO1xuICB9O1xuXG4gIGNoZWNrUHJvbWV0aGV1c1N0YXR1cyhjbHVzdGVyOiBzdHJpbmcsIHNjb3BlPzogUGFydGlhbDxXb3Jrc3BhY2VQYXJhbXM+KSB7XG4gICAgc2NvcGUgPSBzY29wZSB8fCB7IGNsdXN0ZXIgfTtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRyaWNzKHNjb3BlLCB7XG4gICAgICBpbmRpY2F0b3JzOiBqb2luTWV0cmljU2VwYXJhdG9yKFtcbiAgICAgICAgSU5ESUNBVE9SX1BST01FVEhFVVNfTk9UX0RFUExPWUVELFxuICAgICAgICBJTkRJQ0FUT1JfUFJPTUVUSEVVU19ET1dOLFxuICAgICAgXSksXG4gICAgICB2YXJpYWJsZXM6IHsgY2x1c3RlciB9LFxuICAgIH0pLnBpcGUoXG4gICAgICBtYXAobWV0cmljcyA9PiAoe1xuICAgICAgICBub3REZXBsb3llZDogcGFyc2VQcm9tZXRoZXVzU3RhdHVzKFxuICAgICAgICAgIGNsdXN0ZXIsXG4gICAgICAgICAgbWV0cmljcy5maW5kKFxuICAgICAgICAgICAgbWV0cmljID0+IG1ldHJpYy5pbmRpY2F0b3IgPT09IElORElDQVRPUl9QUk9NRVRIRVVTX05PVF9ERVBMT1lFRCxcbiAgICAgICAgICApLnJlc3VsdCxcbiAgICAgICAgKSxcbiAgICAgICAgYWJub3JtYWw6IHBhcnNlUHJvbWV0aGV1c1N0YXR1cyhcbiAgICAgICAgICBjbHVzdGVyLFxuICAgICAgICAgIG1ldHJpY3MuZmluZChtZXRyaWMgPT4gbWV0cmljLmluZGljYXRvciA9PT0gSU5ESUNBVE9SX1BST01FVEhFVVNfRE9XTilcbiAgICAgICAgICAgIC5yZXN1bHQsXG4gICAgICAgICksXG4gICAgICB9KSksXG4gICAgICBtYXAoKHsgbm90RGVwbG95ZWQsIGFibm9ybWFsIH0pID0+ICh7XG4gICAgICAgIG5vdERlcGxveWVkLFxuICAgICAgICBhYm5vcm1hbDogbm90RGVwbG95ZWQgPyBmYWxzZSA6IGFibm9ybWFsLFxuICAgICAgfSkpLFxuICAgICk7XG4gIH1cblxuICBjaGVja1Byb21ldGhldXNEZXBsb3llZChjbHVzdGVyOiBzdHJpbmcsIHNjb3BlPzogUGFydGlhbDxXb3Jrc3BhY2VQYXJhbXM+KSB7XG4gICAgc2NvcGUgPSBzY29wZSB8fCB7IGNsdXN0ZXIgfTtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRyaWNzKHNjb3BlLCB7XG4gICAgICBpbmRpY2F0b3JzOiBJTkRJQ0FUT1JfUFJPTUVUSEVVU19OT1RfREVQTE9ZRUQsXG4gICAgICB2YXJpYWJsZXM6IHsgY2x1c3RlciB9LFxuICAgIH0pLnBpcGUobWFwKChbeyByZXN1bHQgfV0pID0+ICFwYXJzZVByb21ldGhldXNTdGF0dXMoY2x1c3RlciwgcmVzdWx0KSkpO1xuICB9XG5cbiAgY2hlY2tQcm9tZXRoZXVzQWJub3JtYWwoY2x1c3Rlcjogc3RyaW5nLCBzY29wZT86IFBhcnRpYWw8V29ya3NwYWNlUGFyYW1zPikge1xuICAgIHNjb3BlID0gc2NvcGUgfHwgeyBjbHVzdGVyIH07XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0cmljcyhzY29wZSwge1xuICAgICAgaW5kaWNhdG9yczogSU5ESUNBVE9SX1BST01FVEhFVVNfRE9XTixcbiAgICAgIHZhcmlhYmxlczogeyBjbHVzdGVyIH0sXG4gICAgfSkucGlwZShtYXAoKFt7IHJlc3VsdCB9XSkgPT4gcGFyc2VQcm9tZXRoZXVzU3RhdHVzKGNsdXN0ZXIsIHJlc3VsdCkpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TWV0cmljcyhcbiAgICB3b3Jrc3BhY2U6IFBhcnRpYWw8V29ya3NwYWNlUGFyYW1zPixcbiAgICBwYXJhbXM6IE1vbml0b3JNZXRyaWNQYXJhbXMsXG4gICkge1xuICAgIHJldHVybiB3b3Jrc3BhY2U/Lm5hbWVzcGFjZVxuICAgICAgPyB0aGlzLmdldE5hbWVzcGFjZU1ldHJpY3Mod29ya3NwYWNlIGFzIFdvcmtzcGFjZVBhcmFtcywgcGFyYW1zKVxuICAgICAgOiB3b3Jrc3BhY2U/LnByb2plY3RcbiAgICAgID8gdGhpcy5nZXRQcm9qZWN0TWV0cmljcyh3b3Jrc3BhY2UucHJvamVjdCwgcGFyYW1zKVxuICAgICAgOiB0aGlzLmdldENsdXN0ZXJNZXRyaWNzKHdvcmtzcGFjZS5jbHVzdGVyLCBwYXJhbXMpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBpbmRpY2F0b3JTdG9yZSQgPSBuZXcgQ2FjaGVTdG9yZSh7XG4gICAgc2hhcmU6ICgpID0+IHNoYXJlUmVwbGF5KDEpLFxuICAgIGZldGNoZXI6ICh7IGNsdXN0ZXIsIHBhcmFtcyB9OiB7IGNsdXN0ZXI6IHN0cmluZzsgcGFyYW1zOiBTdHJpbmdNYXAgfSkgPT5cbiAgICAgIHRoaXMuaHR0cFxuICAgICAgICAuZ2V0KFxuICAgICAgICAgIGAke0FQSV9HQVRFV0FZfS92Mi9tZXRyaWNzLyR7Y2x1c3Rlcn0vaW5kaWNhdG9yc2AsXG4gICAgICAgICAgcGFyYW1zID8geyBwYXJhbXMgfSA6IHVuZGVmaW5lZCxcbiAgICAgICAgKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtYXAoKHJlc3VsdDogSW5kaWNhdG9yVHlwZVtdKSA9PlxuICAgICAgICAgICAgWy4uLnJlc3VsdF0uc29ydCgoYSwgYikgPT5cbiAgICAgICAgICAgICAgKCcnICsgYS5kaXNwbGF5TmFtZSkubG9jYWxlQ29tcGFyZShiLmRpc3BsYXlOYW1lKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgKSxcbiAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IG9mKFtdKSksXG4gICAgICAgICksXG4gIH0pO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaW5kaWNhdG9yVW5pdHNTdG9yZSQgPSBuZXcgQ2FjaGVTdG9yZSh7XG4gICAgaWRHZW5lcmF0b3I6ICgpID0+ICdjcGFhcy1pbmRpY2F0b3ItdW5pdHMnLFxuICAgIHNoYXJlOiAoKSA9PiBzaGFyZVJlcGxheSgxKSxcbiAgICBmZXRjaGVyOiAoKSA9PlxuICAgICAgdGhpcy5rOHNBcGlcbiAgICAgICAgLmdldEdsb2JhbFJlc291cmNlPENvbmZpZ01hcDx7IHVuaXRzOiBzdHJpbmcgfT4+KHtcbiAgICAgICAgICB0eXBlOiBSRVNPVVJDRV9UWVBFUy5DT05GSUdfTUFQLFxuICAgICAgICAgIG5hbWU6ICdjcGFhcy1pbmRpY2F0b3ItdW5pdHMnLFxuICAgICAgICAgIG5hbWVzcGFjZWQ6IHRydWUsXG4gICAgICAgIH0pXG4gICAgICAgIC5waXBlKGNhdGNoRXJyb3IoKCkgPT4gb2YobnVsbCkpKSxcbiAgfSk7XG5cbiAgZ2V0SW5kaWNhdG9ycyhcbiAgICBjbHVzdGVyOiBzdHJpbmcsXG4gICAgcGFyYW1zPzogU3RyaW5nTWFwLFxuICApOiBPYnNlcnZhYmxlPEluZGljYXRvclR5cGVbXT4ge1xuICAgIHJldHVybiB0aGlzLmluZGljYXRvclN0b3JlJC5mZXRjaCh7IGNsdXN0ZXIsIC4uLihwYXJhbXMgJiYgeyBwYXJhbXMgfSkgfSk7XG4gIH1cblxuICBnZXRJbmRpY2F0b3JVbml0cygpOiBPYnNlcnZhYmxlPEluZGljYXRvclVuaXRbXT4ge1xuICAgIHJldHVybiB0aGlzLmluZGljYXRvclVuaXRzU3RvcmUkXG4gICAgICAuZmV0Y2gobnVsbClcbiAgICAgIC5waXBlKG1hcChpdGVtID0+IHBhcnNlSnNvbihpdGVtPy5kYXRhPy51bml0cykpKTtcbiAgfVxuXG4gIGdldENsdXN0ZXJWYXJpYWJsZXMgPSAoY2x1c3Rlcjogc3RyaW5nLCBwYXJhbXM/OiBNb25pdG9yVmFyaWFibGVzUGFyYW1zKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8VmFyaWFibGVzUmVzdWx0PihcbiAgICAgIGAke3RoaXMudXJsUHJlZml4fS9jbHVzdGVycy8ke2NsdXN0ZXJ9L3ZhcmlhYmxlc2AsXG4gICAgICB7XG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgIC4uLnBhcmFtcyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcblxuICBnZXRQcm9qZWN0VmFyaWFibGVzID0gKHByb2plY3Q6IHN0cmluZywgcGFyYW1zPzogTW9uaXRvclZhcmlhYmxlc1BhcmFtcykgPT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFZhcmlhYmxlc1Jlc3VsdD4oXG4gICAgICBgJHt0aGlzLnVybFByZWZpeH0vcHJvamVjdHMvJHtwcm9qZWN0fS92YXJpYWJsZXNgLFxuICAgICAge1xuICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAuLi5wYXJhbXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH07XG5cbiAgZ2V0TmFtZXNwYWNlVmFyaWFibGVzID0gKFxuICAgIHdvcmtzcGFjZTogV29ya3NwYWNlUGFyYW1zLFxuICAgIHBhcmFtcz86IE1vbml0b3JWYXJpYWJsZXNQYXJhbXMsXG4gICkgPT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFZhcmlhYmxlc1Jlc3VsdD4oXG4gICAgICBgJHt0aGlzLnVybFByZWZpeH0vcHJvamVjdHMvJHt3b3Jrc3BhY2UucHJvamVjdH0vY2x1c3RlcnMvJHt3b3Jrc3BhY2UuY2x1c3Rlcn0vbmFtZXNwYWNlcy8ke3dvcmtzcGFjZS5uYW1lc3BhY2V9L3ZhcmlhYmxlc2AsXG4gICAgICB7XG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgIC4uLnBhcmFtcyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gcGFyc2VQcm9tZXRoZXVzU3RhdHVzKGNsdXN0ZXI6IHN0cmluZywgcmVzdWx0OiBNb25pdG9yTWV0cmljUmVzdWx0W10pIHtcbiAgcmV0dXJuIGNsdXN0ZXIgPT09IEdMT0JBTF9DTFVTVEVSXG4gICAgPyByZXN1bHQubGVuZ3RoICE9PSAwXG4gICAgOiAhIXJlc3VsdFswXT8udmFsdWVzPy5sZW5ndGg7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBqb2luTWV0cmljU2VwYXJhdG9yKGluZGljYXRvcnM6IHN0cmluZ1tdKSB7XG4gIHJldHVybiBpbmRpY2F0b3JzLmpvaW4oJ3wnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZ2lmeU1ldHJpY1ZhcmlhYmxlcyhcbiAgdmFyaWFibGVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuKTogc3RyaW5nIHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHZhcmlhYmxlcylcbiAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAke2tleX09JHt2YWx1ZX1gKVxuICAgIC5qb2luKCcsJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdpZnlNZXRyaWNQYXJhbXMocGFyYW1zOiBNb25pdG9yTWV0cmljUGFyYW1zKSB7XG4gIHJldHVybiBPYmplY3QuZW50cmllcyhwYXJhbXMpLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+IHtcbiAgICBpZiAoa2V5ID09PSAndmFyaWFibGVzJykge1xuICAgICAgYWNjW2tleV0gPSBzdHJpbmdpZnlNZXRyaWNWYXJpYWJsZXMoXG4gICAgICAgIE9iamVjdC5lbnRyaWVzKHZhbHVlKS5yZWR1Y2UoKGEsIFtrLCB2XSkgPT4ge1xuICAgICAgICAgIGFba10gPSBBcnJheS5pc0FycmF5KHYpID8gam9pbk1ldHJpY1NlcGFyYXRvcih2KSA6IHY7XG4gICAgICAgICAgcmV0dXJuIGE7XG4gICAgICAgIH0sIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz4pLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKGtleSA9PT0gJ2luZGljYXRvcnMnKSB7XG4gICAgICBhY2Nba2V5XSA9IEFycmF5LmlzQXJyYXkodmFsdWUpXG4gICAgICAgID8gam9pbk1ldHJpY1NlcGFyYXRvcih2YWx1ZSlcbiAgICAgICAgOiAodmFsdWUgYXMgc3RyaW5nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYWNjW2tleV0gPSB2YWx1ZSArICcnO1xuICAgIH1cbiAgICByZXR1cm4gYWNjO1xuICB9LCB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTtcbn1cblxuZXhwb3J0IHR5cGUgTW9uaXRvck1ldHJpY1BhcmFtcyA9IFBhcnRpYWw8XG4gIFhPUjx7IHN0YXJ0OiBudW1iZXI7IGVuZDogbnVtYmVyOyBzdGVwOiBudW1iZXIgfSwgeyB0aW1lOiBudW1iZXIgfT4gJlxuICAgIFhPUjx7IGluZGljYXRvcnM6IHN0cmluZyB8IHN0cmluZ1tdIH0sIHsgZXhwcjogc3RyaW5nIH0+ICYge1xuICAgICAgdGltZW91dDogbnVtYmVyO1xuICAgICAgdmFyaWFibGVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT47XG4gICAgfVxuPjtcblxuZXhwb3J0IGludGVyZmFjZSBNb25pdG9yVmFyaWFibGVzUGFyYW1zIHtcbiAgZXhwcjogc3RyaW5nO1xuICByZWdleD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb25pdG9yTWV0cmljIHtcbiAgaW5kaWNhdG9yOiBzdHJpbmc7XG4gIHF1ZXJ5OiBzdHJpbmc7XG4gIHJlc3VsdDogTW9uaXRvck1ldHJpY1Jlc3VsdFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvc3RNZXRyaWMge1xuICBpbmRpY2F0b3I6IHN0cmluZztcbiAgcmVzdWx0OiBDb3N0TWV0cmljUmVzdWx0W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9uaXRvck1ldHJpY1Jlc3VsdCB7XG4gIG1ldHJpYzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgdmFsdWVzOiBBcnJheTxbbnVtYmVyLCBzdHJpbmddPjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQ29zdE1ldHJpY1Jlc3VsdCB7XG4gIG1ldHJpYzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgdmFsdWVzOiBBcnJheTxbbnVtYmVyLCBzdHJpbmddPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmRpY2F0b3JUeXBlIHtcbiAga2luZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHVuaXQ6IHN0cmluZztcbiAgc3RyaW5nPzogc3RyaW5nO1xuICB2YWx1ZV90eXBlPzogc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xuICBxdWVyeT86IHN0cmluZztcbiAgYWxlcnRfZW5hYmxlZD86IGJvb2xlYW47XG4gIGFsZXJ0RW5hYmxlZD86IGJvb2xlYW47XG4gIGFnZ3JlZ2F0aW9uX2VuYWJsZWQ/OiBib29sZWFuO1xuICBkaXNwbGF5X25hbWU/OiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuICBsZWdlbmQ/OiBzdHJpbmc7XG4gIHN1bW1hcnk/OiBzdHJpbmc7XG4gIGFubm90YXRpb25zPzogSW5kaWNhdG9yQW5ub3RhdGlvbnM7XG4gIHZhcmlhYmxlcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZGljYXRvckFubm90YXRpb25zIHtcbiAgY246IHN0cmluZztcbiAgZW46IHN0cmluZztcbiAgYXNtRXh0cmFGZWF0dXJlcz86IHN0cmluZztcbiAgZGVzY3JpcHRpb25FTj86IHN0cmluZztcbiAgZGVzY3JpcHRpb25aSD86IHN0cmluZztcbiAgZGlzcGxheU5hbWVFTj86IHN0cmluZztcbiAgZGlzcGxheU5hbWVaSD86IHN0cmluZztcbn1cbiJdfQ==
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uaXRvci1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvbW9uaXRvci1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsVUFBVSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSXBFLE9BQU8sRUFDTCxXQUFXLEVBQ1gsVUFBVSxFQUVWLGNBQWMsRUFDZCxjQUFjLEVBR2QsU0FBUyxHQUNWLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7O0FBRWxELE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUM1QywwQ0FBMEMsQ0FBQztBQUM3QyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxrQ0FBa0MsQ0FBQztBQU01RSxnRkFBZ0Y7QUFDaEYsNENBQTRDO0FBRTVDLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLE1BQU0sQ0FBQztBQUcvQyxNQUFNLE9BQU8saUJBQWlCO0lBRzVCLFlBQ21CLElBQWdCLEVBQ2hCLE1BQXFCO1FBRHJCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUp2QixjQUFTLEdBQUcsR0FBRyxXQUFXLHdDQUF3QyxDQUFDO1FBT3BGLHNCQUFpQixHQUFHLENBQUMsT0FBZSxFQUFFLE1BQTRCLEVBQUUsRUFBRTtZQUNwRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQixHQUFHLElBQUksQ0FBQyxTQUFTLGFBQWEsT0FBTyxVQUFVLEVBQy9DO2dCQUNFLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7YUFDdEMsQ0FDRixDQUFDO1FBQ0osQ0FBQyxDQUFDO1FBRUYsc0JBQWlCLEdBQUcsQ0FBQyxPQUFlLEVBQUUsTUFBNEIsRUFBRSxFQUFFO1lBQ3BFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ2xCLEdBQUcsSUFBSSxDQUFDLFNBQVMsYUFBYSxPQUFPLFVBQVUsRUFDL0M7Z0JBQ0UsTUFBTSxFQUFFLHFCQUFxQixDQUFDLE1BQU0sQ0FBQzthQUN0QyxDQUNGLENBQUM7UUFDSixDQUFDLENBQUM7UUFFRix3QkFBbUIsR0FBRyxDQUNwQixTQUEwQixFQUMxQixNQUE0QixFQUM1QixFQUFFO1lBQ0YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDbEIsR0FBRyxJQUFJLENBQUMsU0FBUyxhQUFhLFNBQVMsQ0FBQyxPQUFPLGFBQWEsU0FBUyxDQUFDLE9BQU8sZUFBZSxTQUFTLENBQUMsU0FBUyxVQUFVLEVBQ3pIO2dCQUNFLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7YUFDdEMsQ0FDRixDQUFDO1FBQ0osQ0FBQyxDQUFDO1FBMERlLG9CQUFlLEdBQUcsSUFBSSxVQUFVLENBQUM7WUFDaEQsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDM0IsT0FBTyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUEwQyxFQUFFLEVBQUUsQ0FDdkUsSUFBSSxDQUFDLElBQUk7aUJBQ04sR0FBRyxDQUNGLEdBQUcsV0FBVyxlQUFlLE9BQU8sYUFBYSxFQUNqRCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FDaEM7aUJBQ0EsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLE1BQXVCLEVBQUUsRUFBRSxDQUM5QixDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQ3hCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUNsRCxDQUNGLEVBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUN6QjtTQUNOLENBQUMsQ0FBQztRQUVjLHlCQUFvQixHQUFHLElBQUksVUFBVSxDQUFDO1lBQ3JELFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyx1QkFBdUI7WUFDMUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDM0IsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUNaLElBQUksQ0FBQyxNQUFNO2lCQUNSLGlCQUFpQixDQUErQjtnQkFDL0MsSUFBSSxFQUFFLGNBQWMsQ0FBQyxVQUFVO2dCQUMvQixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixVQUFVLEVBQUUsSUFBSTthQUNqQixDQUFDO2lCQUNELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDdEMsQ0FBQyxDQUFDO1FBZUgsd0JBQW1CLEdBQUcsQ0FBQyxPQUFlLEVBQUUsTUFBK0IsRUFBRSxFQUFFO1lBQ3pFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ2xCLEdBQUcsSUFBSSxDQUFDLFNBQVMsYUFBYSxPQUFPLFlBQVksRUFDakQ7Z0JBQ0UsTUFBTSxFQUFFO29CQUNOLEdBQUcsTUFBTTtpQkFDVjthQUNGLENBQ0YsQ0FBQztRQUNKLENBQUMsQ0FBQztRQUVGLHdCQUFtQixHQUFHLENBQUMsT0FBZSxFQUFFLE1BQStCLEVBQUUsRUFBRTtZQUN6RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQixHQUFHLElBQUksQ0FBQyxTQUFTLGFBQWEsT0FBTyxZQUFZLEVBQ2pEO2dCQUNFLE1BQU0sRUFBRTtvQkFDTixHQUFHLE1BQU07aUJBQ1Y7YUFDRixDQUNGLENBQUM7UUFDSixDQUFDLENBQUM7UUFFRiwwQkFBcUIsR0FBRyxDQUN0QixTQUEwQixFQUMxQixNQUErQixFQUMvQixFQUFFO1lBQ0YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDbEIsR0FBRyxJQUFJLENBQUMsU0FBUyxhQUFhLFNBQVMsQ0FBQyxPQUFPLGFBQWEsU0FBUyxDQUFDLE9BQU8sZUFBZSxTQUFTLENBQUMsU0FBUyxZQUFZLEVBQzNIO2dCQUNFLE1BQU0sRUFBRTtvQkFDTixHQUFHLE1BQU07aUJBQ1Y7YUFDRixDQUNGLENBQUM7UUFDSixDQUFDLENBQUM7SUF0S0MsQ0FBQztJQWdDSixxQkFBcUIsQ0FBQyxPQUFlLEVBQUUsS0FBZ0M7UUFDckUsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUU7WUFDNUIsVUFBVSxFQUFFLG1CQUFtQixDQUFDO2dCQUM5QixpQ0FBaUM7Z0JBQ2pDLHlCQUF5QjthQUMxQixDQUFDO1lBQ0YsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFO1NBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQ0wsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNkLFdBQVcsRUFBRSxxQkFBcUIsQ0FDaEMsT0FBTyxFQUNQLE9BQU8sQ0FBQyxJQUFJLENBQ1YsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxLQUFLLGlDQUFpQyxDQUNqRSxDQUFDLE1BQU0sQ0FDVDtZQUNELFFBQVEsRUFBRSxxQkFBcUIsQ0FDN0IsT0FBTyxFQUNQLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxLQUFLLHlCQUF5QixDQUFDO2lCQUNuRSxNQUFNLENBQ1Y7U0FDRixDQUFDLENBQUMsRUFDSCxHQUFHLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNsQyxXQUFXO1lBQ1gsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRO1NBQ3pDLENBQUMsQ0FBQyxDQUNKLENBQUM7SUFDSixDQUFDO0lBRUQsdUJBQXVCLENBQUMsT0FBZSxFQUFFLEtBQWdDO1FBQ3ZFLEtBQUssR0FBRyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFO1lBQzVCLFVBQVUsRUFBRSxpQ0FBaUM7WUFDN0MsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFO1NBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMscUJBQXFCLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsdUJBQXVCLENBQUMsT0FBZSxFQUFFLEtBQWdDO1FBQ3ZFLEtBQUssR0FBRyxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFO1lBQzVCLFVBQVUsRUFBRSx5QkFBeUI7WUFDckMsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFO1NBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVPLFVBQVUsQ0FDaEIsU0FBbUMsRUFDbkMsTUFBMkI7UUFFM0IsT0FBTyxTQUFTLEVBQUUsU0FBUztZQUN6QixDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFNBQTRCLEVBQUUsTUFBTSxDQUFDO1lBQ2hFLENBQUMsQ0FBQyxTQUFTLEVBQUUsT0FBTztnQkFDcEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQztnQkFDbkQsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFpQ0QsYUFBYSxDQUNYLE9BQWUsRUFDZixNQUFrQjtRQUVsQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxNQUFNLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsb0JBQW9CO2FBQzdCLEtBQUssQ0FBQyxJQUFJLENBQUM7YUFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7a0ZBeElVLGlCQUFpQjt1RUFBakIsaUJBQWlCLFdBQWpCLGlCQUFpQixtQkFESixNQUFNOzt1RkFDbkIsaUJBQWlCO2NBRDdCLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O0FBZ0xsQyxTQUFTLHFCQUFxQixDQUFDLE9BQWUsRUFBRSxNQUE2QjtJQUMzRSxPQUFPLE9BQU8sS0FBSyxjQUFjO1FBQy9CLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztBQUNsQyxDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUFDLFVBQW9CO0lBQ3RELE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUM5QixDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUN0QyxTQUFpQztJQUVqQyxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO1NBQzdCLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztTQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLE1BQTJCO0lBQy9ELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtRQUN6RCxJQUFJLEdBQUcsS0FBSyxXQUFXLEVBQUU7WUFDdkIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLHdCQUF3QixDQUNqQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUN6QyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDckQsT0FBTyxDQUFDLENBQUM7WUFDWCxDQUFDLEVBQUUsRUFBNEIsQ0FBQyxDQUNqQyxDQUFDO1NBQ0g7YUFBTSxJQUFJLEdBQUcsS0FBSyxZQUFZLEVBQUU7WUFDL0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUM3QixDQUFDLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDO2dCQUM1QixDQUFDLENBQUUsS0FBZ0IsQ0FBQztTQUN2QjthQUFNO1lBQ0wsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssR0FBRyxFQUFFLENBQUM7U0FDdkI7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsRUFBRSxFQUE0QixDQUFDLENBQUM7QUFDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjYXRjaEVycm9yLCBtYXAsIG9mLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgWE9SIH0gZnJvbSAndHMtZXNzZW50aWFscyc7XG5cbmltcG9ydCB7IEluZGljYXRvclVuaXQgfSBmcm9tICcuLi9hLW1ldHJpYy1jaGFydC90eXBlcyc7XG5pbXBvcnQge1xuICBBUElfR0FURVdBWSxcbiAgQ2FjaGVTdG9yZSxcbiAgQ29uZmlnTWFwLFxuICBHTE9CQUxfQ0xVU1RFUixcbiAgUkVTT1VSQ0VfVFlQRVMsXG4gIFN0cmluZ01hcCxcbiAgV29ya3NwYWNlUGFyYW1zLFxuICBwYXJzZUpzb24sXG59IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IEs4c0FwaVNlcnZpY2UgfSBmcm9tICcuL2s4cy1hcGkuc2VydmljZSc7XG5cbmV4cG9ydCBjb25zdCBJTkRJQ0FUT1JfUFJPTUVUSEVVU19OT1RfREVQTE9ZRUQgPVxuICAncGxhdGZvcm0uY2x1c3Rlci5wcm9tZXRoZXVzLm5vdC5kZXBsb3llZCc7XG5leHBvcnQgY29uc3QgSU5ESUNBVE9SX1BST01FVEhFVVNfRE9XTiA9ICdwbGF0Zm9ybS5jbHVzdGVyLnByb21ldGhldXMuZG93bic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFyaWFibGVzUmVzdWx0IHtcbiAgb3B0aW9uczogc3RyaW5nW107XG59XG5cbi8vIOebkeaOpyBBUEkg6K+05piOIGh0dHBzOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0xNDA4MTE4MzRcbi8vIOebkeaOp+aMh+aghyBodHRwOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24veC9TSWVlQVFcblxuZXhwb3J0IGNvbnN0IExJTUlURURfT0xEX1ZFUlNJT05fM18xNCA9ICczLjEyJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBNb25pdG9yQXBpU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdXJsUHJlZml4ID0gYCR7QVBJX0dBVEVXQVl9L3BsYXRmb3JtL21vbml0b3JpbmcuYWxhdWRhLmlvL3YxYmV0YTFgO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGs4c0FwaTogSzhzQXBpU2VydmljZSxcbiAgKSB7fVxuXG4gIGdldENsdXN0ZXJNZXRyaWNzID0gKGNsdXN0ZXI6IHN0cmluZywgcGFyYW1zPzogTW9uaXRvck1ldHJpY1BhcmFtcykgPT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PE1vbml0b3JNZXRyaWNbXT4oXG4gICAgICBgJHt0aGlzLnVybFByZWZpeH0vY2x1c3RlcnMvJHtjbHVzdGVyfS9tZXRyaWNzYCxcbiAgICAgIHtcbiAgICAgICAgcGFyYW1zOiBzdHJpbmdpZnlNZXRyaWNQYXJhbXMocGFyYW1zKSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcblxuICBnZXRQcm9qZWN0TWV0cmljcyA9IChwcm9qZWN0OiBzdHJpbmcsIHBhcmFtcz86IE1vbml0b3JNZXRyaWNQYXJhbXMpID0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxNb25pdG9yTWV0cmljW10+KFxuICAgICAgYCR7dGhpcy51cmxQcmVmaXh9L3Byb2plY3RzLyR7cHJvamVjdH0vbWV0cmljc2AsXG4gICAgICB7XG4gICAgICAgIHBhcmFtczogc3RyaW5naWZ5TWV0cmljUGFyYW1zKHBhcmFtcyksXG4gICAgICB9LFxuICAgICk7XG4gIH07XG5cbiAgZ2V0TmFtZXNwYWNlTWV0cmljcyA9IChcbiAgICB3b3Jrc3BhY2U6IFdvcmtzcGFjZVBhcmFtcyxcbiAgICBwYXJhbXM/OiBNb25pdG9yTWV0cmljUGFyYW1zLFxuICApID0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxNb25pdG9yTWV0cmljW10+KFxuICAgICAgYCR7dGhpcy51cmxQcmVmaXh9L3Byb2plY3RzLyR7d29ya3NwYWNlLnByb2plY3R9L2NsdXN0ZXJzLyR7d29ya3NwYWNlLmNsdXN0ZXJ9L25hbWVzcGFjZXMvJHt3b3Jrc3BhY2UubmFtZXNwYWNlfS9tZXRyaWNzYCxcbiAgICAgIHtcbiAgICAgICAgcGFyYW1zOiBzdHJpbmdpZnlNZXRyaWNQYXJhbXMocGFyYW1zKSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcblxuICBjaGVja1Byb21ldGhldXNTdGF0dXMoY2x1c3Rlcjogc3RyaW5nLCBzY29wZT86IFBhcnRpYWw8V29ya3NwYWNlUGFyYW1zPikge1xuICAgIHNjb3BlID0gc2NvcGUgfHwgeyBjbHVzdGVyIH07XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0cmljcyhzY29wZSwge1xuICAgICAgaW5kaWNhdG9yczogam9pbk1ldHJpY1NlcGFyYXRvcihbXG4gICAgICAgIElORElDQVRPUl9QUk9NRVRIRVVTX05PVF9ERVBMT1lFRCxcbiAgICAgICAgSU5ESUNBVE9SX1BST01FVEhFVVNfRE9XTixcbiAgICAgIF0pLFxuICAgICAgdmFyaWFibGVzOiB7IGNsdXN0ZXIgfSxcbiAgICB9KS5waXBlKFxuICAgICAgbWFwKG1ldHJpY3MgPT4gKHtcbiAgICAgICAgbm90RGVwbG95ZWQ6IHBhcnNlUHJvbWV0aGV1c1N0YXR1cyhcbiAgICAgICAgICBjbHVzdGVyLFxuICAgICAgICAgIG1ldHJpY3MuZmluZChcbiAgICAgICAgICAgIG1ldHJpYyA9PiBtZXRyaWMuaW5kaWNhdG9yID09PSBJTkRJQ0FUT1JfUFJPTUVUSEVVU19OT1RfREVQTE9ZRUQsXG4gICAgICAgICAgKS5yZXN1bHQsXG4gICAgICAgICksXG4gICAgICAgIGFibm9ybWFsOiBwYXJzZVByb21ldGhldXNTdGF0dXMoXG4gICAgICAgICAgY2x1c3RlcixcbiAgICAgICAgICBtZXRyaWNzLmZpbmQobWV0cmljID0+IG1ldHJpYy5pbmRpY2F0b3IgPT09IElORElDQVRPUl9QUk9NRVRIRVVTX0RPV04pXG4gICAgICAgICAgICAucmVzdWx0LFxuICAgICAgICApLFxuICAgICAgfSkpLFxuICAgICAgbWFwKCh7IG5vdERlcGxveWVkLCBhYm5vcm1hbCB9KSA9PiAoe1xuICAgICAgICBub3REZXBsb3llZCxcbiAgICAgICAgYWJub3JtYWw6IG5vdERlcGxveWVkID8gZmFsc2UgOiBhYm5vcm1hbCxcbiAgICAgIH0pKSxcbiAgICApO1xuICB9XG5cbiAgY2hlY2tQcm9tZXRoZXVzRGVwbG95ZWQoY2x1c3Rlcjogc3RyaW5nLCBzY29wZT86IFBhcnRpYWw8V29ya3NwYWNlUGFyYW1zPikge1xuICAgIHNjb3BlID0gc2NvcGUgfHwgeyBjbHVzdGVyIH07XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0cmljcyhzY29wZSwge1xuICAgICAgaW5kaWNhdG9yczogSU5ESUNBVE9SX1BST01FVEhFVVNfTk9UX0RFUExPWUVELFxuICAgICAgdmFyaWFibGVzOiB7IGNsdXN0ZXIgfSxcbiAgICB9KS5waXBlKG1hcCgoW3sgcmVzdWx0IH1dKSA9PiAhcGFyc2VQcm9tZXRoZXVzU3RhdHVzKGNsdXN0ZXIsIHJlc3VsdCkpKTtcbiAgfVxuXG4gIGNoZWNrUHJvbWV0aGV1c0Fibm9ybWFsKGNsdXN0ZXI6IHN0cmluZywgc2NvcGU/OiBQYXJ0aWFsPFdvcmtzcGFjZVBhcmFtcz4pIHtcbiAgICBzY29wZSA9IHNjb3BlIHx8IHsgY2x1c3RlciB9O1xuICAgIHJldHVybiB0aGlzLmdldE1ldHJpY3Moc2NvcGUsIHtcbiAgICAgIGluZGljYXRvcnM6IElORElDQVRPUl9QUk9NRVRIRVVTX0RPV04sXG4gICAgICB2YXJpYWJsZXM6IHsgY2x1c3RlciB9LFxuICAgIH0pLnBpcGUobWFwKChbeyByZXN1bHQgfV0pID0+IHBhcnNlUHJvbWV0aGV1c1N0YXR1cyhjbHVzdGVyLCByZXN1bHQpKSk7XG4gIH1cblxuICBwcml2YXRlIGdldE1ldHJpY3MoXG4gICAgd29ya3NwYWNlOiBQYXJ0aWFsPFdvcmtzcGFjZVBhcmFtcz4sXG4gICAgcGFyYW1zOiBNb25pdG9yTWV0cmljUGFyYW1zLFxuICApIHtcbiAgICByZXR1cm4gd29ya3NwYWNlPy5uYW1lc3BhY2VcbiAgICAgID8gdGhpcy5nZXROYW1lc3BhY2VNZXRyaWNzKHdvcmtzcGFjZSBhcyBXb3Jrc3BhY2VQYXJhbXMsIHBhcmFtcylcbiAgICAgIDogd29ya3NwYWNlPy5wcm9qZWN0XG4gICAgICA/IHRoaXMuZ2V0UHJvamVjdE1ldHJpY3Mod29ya3NwYWNlLnByb2plY3QsIHBhcmFtcylcbiAgICAgIDogdGhpcy5nZXRDbHVzdGVyTWV0cmljcyh3b3Jrc3BhY2UuY2x1c3RlciwgcGFyYW1zKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgaW5kaWNhdG9yU3RvcmUkID0gbmV3IENhY2hlU3RvcmUoe1xuICAgIHNoYXJlOiAoKSA9PiBzaGFyZVJlcGxheSgxKSxcbiAgICBmZXRjaGVyOiAoeyBjbHVzdGVyLCBwYXJhbXMgfTogeyBjbHVzdGVyOiBzdHJpbmc7IHBhcmFtczogU3RyaW5nTWFwIH0pID0+XG4gICAgICB0aGlzLmh0dHBcbiAgICAgICAgLmdldChcbiAgICAgICAgICBgJHtBUElfR0FURVdBWX0vdjIvbWV0cmljcy8ke2NsdXN0ZXJ9L2luZGljYXRvcnNgLFxuICAgICAgICAgIHBhcmFtcyA/IHsgcGFyYW1zIH0gOiB1bmRlZmluZWQsXG4gICAgICAgIClcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWFwKChyZXN1bHQ6IEluZGljYXRvclR5cGVbXSkgPT5cbiAgICAgICAgICAgIFsuLi5yZXN1bHRdLnNvcnQoKGEsIGIpID0+XG4gICAgICAgICAgICAgICgnJyArIGEuZGlzcGxheU5hbWUpLmxvY2FsZUNvbXBhcmUoYi5kaXNwbGF5TmFtZSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihbXSkpLFxuICAgICAgICApLFxuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGluZGljYXRvclVuaXRzU3RvcmUkID0gbmV3IENhY2hlU3RvcmUoe1xuICAgIGlkR2VuZXJhdG9yOiAoKSA9PiAnY3BhYXMtaW5kaWNhdG9yLXVuaXRzJyxcbiAgICBzaGFyZTogKCkgPT4gc2hhcmVSZXBsYXkoMSksXG4gICAgZmV0Y2hlcjogKCkgPT5cbiAgICAgIHRoaXMuazhzQXBpXG4gICAgICAgIC5nZXRHbG9iYWxSZXNvdXJjZTxDb25maWdNYXA8eyB1bml0czogc3RyaW5nIH0+Pih7XG4gICAgICAgICAgdHlwZTogUkVTT1VSQ0VfVFlQRVMuQ09ORklHX01BUCxcbiAgICAgICAgICBuYW1lOiAnY3BhYXMtaW5kaWNhdG9yLXVuaXRzJyxcbiAgICAgICAgICBuYW1lc3BhY2VkOiB0cnVlLFxuICAgICAgICB9KVxuICAgICAgICAucGlwZShjYXRjaEVycm9yKCgpID0+IG9mKG51bGwpKSksXG4gIH0pO1xuXG4gIGdldEluZGljYXRvcnMoXG4gICAgY2x1c3Rlcjogc3RyaW5nLFxuICAgIHBhcmFtcz86IFN0cmluZ01hcCxcbiAgKTogT2JzZXJ2YWJsZTxJbmRpY2F0b3JUeXBlW10+IHtcbiAgICByZXR1cm4gdGhpcy5pbmRpY2F0b3JTdG9yZSQuZmV0Y2goeyBjbHVzdGVyLCAuLi4ocGFyYW1zICYmIHsgcGFyYW1zIH0pIH0pO1xuICB9XG5cbiAgZ2V0SW5kaWNhdG9yVW5pdHMoKTogT2JzZXJ2YWJsZTxJbmRpY2F0b3JVbml0W10+IHtcbiAgICByZXR1cm4gdGhpcy5pbmRpY2F0b3JVbml0c1N0b3JlJFxuICAgICAgLmZldGNoKG51bGwpXG4gICAgICAucGlwZShtYXAoaXRlbSA9PiBwYXJzZUpzb24oaXRlbT8uZGF0YT8udW5pdHMpKSk7XG4gIH1cblxuICBnZXRDbHVzdGVyVmFyaWFibGVzID0gKGNsdXN0ZXI6IHN0cmluZywgcGFyYW1zPzogTW9uaXRvclZhcmlhYmxlc1BhcmFtcykgPT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFZhcmlhYmxlc1Jlc3VsdD4oXG4gICAgICBgJHt0aGlzLnVybFByZWZpeH0vY2x1c3RlcnMvJHtjbHVzdGVyfS92YXJpYWJsZXNgLFxuICAgICAge1xuICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAuLi5wYXJhbXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH07XG5cbiAgZ2V0UHJvamVjdFZhcmlhYmxlcyA9IChwcm9qZWN0OiBzdHJpbmcsIHBhcmFtcz86IE1vbml0b3JWYXJpYWJsZXNQYXJhbXMpID0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxWYXJpYWJsZXNSZXN1bHQ+KFxuICAgICAgYCR7dGhpcy51cmxQcmVmaXh9L3Byb2plY3RzLyR7cHJvamVjdH0vdmFyaWFibGVzYCxcbiAgICAgIHtcbiAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgLi4ucGFyYW1zLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICApO1xuICB9O1xuXG4gIGdldE5hbWVzcGFjZVZhcmlhYmxlcyA9IChcbiAgICB3b3Jrc3BhY2U6IFdvcmtzcGFjZVBhcmFtcyxcbiAgICBwYXJhbXM/OiBNb25pdG9yVmFyaWFibGVzUGFyYW1zLFxuICApID0+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxWYXJpYWJsZXNSZXN1bHQ+KFxuICAgICAgYCR7dGhpcy51cmxQcmVmaXh9L3Byb2plY3RzLyR7d29ya3NwYWNlLnByb2plY3R9L2NsdXN0ZXJzLyR7d29ya3NwYWNlLmNsdXN0ZXJ9L25hbWVzcGFjZXMvJHt3b3Jrc3BhY2UubmFtZXNwYWNlfS92YXJpYWJsZXNgLFxuICAgICAge1xuICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAuLi5wYXJhbXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH07XG59XG5cbmZ1bmN0aW9uIHBhcnNlUHJvbWV0aGV1c1N0YXR1cyhjbHVzdGVyOiBzdHJpbmcsIHJlc3VsdDogTW9uaXRvck1ldHJpY1Jlc3VsdFtdKSB7XG4gIHJldHVybiBjbHVzdGVyID09PSBHTE9CQUxfQ0xVU1RFUlxuICAgID8gcmVzdWx0Lmxlbmd0aCAhPT0gMFxuICAgIDogISFyZXN1bHRbMF0/LnZhbHVlcz8ubGVuZ3RoO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gam9pbk1ldHJpY1NlcGFyYXRvcihpbmRpY2F0b3JzOiBzdHJpbmdbXSkge1xuICByZXR1cm4gaW5kaWNhdG9ycy5qb2luKCd8Jyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdpZnlNZXRyaWNWYXJpYWJsZXMoXG4gIHZhcmlhYmxlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbik6IHN0cmluZyB7XG4gIHJldHVybiBPYmplY3QuZW50cmllcyh2YXJpYWJsZXMpXG4gICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgJHtrZXl9PSR7dmFsdWV9YClcbiAgICAuam9pbignLCcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5naWZ5TWV0cmljUGFyYW1zKHBhcmFtczogTW9uaXRvck1ldHJpY1BhcmFtcykge1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocGFyYW1zKS5yZWR1Y2UoKGFjYywgW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgaWYgKGtleSA9PT0gJ3ZhcmlhYmxlcycpIHtcbiAgICAgIGFjY1trZXldID0gc3RyaW5naWZ5TWV0cmljVmFyaWFibGVzKFxuICAgICAgICBPYmplY3QuZW50cmllcyh2YWx1ZSkucmVkdWNlKChhLCBbaywgdl0pID0+IHtcbiAgICAgICAgICBhW2tdID0gQXJyYXkuaXNBcnJheSh2KSA/IGpvaW5NZXRyaWNTZXBhcmF0b3IodikgOiB2O1xuICAgICAgICAgIHJldHVybiBhO1xuICAgICAgICB9LCB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KSxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChrZXkgPT09ICdpbmRpY2F0b3JzJykge1xuICAgICAgYWNjW2tleV0gPSBBcnJheS5pc0FycmF5KHZhbHVlKVxuICAgICAgICA/IGpvaW5NZXRyaWNTZXBhcmF0b3IodmFsdWUpXG4gICAgICAgIDogKHZhbHVlIGFzIHN0cmluZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFjY1trZXldID0gdmFsdWUgKyAnJztcbiAgICB9XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPik7XG59XG5cbmV4cG9ydCB0eXBlIE1vbml0b3JNZXRyaWNQYXJhbXMgPSBQYXJ0aWFsPFxuICBYT1I8eyBzdGFydDogbnVtYmVyOyBlbmQ6IG51bWJlcjsgc3RlcDogbnVtYmVyIH0sIHsgdGltZTogbnVtYmVyIH0+ICZcbiAgICBYT1I8eyBpbmRpY2F0b3JzOiBzdHJpbmcgfCBzdHJpbmdbXSB9LCB7IGV4cHI6IHN0cmluZyB9PiAmIHtcbiAgICAgIHRpbWVvdXQ6IG51bWJlcjtcbiAgICAgIHZhcmlhYmxlczogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgc3RyaW5nW10+O1xuICAgIH1cbj47XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9uaXRvclZhcmlhYmxlc1BhcmFtcyB7XG4gIGV4cHI6IHN0cmluZztcbiAgcmVnZXg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9uaXRvck1ldHJpYyB7XG4gIGluZGljYXRvcjogc3RyaW5nO1xuICBxdWVyeTogc3RyaW5nO1xuICByZXN1bHQ6IE1vbml0b3JNZXRyaWNSZXN1bHRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3N0TWV0cmljIHtcbiAgaW5kaWNhdG9yOiBzdHJpbmc7XG4gIHJlc3VsdDogQ29zdE1ldHJpY1Jlc3VsdFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vbml0b3JNZXRyaWNSZXN1bHQge1xuICBtZXRyaWM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHZhbHVlczogQXJyYXk8W251bWJlciwgc3RyaW5nXT47XG59XG5leHBvcnQgaW50ZXJmYWNlIENvc3RNZXRyaWNSZXN1bHQge1xuICBtZXRyaWM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHZhbHVlczogQXJyYXk8W251bWJlciwgc3RyaW5nXT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5kaWNhdG9yVHlwZSB7XG4gIGtpbmQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBhbGlhczogc3RyaW5nO1xuICB1bml0OiBzdHJpbmc7XG4gIHN0cmluZz86IHN0cmluZztcbiAgdmFsdWVfdHlwZT86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbiAgcXVlcnk/OiBzdHJpbmc7XG4gIGFsZXJ0X2VuYWJsZWQ/OiBib29sZWFuO1xuICBhbGVydEVuYWJsZWQ/OiBib29sZWFuO1xuICBhZ2dyZWdhdGlvbl9lbmFibGVkPzogYm9vbGVhbjtcbiAgZGlzcGxheV9uYW1lPzogc3RyaW5nO1xuICBkaXNwbGF5TmFtZT86IHN0cmluZztcbiAgbGVnZW5kPzogc3RyaW5nO1xuICBzdW1tYXJ5Pzogc3RyaW5nO1xuICBhbm5vdGF0aW9ucz86IEluZGljYXRvckFubm90YXRpb25zO1xuICB2YXJpYWJsZXM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmRpY2F0b3JBbm5vdGF0aW9ucyB7XG4gIGNuOiBzdHJpbmc7XG4gIGVuOiBzdHJpbmc7XG4gIGFzbUV4dHJhRmVhdHVyZXM/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uRU4/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uWkg/OiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lRU4/OiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lWkg/OiBzdHJpbmc7XG59XG4iXX0=
|