@alauda-fe/common 1.0.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/a-chart/a-chart.module.d.ts +16 -0
- package/a-chart/base-chart.d.ts +23 -0
- package/a-chart/chart-status.component.d.ts +15 -0
- package/a-chart/chart.component.d.ts +55 -0
- package/a-chart/components/base-component.d.ts +12 -0
- package/a-chart/components/index.d.ts +3 -0
- package/a-chart/components/legend/base-legend.component.d.ts +32 -0
- package/a-chart/components/legend/dropdown-legend.d.ts +17 -0
- package/a-chart/components/legend/index.d.ts +3 -0
- package/a-chart/components/legend/legend.component.d.ts +17 -0
- package/a-chart/components/title.component.d.ts +17 -0
- package/a-chart/constant.d.ts +3 -0
- package/a-chart/public-api.d.ts +12 -0
- package/a-chart/types.d.ts +28 -0
- package/a-chart/utils.d.ts +13 -0
- package/a-metric-chart/a-metric-chart.component.d.ts +108 -0
- package/a-metric-chart/a-metric-chart.module.d.ts +16 -0
- package/a-metric-chart/bar-gauge/bar-gauge.component.d.ts +25 -0
- package/a-metric-chart/base-chart.component.d.ts +14 -0
- package/a-metric-chart/metric-chart-refresh.service.d.ts +8 -0
- package/a-metric-chart/public-api.d.ts +13 -0
- package/a-metric-chart/stat-chart/stat-chart.component.d.ts +7 -0
- package/a-metric-chart/table-chart/table-chart.component.d.ts +29 -0
- package/a-metric-chart/types.d.ts +113 -0
- package/a-metric-chart/utils/index.d.ts +3 -0
- package/a-metric-chart/utils/range.d.ts +1 -0
- package/a-metric-chart/utils/unit.d.ts +48 -0
- package/a-metric-chart/utils/util.d.ts +38 -0
- package/abnormal-page/abnormal-page.component.d.ts +19 -0
- package/abnormal-page/abnormal-page.module.d.ts +11 -0
- package/abnormal-page/public-api.d.ts +2 -0
- package/api/api-gateway.interceptor.d.ts +14 -0
- package/api/api-gateway.service.d.ts +23 -0
- package/api/cluster-version.service.d.ts +22 -0
- package/api/crypto.interceptor.d.ts +18 -0
- package/api/helpers.d.ts +31 -0
- package/api/k8s-api-resource.service.d.ts +29 -0
- package/api/k8s-api.service.d.ts +112 -0
- package/api/monitor-api.service.d.ts +103 -0
- package/api/page-visibility.service.d.ts +7 -0
- package/api/platform-ui.service.d.ts +45 -0
- package/api/product.service.d.ts +13 -0
- package/api/project-api.service.d.ts +16 -0
- package/api/public-api.d.ts +20 -0
- package/api/resource-update.service.d.ts +31 -0
- package/api/types.d.ts +119 -0
- package/array-form-table/base-string-map-form.component.d.ts +22 -0
- package/array-form-table/form/component.d.ts +91 -0
- package/array-form-table/form/module.d.ts +7 -0
- package/array-form-table/key-value-form/component.d.ts +37 -0
- package/array-form-table/key-value-table/component.d.ts +9 -0
- package/array-form-table/public-api.d.ts +10 -0
- package/assets/header/cluster-blue.svg +1 -0
- package/assets/header/cluster-white.svg +1 -0
- package/assets/header/namespace-blue.svg +1 -0
- package/assets/header/namespace-white.svg +1 -0
- package/assets/header/portrait.svg +1 -0
- package/assets/header/project-blue.svg +1 -0
- package/assets/header/project-white.svg +1 -0
- package/assets/header/servicemesh-blue.svg +1 -0
- package/assets/header/servicemesh-white.svg +1 -0
- package/assets/icons/ClickHouse.svg +1 -0
- package/assets/icons/Containerd.svg +1 -0
- package/assets/icons/Docker.svg +1 -0
- package/assets/icons/ETCD.svg +1 -0
- package/assets/icons/ElasticSearch.svg +1 -0
- package/assets/icons/Grafana.svg +1 -0
- package/assets/icons/Istio.svg +1 -0
- package/assets/icons/Jaeger.svg +1 -0
- package/assets/icons/Kafka.svg +1 -0
- package/assets/icons/Kibana.svg +1 -0
- package/assets/icons/KubeVela.svg +1 -0
- package/assets/icons/Kubernetes.svg +1 -0
- package/assets/icons/Prometheus.svg +1 -0
- package/assets/icons/VictoriaMetrics.svg +1 -0
- package/assets/icons/Zookeeper.svg +1 -0
- package/assets/icons/bicolor-icons.js +1 -0
- package/assets/icons/icon-card-blue.svg +1 -0
- package/assets/icons/icon-card.svg +1 -0
- package/assets/icons/icon-cluster-small-white.svg +1 -0
- package/assets/icons/icon-cluster-small.svg +1 -0
- package/assets/icons/icon-list-blue.svg +1 -0
- package/assets/icons/icon-list.svg +1 -0
- package/assets/icons/icon-namespace-small-white.svg +1 -0
- package/assets/icons/icon-namespace-small.svg +1 -0
- package/assets/icons/icon-project-small-white.svg +1 -0
- package/assets/icons/icon-project-small.svg +1 -0
- package/assets/icons/icon-servicemesh-small-white.svg +1 -0
- package/assets/icons/icon-servicemesh-small.svg +1 -0
- package/assets/icons/navigation-icons.js +1 -0
- package/assets/icons/os/centos.svg +1 -0
- package/assets/icons/os/debian.svg +1 -0
- package/assets/icons/os/linux.svg +1 -0
- package/assets/icons/os/other.svg +1 -0
- package/assets/icons/os/red-hat.svg +1 -0
- package/assets/icons/os/t-linux.svg +1 -0
- package/assets/icons/os/ubuntu.svg +1 -0
- package/assets/icons/os/windows.svg +1 -0
- package/assets/icons/prod-icons.js +1 -0
- package/assets/icons/time.svg +1 -0
- package/assets/images/abnormal.svg +1 -0
- package/assets/images/alarm_critical.png +0 -0
- package/assets/images/avatar.svg +1 -0
- package/assets/images/dark/disconnected.svg +1 -0
- package/assets/images/dark/feature-reach-bg.svg +1 -0
- package/assets/images/dark/license-abnormal.svg +1 -0
- package/assets/images/dark/network-abnormal.svg +1 -0
- package/assets/images/dark/no-data.svg +1 -0
- package/assets/images/dark/no-message.svg +1 -0
- package/assets/images/dark/no-permission.svg +1 -0
- package/assets/images/dark/no_realtime_alarm.svg +1 -0
- package/assets/images/dark/not-deployed.svg +1 -0
- package/assets/images/dark/not-found.svg +1 -0
- package/assets/images/dark/not-supported.svg +1 -0
- package/assets/images/dark/system-abnormal.svg +1 -0
- package/assets/images/light/disconnected.svg +1 -0
- package/assets/images/light/feature-reach-bg.svg +1 -0
- package/assets/images/light/license-abnormal.svg +1 -0
- package/assets/images/light/network-abnormal.svg +1 -0
- package/assets/images/light/no-data.svg +1 -0
- package/assets/images/light/no-message.svg +1 -0
- package/assets/images/light/no-permission.svg +1 -0
- package/assets/images/light/no_realtime_alarm.svg +1 -0
- package/assets/images/light/not-deployed.svg +1 -0
- package/assets/images/light/not-found.svg +1 -0
- package/assets/images/light/not-supported.svg +1 -0
- package/assets/images/light/system-abnormal.svg +1 -0
- package/assets/images/no-data.png +0 -0
- package/assets/images/overview-banner.svg +1 -0
- package/assets/images/platform_version_bg.svg +1 -0
- package/assets/images/product-default-logo.png +0 -0
- package/assets/logos/favicon.ico +0 -0
- package/assets/logos/logo.svg +1 -0
- package/assets/logos/tke_logo_white.svg +1 -0
- package/assets/themes/override-theme.js +11 -0
- package/assets/themes/refresh-favicon.js +6 -0
- package/async-data/async-data-loader.d.ts +31 -0
- package/async-data/async-data.module.d.ts +8 -0
- package/async-data/error-page/component.d.ts +30 -0
- package/async-data/page-state/component.d.ts +21 -0
- package/async-data/public-api.d.ts +11 -0
- package/async-data/types.d.ts +29 -0
- package/authorization/app-init-url.d.ts +6 -0
- package/authorization/guard.service.d.ts +22 -0
- package/authorization/interceptor.service.d.ts +34 -0
- package/authorization/public-api.d.ts +11 -0
- package/authorization/session-manage.service.d.ts +18 -0
- package/authorization/state.service.d.ts +52 -0
- package/business/module-info/api.service.d.ts +24 -0
- package/business/module-info/public-api.d.ts +1 -0
- package/business/public-api.d.ts +7 -0
- package/business/resource-select/base-list.d.ts +32 -0
- package/business/resource-select/context.service.d.ts +47 -0
- package/business/resource-select/exports/cluster-selector/component.d.ts +23 -0
- package/business/resource-select/exports/mesh-group-selector/component.d.ts +23 -0
- package/business/resource-select/exports/namespace-page/component.d.ts +25 -0
- package/business/resource-select/exports/namespace-selector/component.d.ts +33 -0
- package/business/resource-select/exports/project-page/component.d.ts +18 -0
- package/business/resource-select/exports/project-selector/component.d.ts +27 -0
- package/business/resource-select/helpers.directive.d.ts +5 -0
- package/business/resource-select/internals/cluster-list/component.d.ts +26 -0
- package/business/resource-select/internals/data-grid/component.d.ts +42 -0
- package/business/resource-select/internals/icon/component.d.ts +12 -0
- package/business/resource-select/internals/meshgroup-list/component.d.ts +22 -0
- package/business/resource-select/internals/namespace-list/component.d.ts +65 -0
- package/business/resource-select/internals/no-data/component.d.ts +11 -0
- package/business/resource-select/internals/project-list/component.d.ts +22 -0
- package/business/resource-select/internals/resource-dashboard/component.d.ts +14 -0
- package/business/resource-select/internals/selector-popup/component.d.ts +14 -0
- package/business/resource-select/internals/selector-popup/ref.d.ts +10 -0
- package/business/resource-select/internals/selector-popup/service.d.ts +21 -0
- package/business/resource-select/module.d.ts +31 -0
- package/business/resource-select/project.service.d.ts +16 -0
- package/business/resource-select/public-api.d.ts +16 -0
- package/business/resource-select/types.d.ts +77 -0
- package/business/resource-select/utils.d.ts +5 -0
- package/chart/chart.module.d.ts +29 -0
- package/chart/chart.service.d.ts +72 -0
- package/chart/common/axis/axis-label.component.d.ts +23 -0
- package/chart/common/axis/x-axis-ticks.component.d.ts +24 -0
- package/chart/common/axis/x-axis.component.d.ts +26 -0
- package/chart/common/axis/x-plot-lines.component.d.ts +23 -0
- package/chart/common/axis/y-axis-ticks.component.d.ts +33 -0
- package/chart/common/axis/y-axis.component.d.ts +28 -0
- package/chart/common/axis/y-plot-lines.component.d.ts +31 -0
- package/chart/common/chart/chart.component.d.ts +63 -0
- package/chart/common/index.d.ts +17 -0
- package/chart/common/legend/legend.component.d.ts +41 -0
- package/chart/common/range-area/range-area.component.d.ts +48 -0
- package/chart/common/reference-area/reference-area.component.d.ts +12 -0
- package/chart/common/series/area-series.component.d.ts +21 -0
- package/chart/common/series/bar-path.component.d.ts +47 -0
- package/chart/common/series/bar-series.component.d.ts +29 -0
- package/chart/common/series/line-series.component.d.ts +8 -0
- package/chart/common/series/series.component.d.ts +39 -0
- package/chart/common/tooltip/tooltip.component.d.ts +119 -0
- package/chart/constants.d.ts +10 -0
- package/chart/custom-template/dropdown-legend.d.ts +11 -0
- package/chart/public-api.d.ts +9 -0
- package/chart/types.d.ts +47 -0
- package/chart/utils.d.ts +36 -0
- package/code/code-display-dialog/component.d.ts +17 -0
- package/code/code-editor-configs.d.ts +18 -0
- package/code/code.module.d.ts +14 -0
- package/code/k8s-yaml-display-dialog/component.d.ts +16 -0
- package/code/public-api.d.ts +11 -0
- package/code/resource-yaml-display/component.d.ts +22 -0
- package/core/abstract/base-form-container.d.ts +41 -0
- package/core/abstract/base-nested-form-control.d.ts +58 -0
- package/core/abstract/index.d.ts +2 -0
- package/core/components/index.d.ts +1 -0
- package/core/components/tree/index.d.ts +1 -0
- package/core/components/tree/module.d.ts +12 -0
- package/core/components/tree/node/component.d.ts +12 -0
- package/core/components/tree/outlet.d.ts +10 -0
- package/core/components/tree/padding.d.ts +12 -0
- package/core/components/tree/public-api.d.ts +6 -0
- package/core/components/tree/toggle.d.ts +12 -0
- package/core/components/tree/tree/component.d.ts +8 -0
- package/core/constants/constants.d.ts +61 -0
- package/core/constants/index.d.ts +5 -0
- package/core/constants/patterns.d.ts +25 -0
- package/core/constants/status-icons.d.ts +28 -0
- package/core/constants/timezones.d.ts +6 -0
- package/core/constants/tokens.d.ts +44 -0
- package/core/directives/click-outside.directive.d.ts +12 -0
- package/core/directives/disabled.directive.d.ts +28 -0
- package/core/directives/feature-gate.directive.d.ts +30 -0
- package/core/directives/index.d.ts +10 -0
- package/core/directives/intercept-deactivate.directive.d.ts +18 -0
- package/core/directives/last-form-item.directive.d.ts +8 -0
- package/core/directives/page-header-content.directive.d.ts +25 -0
- package/core/directives/readonly-field.directive.d.ts +39 -0
- package/core/directives/resize.directive.d.ts +17 -0
- package/core/directives/scroll-border-observer.directive.d.ts +23 -0
- package/core/directives/scroll-to-first-invalid.directive.d.ts +24 -0
- package/core/guards/feature.guard.d.ts +28 -0
- package/core/guards/index.d.ts +4 -0
- package/core/guards/intercept-deactivate.guard.d.ts +13 -0
- package/core/guards/leave-edit-page.guard.d.ts +13 -0
- package/core/guards/project-namespace.guard.d.ts +23 -0
- package/core/index.d.ts +1 -0
- package/core/module.d.ts +33 -0
- package/core/pipes/cron-human-readable.pipe.d.ts +14 -0
- package/core/pipes/crontab-next.pipe.d.ts +18 -0
- package/core/pipes/field-not-available.pipe.d.ts +13 -0
- package/core/pipes/img-header.pipe.d.ts +7 -0
- package/core/pipes/img-theme.pipe.d.ts +13 -0
- package/core/pipes/index.d.ts +17 -0
- package/core/pipes/k8s-util.pipe.d.ts +98 -0
- package/core/pipes/k8s-util.pipe.module.d.ts +7 -0
- package/core/pipes/keyvalue.pipe.d.ts +9 -0
- package/core/pipes/marked.pipe.d.ts +8 -0
- package/core/pipes/minimum-format.pipe.d.ts +10 -0
- package/core/pipes/page-env.pipe.d.ts +34 -0
- package/core/pipes/parse-json-translate.pipe.d.ts +9 -0
- package/core/pipes/parse-json.pipe.d.ts +7 -0
- package/core/pipes/safe.pipe.d.ts +10 -0
- package/core/pipes/time.pipe.d.ts +41 -0
- package/core/pipes/timezone-display.pipe.d.ts +10 -0
- package/core/pipes/trust-url.pipe.d.ts +19 -0
- package/core/public-api.d.ts +16 -0
- package/core/services/aui-paginator-intl.service.d.ts +13 -0
- package/core/services/aui-tooltip-copy-intl.service.d.ts +11 -0
- package/core/services/context.service.d.ts +33 -0
- package/core/services/custom-code-editor-intl.service.d.ts +33 -0
- package/core/services/feature-gate.service.d.ts +35 -0
- package/core/services/form-row-duplicate/form-row-duplicate.service.d.ts +45 -0
- package/core/services/index.d.ts +14 -0
- package/core/services/intercept-deactivate.service.d.ts +28 -0
- package/core/services/k8s-util.service.d.ts +78 -0
- package/core/services/on-resize.service.d.ts +20 -0
- package/core/services/silently-navigate.service.d.ts +11 -0
- package/core/services/time.service.d.ts +17 -0
- package/core/services/ui-state.service.d.ts +41 -0
- package/core/services/workspace-helper.service.d.ts +12 -0
- package/core/services/yaml-util.service.d.ts +20 -0
- package/core/types/commons.d.ts +40 -0
- package/core/types/helpers.d.ts +35 -0
- package/core/types/index.d.ts +10 -0
- package/core/types/k8s/core.d.ts +91 -0
- package/core/types/k8s/crd.d.ts +444 -0
- package/core/types/k8s/index.d.ts +3 -0
- package/core/types/k8s/raw.d.ts +978 -0
- package/core/types/resource-definitions.d.ts +734 -0
- package/core/types/schema.d.ts +14 -0
- package/core/utils/browser.d.ts +3 -0
- package/core/utils/cache-store.d.ts +33 -0
- package/core/utils/color-helpers.d.ts +4 -0
- package/core/utils/common.d.ts +54 -0
- package/core/utils/create-recursive-filter.d.ts +41 -0
- package/core/utils/cron-util.d.ts +8 -0
- package/core/utils/decorators.d.ts +12 -0
- package/core/utils/format-number.d.ts +11 -0
- package/core/utils/index.d.ts +22 -0
- package/core/utils/k8s-pattern.d.ts +12 -0
- package/core/utils/k8s-util.d.ts +28 -0
- package/core/utils/local-storage-constants.d.ts +1 -0
- package/core/utils/node.d.ts +8 -0
- package/core/utils/observable.d.ts +4 -0
- package/core/utils/operators.d.ts +19 -0
- package/core/utils/request-pool.d.ts +12 -0
- package/core/utils/resources.d.ts +19 -0
- package/core/utils/tree.d.ts +16 -0
- package/core/utils/unit.d.ts +23 -0
- package/core/utils/version.d.ts +39 -0
- package/core/utils/with-load-state.d.ts +11 -0
- package/core/utils/workspace.d.ts +28 -0
- package/core/utils/yaml.d.ts +10 -0
- package/custom-columns-setting/component.d.ts +16 -0
- package/custom-columns-setting/public-api.d.ts +1 -0
- package/disabled-container/disabled-container.component.d.ts +21 -0
- package/disabled-container/disabled-container.module.d.ts +10 -0
- package/disabled-container/public-api.d.ts +8 -0
- package/editable-text/component.d.ts +24 -0
- package/editable-text/index.d.ts +2 -0
- package/editable-text/module.d.ts +11 -0
- package/effect-directive/coerce-number.directive.d.ts +8 -0
- package/effect-directive/e2e-attribute-binding.directive.d.ts +10 -0
- package/effect-directive/event.directive.d.ts +11 -0
- package/effect-directive/min-max.directive.d.ts +30 -0
- package/effect-directive/module.d.ts +20 -0
- package/effect-directive/public-api.d.ts +7 -0
- package/effect-directive/trim.directive.d.ts +7 -0
- package/effect-directive/validators.directive.d.ts +12 -0
- package/errors-mapper/base-errors-mapper.d.ts +13 -0
- package/errors-mapper/default-errors-mapper.service.d.ts +10 -0
- package/errors-mapper/errors-mapper-component/component.d.ts +19 -0
- package/errors-mapper/errors-mapper.directive.d.ts +39 -0
- package/errors-mapper/errors-mapper.module.d.ts +8 -0
- package/errors-mapper/public-api.d.ts +4 -0
- package/errors-mapper/types.d.ts +16 -0
- package/esm2022/a-chart/a-chart.module.mjs +76 -0
- package/esm2022/a-chart/base-chart.mjs +84 -0
- package/esm2022/a-chart/chart-status.component.mjs +195 -0
- package/esm2022/a-chart/chart.component.mjs +283 -0
- package/esm2022/a-chart/components/base-component.mjs +23 -0
- package/esm2022/a-chart/components/index.mjs +4 -0
- package/esm2022/a-chart/components/legend/base-legend.component.mjs +110 -0
- package/esm2022/a-chart/components/legend/dropdown-legend.mjs +199 -0
- package/esm2022/a-chart/components/legend/index.mjs +4 -0
- package/esm2022/a-chart/components/legend/legend.component.mjs +102 -0
- package/esm2022/a-chart/components/title.component.mjs +99 -0
- package/esm2022/a-chart/constant.mjs +22 -0
- package/esm2022/a-chart/public-api.mjs +13 -0
- package/esm2022/a-chart/types.mjs +2 -0
- package/esm2022/a-chart/utils.mjs +37 -0
- package/esm2022/a-metric-chart/a-metric-chart.component.mjs +853 -0
- package/esm2022/a-metric-chart/a-metric-chart.module.mjs +76 -0
- package/esm2022/a-metric-chart/bar-gauge/bar-gauge.component.mjs +165 -0
- package/esm2022/a-metric-chart/base-chart.component.mjs +30 -0
- package/esm2022/a-metric-chart/metric-chart-refresh.service.mjs +18 -0
- package/esm2022/a-metric-chart/public-api.mjs +14 -0
- package/esm2022/a-metric-chart/stat-chart/stat-chart.component.mjs +70 -0
- package/esm2022/a-metric-chart/table-chart/table-chart.component.mjs +201 -0
- package/esm2022/a-metric-chart/types.mjs +17 -0
- package/esm2022/a-metric-chart/utils/index.mjs +4 -0
- package/esm2022/a-metric-chart/utils/range.mjs +35 -0
- package/esm2022/a-metric-chart/utils/unit.mjs +83 -0
- package/esm2022/a-metric-chart/utils/util.mjs +219 -0
- package/esm2022/abnormal-page/abnormal-page.component.mjs +66 -0
- package/esm2022/abnormal-page/abnormal-page.module.mjs +27 -0
- package/esm2022/abnormal-page/public-api.mjs +3 -0
- package/esm2022/alauda-fe-common.mjs +5 -0
- package/esm2022/api/api-gateway.interceptor.mjs +28 -0
- package/esm2022/api/api-gateway.service.mjs +38 -0
- package/esm2022/api/cluster-version.service.mjs +67 -0
- package/esm2022/api/crypto.interceptor.mjs +186 -0
- package/esm2022/api/helpers.mjs +101 -0
- package/esm2022/api/k8s-api-resource.service.mjs +73 -0
- package/esm2022/api/k8s-api.service.mjs +394 -0
- package/esm2022/api/monitor-api.service.mjs +158 -0
- package/esm2022/api/page-visibility.service.mjs +18 -0
- package/esm2022/api/platform-ui.service.mjs +95 -0
- package/esm2022/api/product.service.mjs +36 -0
- package/esm2022/api/project-api.service.mjs +32 -0
- package/esm2022/api/public-api.mjs +21 -0
- package/esm2022/api/resource-update.service.mjs +62 -0
- package/esm2022/api/types.mjs +30 -0
- package/esm2022/array-form-table/base-string-map-form.component.mjs +92 -0
- package/esm2022/array-form-table/form/component.mjs +466 -0
- package/esm2022/array-form-table/form/module.mjs +38 -0
- package/esm2022/array-form-table/key-value-form/component.mjs +280 -0
- package/esm2022/array-form-table/key-value-table/component.mjs +74 -0
- package/esm2022/array-form-table/public-api.mjs +11 -0
- package/esm2022/async-data/async-data-loader.mjs +63 -0
- package/esm2022/async-data/async-data.module.mjs +22 -0
- package/esm2022/async-data/error-page/component.mjs +152 -0
- package/esm2022/async-data/page-state/component.mjs +129 -0
- package/esm2022/async-data/public-api.mjs +12 -0
- package/esm2022/async-data/types.mjs +6 -0
- package/esm2022/authorization/app-init-url.mjs +33 -0
- package/esm2022/authorization/guard.service.mjs +42 -0
- package/esm2022/authorization/interceptor.service.mjs +149 -0
- package/esm2022/authorization/public-api.mjs +12 -0
- package/esm2022/authorization/session-manage.service.mjs +60 -0
- package/esm2022/authorization/state.service.mjs +254 -0
- package/esm2022/business/module-info/api.service.mjs +39 -0
- package/esm2022/business/module-info/public-api.mjs +2 -0
- package/esm2022/business/public-api.mjs +8 -0
- package/esm2022/business/resource-select/base-list.mjs +84 -0
- package/esm2022/business/resource-select/context.service.mjs +69 -0
- package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +98 -0
- package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +96 -0
- package/esm2022/business/resource-select/exports/namespace-page/component.mjs +78 -0
- package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +186 -0
- package/esm2022/business/resource-select/exports/project-page/component.mjs +53 -0
- package/esm2022/business/resource-select/exports/project-selector/component.mjs +124 -0
- package/esm2022/business/resource-select/helpers.directive.mjs +13 -0
- package/esm2022/business/resource-select/internals/cluster-list/component.mjs +74 -0
- package/esm2022/business/resource-select/internals/data-grid/component.mjs +584 -0
- package/esm2022/business/resource-select/internals/icon/component.mjs +56 -0
- package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +65 -0
- package/esm2022/business/resource-select/internals/namespace-list/component.mjs +432 -0
- package/esm2022/business/resource-select/internals/no-data/component.mjs +142 -0
- package/esm2022/business/resource-select/internals/project-list/component.mjs +75 -0
- package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +79 -0
- package/esm2022/business/resource-select/internals/selector-popup/component.mjs +45 -0
- package/esm2022/business/resource-select/internals/selector-popup/ref.mjs +20 -0
- package/esm2022/business/resource-select/internals/selector-popup/service.mjs +60 -0
- package/esm2022/business/resource-select/module.mjs +166 -0
- package/esm2022/business/resource-select/project.service.mjs +47 -0
- package/esm2022/business/resource-select/public-api.mjs +17 -0
- package/esm2022/business/resource-select/types.mjs +17 -0
- package/esm2022/business/resource-select/utils.mjs +25 -0
- package/esm2022/chart/chart.module.mjs +120 -0
- package/esm2022/chart/chart.service.mjs +237 -0
- package/esm2022/chart/common/axis/axis-label.component.mjs +106 -0
- package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +217 -0
- package/esm2022/chart/common/axis/x-axis.component.mjs +109 -0
- package/esm2022/chart/common/axis/x-plot-lines.component.mjs +101 -0
- package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +233 -0
- package/esm2022/chart/common/axis/y-axis.component.mjs +122 -0
- package/esm2022/chart/common/axis/y-plot-lines.component.mjs +126 -0
- package/esm2022/chart/common/chart/chart.component.mjs +269 -0
- package/esm2022/chart/common/index.mjs +18 -0
- package/esm2022/chart/common/legend/legend.component.mjs +269 -0
- package/esm2022/chart/common/range-area/range-area.component.mjs +144 -0
- package/esm2022/chart/common/reference-area/reference-area.component.mjs +46 -0
- package/esm2022/chart/common/series/area-series.component.mjs +89 -0
- package/esm2022/chart/common/series/bar-path.component.mjs +156 -0
- package/esm2022/chart/common/series/bar-series.component.mjs +88 -0
- package/esm2022/chart/common/series/line-series.component.mjs +59 -0
- package/esm2022/chart/common/series/series.component.mjs +166 -0
- package/esm2022/chart/common/tooltip/tooltip.component.mjs +520 -0
- package/esm2022/chart/constants.mjs +22 -0
- package/esm2022/chart/custom-template/dropdown-legend.mjs +112 -0
- package/esm2022/chart/public-api.mjs +10 -0
- package/esm2022/chart/types.mjs +6 -0
- package/esm2022/chart/utils.mjs +117 -0
- package/esm2022/code/code-display-dialog/component.mjs +59 -0
- package/esm2022/code/code-editor-configs.mjs +62 -0
- package/esm2022/code/code.module.mjs +73 -0
- package/esm2022/code/k8s-yaml-display-dialog/component.mjs +53 -0
- package/esm2022/code/public-api.mjs +12 -0
- package/esm2022/code/resource-yaml-display/component.mjs +114 -0
- package/esm2022/core/abstract/base-form-container.mjs +131 -0
- package/esm2022/core/abstract/base-nested-form-control.mjs +195 -0
- package/esm2022/core/abstract/index.mjs +3 -0
- package/esm2022/core/components/index.mjs +2 -0
- package/esm2022/core/components/tree/index.mjs +2 -0
- package/esm2022/core/components/tree/module.mjs +41 -0
- package/esm2022/core/components/tree/node/component.mjs +47 -0
- package/esm2022/core/components/tree/outlet.mjs +34 -0
- package/esm2022/core/components/tree/padding.mjs +41 -0
- package/esm2022/core/components/tree/public-api.mjs +7 -0
- package/esm2022/core/components/tree/toggle.mjs +44 -0
- package/esm2022/core/components/tree/tree/component.mjs +27 -0
- package/esm2022/core/constants/constants.mjs +84 -0
- package/esm2022/core/constants/index.mjs +6 -0
- package/esm2022/core/constants/patterns.mjs +28 -0
- package/esm2022/core/constants/status-icons.mjs +31 -0
- package/esm2022/core/constants/timezones.mjs +234 -0
- package/esm2022/core/constants/tokens.mjs +129 -0
- package/esm2022/core/directives/click-outside.directive.mjs +51 -0
- package/esm2022/core/directives/disabled.directive.mjs +76 -0
- package/esm2022/core/directives/feature-gate.directive.mjs +87 -0
- package/esm2022/core/directives/index.mjs +11 -0
- package/esm2022/core/directives/intercept-deactivate.directive.mjs +52 -0
- package/esm2022/core/directives/last-form-item.directive.mjs +18 -0
- package/esm2022/core/directives/page-header-content.directive.mjs +41 -0
- package/esm2022/core/directives/readonly-field.directive.mjs +157 -0
- package/esm2022/core/directives/resize.directive.mjs +39 -0
- package/esm2022/core/directives/scroll-border-observer.directive.mjs +77 -0
- package/esm2022/core/directives/scroll-to-first-invalid.directive.mjs +130 -0
- package/esm2022/core/guards/feature.guard.mjs +60 -0
- package/esm2022/core/guards/index.mjs +5 -0
- package/esm2022/core/guards/intercept-deactivate.guard.mjs +40 -0
- package/esm2022/core/guards/leave-edit-page.guard.mjs +32 -0
- package/esm2022/core/guards/project-namespace.guard.mjs +70 -0
- package/esm2022/core/index.mjs +2 -0
- package/esm2022/core/module.mjs +145 -0
- package/esm2022/core/pipes/cron-human-readable.pipe.mjs +33 -0
- package/esm2022/core/pipes/crontab-next.pipe.mjs +62 -0
- package/esm2022/core/pipes/field-not-available.pipe.mjs +25 -0
- package/esm2022/core/pipes/img-header.pipe.mjs +18 -0
- package/esm2022/core/pipes/img-theme.pipe.mjs +37 -0
- package/esm2022/core/pipes/index.mjs +18 -0
- package/esm2022/core/pipes/k8s-util.pipe.mjs +196 -0
- package/esm2022/core/pipes/k8s-util.pipe.module.mjs +56 -0
- package/esm2022/core/pipes/keyvalue.pipe.mjs +20 -0
- package/esm2022/core/pipes/marked.pipe.mjs +17 -0
- package/esm2022/core/pipes/minimum-format.pipe.mjs +24 -0
- package/esm2022/core/pipes/page-env.pipe.mjs +66 -0
- package/esm2022/core/pipes/parse-json-translate.pipe.mjs +29 -0
- package/esm2022/core/pipes/parse-json.pipe.mjs +22 -0
- package/esm2022/core/pipes/safe.pipe.mjs +44 -0
- package/esm2022/core/pipes/time.pipe.mjs +115 -0
- package/esm2022/core/pipes/timezone-display.pipe.mjs +21 -0
- package/esm2022/core/pipes/trust-url.pipe.mjs +28 -0
- package/esm2022/core/public-api.mjs +17 -0
- package/esm2022/core/services/aui-paginator-intl.service.mjs +26 -0
- package/esm2022/core/services/aui-tooltip-copy-intl.service.mjs +24 -0
- package/esm2022/core/services/context.service.mjs +48 -0
- package/esm2022/core/services/custom-code-editor-intl.service.mjs +54 -0
- package/esm2022/core/services/feature-gate.service.mjs +73 -0
- package/esm2022/core/services/form-row-duplicate/form-row-duplicate.service.mjs +280 -0
- package/esm2022/core/services/index.mjs +15 -0
- package/esm2022/core/services/intercept-deactivate.service.mjs +78 -0
- package/esm2022/core/services/k8s-util.service.mjs +181 -0
- package/esm2022/core/services/on-resize.service.mjs +52 -0
- package/esm2022/core/services/silently-navigate.service.mjs +28 -0
- package/esm2022/core/services/time.service.mjs +46 -0
- package/esm2022/core/services/ui-state.service.mjs +68 -0
- package/esm2022/core/services/workspace-helper.service.mjs +21 -0
- package/esm2022/core/services/yaml-util.service.mjs +97 -0
- package/esm2022/core/types/commons.mjs +6 -0
- package/esm2022/core/types/helpers.mjs +12 -0
- package/esm2022/core/types/index.mjs +11 -0
- package/esm2022/core/types/k8s/core.mjs +2 -0
- package/esm2022/core/types/k8s/crd.mjs +26 -0
- package/esm2022/core/types/k8s/index.mjs +4 -0
- package/esm2022/core/types/k8s/raw.mjs +123 -0
- package/esm2022/core/types/resource-definitions.mjs +408 -0
- package/esm2022/core/types/schema.mjs +2 -0
- package/esm2022/core/utils/browser.mjs +15 -0
- package/esm2022/core/utils/cache-store.mjs +55 -0
- package/esm2022/core/utils/color-helpers.mjs +6 -0
- package/esm2022/core/utils/common.mjs +261 -0
- package/esm2022/core/utils/create-recursive-filter.mjs +57 -0
- package/esm2022/core/utils/cron-util.mjs +44 -0
- package/esm2022/core/utils/decorators.mjs +116 -0
- package/esm2022/core/utils/format-number.mjs +229 -0
- package/esm2022/core/utils/index.mjs +23 -0
- package/esm2022/core/utils/k8s-pattern.mjs +13 -0
- package/esm2022/core/utils/k8s-util.mjs +97 -0
- package/esm2022/core/utils/local-storage-constants.mjs +2 -0
- package/esm2022/core/utils/node.mjs +18 -0
- package/esm2022/core/utils/observable.mjs +23 -0
- package/esm2022/core/utils/operators.mjs +32 -0
- package/esm2022/core/utils/request-pool.mjs +37 -0
- package/esm2022/core/utils/resources.mjs +66 -0
- package/esm2022/core/utils/tree.mjs +79 -0
- package/esm2022/core/utils/unit.mjs +199 -0
- package/esm2022/core/utils/version.mjs +76 -0
- package/esm2022/core/utils/with-load-state.mjs +21 -0
- package/esm2022/core/utils/workspace.mjs +59 -0
- package/esm2022/core/utils/yaml.mjs +46 -0
- package/esm2022/custom-columns-setting/component.mjs +107 -0
- package/esm2022/custom-columns-setting/public-api.mjs +2 -0
- package/esm2022/disabled-container/disabled-container.component.mjs +88 -0
- package/esm2022/disabled-container/disabled-container.module.mjs +28 -0
- package/esm2022/disabled-container/public-api.mjs +9 -0
- package/esm2022/editable-text/component.mjs +96 -0
- package/esm2022/editable-text/index.mjs +3 -0
- package/esm2022/editable-text/module.mjs +44 -0
- package/esm2022/effect-directive/coerce-number.directive.mjs +57 -0
- package/esm2022/effect-directive/e2e-attribute-binding.directive.mjs +57 -0
- package/esm2022/effect-directive/event.directive.mjs +56 -0
- package/esm2022/effect-directive/min-max.directive.mjs +111 -0
- package/esm2022/effect-directive/module.mjs +46 -0
- package/esm2022/effect-directive/public-api.mjs +8 -0
- package/esm2022/effect-directive/trim.directive.mjs +43 -0
- package/esm2022/effect-directive/validators.directive.mjs +43 -0
- package/esm2022/errors-mapper/base-errors-mapper.mjs +42 -0
- package/esm2022/errors-mapper/default-errors-mapper.service.mjs +65 -0
- package/esm2022/errors-mapper/errors-mapper-component/component.mjs +71 -0
- package/esm2022/errors-mapper/errors-mapper.directive.mjs +115 -0
- package/esm2022/errors-mapper/errors-mapper.module.mjs +18 -0
- package/esm2022/errors-mapper/public-api.mjs +5 -0
- package/esm2022/errors-mapper/types.mjs +2 -0
- package/esm2022/exec/constants.mjs +64 -0
- package/esm2022/exec/index.mjs +8 -0
- package/esm2022/exec/module.mjs +82 -0
- package/esm2022/exec/placeholder/component.mjs +42 -0
- package/esm2022/exec/service.mjs +38 -0
- package/esm2022/exec/terminal/component.mjs +571 -0
- package/esm2022/exec/terminal-group/component.mjs +206 -0
- package/esm2022/exec/types.mjs +2 -0
- package/esm2022/feature-gate-forbidden/component/component.mjs +36 -0
- package/esm2022/feature-gate-forbidden/index.mjs +3 -0
- package/esm2022/feature-gate-forbidden/module.mjs +28 -0
- package/esm2022/form/index.mjs +5 -0
- package/esm2022/form/labels-editor/component.mjs +240 -0
- package/esm2022/form/taints-editor/component.mjs +210 -0
- package/esm2022/form/utils.mjs +61 -0
- package/esm2022/form/validators/async-function-validator.directive.mjs +48 -0
- package/esm2022/form/validators/dns1123-subdomain.mjs +42 -0
- package/esm2022/form/validators/function-validator.directive.mjs +48 -0
- package/esm2022/form/validators/maxlength-minlength-validator.directive.mjs +69 -0
- package/esm2022/form/validators/module.mjs +42 -0
- package/esm2022/form/validators/not-be-validator.directive.mjs +55 -0
- package/esm2022/form/validators/one-of-validator.directive.mjs +56 -0
- package/esm2022/form/validators/public-api.mjs +11 -0
- package/esm2022/form/validators/resource-limit.mjs +79 -0
- package/esm2022/form/validators/strong-password/index.mjs +4 -0
- package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +102 -0
- package/esm2022/form/validators/strong-password/strong-password-tooltip/index.mjs +2 -0
- package/esm2022/form/validators/strong-password/strong-password-validator.directive.mjs +172 -0
- package/esm2022/form/validators/strong-password/strong-password-validator.module.mjs +42 -0
- package/esm2022/form/validators/utils.mjs +107 -0
- package/esm2022/graph-canvas/components/graph-actions.component.mjs +48 -0
- package/esm2022/graph-canvas/components/graph-canvas.component.mjs +354 -0
- package/esm2022/graph-canvas/components/graph-link.component.mjs +140 -0
- package/esm2022/graph-canvas/components/graph-links.component.mjs +19 -0
- package/esm2022/graph-canvas/components/graph-node.directive.mjs +30 -0
- package/esm2022/graph-canvas/graph-canvas.module.mjs +49 -0
- package/esm2022/graph-canvas/graph-store.service.mjs +45 -0
- package/esm2022/graph-canvas/public-api.mjs +8 -0
- package/esm2022/graph-canvas/types.mjs +2 -0
- package/esm2022/graph-canvas/utils.mjs +16 -0
- package/esm2022/grid-layout/components/grid/component.mjs +286 -0
- package/esm2022/grid-layout/components/grid-items/component.mjs +228 -0
- package/esm2022/grid-layout/constant.mjs +7 -0
- package/esm2022/grid-layout/directives/drag-handler.directive.mjs +29 -0
- package/esm2022/grid-layout/directives/placeholder.directive.mjs +36 -0
- package/esm2022/grid-layout/directives/remove-handler.directive.mjs +22 -0
- package/esm2022/grid-layout/directives/resize-handler.directive.mjs +29 -0
- package/esm2022/grid-layout/grid-layout.service.mjs +85 -0
- package/esm2022/grid-layout/grid-placeholder.service.mjs +45 -0
- package/esm2022/grid-layout/index.mjs +11 -0
- package/esm2022/grid-layout/module.mjs +38 -0
- package/esm2022/grid-layout/type.mjs +6 -0
- package/esm2022/grid-layout/utils/client-rect.utils.mjs +12 -0
- package/esm2022/grid-layout/utils/grid.utils.mjs +265 -0
- package/esm2022/grid-layout/utils/mouse.utils.mjs +50 -0
- package/esm2022/grid-layout/utils/operator.mjs +6 -0
- package/esm2022/grid-layout/utils/react-grid-layout.utils.mjs +471 -0
- package/esm2022/grid-layout/utils/scroll.utils.mjs +209 -0
- package/esm2022/help-document/component.mjs +103 -0
- package/esm2022/help-document/directive.mjs +128 -0
- package/esm2022/help-document/module.mjs +47 -0
- package/esm2022/help-document/public-api.mjs +10 -0
- package/esm2022/help-document/service.mjs +57 -0
- package/esm2022/iframe-config/config.service.mjs +49 -0
- package/esm2022/iframe-config/constants.mjs +8 -0
- package/esm2022/iframe-config/public-api.mjs +9 -0
- package/esm2022/k8s-resource-list/footer/component.mjs +331 -0
- package/esm2022/k8s-resource-list/k8s-resource-list.mjs +226 -0
- package/esm2022/k8s-resource-list/k8s-resource-list.module.mjs +43 -0
- package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +176 -0
- package/esm2022/k8s-resource-list/public-api.mjs +13 -0
- package/esm2022/k8s-resource-list/types.mjs +11 -0
- package/esm2022/k8s-resource-list/utils.mjs +81 -0
- package/esm2022/license/license-api.mjs +55 -0
- package/esm2022/license/license-error/component.mjs +113 -0
- package/esm2022/license/license-error/module.mjs +55 -0
- package/esm2022/license/license.guard.mjs +54 -0
- package/esm2022/license/license.service.mjs +53 -0
- package/esm2022/license/license.type.mjs +24 -0
- package/esm2022/license/public-api.mjs +12 -0
- package/esm2022/metric-chart/common-chart.service.mjs +77 -0
- package/esm2022/metric-chart/helpers.mjs +111 -0
- package/esm2022/metric-chart/metric-chart.component.mjs +344 -0
- package/esm2022/metric-chart/metric-chart.module.mjs +61 -0
- package/esm2022/metric-chart/metric-time-pick.mjs +114 -0
- package/esm2022/metric-chart/public-api.mjs +14 -0
- package/esm2022/metric-chart/range-util.mjs +35 -0
- package/esm2022/metric-chart/types.mjs +2 -0
- package/esm2022/metric-chart/utils.mjs +220 -0
- package/esm2022/multi-search/action-input/component.mjs +1055 -0
- package/esm2022/multi-search/form/component.mjs +379 -0
- package/esm2022/multi-search/index.mjs +5 -0
- package/esm2022/multi-search/multi-search-tags/component.mjs +129 -0
- package/esm2022/multi-search/types.mjs +2 -0
- package/esm2022/multi-search/utils.mjs +48 -0
- package/esm2022/mutable/element.mjs +23 -0
- package/esm2022/mutable/mosaic/mosaic.component.mjs +98 -0
- package/esm2022/mutable/mosaic/mosaic.directive.mjs +23 -0
- package/esm2022/mutable/mutable.directive.mjs +356 -0
- package/esm2022/mutable/mutable.module.mjs +41 -0
- package/esm2022/mutable/public-api.mjs +6 -0
- package/esm2022/mutable/util.mjs +16 -0
- package/esm2022/notification/errors-mapper.mjs +28 -0
- package/esm2022/notification/feedback-notification/component.mjs +95 -0
- package/esm2022/notification/helpers.mjs +4 -0
- package/esm2022/notification/notification-util.module.mjs +32 -0
- package/esm2022/notification/notification-util.service.mjs +156 -0
- package/esm2022/notification/public-api.mjs +13 -0
- package/esm2022/notification/resource-error.interceptor.mjs +60 -0
- package/esm2022/overview-banner/overview-banner.component.mjs +34 -0
- package/esm2022/overview-banner/overview-banner.module.mjs +20 -0
- package/esm2022/overview-banner/overview-banner.types.mjs +2 -0
- package/esm2022/overview-banner/public-api.mjs +4 -0
- package/esm2022/page-guard/component/component.mjs +295 -0
- package/esm2022/page-guard/component/helper-directives.mjs +51 -0
- package/esm2022/page-guard/component/page-guard.type.mjs +82 -0
- package/esm2022/page-guard/module.mjs +37 -0
- package/esm2022/page-guard/public-api.mjs +11 -0
- package/esm2022/page-scaffold/index.mjs +5 -0
- package/esm2022/page-scaffold/module.mjs +21 -0
- package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb-slot.directive.mjs +26 -0
- package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +266 -0
- package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.service.mjs +27 -0
- package/esm2022/page-scaffold/navigation/breadcrumb/index.mjs +5 -0
- package/esm2022/page-scaffold/navigation/breadcrumb/module.mjs +44 -0
- package/esm2022/page-scaffold/navigation/index.mjs +7 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animation-data.mjs +113 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/alarm.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/app.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/application.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/artifactory.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/audit.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/auxiliary_function.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/backup.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/bar_chart.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/bill.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/catalog.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/certificate.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/ci.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/code.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/data_service.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/devops.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/devops_tools.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/events.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/file.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/gateway.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/gitops.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/inspection.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/internet.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/kafka.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/log.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/member.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/mongodb.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/monitor.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/mysql.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/namespace.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/notice.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/oam.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/operation_center.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/params_template.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/pipeline.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/platform_settings.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/postgresql.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/product.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/proj.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/rabbitmq.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/redis.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/resource_list.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/rocketmq.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/scrum.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/secrets.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/security.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/server.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/service_mesh.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/sitemap.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/sliders_up.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/storage.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/test_management.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/topology.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/user_role.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/view_jaeger.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/virtualization.json +1 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/index.mjs +3 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/lottie-icon.directive.mjs +91 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/module.mjs +17 -0
- package/esm2022/page-scaffold/navigation/lottie-icons/replace-lottie-colors.mjs +70 -0
- package/esm2022/page-scaffold/navigation/module.mjs +18 -0
- package/esm2022/page-scaffold/navigation/nav-menu/index.mjs +4 -0
- package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +443 -0
- package/esm2022/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.mjs +83 -0
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +185 -0
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.module.mjs +63 -0
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.types.mjs +2 -0
- package/esm2022/page-scaffold/navigation/navconfig-loader/index.mjs +8 -0
- package/esm2022/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.mjs +175 -0
- package/esm2022/page-scaffold/navigation/utils.mjs +12 -0
- package/esm2022/page-scaffold/page/context.service.mjs +22 -0
- package/esm2022/page-scaffold/page/helper-directives.mjs +66 -0
- package/esm2022/page-scaffold/page/index.mjs +5 -0
- package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +146 -0
- package/esm2022/page-scaffold/page/notices/notice.component.mjs +129 -0
- package/esm2022/page-scaffold/page/page.component.mjs +140 -0
- package/esm2022/page-scaffold/page/page.module.mjs +67 -0
- package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +199 -0
- package/esm2022/page-scaffold/page-header/account-menu/module.mjs +43 -0
- package/esm2022/page-scaffold/page-header/account-menu/public-api.mjs +8 -0
- package/esm2022/page-scaffold/page-header/common-layout/common-layout.module.mjs +75 -0
- package/esm2022/page-scaffold/page-header/common-layout/context.service.mjs +86 -0
- package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +271 -0
- package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +273 -0
- package/esm2022/page-scaffold/page-header/common-layout/product-select/service.mjs +19 -0
- package/esm2022/page-scaffold/page-header/common-layout/project-select/base-selection.mjs +122 -0
- package/esm2022/page-scaffold/page-header/common-layout/public-api.mjs +14 -0
- package/esm2022/page-scaffold/page-header/common-layout/store.service.mjs +58 -0
- package/esm2022/page-scaffold/page-header/common-layout/utils.mjs +7 -0
- package/esm2022/page-scaffold/page-header/component.mjs +104 -0
- package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +131 -0
- package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +136 -0
- package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +95 -0
- package/esm2022/page-scaffold/page-header/header-notify/header-notify.module.mjs +71 -0
- package/esm2022/page-scaffold/page-header/header-notify/notify.service.mjs +282 -0
- package/esm2022/page-scaffold/page-header/header-notify/public-api.mjs +10 -0
- package/esm2022/page-scaffold/page-header/header-notify/utils.mjs +44 -0
- package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +306 -0
- package/esm2022/page-scaffold/page-header/help-menu/module.mjs +65 -0
- package/esm2022/page-scaffold/page-header/help-menu/public-api.mjs +8 -0
- package/esm2022/page-scaffold/page-header/index.mjs +14 -0
- package/esm2022/page-scaffold/page-header/module.mjs +61 -0
- package/esm2022/permission/admin.guard.mjs +43 -0
- package/esm2022/permission/constants.mjs +2 -0
- package/esm2022/permission/helpers.mjs +43 -0
- package/esm2022/permission/k8s-permission.service.mjs +110 -0
- package/esm2022/permission/permission.guard.mjs +108 -0
- package/esm2022/permission/public-api.mjs +13 -0
- package/esm2022/permission/types.mjs +38 -0
- package/esm2022/pie-derivative-chart/donut-status/component.mjs +195 -0
- package/esm2022/pie-derivative-chart/indicator-color.directive.mjs +30 -0
- package/esm2022/pie-derivative-chart/numerical-limit.pipe.mjs +26 -0
- package/esm2022/pie-derivative-chart/pie-derivative-chart.module.mjs +67 -0
- package/esm2022/pie-derivative-chart/public-api.mjs +11 -0
- package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +244 -0
- package/esm2022/public-api.mjs +44 -0
- package/esm2022/scm/index.mjs +9 -0
- package/esm2022/scm/password-input/component.mjs +224 -0
- package/esm2022/scm/password-input/index.mjs +3 -0
- package/esm2022/scm/password-input/module.mjs +64 -0
- package/esm2022/scm/pure-pipe/calc.pipe.mjs +20 -0
- package/esm2022/scm/pure-pipe/index.mjs +4 -0
- package/esm2022/scm/pure-pipe/module.mjs +19 -0
- package/esm2022/scm/pure-pipe/pure.pipe.mjs +26 -0
- package/esm2022/scm/resource-multi-select/component.mjs +214 -0
- package/esm2022/scm/resource-multi-select/util.mjs +24 -0
- package/esm2022/scm/search-panel/component.mjs +86 -0
- package/esm2022/scm/search-panel/helper.directive.mjs +14 -0
- package/esm2022/scm/search-panel/search-item/component.mjs +28 -0
- package/esm2022/scm/text-ellipsis/component.mjs +55 -0
- package/esm2022/searchable-selector/component.mjs +275 -0
- package/esm2022/searchable-selector/module.mjs +63 -0
- package/esm2022/searchable-selector/public-api.mjs +3 -0
- package/esm2022/skeleton/item/component.mjs +44 -0
- package/esm2022/skeleton/module.mjs +26 -0
- package/esm2022/skeleton/nav-skeleton/component.mjs +35 -0
- package/esm2022/skeleton/public-api.mjs +4 -0
- package/esm2022/table/component.mjs +821 -0
- package/esm2022/table/constants.mjs +4 -0
- package/esm2022/table/helper.mjs +16 -0
- package/esm2022/table/helpers.directive.mjs +18 -0
- package/esm2022/table/module.mjs +82 -0
- package/esm2022/table/public-api.mjs +7 -0
- package/esm2022/table/types.mjs +2 -0
- package/esm2022/table/util.service.mjs +81 -0
- package/esm2022/translate/constants.mjs +13 -0
- package/esm2022/translate/en.json +533 -0
- package/esm2022/translate/helpers.mjs +22 -0
- package/esm2022/translate/pick-locale.pipe.mjs +34 -0
- package/esm2022/translate/public-api.mjs +16 -0
- package/esm2022/translate/tokens.mjs +13 -0
- package/esm2022/translate/translate.directive.mjs +164 -0
- package/esm2022/translate/translate.module.mjs +91 -0
- package/esm2022/translate/translate.pipe.mjs +72 -0
- package/esm2022/translate/translate.service.mjs +327 -0
- package/esm2022/translate/types.mjs +6 -0
- package/esm2022/translate/zh.json +533 -0
- package/esm2022/view-chart/custom-template/dropdown-legend.mjs +115 -0
- package/esm2022/view-chart/legend/legend.component.mjs +263 -0
- package/esm2022/view-chart/public-api.mjs +9 -0
- package/esm2022/view-chart/types.mjs +2 -0
- package/esm2022/view-chart/view-chart.component.mjs +845 -0
- package/esm2022/view-chart/view-chart.module.mjs +63 -0
- package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +115 -0
- package/esm2022/view-zchart/legend/legend.component.mjs +270 -0
- package/esm2022/view-zchart/public-api.mjs +8 -0
- package/esm2022/view-zchart/units.mjs +28 -0
- package/esm2022/view-zchart/view-zchart.component.mjs +999 -0
- package/esm2022/view-zchart/view-zchart.module.mjs +63 -0
- package/esm2022/widget/card-section/card-section.component.mjs +33 -0
- package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +342 -0
- package/esm2022/widget/confirm-delete/utils.mjs +8 -0
- package/esm2022/widget/current-time/component.mjs +42 -0
- package/esm2022/widget/date-range-picker/component.mjs +317 -0
- package/esm2022/widget/date-range-picker/public-api.mjs +4 -0
- package/esm2022/widget/date-range-picker/type.mjs +2 -0
- package/esm2022/widget/date-range-picker/util.mjs +57 -0
- package/esm2022/widget/field-set/column/component.mjs +34 -0
- package/esm2022/widget/field-set/group/component.mjs +22 -0
- package/esm2022/widget/field-set/item/component.mjs +60 -0
- package/esm2022/widget/foldable-block/component.mjs +109 -0
- package/esm2022/widget/foldable-item-in-table/component.mjs +126 -0
- package/esm2022/widget/loading-mask/loading-mask.component.mjs +75 -0
- package/esm2022/widget/public-api.mjs +20 -0
- package/esm2022/widget/relative-time/component.mjs +60 -0
- package/esm2022/widget/select-prefix-label/directive.mjs +89 -0
- package/esm2022/widget/tags-label/component.mjs +374 -0
- package/esm2022/widget/terminating-tag/component.mjs +27 -0
- package/esm2022/widget/text-tooltip/directive.mjs +73 -0
- package/esm2022/widget/text-with-url/component.mjs +76 -0
- package/esm2022/widget/widget.module.mjs +140 -0
- package/esm2022/widget/zero-state/zero-state.component.mjs +96 -0
- package/esm2022/window-channel/base-window-channel.mjs +38 -0
- package/esm2022/window-channel/directives/host-link.directive.mjs +43 -0
- package/esm2022/window-channel/host-window-channel.service.mjs +83 -0
- package/esm2022/window-channel/index.mjs +5 -0
- package/esm2022/window-channel/plugin-window-channel.service.mjs +38 -0
- package/esm2022/window-channel/utils.mjs +12 -0
- package/esm2022/xterm/public-api.mjs +4 -0
- package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +284 -0
- package/esm2022/xterm/xterm-terminal/xterm-terminal.directive.mjs +25 -0
- package/esm2022/xterm/xterm.component.mjs +128 -0
- package/exec/constants.d.ts +13 -0
- package/exec/index.d.ts +7 -0
- package/exec/module.d.ts +17 -0
- package/exec/placeholder/component.d.ts +20 -0
- package/exec/service.d.ts +12 -0
- package/exec/terminal/component.d.ts +95 -0
- package/exec/terminal-group/component.d.ts +41 -0
- package/exec/types.d.ts +14 -0
- package/feature-gate-forbidden/component/component.d.ts +6 -0
- package/feature-gate-forbidden/index.d.ts +2 -0
- package/feature-gate-forbidden/module.d.ts +11 -0
- package/form/index.d.ts +4 -0
- package/form/labels-editor/component.d.ts +31 -0
- package/form/taints-editor/component.d.ts +22 -0
- package/form/utils.d.ts +40 -0
- package/form/validators/async-function-validator.directive.d.ts +11 -0
- package/form/validators/dns1123-subdomain.d.ts +28 -0
- package/form/validators/function-validator.directive.d.ts +11 -0
- package/form/validators/maxlength-minlength-validator.directive.d.ts +20 -0
- package/form/validators/module.d.ts +13 -0
- package/form/validators/not-be-validator.directive.d.ts +12 -0
- package/form/validators/one-of-validator.directive.d.ts +12 -0
- package/form/validators/public-api.d.ts +10 -0
- package/form/validators/resource-limit.d.ts +16 -0
- package/form/validators/strong-password/index.d.ts +3 -0
- package/form/validators/strong-password/strong-password-tooltip/component.d.ts +6 -0
- package/form/validators/strong-password/strong-password-tooltip/index.d.ts +1 -0
- package/form/validators/strong-password/strong-password-validator.directive.d.ts +34 -0
- package/form/validators/strong-password/strong-password-validator.module.d.ts +12 -0
- package/form/validators/utils.d.ts +57 -0
- package/graph-canvas/components/graph-actions.component.d.ts +8 -0
- package/graph-canvas/components/graph-canvas.component.d.ts +47 -0
- package/graph-canvas/components/graph-link.component.d.ts +26 -0
- package/graph-canvas/components/graph-links.component.d.ts +5 -0
- package/graph-canvas/components/graph-node.directive.d.ts +15 -0
- package/graph-canvas/graph-canvas.module.d.ts +14 -0
- package/graph-canvas/graph-store.service.d.ts +19 -0
- package/graph-canvas/public-api.d.ts +7 -0
- package/graph-canvas/types.d.ts +30 -0
- package/graph-canvas/utils.d.ts +2 -0
- package/grid-layout/components/grid/component.d.ts +53 -0
- package/grid-layout/components/grid-items/component.d.ts +56 -0
- package/grid-layout/constant.d.ts +3 -0
- package/grid-layout/directives/drag-handler.directive.d.ts +11 -0
- package/grid-layout/directives/placeholder.directive.d.ts +12 -0
- package/grid-layout/directives/remove-handler.directive.d.ts +9 -0
- package/grid-layout/directives/resize-handler.directive.d.ts +11 -0
- package/grid-layout/grid-layout.service.d.ts +49 -0
- package/grid-layout/grid-placeholder.service.d.ts +17 -0
- package/grid-layout/index.d.ts +10 -0
- package/grid-layout/module.d.ts +14 -0
- package/grid-layout/type.d.ts +65 -0
- package/grid-layout/utils/client-rect.utils.d.ts +2 -0
- package/grid-layout/utils/grid.utils.d.ts +30 -0
- package/grid-layout/utils/mouse.utils.d.ts +24 -0
- package/grid-layout/utils/operator.d.ts +3 -0
- package/grid-layout/utils/react-grid-layout.utils.d.ts +171 -0
- package/grid-layout/utils/scroll.utils.d.ts +28 -0
- package/help-document/component.d.ts +30 -0
- package/help-document/directive.d.ts +38 -0
- package/help-document/module.d.ts +13 -0
- package/help-document/public-api.d.ts +9 -0
- package/help-document/service.d.ts +30 -0
- package/iframe-config/config.service.d.ts +20 -0
- package/iframe-config/constants.d.ts +7 -0
- package/iframe-config/public-api.d.ts +8 -0
- package/index.d.ts +5 -0
- package/k8s-resource-list/footer/component.d.ts +37 -0
- package/k8s-resource-list/k8s-resource-list.d.ts +42 -0
- package/k8s-resource-list/k8s-resource-list.module.d.ts +10 -0
- package/k8s-resource-list/k8s-resource-paged-list.d.ts +61 -0
- package/k8s-resource-list/public-api.d.ts +12 -0
- package/k8s-resource-list/types.d.ts +70 -0
- package/k8s-resource-list/utils.d.ts +19 -0
- package/license/license-api.d.ts +19 -0
- package/license/license-error/component.d.ts +33 -0
- package/license/license-error/module.d.ts +13 -0
- package/license/license.guard.d.ts +23 -0
- package/license/license.service.d.ts +21 -0
- package/license/license.type.d.ts +19 -0
- package/license/public-api.d.ts +11 -0
- package/metric-chart/common-chart.service.d.ts +30 -0
- package/metric-chart/helpers.d.ts +54 -0
- package/metric-chart/metric-chart.component.d.ts +115 -0
- package/metric-chart/metric-chart.module.d.ts +14 -0
- package/metric-chart/metric-time-pick.d.ts +12 -0
- package/metric-chart/public-api.d.ts +13 -0
- package/metric-chart/range-util.d.ts +1 -0
- package/metric-chart/types.d.ts +69 -0
- package/metric-chart/utils.d.ts +86 -0
- package/multi-search/action-input/component.d.ts +119 -0
- package/multi-search/form/component.d.ts +63 -0
- package/multi-search/index.d.ts +4 -0
- package/multi-search/multi-search-tags/component.d.ts +26 -0
- package/multi-search/types.d.ts +32 -0
- package/multi-search/utils.d.ts +24 -0
- package/mutable/element.d.ts +10 -0
- package/mutable/mosaic/mosaic.component.d.ts +32 -0
- package/mutable/mosaic/mosaic.directive.d.ts +9 -0
- package/mutable/mutable.directive.d.ts +83 -0
- package/mutable/mutable.module.d.ts +10 -0
- package/mutable/public-api.d.ts +5 -0
- package/mutable/util.d.ts +18 -0
- package/notification/errors-mapper.d.ts +7 -0
- package/notification/feedback-notification/component.d.ts +17 -0
- package/notification/helpers.d.ts +2 -0
- package/notification/notification-util.module.d.ts +10 -0
- package/notification/notification-util.service.d.ts +39 -0
- package/notification/public-api.d.ts +12 -0
- package/notification/resource-error.interceptor.d.ts +21 -0
- package/overview-banner/overview-banner.component.d.ts +7 -0
- package/overview-banner/overview-banner.module.d.ts +9 -0
- package/overview-banner/overview-banner.types.d.ts +5 -0
- package/overview-banner/public-api.d.ts +3 -0
- package/package.json +65 -0
- package/page-guard/component/component.d.ts +40 -0
- package/page-guard/component/helper-directives.d.ts +17 -0
- package/page-guard/component/page-guard.type.d.ts +86 -0
- package/page-guard/module.d.ts +8 -0
- package/page-guard/public-api.d.ts +10 -0
- package/page-scaffold/index.d.ts +4 -0
- package/page-scaffold/module.d.ts +10 -0
- package/page-scaffold/navigation/breadcrumb/breadcrumb-slot.directive.d.ts +12 -0
- package/page-scaffold/navigation/breadcrumb/breadcrumb.component.d.ts +40 -0
- package/page-scaffold/navigation/breadcrumb/breadcrumb.service.d.ts +13 -0
- package/page-scaffold/navigation/breadcrumb/index.d.ts +4 -0
- package/page-scaffold/navigation/breadcrumb/module.d.ts +13 -0
- package/page-scaffold/navigation/index.d.ts +6 -0
- package/page-scaffold/navigation/lottie-icons/animation-data.d.ts +2 -0
- package/page-scaffold/navigation/lottie-icons/index.d.ts +2 -0
- package/page-scaffold/navigation/lottie-icons/lottie-icon.directive.d.ts +24 -0
- package/page-scaffold/navigation/lottie-icons/module.d.ts +7 -0
- package/page-scaffold/navigation/lottie-icons/replace-lottie-colors.d.ts +1 -0
- package/page-scaffold/navigation/module.d.ts +7 -0
- package/page-scaffold/navigation/nav-menu/index.d.ts +3 -0
- package/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.d.ts +52 -0
- package/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.d.ts +10 -0
- package/page-scaffold/navigation/nav-menu/nav-menu.component.d.ts +47 -0
- package/page-scaffold/navigation/nav-menu/nav-menu.module.d.ts +16 -0
- package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts +21 -0
- package/page-scaffold/navigation/navconfig-loader/index.d.ts +7 -0
- package/page-scaffold/navigation/navconfig-loader/navconfig-loader.service.d.ts +61 -0
- package/page-scaffold/navigation/utils.d.ts +11 -0
- package/page-scaffold/page/context.service.d.ts +9 -0
- package/page-scaffold/page/helper-directives.d.ts +30 -0
- package/page-scaffold/page/index.d.ts +4 -0
- package/page-scaffold/page/notices/maintenance.component.d.ts +26 -0
- package/page-scaffold/page/notices/notice.component.d.ts +22 -0
- package/page-scaffold/page/page.component.d.ts +23 -0
- package/page-scaffold/page/page.module.d.ts +14 -0
- package/page-scaffold/page-header/account-menu/component/component.d.ts +38 -0
- package/page-scaffold/page-header/account-menu/module.d.ts +10 -0
- package/page-scaffold/page-header/account-menu/public-api.d.ts +7 -0
- package/page-scaffold/page-header/common-layout/common-layout.module.d.ts +16 -0
- package/page-scaffold/page-header/common-layout/context.service.d.ts +51 -0
- package/page-scaffold/page-header/common-layout/namespace-select/component.d.ts +49 -0
- package/page-scaffold/page-header/common-layout/product-select/component.d.ts +37 -0
- package/page-scaffold/page-header/common-layout/product-select/service.d.ts +9 -0
- package/page-scaffold/page-header/common-layout/project-select/base-selection.d.ts +24 -0
- package/page-scaffold/page-header/common-layout/public-api.d.ts +13 -0
- package/page-scaffold/page-header/common-layout/store.service.d.ts +31 -0
- package/page-scaffold/page-header/common-layout/utils.d.ts +2 -0
- package/page-scaffold/page-header/component.d.ts +21 -0
- package/page-scaffold/page-header/enterprise-support-status/component.d.ts +24 -0
- package/page-scaffold/page-header/header-notify/component/header-notify.component.d.ts +27 -0
- package/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.d.ts +19 -0
- package/page-scaffold/page-header/header-notify/header-notify.module.d.ts +14 -0
- package/page-scaffold/page-header/header-notify/notify.service.d.ts +60 -0
- package/page-scaffold/page-header/header-notify/public-api.d.ts +9 -0
- package/page-scaffold/page-header/header-notify/utils.d.ts +35 -0
- package/page-scaffold/page-header/help-menu/component/component.d.ts +45 -0
- package/page-scaffold/page-header/help-menu/module.d.ts +13 -0
- package/page-scaffold/page-header/help-menu/public-api.d.ts +7 -0
- package/page-scaffold/page-header/index.d.ts +13 -0
- package/page-scaffold/page-header/module.d.ts +15 -0
- package/permission/admin.guard.d.ts +14 -0
- package/permission/constants.d.ts +1 -0
- package/permission/helpers.d.ts +11 -0
- package/permission/k8s-permission.service.d.ts +80 -0
- package/permission/permission.guard.d.ts +22 -0
- package/permission/public-api.d.ts +12 -0
- package/permission/types.d.ts +74 -0
- package/pie-derivative-chart/donut-status/component.d.ts +79 -0
- package/pie-derivative-chart/indicator-color.directive.d.ts +10 -0
- package/pie-derivative-chart/numerical-limit.pipe.d.ts +7 -0
- package/pie-derivative-chart/pie-derivative-chart.module.d.ts +15 -0
- package/pie-derivative-chart/public-api.d.ts +10 -0
- package/pie-derivative-chart/radial-bar/radial-bar-chart.component.d.ts +55 -0
- package/public-api.d.ts +43 -0
- package/scm/index.d.ts +8 -0
- package/scm/password-input/component.d.ts +35 -0
- package/scm/password-input/index.d.ts +2 -0
- package/scm/password-input/module.d.ts +14 -0
- package/scm/pure-pipe/calc.pipe.d.ts +11 -0
- package/scm/pure-pipe/index.d.ts +3 -0
- package/scm/pure-pipe/module.d.ts +8 -0
- package/scm/pure-pipe/pure.pipe.d.ts +17 -0
- package/scm/resource-multi-select/component.d.ts +40 -0
- package/scm/resource-multi-select/util.d.ts +10 -0
- package/scm/search-panel/component.d.ts +16 -0
- package/scm/search-panel/helper.directive.d.ts +5 -0
- package/scm/search-panel/search-item/component.d.ts +7 -0
- package/scm/text-ellipsis/component.d.ts +9 -0
- package/searchable-selector/component.d.ts +54 -0
- package/searchable-selector/module.d.ts +12 -0
- package/searchable-selector/public-api.d.ts +2 -0
- package/skeleton/item/component.d.ts +12 -0
- package/skeleton/module.d.ts +10 -0
- package/skeleton/nav-skeleton/component.d.ts +6 -0
- package/skeleton/public-api.d.ts +3 -0
- package/styles/global.scss +890 -0
- package/styles/markdown-body.scss +105 -0
- package/styles/mixins.scss +640 -0
- package/styles/reset-browser.scss +88 -0
- package/styles/tailwind-preset.scss +1 -0
- package/styles/var.scss +29 -0
- package/table/component.d.ts +84 -0
- package/table/constants.d.ts +3 -0
- package/table/helper.d.ts +2 -0
- package/table/helpers.directive.d.ts +21 -0
- package/table/module.d.ts +19 -0
- package/table/public-api.d.ts +6 -0
- package/table/types.d.ts +69 -0
- package/table/util.service.d.ts +13 -0
- package/translate/constants.d.ts +13 -0
- package/translate/helpers.d.ts +14 -0
- package/translate/pick-locale.pipe.d.ts +12 -0
- package/translate/public-api.d.ts +15 -0
- package/translate/tokens.d.ts +12 -0
- package/translate/translate.directive.d.ts +52 -0
- package/translate/translate.module.d.ts +1084 -0
- package/translate/translate.pipe.d.ts +25 -0
- package/translate/translate.service.d.ts +68 -0
- package/translate/types.d.ts +20 -0
- package/view-chart/custom-template/dropdown-legend.d.ts +11 -0
- package/view-chart/legend/legend.component.d.ts +36 -0
- package/view-chart/public-api.d.ts +8 -0
- package/view-chart/types.d.ts +37 -0
- package/view-chart/view-chart.component.d.ts +187 -0
- package/view-chart/view-chart.module.d.ts +15 -0
- package/view-zchart/custom-template/dropdown-legend.d.ts +11 -0
- package/view-zchart/legend/legend.component.d.ts +42 -0
- package/view-zchart/public-api.d.ts +7 -0
- package/view-zchart/units.d.ts +2 -0
- package/view-zchart/view-zchart.component.d.ts +209 -0
- package/view-zchart/view-zchart.module.d.ts +15 -0
- package/widget/card-section/card-section.component.d.ts +7 -0
- package/widget/confirm-delete/confirm-delete.component.d.ts +57 -0
- package/widget/confirm-delete/utils.d.ts +25 -0
- package/widget/current-time/component.d.ts +14 -0
- package/widget/date-range-picker/component.d.ts +54 -0
- package/widget/date-range-picker/public-api.d.ts +3 -0
- package/widget/date-range-picker/type.d.ts +36 -0
- package/widget/date-range-picker/util.d.ts +11 -0
- package/widget/field-set/column/component.d.ts +10 -0
- package/widget/field-set/group/component.d.ts +6 -0
- package/widget/field-set/item/component.d.ts +13 -0
- package/widget/foldable-block/component.d.ts +17 -0
- package/widget/foldable-item-in-table/component.d.ts +22 -0
- package/widget/loading-mask/loading-mask.component.d.ts +13 -0
- package/widget/public-api.d.ts +19 -0
- package/widget/relative-time/component.d.ts +15 -0
- package/widget/select-prefix-label/directive.d.ts +17 -0
- package/widget/tags-label/component.d.ts +51 -0
- package/widget/terminating-tag/component.d.ts +7 -0
- package/widget/text-tooltip/directive.d.ts +21 -0
- package/widget/text-with-url/component.d.ts +12 -0
- package/widget/widget.module.d.ts +26 -0
- package/widget/zero-state/zero-state.component.d.ts +13 -0
- package/window-channel/base-window-channel.d.ts +9 -0
- package/window-channel/directives/host-link.directive.d.ts +11 -0
- package/window-channel/host-window-channel.service.d.ts +15 -0
- package/window-channel/index.d.ts +4 -0
- package/window-channel/plugin-window-channel.service.d.ts +10 -0
- package/window-channel/utils.d.ts +37 -0
- package/xterm/public-api.d.ts +3 -0
- package/xterm/xterm-terminal/xterm-terminal.component.d.ts +31 -0
- package/xterm/xterm-terminal/xterm-terminal.directive.d.ts +9 -0
- package/xterm/xterm.component.d.ts +28 -0
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @packageDocumentation
|
|
3
|
+
* @module k8s-resource-list
|
|
4
|
+
*/
|
|
5
|
+
import { EMPTY, Subject, merge, of, catchError, distinctUntilChanged, exhaustMap, filter, map, scan, startWith, switchMap, takeUntil, tap, finalize, ReplaySubject, } from 'rxjs';
|
|
6
|
+
import { WatchEvent } from '../api/types';
|
|
7
|
+
import { DOWNGRADE_WATCH_ENABLED, publishRef, } from '../core';
|
|
8
|
+
import { LoadAction, } from './types';
|
|
9
|
+
import { extractListParamsFromRoute, normalizeParams } from './utils';
|
|
10
|
+
export class K8SResourceList {
|
|
11
|
+
constructor({ fetcher, fetchParams$, activatedRoute, limit = 20, polling = 0, watcher, insertFn = defaultInsert, }) {
|
|
12
|
+
this.reloadAction$$ = new Subject();
|
|
13
|
+
this.loadMoreAction$$ = new Subject();
|
|
14
|
+
this.itemsScanner$$ = new Subject();
|
|
15
|
+
this.destroy$$ = new Subject();
|
|
16
|
+
this.bypassItems$ = new ReplaySubject(1);
|
|
17
|
+
this.snapshot = {};
|
|
18
|
+
this.insertFn = insertFn;
|
|
19
|
+
this.queryParams$ = (fetchParams$ ||
|
|
20
|
+
(activatedRoute
|
|
21
|
+
? extractListParamsFromRoute(activatedRoute)
|
|
22
|
+
: of(null))).pipe(publishRef());
|
|
23
|
+
const validPolling = (polling && watcher && DOWNGRADE_WATCH_ENABLED) || (polling && !watcher)
|
|
24
|
+
? polling
|
|
25
|
+
: 0;
|
|
26
|
+
this.loadState$ = this.buildLoadStateStream({
|
|
27
|
+
queryParams$: this.queryParams$,
|
|
28
|
+
fetcher,
|
|
29
|
+
limit,
|
|
30
|
+
polling: validPolling,
|
|
31
|
+
});
|
|
32
|
+
this.insertFn = insertFn;
|
|
33
|
+
this.initStreams(validPolling ? null : watcher);
|
|
34
|
+
}
|
|
35
|
+
reload(silent = false) {
|
|
36
|
+
this.reloadAction$$.next(silent);
|
|
37
|
+
}
|
|
38
|
+
loadMore() {
|
|
39
|
+
this.loadMoreAction$$.next();
|
|
40
|
+
}
|
|
41
|
+
scanItems(scanner) {
|
|
42
|
+
this.itemsScanner$$.next(scanner);
|
|
43
|
+
}
|
|
44
|
+
destroy() {
|
|
45
|
+
this.destroy$$.next();
|
|
46
|
+
this.destroy$$.complete();
|
|
47
|
+
}
|
|
48
|
+
create(resource) {
|
|
49
|
+
this.scanItems(this._create(resource));
|
|
50
|
+
}
|
|
51
|
+
update(resource) {
|
|
52
|
+
this.scanItems(this._update(resource));
|
|
53
|
+
}
|
|
54
|
+
delete(resource) {
|
|
55
|
+
if (!resource) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
this.scanItems(this._delete(resource));
|
|
59
|
+
}
|
|
60
|
+
_create(resource) {
|
|
61
|
+
return (items) => {
|
|
62
|
+
if (!resource.metadata.name
|
|
63
|
+
.toLowerCase()
|
|
64
|
+
.includes(this.snapshot.queryParams?.keyword?.toLowerCase() ??
|
|
65
|
+
'')) {
|
|
66
|
+
return items;
|
|
67
|
+
}
|
|
68
|
+
return this.insertFn(items, resource, this.snapshot.hasMore);
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
_update(resource) {
|
|
72
|
+
return (items) => items.map(item => item.metadata.uid === resource.metadata.uid ? resource : item);
|
|
73
|
+
}
|
|
74
|
+
_delete({ metadata: { uid } }) {
|
|
75
|
+
return (items) => items.filter(item => item.metadata.uid !== uid);
|
|
76
|
+
}
|
|
77
|
+
buildLoadStateStream({ queryParams$, fetcher, polling, limit, }) {
|
|
78
|
+
const load$ = merge(queryParams$.pipe(map(queryParams => () => ({ queryParams, action: LoadAction.Reload }))), this.reloadAction$$.pipe(map(silent => (prev) => ({
|
|
79
|
+
...prev,
|
|
80
|
+
action: silent ? LoadAction.SilentReload : LoadAction.Reload,
|
|
81
|
+
})))).pipe(scan((acc, scanner) => scanner(acc), {}), tap(({ action, queryParams }) => {
|
|
82
|
+
if (action === LoadAction.Reload) {
|
|
83
|
+
this.snapshot = {
|
|
84
|
+
queryParams,
|
|
85
|
+
};
|
|
86
|
+
this.bypassItems$.next(null);
|
|
87
|
+
}
|
|
88
|
+
}));
|
|
89
|
+
return load$.pipe(
|
|
90
|
+
// eslint-disable-next-line sonarjs/cognitive-complexity
|
|
91
|
+
switchMap(({ action: leadAction, queryParams }) => this.loadMoreAction$$.pipe(filter(() => this.snapshot.hasMore), map(() => true), startWith(false), exhaustMap(loadMore => {
|
|
92
|
+
if (this.timer) {
|
|
93
|
+
window.clearTimeout(this.timer);
|
|
94
|
+
}
|
|
95
|
+
const token = this.snapshot.continueToken;
|
|
96
|
+
const hasMore = this.snapshot.hasMore;
|
|
97
|
+
const currLength = this.snapshot.items?.length ?? limit;
|
|
98
|
+
const action = loadMore ? LoadAction.LoadMore : leadAction;
|
|
99
|
+
return fetcher(normalizeParams({
|
|
100
|
+
limit: `${action === LoadAction.SilentReload
|
|
101
|
+
? hasMore
|
|
102
|
+
? currLength
|
|
103
|
+
: 0
|
|
104
|
+
: limit}`,
|
|
105
|
+
continue: action === LoadAction.LoadMore ? token : '',
|
|
106
|
+
...queryParams,
|
|
107
|
+
})).pipe(map(rawResponse => ({ rawResponse, loadingError: null })), catchError((err) => of({
|
|
108
|
+
loadingError: action === LoadAction.SilentReload ? null : err,
|
|
109
|
+
})), tap(res => {
|
|
110
|
+
if (polling && !res.loadingError) {
|
|
111
|
+
this.timer = window.setTimeout(() => {
|
|
112
|
+
this.reload(true);
|
|
113
|
+
}, polling);
|
|
114
|
+
}
|
|
115
|
+
}), map(state => ({
|
|
116
|
+
...state,
|
|
117
|
+
action,
|
|
118
|
+
})), startWith({
|
|
119
|
+
action,
|
|
120
|
+
loading: true,
|
|
121
|
+
}));
|
|
122
|
+
}))), map(state => ({
|
|
123
|
+
action: LoadAction.LoadMore,
|
|
124
|
+
rawResponse: null,
|
|
125
|
+
loading: false,
|
|
126
|
+
loadingError: null,
|
|
127
|
+
...state,
|
|
128
|
+
})), tap(state => {
|
|
129
|
+
this.snapshot.rawResponse = state.rawResponse;
|
|
130
|
+
this.snapshot.loadingError = state.loadingError;
|
|
131
|
+
this.snapshot.loading =
|
|
132
|
+
state.loading && state.action !== LoadAction.SilentReload;
|
|
133
|
+
this.snapshot.continueToken = this.extractContinueTokenFromState(state);
|
|
134
|
+
this.snapshot.hasMore = !!this.snapshot.continueToken;
|
|
135
|
+
}), finalize(() => {
|
|
136
|
+
this.snapshot = {};
|
|
137
|
+
this.bypassItems$.next(null);
|
|
138
|
+
if (this.timer) {
|
|
139
|
+
window.clearTimeout(this.timer);
|
|
140
|
+
}
|
|
141
|
+
}), takeUntil(this.destroy$$), publishRef());
|
|
142
|
+
}
|
|
143
|
+
extractContinueTokenFromState({ rawResponse, loadingError, }) {
|
|
144
|
+
if (rawResponse) {
|
|
145
|
+
return rawResponse.metadata?.continue ?? '';
|
|
146
|
+
}
|
|
147
|
+
if (loadingError && 'code' in loadingError && loadingError.code === 410) {
|
|
148
|
+
return loadingError.metadata?.continue;
|
|
149
|
+
}
|
|
150
|
+
return this.snapshot.continueToken;
|
|
151
|
+
}
|
|
152
|
+
// eslint-disable-next-line sonarjs/cognitive-complexity
|
|
153
|
+
initStreams(watcher) {
|
|
154
|
+
this.rawResponse$ = this.loadState$.pipe(map(data => data.rawResponse), distinctUntilChanged(), publishRef());
|
|
155
|
+
this.loading$ = this.loadState$.pipe(map(({ loading, action }) => loading && action !== LoadAction.SilentReload), distinctUntilChanged(), publishRef());
|
|
156
|
+
this.loadingError$ = this.loadState$.pipe(map(state => state.loadingError), distinctUntilChanged(), publishRef());
|
|
157
|
+
this.continueToken$ = this.loadState$.pipe(filter(({ loading }) => !loading), switchMap(({ rawResponse, loadingError: err }) => {
|
|
158
|
+
if (rawResponse) {
|
|
159
|
+
return of(rawResponse.metadata?.continue ?? '');
|
|
160
|
+
}
|
|
161
|
+
if (err && 'code' in err && err.code === 410) {
|
|
162
|
+
return of(err.metadata?.continue);
|
|
163
|
+
}
|
|
164
|
+
return EMPTY;
|
|
165
|
+
}), distinctUntilChanged(), publishRef());
|
|
166
|
+
this.hasMore$ = this.continueToken$.pipe(map(token => !!token), distinctUntilChanged(), publishRef());
|
|
167
|
+
this.items$ = merge(this.loadState$.pipe(map(state => (items) => {
|
|
168
|
+
const newItems = state.rawResponse
|
|
169
|
+
? state.rawResponse.items ?? []
|
|
170
|
+
: null;
|
|
171
|
+
if (state.action === LoadAction.Reload) {
|
|
172
|
+
return newItems ?? [];
|
|
173
|
+
}
|
|
174
|
+
if (state.action === LoadAction.SilentReload) {
|
|
175
|
+
return newItems ?? items;
|
|
176
|
+
}
|
|
177
|
+
if (state.action === LoadAction.LoadMore) {
|
|
178
|
+
return newItems ? [...items, ...newItems] : items;
|
|
179
|
+
}
|
|
180
|
+
return items;
|
|
181
|
+
})), this.itemsScanner$$, watcher ? this.buildWatcher(watcher) : EMPTY).pipe(scan((acc, scanner) => scanner(acc), []), tap(items => {
|
|
182
|
+
this.snapshot.items = items;
|
|
183
|
+
this.bypassItems$.next(items);
|
|
184
|
+
}), takeUntil(this.destroy$$), publishRef());
|
|
185
|
+
}
|
|
186
|
+
buildWatcher(watcher) {
|
|
187
|
+
return this.rawResponse$.pipe(filter(res => !!res), distinctUntilChanged((a, b) => a.metadata?.resourceVersion === b.metadata?.resourceVersion), switchMap(list => watcher(list.metadata?.resourceVersion, this.snapshot.queryParams).pipe(catchError(() => {
|
|
188
|
+
this.reload(true);
|
|
189
|
+
return EMPTY;
|
|
190
|
+
}))), switchMap(({ type, object: resource }) => {
|
|
191
|
+
switch (type) {
|
|
192
|
+
case WatchEvent.Added: {
|
|
193
|
+
return of(this._create(resource));
|
|
194
|
+
}
|
|
195
|
+
case WatchEvent.Modified: {
|
|
196
|
+
return of(this._update(resource));
|
|
197
|
+
}
|
|
198
|
+
case WatchEvent.Deleted: {
|
|
199
|
+
return of(this._delete(resource));
|
|
200
|
+
}
|
|
201
|
+
default: {
|
|
202
|
+
return EMPTY;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}));
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
function defaultInsert(items, res, hasMore) {
|
|
209
|
+
for (let i = 0; i < items.length; i++) {
|
|
210
|
+
const compare = resourceCompare(res, items[i]);
|
|
211
|
+
if (compare === 0) {
|
|
212
|
+
return items.map((item, index) => (index === i ? res : item));
|
|
213
|
+
}
|
|
214
|
+
if (compare < 0) {
|
|
215
|
+
return [...items.slice(0, i), res, ...items.slice(i)];
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return hasMore ? items : [...items, res];
|
|
219
|
+
}
|
|
220
|
+
function resourceCompare(a, b) {
|
|
221
|
+
const nsCompare = a.metadata.namespace?.localeCompare(b.metadata.namespace) ?? 0;
|
|
222
|
+
return nsCompare === 0
|
|
223
|
+
? a.metadata.name.localeCompare(b.metadata.name)
|
|
224
|
+
: nsCompare;
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLXJlc291cmNlLWxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvazhzLXJlc291cmNlLWxpc3QvazhzLXJlc291cmNlLWxpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBR0gsT0FBTyxFQUNMLEtBQUssRUFFTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLEVBQUUsRUFDRixVQUFVLEVBQ1Ysb0JBQW9CLEVBQ3BCLFVBQVUsRUFDVixNQUFNLEVBQ04sR0FBRyxFQUNILElBQUksRUFDSixTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsRUFDVCxHQUFHLEVBQ0gsUUFBUSxFQUNSLGFBQWEsR0FDZCxNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUtMLHVCQUF1QixFQUN2QixVQUFVLEdBRVgsTUFBTSxTQUFTLENBQUM7QUFFakIsT0FBTyxFQU1MLFVBQVUsR0FLWCxNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsZUFBZSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRFLE1BQU0sT0FBTyxlQUFlO0lBOEIxQixZQUFZLEVBQ1YsT0FBTyxFQUNQLFlBQVksRUFDWixjQUFjLEVBQ2QsS0FBSyxHQUFHLEVBQUUsRUFDVixPQUFPLEdBQUcsQ0FBQyxFQUNYLE9BQU8sRUFDUCxRQUFRLEdBQUcsYUFBYSxHQUM2QjtRQWhDdEMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBQ3hDLHFCQUFnQixHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDdkMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBbUIsQ0FBQztRQUNoRCxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVlqRCxpQkFBWSxHQUFHLElBQUksYUFBYSxDQUFNLENBQUMsQ0FBQyxDQUFDO1FBSXpD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QUMvRDtRQUNELElBQUksT0FBTyxHQUFHLENBQUMsRUFBRTtZQUNmLE9BQU8sQ0FBQyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN2RDtLQUNGO0lBRUQsT0FBTyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsQ0FBcUIsRUFBRSxDQUFxQjtJQUNuRSxNQUFNLFNBQVMsR0FDYixDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakUsT0FBTyxTQUFTLEtBQUssQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ2hELENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIGs4cy1yZXNvdXJjZS1saXN0XG4gKi9cblxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge1xuICBFTVBUWSxcbiAgT2JzZXJ2YWJsZSxcbiAgU3ViamVjdCxcbiAgbWVyZ2UsXG4gIG9mLFxuICBjYXRjaEVycm9yLFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgZXhoYXVzdE1hcCxcbiAgZmlsdGVyLFxuICBtYXAsXG4gIHNjYW4sXG4gIHN0YXJ0V2l0aCxcbiAgc3dpdGNoTWFwLFxuICB0YWtlVW50aWwsXG4gIHRhcCxcbiAgZmluYWxpemUsXG4gIFJlcGxheVN1YmplY3QsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBXYXRjaEV2ZW50IH0gZnJvbSAnLi4vYXBpL3R5cGVzJztcbmltcG9ydCB7XG4gIEt1YmVybmV0ZXNSZXNvdXJjZSxcbiAgS3ViZXJuZXRlc1Jlc291cmNlTGlzdCxcbiAgUmVzb3VyY2VMaXN0UGFyYW1zLFxuICBTdGF0dXMsXG4gIERPV05HUkFERV9XQVRDSF9FTkFCTEVELFxuICBwdWJsaXNoUmVmLFxuICBTdHJpbmdNYXAsXG59IGZyb20gJy4uL2NvcmUnO1xuXG5pbXBvcnQge1xuICBDb25maWdXaXRoUGFyYW1zLFxuICBDb25maWdXaXRoUm91dGUsXG4gIEluc2VydEZuLFxuICBJdGVtc1NjYW5uZXIsXG4gIExpc3RQYXJhbXMsXG4gIExvYWRBY3Rpb24sXG4gIExvYWRTbmFwc2hvdCxcbiAgTG9hZFN0YXRlLFxuICBTdHJlYW1MaXN0TG9hZGVyLFxuICBXYXRjaGVyLFxufSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGV4dHJhY3RMaXN0UGFyYW1zRnJvbVJvdXRlLCBub3JtYWxpemVQYXJhbXMgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIEs4U1Jlc291cmNlTGlzdDxcbiAgUiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSA9IEt1YmVybmV0ZXNSZXNvdXJjZSxcbiAgUSBleHRlbmRzIG9iamVjdCA9IFJlc291cmNlTGlzdFBhcmFtcyxcbiAgUCBleHRlbmRzIFEgJiBMaXN0UGFyYW1zID0gUSAmIExpc3RQYXJhbXMsXG4+IGltcGxlbWVudHMgU3RyZWFtTGlzdExvYWRlcjxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PFI+LCBSPlxue1xuICBwcml2YXRlIHJlYWRvbmx5IHJlbG9hZEFjdGlvbiQkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBsb2FkTW9yZUFjdGlvbiQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBpdGVtc1NjYW5uZXIkJCA9IG5ldyBTdWJqZWN0PEl0ZW1zU2Nhbm5lcjxSPj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGluc2VydEZuOiBJbnNlcnRGbjxSPjtcblxuICBsb2FkU3RhdGUkOiBPYnNlcnZhYmxlPExvYWRTdGF0ZTxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PFI+Pj47XG5cbiAgcXVlcnlQYXJhbXMkOiBPYnNlcnZhYmxlPFE+O1xuICByYXdSZXNwb25zZSQ6IE9ic2VydmFibGU8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxSPj47XG4gIGxvYWRpbmckOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBsb2FkaW5nRXJyb3IkOiBPYnNlcnZhYmxlPEh0dHBFcnJvclJlc3BvbnNlIHwgU3RhdHVzPjtcbiAgaGFzTW9yZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGNvbnRpbnVlVG9rZW4kOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gIGl0ZW1zJDogT2JzZXJ2YWJsZTxSW10+O1xuICBieXBhc3NJdGVtcyQgPSBuZXcgUmVwbGF5U3ViamVjdDxSW10+KDEpO1xuXG4gIHRpbWVyOiBudW1iZXI7XG5cbiAgc25hcHNob3Q6IExvYWRTbmFwc2hvdDxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PFI+LCBSLCBRPiA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHsgZmV0Y2hlciwgYWN0aXZhdGVkUm91dGUgfTogQ29uZmlnV2l0aFJvdXRlPFIsIFEsIFA+KTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC91bmlmaWVkLXNpZ25hdHVyZXNcbiAgY29uc3RydWN0b3IoeyBmZXRjaGVyLCBmZXRjaFBhcmFtcyQgfTogQ29uZmlnV2l0aFBhcmFtczxSLCBRLCBQPik7XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBmZXRjaGVyLFxuICAgIGZldGNoUGFyYW1zJCxcbiAgICBhY3RpdmF0ZWRSb3V0ZSxcbiAgICBsaW1pdCA9IDIwLFxuICAgIHBvbGxpbmcgPSAwLFxuICAgIHdhdGNoZXIsXG4gICAgaW5zZXJ0Rm4gPSBkZWZhdWx0SW5zZXJ0LFxuICB9OiBDb25maWdXaXRoUm91dGU8UiwgUSwgUD4gJiBDb25maWdXaXRoUGFyYW1zPFIsIFEsIFA+KSB7XG4gICAgdGhpcy5pbnNlcnRGbiA9IGluc2VydEZuO1xuXG4gICAgdGhpcy5xdWVyeVBhcmFtcyQgPSAoXG4gICAgICAoZmV0Y2hQYXJhbXMkIHx8XG4gICAgICAgIChhY3RpdmF0ZWRSb3V0ZVxuICAgICAgICAgID8gZXh0cmFjdExpc3RQYXJhbXNGcm9tUm91dGUoYWN0aXZhdGVkUm91dGUpXG4gICAgICAgICAgOiBvZihudWxsKSkpIGFzIE9ic2VydmFibGU8UT5cbiAgICApLnBpcGUocHVibGlzaFJlZigpKTtcblxuICAgIGNvbnN0IHZhbGlkUG9sbGluZyA9XG4gICAgICAocG9sbGluZyAmJiB3YXRjaGVyICYmIERPV05HUkFERV9XQVRDSF9FTkFCTEVEKSB8fCAocG9sbGluZyAmJiAhd2F0Y2hlcilcbiAgICAgICAgPyBwb2xsaW5nXG4gICAgICAgIDogMDtcblxuICAgIHRoaXMubG9hZFN0YXRlJCA9IHRoaXMuYnVpbGRMb2FkU3RhdGVTdHJlYW0oe1xuICAgICAgcXVlcnlQYXJhbXMkOiB0aGlzLnF1ZXJ5UGFyYW1zJCxcbiAgICAgIGZldGNoZXIsXG4gICAgICBsaW1pdCxcbiAgICAgIHBvbGxpbmc6IHZhbGlkUG9sbGluZyxcbiAgICB9KTtcblxuICAgIHRoaXMuaW5zZXJ0Rm4gPSBpbnNlcnRGbjtcblxuICAgIHRoaXMuaW5pdFN0cmVhbXModmFsaWRQb2xsaW5nID8gbnVsbCA6IHdhdGNoZXIpO1xuICB9XG5cbiAgcmVsb2FkKHNpbGVudCA9IGZhbHNlKSB7XG4gICAgdGhpcy5yZWxvYWRBY3Rpb24kJC5uZXh0KHNpbGVudCk7XG4gIH1cblxuICBsb2FkTW9yZSgpIHtcbiAgICB0aGlzLmxvYWRNb3JlQWN0aW9uJCQubmV4dCgpO1xuICB9XG5cbiAgc2Nhbkl0ZW1zKHNjYW5uZXI6IEl0ZW1zU2Nhbm5lcjxSPikge1xuICAgIHRoaXMuaXRlbXNTY2FubmVyJCQubmV4dChzY2FubmVyKTtcbiAgfVxuXG4gIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBjcmVhdGUocmVzb3VyY2U6IFIpIHtcbiAgICB0aGlzLnNjYW5JdGVtcyh0aGlzLl9jcmVhdGUocmVzb3VyY2UpKTtcbiAgfVxuXG4gIHVwZGF0ZShyZXNvdXJjZTogUikge1xuICAgIHRoaXMuc2Nhbkl0ZW1zKHRoaXMuX3VwZGF0ZShyZXNvdXJjZSkpO1xuICB9XG5cbiAgZGVsZXRlKHJlc291cmNlPzogUikge1xuICAgIGlmICghcmVzb3VyY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zY2FuSXRlbXModGhpcy5fZGVsZXRlKHJlc291cmNlKSk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGUocmVzb3VyY2U6IFIpIHtcbiAgICByZXR1cm4gKGl0ZW1zOiBSW10pID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgIXJlc291cmNlLm1ldGFkYXRhLm5hbWVcbiAgICAgICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgICAgIC5pbmNsdWRlcyhcbiAgICAgICAgICAgICh0aGlzLnNuYXBzaG90LnF1ZXJ5UGFyYW1zIGFzIFN0cmluZ01hcCk/LmtleXdvcmQ/LnRvTG93ZXJDYXNlKCkgPz9cbiAgICAgICAgICAgICAgJycsXG4gICAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBpdGVtcztcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmluc2VydEZuKGl0ZW1zLCByZXNvdXJjZSwgdGhpcy5zbmFwc2hvdC5oYXNNb3JlKTtcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlKHJlc291cmNlOiBSKSB7XG4gICAgcmV0dXJuIChpdGVtczogUltdKSA9PlxuICAgICAgaXRlbXMubWFwKGl0ZW0gPT5cbiAgICAgICAgaXRlbS5tZXRhZGF0YS51aWQgPT09IHJlc291cmNlLm1ldGFkYXRhLnVpZCA/IHJlc291cmNlIDogaXRlbSxcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9kZWxldGUoeyBtZXRhZGF0YTogeyB1aWQgfSB9OiBSKSB7XG4gICAgcmV0dXJuIChpdGVtczogUltdKSA9PiBpdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLm1ldGFkYXRhLnVpZCAhPT0gdWlkKTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRMb2FkU3RhdGVTdHJlYW0oe1xuICAgIHF1ZXJ5UGFyYW1zJCxcbiAgICBmZXRjaGVyLFxuICAgIHBvbGxpbmcsXG4gICAgbGltaXQsXG4gIH06IHtcbiAgICBxdWVyeVBhcmFtcyQ6IE9ic2VydmFibGU8UT47XG4gICAgZmV0Y2hlcjogKHA6IFApID0+IE9ic2VydmFibGU8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxSPj47XG4gICAgcG9sbGluZzogbnVtYmVyO1xuICAgIGxpbWl0OiBudW1iZXI7XG4gIH0pIHtcbiAgICBjb25zdCBsb2FkJCA9IG1lcmdlKFxuICAgICAgcXVlcnlQYXJhbXMkLnBpcGUoXG4gICAgICAgIG1hcChxdWVyeVBhcmFtcyA9PiAoKSA9PiAoeyBxdWVyeVBhcmFtcywgYWN0aW9uOiBMb2FkQWN0aW9uLlJlbG9hZCB9KSksXG4gICAgICApLFxuICAgICAgdGhpcy5yZWxvYWRBY3Rpb24kJC5waXBlKFxuICAgICAgICBtYXAoc2lsZW50ID0+IChwcmV2OiB7IHF1ZXJ5UGFyYW1zPzogUDsgYWN0aW9uPzogTG9hZEFjdGlvbiB9KSA9PiAoe1xuICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgYWN0aW9uOiBzaWxlbnQgPyBMb2FkQWN0aW9uLlNpbGVudFJlbG9hZCA6IExvYWRBY3Rpb24uUmVsb2FkLFxuICAgICAgICB9KSksXG4gICAgICApLFxuICAgICkucGlwZShcbiAgICAgIHNjYW4oXG4gICAgICAgIChhY2MsIHNjYW5uZXIpID0+IHNjYW5uZXIoYWNjKSxcbiAgICAgICAge30gYXMgeyBxdWVyeVBhcmFtcz86IFA7IGFjdGlvbj86IExvYWRBY3Rpb24gfSxcbiAgICAgICksXG4gICAgICB0YXAoKHsgYWN0aW9uLCBxdWVyeVBhcmFtcyB9KSA9PiB7XG4gICAgICAgIGlmIChhY3Rpb24gPT09IExvYWRBY3Rpb24uUmVsb2FkKSB7XG4gICAgICAgICAgdGhpcy5zbmFwc2hvdCA9IHtcbiAgICAgICAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgICAgICAgIH07XG4gICAgICAgICAgdGhpcy5ieXBhc3NJdGVtcyQubmV4dChudWxsKTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKTtcblxuICAgIHJldHVybiBsb2FkJC5waXBlKFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbiAgICAgIHN3aXRjaE1hcCgoeyBhY3Rpb246IGxlYWRBY3Rpb24sIHF1ZXJ5UGFyYW1zIH0pID0+XG4gICAgICAgIHRoaXMubG9hZE1vcmVBY3Rpb24kJC5waXBlKFxuICAgICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLnNuYXBzaG90Lmhhc01vcmUpLFxuICAgICAgICAgIG1hcCgoKSA9PiB0cnVlKSxcbiAgICAgICAgICBzdGFydFdpdGgoZmFsc2UpLFxuICAgICAgICAgIGV4aGF1c3RNYXAobG9hZE1vcmUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMudGltZXIpIHtcbiAgICAgICAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLnRpbWVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy5zbmFwc2hvdC5jb250aW51ZVRva2VuO1xuICAgICAgICAgICAgY29uc3QgaGFzTW9yZSA9IHRoaXMuc25hcHNob3QuaGFzTW9yZTtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJMZW5ndGggPSB0aGlzLnNuYXBzaG90Lml0ZW1zPy5sZW5ndGggPz8gbGltaXQ7XG4gICAgICAgICAgICBjb25zdCBhY3Rpb24gPSBsb2FkTW9yZSA/IExvYWRBY3Rpb24uTG9hZE1vcmUgOiBsZWFkQWN0aW9uO1xuICAgICAgICAgICAgcmV0dXJuIGZldGNoZXIoXG4gICAgICAgICAgICAgIG5vcm1hbGl6ZVBhcmFtcyh7XG4gICAgICAgICAgICAgICAgbGltaXQ6IGAke1xuICAgICAgICAgICAgICAgICAgYWN0aW9uID09PSBMb2FkQWN0aW9uLlNpbGVudFJlbG9hZFxuICAgICAgICAgICAgICAgICAgICA/IGhhc01vcmVcbiAgICAgICAgICAgICAgICAgICAgICA/IGN1cnJMZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICA6IDBcbiAgICAgICAgICAgICAgICAgICAgOiBsaW1pdFxuICAgICAgICAgICAgICAgIH1gLFxuICAgICAgICAgICAgICAgIGNvbnRpbnVlOiBhY3Rpb24gPT09IExvYWRBY3Rpb24uTG9hZE1vcmUgPyB0b2tlbiA6ICcnLFxuICAgICAgICAgICAgICAgIC4uLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgICB9KSBhcyBQLFxuICAgICAgICAgICAgKS5waXBlKFxuICAgICAgICAgICAgICBtYXAocmF3UmVzcG9uc2UgPT4gKHsgcmF3UmVzcG9uc2UsIGxvYWRpbmdFcnJvcjogbnVsbCB9KSksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycjogU3RhdHVzIHwgSHR0cEVycm9yUmVzcG9uc2UpID0+XG4gICAgICAgICAgICAgICAgb2Yoe1xuICAgICAgICAgICAgICAgICAgbG9hZGluZ0Vycm9yOiBhY3Rpb24gPT09IExvYWRBY3Rpb24uU2lsZW50UmVsb2FkID8gbnVsbCA6IGVycixcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgdGFwKHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHBvbGxpbmcgJiYgIXJlcy5sb2FkaW5nRXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMudGltZXIgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVsb2FkKHRydWUpO1xuICAgICAgICAgICAgICAgICAgfSwgcG9sbGluZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgbWFwKHN0YXRlID0+ICh7XG4gICAgICAgICAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgICAgICAgICAgYWN0aW9uLFxuICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgIHN0YXJ0V2l0aCh7XG4gICAgICAgICAgICAgICAgYWN0aW9uLFxuICAgICAgICAgICAgICAgIGxvYWRpbmc6IHRydWUsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBtYXAoc3RhdGUgPT4gKHtcbiAgICAgICAgYWN0aW9uOiBMb2FkQWN0aW9uLkxvYWRNb3JlLFxuICAgICAgICByYXdSZXNwb25zZTogbnVsbCxcbiAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgIGxvYWRpbmdFcnJvcjogbnVsbCxcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICB9KSksXG4gICAgICB0YXAoc3RhdGUgPT4ge1xuICAgICAgICB0aGlzLnNuYXBzaG90LnJhd1Jlc3BvbnNlID0gc3RhdGUucmF3UmVzcG9uc2U7XG4gICAgICAgIHRoaXMuc25hcHNob3QubG9hZGluZ0Vycm9yID0gc3RhdGUubG9hZGluZ0Vycm9yO1xuICAgICAgICB0aGlzLnNuYXBzaG90LmxvYWRpbmcgPVxuICAgICAgICAgIHN0YXRlLmxvYWRpbmcgJiYgc3RhdGUuYWN0aW9uICE9PSBMb2FkQWN0aW9uLlNpbGVudFJlbG9hZDtcbiAgICAgICAgdGhpcy5zbmFwc2hvdC5jb250aW51ZVRva2VuID0gdGhpcy5leHRyYWN0Q29udGludWVUb2tlbkZyb21TdGF0ZShzdGF0ZSk7XG4gICAgICAgIHRoaXMuc25hcHNob3QuaGFzTW9yZSA9ICEhdGhpcy5zbmFwc2hvdC5jb250aW51ZVRva2VuO1xuICAgICAgfSksXG4gICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc25hcHNob3QgPSB7fTtcbiAgICAgICAgdGhpcy5ieXBhc3NJdGVtcyQubmV4dChudWxsKTtcbiAgICAgICAgaWYgKHRoaXMudGltZXIpIHtcbiAgICAgICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMudGltZXIpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZXh0cmFjdENvbnRpbnVlVG9rZW5Gcm9tU3RhdGUoe1xuICAgIHJhd1Jlc3BvbnNlLFxuICAgIGxvYWRpbmdFcnJvcixcbiAgfTogTG9hZFN0YXRlPEt1YmVybmV0ZXNSZXNvdXJjZUxpc3Q8Uj4+KSB7XG4gICAgaWYgKHJhd1Jlc3BvbnNlKSB7XG4gICAgICByZXR1cm4gcmF3UmVzcG9uc2UubWV0YWRhdGE/LmNvbnRpbnVlID8/ICcnO1xuICAgIH1cblxuICAgIGlmIChsb2FkaW5nRXJyb3IgJiYgJ2NvZGUnIGluIGxvYWRpbmdFcnJvciAmJiBsb2FkaW5nRXJyb3IuY29kZSA9PT0gNDEwKSB7XG4gICAgICByZXR1cm4gbG9hZGluZ0Vycm9yLm1ldGFkYXRhPy5jb250aW51ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zbmFwc2hvdC5jb250aW51ZVRva2VuO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbiAgcHJpdmF0ZSBpbml0U3RyZWFtcyh3YXRjaGVyOiBXYXRjaGVyPFIsIFE+KSB7XG4gICAgdGhpcy5yYXdSZXNwb25zZSQgPSB0aGlzLmxvYWRTdGF0ZSQucGlwZShcbiAgICAgIG1hcChkYXRhID0+IGRhdGEucmF3UmVzcG9uc2UpLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuXG4gICAgdGhpcy5sb2FkaW5nJCA9IHRoaXMubG9hZFN0YXRlJC5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoeyBsb2FkaW5nLCBhY3Rpb24gfSkgPT4gbG9hZGluZyAmJiBhY3Rpb24gIT09IExvYWRBY3Rpb24uU2lsZW50UmVsb2FkLFxuICAgICAgKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcblxuICAgIHRoaXMubG9hZGluZ0Vycm9yJCA9IHRoaXMubG9hZFN0YXRlJC5waXBlKFxuICAgICAgbWFwKHN0YXRlID0+IHN0YXRlLmxvYWRpbmdFcnJvciksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG5cbiAgICB0aGlzLmNvbnRpbnVlVG9rZW4kID0gdGhpcy5sb2FkU3RhdGUkLnBpcGUoXG4gICAgICBmaWx0ZXIoKHsgbG9hZGluZyB9KSA9PiAhbG9hZGluZyksXG4gICAgICBzd2l0Y2hNYXAoKHsgcmF3UmVzcG9uc2UsIGxvYWRpbmdFcnJvcjogZXJyIH0pID0+IHtcbiAgICAgICAgaWYgKHJhd1Jlc3BvbnNlKSB7XG4gICAgICAgICAgcmV0dXJuIG9mKHJhd1Jlc3BvbnNlLm1ldGFkYXRhPy5jb250aW51ZSA/PyAnJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVyciAmJiAnY29kZScgaW4gZXJyICYmIGVyci5jb2RlID09PSA0MTApIHtcbiAgICAgICAgICByZXR1cm4gb2YoZXJyLm1ldGFkYXRhPy5jb250aW51ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgfSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG5cbiAgICB0aGlzLmhhc01vcmUkID0gdGhpcy5jb250aW51ZVRva2VuJC5waXBlKFxuICAgICAgbWFwKHRva2VuID0+ICEhdG9rZW4pLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuXG4gICAgdGhpcy5pdGVtcyQgPSBtZXJnZShcbiAgICAgIHRoaXMubG9hZFN0YXRlJC5waXBlKFxuICAgICAgICBtYXAoc3RhdGUgPT4gKGl0ZW1zOiBSW10pID0+IHtcbiAgICAgICAgICBjb25zdCBuZXdJdGVtcyA9IHN0YXRlLnJhd1Jlc3BvbnNlXG4gICAgICAgICAgICA/IHN0YXRlLnJhd1Jlc3BvbnNlLml0ZW1zID8/IFtdXG4gICAgICAgICAgICA6IG51bGw7XG4gICAgICAgICAgaWYgKHN0YXRlLmFjdGlvbiA9PT0gTG9hZEFjdGlvbi5SZWxvYWQpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXdJdGVtcyA/PyBbXTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHN0YXRlLmFjdGlvbiA9PT0gTG9hZEFjdGlvbi5TaWxlbnRSZWxvYWQpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXdJdGVtcyA/PyBpdGVtcztcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHN0YXRlLmFjdGlvbiA9PT0gTG9hZEFjdGlvbi5Mb2FkTW9yZSkge1xuICAgICAgICAgICAgcmV0dXJuIG5ld0l0ZW1zID8gWy4uLml0ZW1zLCAuLi5uZXdJdGVtc10gOiBpdGVtcztcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgICAgICB9KSxcbiAgICAgICksXG4gICAgICB0aGlzLml0ZW1zU2Nhbm5lciQkLFxuICAgICAgd2F0Y2hlciA/IHRoaXMuYnVpbGRXYXRjaGVyKHdhdGNoZXIpIDogRU1QVFksXG4gICAgKS5waXBlKFxuICAgICAgc2NhbjxJdGVtc1NjYW5uZXI8Uj4sIFJbXT4oKGFjYywgc2Nhbm5lcikgPT4gc2Nhbm5lcihhY2MpLCBbXSksXG4gICAgICB0YXAoaXRlbXMgPT4ge1xuICAgICAgICB0aGlzLnNuYXBzaG90Lml0ZW1zID0gaXRlbXM7XG4gICAgICAgIHRoaXMuYnlwYXNzSXRlbXMkLm5leHQoaXRlbXMpO1xuICAgICAgfSksXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkV2F0Y2hlcih3YXRjaGVyOiBXYXRjaGVyPFIsIFE+KSB7XG4gICAgcmV0dXJuIHRoaXMucmF3UmVzcG9uc2UkLnBpcGUoXG4gICAgICBmaWx0ZXIocmVzID0+ICEhcmVzKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKFxuICAgICAgICAoYSwgYikgPT4gYS5tZXRhZGF0YT8ucmVzb3VyY2VWZXJzaW9uID09PSBiLm1ldGFkYXRhPy5yZXNvdXJjZVZlcnNpb24sXG4gICAgICApLFxuICAgICAgc3dpdGNoTWFwKGxpc3QgPT5cbiAgICAgICAgd2F0Y2hlcihsaXN0Lm1ldGFkYXRhPy5yZXNvdXJjZVZlcnNpb24sIHRoaXMuc25hcHNob3QucXVlcnlQYXJhbXMpLnBpcGUoXG4gICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlbG9hZCh0cnVlKTtcbiAgICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBzd2l0Y2hNYXAoKHsgdHlwZSwgb2JqZWN0OiByZXNvdXJjZSB9KSA9PiB7XG4gICAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICAgIGNhc2UgV2F0Y2hFdmVudC5BZGRlZDoge1xuICAgICAgICAgICAgcmV0dXJuIG9mKHRoaXMuX2NyZWF0ZShyZXNvdXJjZSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjYXNlIFdhdGNoRXZlbnQuTW9kaWZpZWQ6IHtcbiAgICAgICAgICAgIHJldHVybiBvZih0aGlzLl91cGRhdGUocmVzb3VyY2UpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY2FzZSBXYXRjaEV2ZW50LkRlbGV0ZWQ6IHtcbiAgICAgICAgICAgIHJldHVybiBvZih0aGlzLl9kZWxldGUocmVzb3VyY2UpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBkZWZhdWx0SW5zZXJ0PFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICBpdGVtczogVFtdLFxuICByZXM6IFQsXG4gIGhhc01vcmU6IGJvb2xlYW4sXG4pIHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGNvbXBhcmUgPSByZXNvdXJjZUNvbXBhcmUocmVzLCBpdGVtc1tpXSk7XG4gICAgaWYgKGNvbXBhcmUgPT09IDApIHtcbiAgICAgIHJldHVybiBpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoaW5kZXggPT09IGkgPyByZXMgOiBpdGVtKSk7XG4gICAgfVxuICAgIGlmIChjb21wYXJlIDwgMCkge1xuICAgICAgcmV0dXJuIFsuLi5pdGVtcy5zbGljZSgwLCBpKSwgcmVzLCAuLi5pdGVtcy5zbGljZShpKV07XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGhhc01vcmUgPyBpdGVtcyA6IFsuLi5pdGVtcywgcmVzXTtcbn1cblxuZnVuY3Rpb24gcmVzb3VyY2VDb21wYXJlKGE6IEt1YmVybmV0ZXNSZXNvdXJjZSwgYjogS3ViZXJuZXRlc1Jlc291cmNlKSB7XG4gIGNvbnN0IG5zQ29tcGFyZSA9XG4gICAgYS5tZXRhZGF0YS5uYW1lc3BhY2U/LmxvY2FsZUNvbXBhcmUoYi5tZXRhZGF0YS5uYW1lc3BhY2UpID8/IDA7XG4gIHJldHVybiBuc0NvbXBhcmUgPT09IDBcbiAgICA/IGEubWV0YWRhdGEubmFtZS5sb2NhbGVDb21wYXJlKGIubWV0YWRhdGEubmFtZSlcbiAgICA6IG5zQ29tcGFyZTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @packageDocumentation
|
|
3
|
+
* @module k8s-resource-list
|
|
4
|
+
*/
|
|
5
|
+
import { BackTopModule, ButtonModule, IconModule } from '@alauda/ui';
|
|
6
|
+
import { CommonModule } from '@angular/common';
|
|
7
|
+
import { NgModule } from '@angular/core';
|
|
8
|
+
import { TranslateModule } from '../translate/public-api';
|
|
9
|
+
import { K8SResourceListFooterComponent, K8sListFooterNoDataDirective, } from './footer/component';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/common";
|
|
12
|
+
import * as i2 from "@alauda/ui";
|
|
13
|
+
import * as i3 from "../translate/translate.pipe";
|
|
14
|
+
export class K8SResourceListModule {
|
|
15
|
+
static { this.ɵfac = function K8SResourceListModule_Factory(t) { return new (t || K8SResourceListModule)(); }; }
|
|
16
|
+
static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: K8SResourceListModule }); }
|
|
17
|
+
static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
|
|
18
|
+
ButtonModule,
|
|
19
|
+
IconModule,
|
|
20
|
+
BackTopModule,
|
|
21
|
+
TranslateModule] }); }
|
|
22
|
+
}
|
|
23
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(K8SResourceListModule, [{
|
|
24
|
+
type: NgModule,
|
|
25
|
+
args: [{
|
|
26
|
+
imports: [
|
|
27
|
+
CommonModule,
|
|
28
|
+
ButtonModule,
|
|
29
|
+
IconModule,
|
|
30
|
+
BackTopModule,
|
|
31
|
+
TranslateModule,
|
|
32
|
+
],
|
|
33
|
+
declarations: [K8SResourceListFooterComponent, K8sListFooterNoDataDirective],
|
|
34
|
+
exports: [K8SResourceListFooterComponent, K8sListFooterNoDataDirective],
|
|
35
|
+
}]
|
|
36
|
+
}], null, null); })();
|
|
37
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(K8SResourceListModule, { declarations: [K8SResourceListFooterComponent, K8sListFooterNoDataDirective], imports: [CommonModule,
|
|
38
|
+
ButtonModule,
|
|
39
|
+
IconModule,
|
|
40
|
+
BackTopModule,
|
|
41
|
+
TranslateModule], exports: [K8SResourceListFooterComponent, K8sListFooterNoDataDirective] }); })();
|
|
42
|
+
i0.ɵɵsetComponentScope(K8SResourceListFooterComponent, [i1.NgIf, i1.NgTemplateOutlet, i2.ButtonComponent, i2.IconComponent, i2.BackTopComponent], [i1.AsyncPipe, i3.TranslatePipe]);
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLXJlc291cmNlLWxpc3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2s4cy1yZXNvdXJjZS1saXN0L2s4cy1yZXNvdXJjZS1saXN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTFELE9BQU8sRUFDTCw4QkFBOEIsRUFDOUIsNEJBQTRCLEdBQzdCLE1BQU0sb0JBQW9CLENBQUM7Ozs7O0FBYTVCLE1BQU0sT0FBTyxxQkFBcUI7c0ZBQXJCLHFCQUFxQjttRUFBckIscUJBQXFCO3VFQVQ5QixZQUFZO1lBQ1osWUFBWTtZQUNaLFVBQVU7WUFDVixhQUFhO1lBQ2IsZUFBZTs7dUZBS04scUJBQXFCO2NBWGpDLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixZQUFZO29CQUNaLFVBQVU7b0JBQ1YsYUFBYTtvQkFDYixlQUFlO2lCQUNoQjtnQkFDRCxZQUFZLEVBQUUsQ0FBQyw4QkFBOEIsRUFBRSw0QkFBNEIsQ0FBQztnQkFDNUUsT0FBTyxFQUFFLENBQUMsOEJBQThCLEVBQUUsNEJBQTRCLENBQUM7YUFDeEU7O3dGQUNZLHFCQUFxQixtQkFIakIsOEJBQThCLEVBQUUsNEJBQTRCLGFBTnpFLFlBQVk7UUFDWixZQUFZO1FBQ1osVUFBVTtRQUNWLGFBQWE7UUFDYixlQUFlLGFBR1AsOEJBQThCLEVBQUUsNEJBQTRCO3VCQUR2RCw4QkFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSBrOHMtcmVzb3VyY2UtbGlzdFxuICovXG5cbmltcG9ydCB7IEJhY2tUb3BNb2R1bGUsIEJ1dHRvbk1vZHVsZSwgSWNvbk1vZHVsZSB9IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJy4uL3RyYW5zbGF0ZS9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHtcbiAgSzhTUmVzb3VyY2VMaXN0Rm9vdGVyQ29tcG9uZW50LFxuICBLOHNMaXN0Rm9vdGVyTm9EYXRhRGlyZWN0aXZlLFxufSBmcm9tICcuL2Zvb3Rlci9jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBJY29uTW9kdWxlLFxuICAgIEJhY2tUb3BNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtLOFNSZXNvdXJjZUxpc3RGb290ZXJDb21wb25lbnQsIEs4c0xpc3RGb290ZXJOb0RhdGFEaXJlY3RpdmVdLFxuICBleHBvcnRzOiBbSzhTUmVzb3VyY2VMaXN0Rm9vdGVyQ29tcG9uZW50LCBLOHNMaXN0Rm9vdGVyTm9EYXRhRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgSzhTUmVzb3VyY2VMaXN0TW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { publishRef } from '@alauda/ui';
|
|
2
|
+
import { inject } from '@angular/core';
|
|
3
|
+
import { toObservable, toSignal } from '@angular/core/rxjs-interop';
|
|
4
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
5
|
+
import { NEVER, Subject, catchError, filter, interval, isObservable, map, of, startWith, switchMap, switchScan, take, withLatestFrom, } from 'rxjs';
|
|
6
|
+
import { WatchEvent } from '../api/public-api';
|
|
7
|
+
import { DOWNGRADE_WATCH_ENABLED, DOWNGRADE_WATCH_POLLING, } from '../core';
|
|
8
|
+
export class K8SResourcePagedList {
|
|
9
|
+
constructor(config) {
|
|
10
|
+
this.config = config;
|
|
11
|
+
this.reload$$ = new Subject();
|
|
12
|
+
this.addedUid = new Set();
|
|
13
|
+
this.deletedUid = new Set();
|
|
14
|
+
this.params$ = isObservable(this.config.params)
|
|
15
|
+
? this.config.params
|
|
16
|
+
: toObservable(this.config.params);
|
|
17
|
+
this.loadState$ = this.config.watcher && !DOWNGRADE_WATCH_ENABLED
|
|
18
|
+
? this.loadStateWithWatcher()
|
|
19
|
+
: this.config.watcher || this.config.polling
|
|
20
|
+
? this.loadStateWithPolling()
|
|
21
|
+
: this.sourceLoadState();
|
|
22
|
+
this.loading$ = this.loadState$.pipe(map(state => state.loading));
|
|
23
|
+
this.items$ = this.loadState$.pipe(map(state => state.items));
|
|
24
|
+
this.totalItems$ = this.loadState$.pipe(map(state => state.totalItems));
|
|
25
|
+
this.loadError$ = this.loadState$.pipe(map(state => state.loadError));
|
|
26
|
+
this.$loading = toSignal(this.loading$);
|
|
27
|
+
this.$items = toSignal(this.items$);
|
|
28
|
+
this.$totalItems = toSignal(this.totalItems$);
|
|
29
|
+
this.$loadError = toSignal(this.loadError$);
|
|
30
|
+
}
|
|
31
|
+
reload() {
|
|
32
|
+
this.reload$$.next();
|
|
33
|
+
}
|
|
34
|
+
sourceLoadState() {
|
|
35
|
+
return this.params$.pipe(map(parseListParams), switchMap(({ listParams, extraParams }) => {
|
|
36
|
+
return this.reload$$.pipe(startWith(null), switchMap(() => {
|
|
37
|
+
return this.config.fetcher(listParams, extraParams).pipe(map(list => ({
|
|
38
|
+
loading: false,
|
|
39
|
+
loadSuccess: true,
|
|
40
|
+
items: list.items ?? [],
|
|
41
|
+
totalItems: list.metadata.totalItems ?? 0,
|
|
42
|
+
})), startWith({
|
|
43
|
+
loading: true,
|
|
44
|
+
loadSuccess: false,
|
|
45
|
+
items: [],
|
|
46
|
+
totalItems: 0,
|
|
47
|
+
}), catchError((err) => of({
|
|
48
|
+
loading: false,
|
|
49
|
+
loadSuccess: false,
|
|
50
|
+
loadError: err,
|
|
51
|
+
items: [],
|
|
52
|
+
totalItems: 0,
|
|
53
|
+
})));
|
|
54
|
+
}));
|
|
55
|
+
}), publishRef());
|
|
56
|
+
}
|
|
57
|
+
loadStateWithPolling() {
|
|
58
|
+
return this.sourceLoadState().pipe(switchMap(sourceState => sourceState.loadSuccess
|
|
59
|
+
? interval(this.config.polling || DOWNGRADE_WATCH_POLLING).pipe(withLatestFrom(this.params$), map(([_, params]) => parseListParams(params)), switchMap(({ listParams, extraParams }) => this.config.fetcher(listParams, extraParams).pipe(map(list => ({
|
|
60
|
+
...sourceState,
|
|
61
|
+
items: list.items,
|
|
62
|
+
totalItems: list.metadata.totalItems,
|
|
63
|
+
})), catchError(() => NEVER))), startWith(sourceState))
|
|
64
|
+
: of(sourceState)), publishRef());
|
|
65
|
+
}
|
|
66
|
+
loadStateWithWatcher() {
|
|
67
|
+
return this.sourceLoadState().pipe(
|
|
68
|
+
// eslint-disable-next-line sonarjs/cognitive-complexity
|
|
69
|
+
switchMap(sourceState => sourceState.loadSuccess
|
|
70
|
+
? this.params$.pipe(take(1), switchMap(params => {
|
|
71
|
+
const watchParams = parseListParams({
|
|
72
|
+
keyword: params.keyword,
|
|
73
|
+
extra: params.extra,
|
|
74
|
+
});
|
|
75
|
+
const fetchParams = parseListParams(params);
|
|
76
|
+
return this.config
|
|
77
|
+
.watcher(watchParams.listParams, watchParams.extraParams)
|
|
78
|
+
.pipe(filter(({ type, object }) => {
|
|
79
|
+
switch (type) {
|
|
80
|
+
case WatchEvent.Added: {
|
|
81
|
+
if (this.addedUid.has(object.metadata.uid)) {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
this.addedUid.add(object.metadata.uid);
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
case WatchEvent.Deleted: {
|
|
88
|
+
if (this.deletedUid.has(object.metadata.uid)) {
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
this.deletedUid.add(object.metadata.uid);
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
default: {
|
|
95
|
+
return true;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}), switchScan((state, { type, object }) => {
|
|
99
|
+
switch (type) {
|
|
100
|
+
case WatchEvent.Modified: {
|
|
101
|
+
return of({
|
|
102
|
+
...state,
|
|
103
|
+
items: state.items.map(item => item.metadata.uid === object.metadata.uid
|
|
104
|
+
? object
|
|
105
|
+
: item),
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
case WatchEvent.Added:
|
|
109
|
+
case WatchEvent.Deleted: {
|
|
110
|
+
return this.config
|
|
111
|
+
.fetcher(fetchParams.listParams, fetchParams.extraParams)
|
|
112
|
+
.pipe(map(list => ({
|
|
113
|
+
...state,
|
|
114
|
+
items: list.items,
|
|
115
|
+
totalItems: list.metadata.totalItems,
|
|
116
|
+
})), catchError(() => NEVER));
|
|
117
|
+
}
|
|
118
|
+
default: {
|
|
119
|
+
return NEVER;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}, sourceState));
|
|
123
|
+
}), startWith(sourceState))
|
|
124
|
+
: of(sourceState)), publishRef());
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
export function extractPagedListParams(defaultParams = {}, extraParams) {
|
|
128
|
+
const route = inject(ActivatedRoute);
|
|
129
|
+
const params$ = route.queryParams.pipe(map(params => ({
|
|
130
|
+
pageIndex: 0,
|
|
131
|
+
pageSize: 20,
|
|
132
|
+
...defaultParams,
|
|
133
|
+
...(params.pageIndex ? { pageIndex: params.pageIndex } : {}),
|
|
134
|
+
...(params.pageSize ? { pageSize: params.pageSize } : {}),
|
|
135
|
+
...(params.keyword ? { keyword: params.keyword } : {}),
|
|
136
|
+
...(params.sortField ? { sortField: params.sortField } : {}),
|
|
137
|
+
...(params.sortOrder ? { sortOrder: params.sortOrder } : {}),
|
|
138
|
+
...(params.fieldSelector ? { fieldSelector: params.fieldSelector } : {}),
|
|
139
|
+
...(params.labelSelector ? { labelSelector: params.labelSelector } : {}),
|
|
140
|
+
...(extraParams ? { extra: extraParams(params) } : {}),
|
|
141
|
+
})));
|
|
142
|
+
return {
|
|
143
|
+
stream: () => params$,
|
|
144
|
+
signal: () => toSignal(params$),
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
export function queryListParams() {
|
|
148
|
+
const router = inject(Router);
|
|
149
|
+
const route = inject(ActivatedRoute);
|
|
150
|
+
return (queryParams) => {
|
|
151
|
+
router.navigate(['./'], {
|
|
152
|
+
relativeTo: route,
|
|
153
|
+
queryParamsHandling: 'merge',
|
|
154
|
+
queryParams,
|
|
155
|
+
});
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
function parseListParams({ pageIndex, pageSize, sortField, sortOrder, keyword, fieldSelector: originFieldSelector, labelSelector, extra: extraParams, }) {
|
|
159
|
+
const search = keyword ? `search=${keyword}` : '';
|
|
160
|
+
const sortBy = sortField
|
|
161
|
+
? `sortby=${sortOrder === 'desc' ? '-' : ''}${sortField}`
|
|
162
|
+
: '';
|
|
163
|
+
const fieldSelector = [search, sortBy, originFieldSelector]
|
|
164
|
+
.filter(v => !!v)
|
|
165
|
+
.join(',');
|
|
166
|
+
return {
|
|
167
|
+
listParams: {
|
|
168
|
+
limit: (pageSize || 20) + '',
|
|
169
|
+
continue: +(pageIndex || 0) * +(pageSize || 20) + '',
|
|
170
|
+
...(labelSelector ? { labelSelector } : {}),
|
|
171
|
+
...(fieldSelector ? { fieldSelector } : {}),
|
|
172
|
+
},
|
|
173
|
+
extraParams,
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLXJlc291cmNlLXBhZ2VkLWxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvazhzLXJlc291cmNlLWxpc3QvazhzLXJlc291cmNlLXBhZ2VkLWxpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUV4QyxPQUFPLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBVSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsS0FBSyxFQUVMLE9BQU8sRUFDUCxVQUFVLEVBQ1YsTUFBTSxFQUNOLFFBQVEsRUFDUixZQUFZLEVBQ1osR0FBRyxFQUNILEVBQUUsRUFDRixTQUFTLEVBQ1QsU0FBUyxFQUNULFVBQVUsRUFDVixJQUFJLEVBQ0osY0FBYyxHQUNmLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFvQixVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLHVCQUF1QixHQUl4QixNQUFNLFNBQVMsQ0FBQztBQUVqQixNQUFNLE9BQU8sb0JBQW9CO0lBNkIvQixZQUE2QixNQUE2QjtRQUE3QixXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQXpCekMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDL0IsYUFBUSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7UUFDN0IsZUFBVSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7UUFFaEQsWUFBTyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUN4QyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFN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LENBQUMsQ0FBQyxVQUFVLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbEQsTUFBTSxNQUFNLEdBQUcsU0FBUztRQUN0QixDQUFDLENBQUMsVUFBVSxTQUFTLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxTQUFTLEVBQUU7UUFDekQsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNQLE1BQU0sYUFBYSxHQUFHLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxtQkFBbUIsQ0FBQztTQUN4RCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNiLE9BQU87UUFDTCxVQUFVLEVBQUU7WUFDVixLQUFLLEVBQUUsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRTtZQUM1QixRQUFRLEVBQUUsQ0FBQyxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUU7WUFDcEQsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzNDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUMvQjtRQUNkLFdBQVc7S0FDWixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHB1Ymxpc2hSZWYgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgU2lnbmFsLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUGFyYW1zLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgTkVWRVIsXG4gIE9ic2VydmFibGUsXG4gIFN1YmplY3QsXG4gIGNhdGNoRXJyb3IsXG4gIGZpbHRlcixcbiAgaW50ZXJ2YWwsXG4gIGlzT2JzZXJ2YWJsZSxcbiAgbWFwLFxuICBvZixcbiAgc3RhcnRXaXRoLFxuICBzd2l0Y2hNYXAsXG4gIHN3aXRjaFNjYW4sXG4gIHRha2UsXG4gIHdpdGhMYXRlc3RGcm9tLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgV2F0Y2hBUElSZXNwb25zZSwgV2F0Y2hFdmVudCB9IGZyb20gJy4uL2FwaS9wdWJsaWMtYXBpJztcbmltcG9ydCB7XG4gIERPV05HUkFERV9XQVRDSF9FTkFCTEVELFxuICBET1dOR1JBREVfV0FUQ0hfUE9MTElORyxcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBLdWJlcm5ldGVzUmVzb3VyY2VMaXN0LFxuICBTdGF0dXMsXG59IGZyb20gJy4uL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgSzhTUmVzb3VyY2VQYWdlZExpc3Q8XG4gIFIgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UgPSBLdWJlcm5ldGVzUmVzb3VyY2UsXG4gIFAgPSB1bmtub3duLFxuPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVsb2FkJCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGFkZGVkVWlkID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVsZXRlZFVpZCA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG4gIHBhcmFtcyQgPSBpc09ic2VydmFibGUodGhpcy5jb25maWcucGFyYW1zKVxuICAgID8gdGhpcy5jb25maWcucGFyYW1zXG4gICAgOiB0b09ic2VydmFibGUodGhpcy5jb25maWcucGFyYW1zKTtcblxuICBsb2FkU3RhdGUkID1cbiAgICB0aGlzLmNvbmZpZy53YXRjaGVyICYmICFET1dOR1JBREVfV0FUQ0hfRU5BQkxFRFxuICAgICAgPyB0aGlzLmxvYWRTdGF0ZVdpdGhXYXRjaGVyKClcbiAgICAgIDogdGhpcy5jb25maWcud2F0Y2hlciB8fCB0aGlzLmNvbmZpZy5wb2xsaW5nXG4gICAgICA/IHRoaXMubG9hZFN0YXRlV2l0aFBvbGxpbmcoKVxuICAgICAgOiB0aGlzLnNvdXJjZUxvYWRTdGF0ZSgpO1xuXG4gIGxvYWRpbmckID0gdGhpcy5sb2FkU3RhdGUkLnBpcGUobWFwKHN0YXRlID0+IHN0YXRlLmxvYWRpbmcpKTtcbiAgaXRlbXMkID0gdGhpcy5sb2FkU3RhdGUkLnBpcGUobWFwKHN0YXRlID0+IHN0YXRlLml0ZW1zKSk7XG4gIHRvdGFsSXRlbXMkID0gdGhpcy5sb2FkU3RhdGUkLnBpcGUobWFwKHN0YXRlID0+IHN0YXRlLnRvdGFsSXRlbXMpKTtcbiAgbG9hZEVycm9yJCA9IHRoaXMubG9hZFN0YXRlJC5waXBlKG1hcChzdGF0ZSA9PiBzdGF0ZS5sb2FkRXJyb3IpKTtcblxuICAkbG9hZGluZyA9IHRvU2lnbmFsKHRoaXMubG9hZGluZyQpO1xuICAkaXRlbXMgPSB0b1NpZ25hbCh0aGlzLml0ZW1zJCk7XG4gICR0b3RhbEl0ZW1zID0gdG9TaWduYWwodGhpcy50b3RhbEl0ZW1zJCk7XG4gICRsb2FkRXJyb3IgPSB0b1NpZ25hbCh0aGlzLmxvYWRFcnJvciQpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBQYWdlZExpc3RDb25maWc8UiwgUD4pIHt9XG5cbiAgcmVsb2FkKCkge1xuICAgIHRoaXMucmVsb2FkJCQubmV4dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzb3VyY2VMb2FkU3RhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1zJC5waXBlKFxuICAgICAgbWFwKHBhcnNlTGlzdFBhcmFtcyksXG4gICAgICBzd2l0Y2hNYXAoKHsgbGlzdFBhcmFtcywgZXh0cmFQYXJhbXMgfSkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWxvYWQkJC5waXBlKFxuICAgICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgICBzd2l0Y2hNYXAoKCk6IE9ic2VydmFibGU8TG9hZFN0YXRlPFI+PiA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb25maWcuZmV0Y2hlcihsaXN0UGFyYW1zLCBleHRyYVBhcmFtcykucGlwZShcbiAgICAgICAgICAgICAgbWFwKGxpc3QgPT4gKHtcbiAgICAgICAgICAgICAgICBsb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBsb2FkU3VjY2VzczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpdGVtczogbGlzdC5pdGVtcyA/PyBbXSxcbiAgICAgICAgICAgICAgICB0b3RhbEl0ZW1zOiBsaXN0Lm1ldGFkYXRhLnRvdGFsSXRlbXMgPz8gMCxcbiAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICBzdGFydFdpdGgoe1xuICAgICAgICAgICAgICAgIGxvYWRpbmc6IHRydWUsXG4gICAgICAgICAgICAgICAgbG9hZFN1Y2Nlc3M6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiBbXSxcbiAgICAgICAgICAgICAgICB0b3RhbEl0ZW1zOiAwLFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyOiBTdGF0dXMgfCBIdHRwRXJyb3JSZXNwb25zZSkgPT5cbiAgICAgICAgICAgICAgICBvZih7XG4gICAgICAgICAgICAgICAgICBsb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgIGxvYWRTdWNjZXNzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgIGxvYWRFcnJvcjogZXJyLFxuICAgICAgICAgICAgICAgICAgaXRlbXM6IFtdLFxuICAgICAgICAgICAgICAgICAgdG90YWxJdGVtczogMCxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkU3RhdGVXaXRoUG9sbGluZygpOiBPYnNlcnZhYmxlPExvYWRTdGF0ZTxSPj4ge1xuICAgIHJldHVybiB0aGlzLnNvdXJjZUxvYWRTdGF0ZSgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoc291cmNlU3RhdGUgPT5cbiAgICAgICAgc291cmNlU3RhdGUubG9hZFN1Y2Nlc3NcbiAgICAgICAgICA/IGludGVydmFsKHRoaXMuY29uZmlnLnBvbGxpbmcgfHwgRE9XTkdSQURFX1dBVENIX1BPTExJTkcpLnBpcGUoXG4gICAgICAgICAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMucGFyYW1zJCksXG4gICAgICAgICAgICAgIG1hcCgoW18sIHBhcmFtc10pID0+IHBhcnNlTGlzdFBhcmFtcyhwYXJhbXMpKSxcbiAgICAgICAgICAgICAgc3dpdGNoTWFwKCh7IGxpc3RQYXJhbXMsIGV4dHJhUGFyYW1zIH0pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZmV0Y2hlcihsaXN0UGFyYW1zLCBleHRyYVBhcmFtcykucGlwZShcbiAgICAgICAgICAgICAgICAgIG1hcChsaXN0ID0+ICh7XG4gICAgICAgICAgICAgICAgICAgIC4uLnNvdXJjZVN0YXRlLFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogbGlzdC5pdGVtcyxcbiAgICAgICAgICAgICAgICAgICAgdG90YWxJdGVtczogbGlzdC5tZXRhZGF0YS50b3RhbEl0ZW1zLFxuICAgICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBORVZFUiksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgc3RhcnRXaXRoKHNvdXJjZVN0YXRlKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IG9mKHNvdXJjZVN0YXRlKSxcbiAgICAgICksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZFN0YXRlV2l0aFdhdGNoZXIoKTogT2JzZXJ2YWJsZTxMb2FkU3RhdGU8Uj4+IHtcbiAgICByZXR1cm4gdGhpcy5zb3VyY2VMb2FkU3RhdGUoKS5waXBlKFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbiAgICAgIHN3aXRjaE1hcChzb3VyY2VTdGF0ZSA9PlxuICAgICAgICBzb3VyY2VTdGF0ZS5sb2FkU3VjY2Vzc1xuICAgICAgICAgID8gdGhpcy5wYXJhbXMkLnBpcGUoXG4gICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgIHN3aXRjaE1hcChwYXJhbXMgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHdhdGNoUGFyYW1zID0gcGFyc2VMaXN0UGFyYW1zKHtcbiAgICAgICAgICAgICAgICAgIGtleXdvcmQ6IHBhcmFtcy5rZXl3b3JkLFxuICAgICAgICAgICAgICAgICAgZXh0cmE6IHBhcmFtcy5leHRyYSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCBmZXRjaFBhcmFtcyA9IHBhcnNlTGlzdFBhcmFtcyhwYXJhbXMpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbmZpZ1xuICAgICAgICAgICAgICAgICAgLndhdGNoZXIod2F0Y2hQYXJhbXMubGlzdFBhcmFtcywgd2F0Y2hQYXJhbXMuZXh0cmFQYXJhbXMpXG4gICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyKCh7IHR5cGUsIG9iamVjdCB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFdhdGNoRXZlbnQuQWRkZWQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuYWRkZWRVaWQuaGFzKG9iamVjdC5tZXRhZGF0YS51aWQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkZWRVaWQuYWRkKG9iamVjdC5tZXRhZGF0YS51aWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgV2F0Y2hFdmVudC5EZWxldGVkOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmRlbGV0ZWRVaWQuaGFzKG9iamVjdC5tZXRhZGF0YS51aWQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGVsZXRlZFVpZC5hZGQob2JqZWN0Lm1ldGFkYXRhLnVpZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICBzd2l0Y2hTY2FuKChzdGF0ZSwgeyB0eXBlLCBvYmplY3QgfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBXYXRjaEV2ZW50Lk1vZGlmaWVkOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHN0YXRlLml0ZW1zLm1hcChpdGVtID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLm1ldGFkYXRhLnVpZCA9PT0gb2JqZWN0Lm1ldGFkYXRhLnVpZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IG9iamVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGl0ZW0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFdhdGNoRXZlbnQuQWRkZWQ6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFdhdGNoRXZlbnQuRGVsZXRlZDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jb25maWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmV0Y2hlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZldGNoUGFyYW1zLmxpc3RQYXJhbXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZXRjaFBhcmFtcy5leHRyYVBhcmFtcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAobGlzdCA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IGxpc3QuaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsSXRlbXM6IGxpc3QubWV0YWRhdGEudG90YWxJdGVtcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gTkVWRVIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBORVZFUjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sIHNvdXJjZVN0YXRlKSxcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBzdGFydFdpdGgoc291cmNlU3RhdGUpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIDogb2Yoc291cmNlU3RhdGUpLFxuICAgICAgKSxcbiAgICAgIHB1Ymxpc2hSZWYoKSxcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnZWRMaXN0Q29uZmlnPFIsIFA+IHtcbiAgcGFyYW1zOiBTaWduYWw8TGlzdEZldGNoUGFyYW1zPFA+PiB8IE9ic2VydmFibGU8TGlzdEZldGNoUGFyYW1zPFA+PjtcbiAgZmV0Y2hlcjogKFxuICAgIGxpc3RQYXJhbXM6IEZldGNoU2VlZCxcbiAgICBleHRyYVBhcmFtczogUCxcbiAgKSA9PiBPYnNlcnZhYmxlPEt1YmVybmV0ZXNSZXNvdXJjZUxpc3Q8Uj4+O1xuICB3YXRjaGVyPzogKFxuICAgIGxpc3RQYXJhbXM6IEZldGNoU2VlZCxcbiAgICBleHRyYVBhcmFtczogUCxcbiAgKSA9PiBPYnNlcnZhYmxlPFdhdGNoQVBJUmVzcG9uc2U8Uj4+O1xuICBwb2xsaW5nPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RGZXRjaFBhcmFtczxQID0gbmV2ZXI+IHtcbiAgcGFnZUluZGV4PzogbnVtYmVyIHwgc3RyaW5nO1xuICBwYWdlU2l6ZT86IG51bWJlciB8IHN0cmluZztcbiAgc29ydEZpZWxkPzogc3RyaW5nO1xuICBzb3J0T3JkZXI/OiAnYXNjJyB8ICdkZXNjJztcbiAga2V5d29yZD86IHN0cmluZztcbiAgZmllbGRTZWxlY3Rvcj86IHN0cmluZztcbiAgbGFiZWxTZWxlY3Rvcj86IHN0cmluZztcbiAgZXh0cmE/OiBQO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZldGNoU2VlZCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICBsaW1pdD86IHN0cmluZztcbiAgY29udGludWU/OiBzdHJpbmc7XG4gIGZpZWxkU2VsZWN0b3I/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBMb2FkU3RhdGU8Uj4ge1xuICBpdGVtczogUltdO1xuICB0b3RhbEl0ZW1zOiBudW1iZXI7XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIGxvYWRTdWNjZXNzOiBib29sZWFuO1xuICBsb2FkRXJyb3I/OiBIdHRwRXJyb3JSZXNwb25zZSB8IFN0YXR1cztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RQYWdlZExpc3RQYXJhbXM8UD4oXG4gIGRlZmF1bHRQYXJhbXM6IExpc3RGZXRjaFBhcmFtcyA9IHt9LFxuICBleHRyYVBhcmFtcz86IChxdWVyeVBhcmFtczogUGFyYW1zKSA9PiBQLFxuKTogUmVhZG9ubHk8e1xuICBzdHJlYW06ICgpID0+IE9ic2VydmFibGU8TGlzdEZldGNoUGFyYW1zPFA+PjtcbiAgc2lnbmFsOiAoKSA9PiBTaWduYWw8TGlzdEZldGNoUGFyYW1zPFA+Pjtcbn0+IHtcbiAgY29uc3Qgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICBjb25zdCBwYXJhbXMkID0gcm91dGUucXVlcnlQYXJhbXMucGlwZShcbiAgICBtYXAocGFyYW1zID0+ICh7XG4gICAgICBwYWdlSW5kZXg6IDAsXG4gICAgICBwYWdlU2l6ZTogMjAsXG4gICAgICAuLi5kZWZhdWx0UGFyYW1zLFxuICAgICAgLi4uKHBhcmFtcy5wYWdlSW5kZXggPyB7IHBhZ2VJbmRleDogcGFyYW1zLnBhZ2VJbmRleCB9IDoge30pLFxuICAgICAgLi4uKHBhcmFtcy5wYWdlU2l6ZSA/IHsgcGFnZVNpemU6IHBhcmFtcy5wYWdlU2l6ZSB9IDoge30pLFxuICAgICAgLi4uKHBhcmFtcy5rZXl3b3JkID8geyBrZXl3b3JkOiBwYXJhbXMua2V5d29yZCB9IDoge30pLFxuICAgICAgLi4uKHBhcmFtcy5zb3J0RmllbGQgPyB7IHNvcnRGaWVsZDogcGFyYW1zLnNvcnRGaWVsZCB9IDoge30pLFxuICAgICAgLi4uKHBhcmFtcy5zb3J0T3JkZXIgPyB7IHNvcnRPcmRlcjogcGFyYW1zLnNvcnRPcmRlciB9IDoge30pLFxuICAgICAgLi4uKHBhcmFtcy5maWVsZFNlbGVjdG9yID8geyBmaWVsZFNlbGVjdG9yOiBwYXJhbXMuZmllbGRTZWxlY3RvciB9IDoge30pLFxuICAgICAgLi4uKHBhcmFtcy5sYWJlbFNlbGVjdG9yID8geyBsYWJlbFNlbGVjdG9yOiBwYXJhbXMubGFiZWxTZWxlY3RvciB9IDoge30pLFxuICAgICAgLi4uKGV4dHJhUGFyYW1zID8geyBleHRyYTogZXh0cmFQYXJhbXMocGFyYW1zKSB9IDoge30pLFxuICAgIH0pKSxcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIHN0cmVhbTogKCkgPT4gcGFyYW1zJCxcbiAgICBzaWduYWw6ICgpID0+IHRvU2lnbmFsKHBhcmFtcyQpLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcXVlcnlMaXN0UGFyYW1zKCkge1xuICBjb25zdCByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgY29uc3Qgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuXG4gIHJldHVybiAocXVlcnlQYXJhbXM6IFBhcmFtcykgPT4ge1xuICAgIHJvdXRlci5uYXZpZ2F0ZShbJy4vJ10sIHtcbiAgICAgIHJlbGF0aXZlVG86IHJvdXRlLFxuICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJyxcbiAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgIH0pO1xuICB9O1xufVxuXG5mdW5jdGlvbiBwYXJzZUxpc3RQYXJhbXM8UD4oe1xuICBwYWdlSW5kZXgsXG4gIHBhZ2VTaXplLFxuICBzb3J0RmllbGQsXG4gIHNvcnRPcmRlcixcbiAga2V5d29yZCxcbiAgZmllbGRTZWxlY3Rvcjogb3JpZ2luRmllbGRTZWxlY3RvcixcbiAgbGFiZWxTZWxlY3RvcixcbiAgZXh0cmE6IGV4dHJhUGFyYW1zLFxufTogTGlzdEZldGNoUGFyYW1zPFA+KSB7XG4gIGNvbnN0IHNlYXJjaCA9IGtleXdvcmQgPyBgc2VhcmNoPSR7a2V5d29yZH1gIDogJyc7XG4gIGNvbnN0IHNvcnRCeSA9IHNvcnRGaWVsZFxuICAgID8gYHNvcnRieT0ke3NvcnRPcmRlciA9PT0gJ2Rlc2MnID8gJy0nIDogJyd9JHtzb3J0RmllbGR9YFxuICAgIDogJyc7XG4gIGNvbnN0IGZpZWxkU2VsZWN0b3IgPSBbc2VhcmNoLCBzb3J0QnksIG9yaWdpbkZpZWxkU2VsZWN0b3JdXG4gICAgLmZpbHRlcih2ID0+ICEhdilcbiAgICAuam9pbignLCcpO1xuICByZXR1cm4ge1xuICAgIGxpc3RQYXJhbXM6IHtcbiAgICAgIGxpbWl0OiAocGFnZVNpemUgfHwgMjApICsgJycsXG4gICAgICBjb250aW51ZTogKyhwYWdlSW5kZXggfHwgMCkgKiArKHBhZ2VTaXplIHx8IDIwKSArICcnLFxuICAgICAgLi4uKGxhYmVsU2VsZWN0b3IgPyB7IGxhYmVsU2VsZWN0b3IgfSA6IHt9KSxcbiAgICAgIC4uLihmaWVsZFNlbGVjdG9yID8geyBmaWVsZFNlbGVjdG9yIH0gOiB7fSksXG4gICAgfSBhcyBGZXRjaFNlZWQsXG4gICAgZXh0cmFQYXJhbXMsXG4gIH07XG59XG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* [[include:k8s-resource-list/README.md]]
|
|
3
|
+
* @module k8s-resource-list
|
|
4
|
+
* @preferred
|
|
5
|
+
*/
|
|
6
|
+
/** imports */
|
|
7
|
+
export * from './footer/component';
|
|
8
|
+
export * from './k8s-resource-list';
|
|
9
|
+
export * from './k8s-resource-list.module';
|
|
10
|
+
export * from './types';
|
|
11
|
+
export * from './utils';
|
|
12
|
+
export * from './k8s-resource-paged-list';
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9rOHMtcmVzb3VyY2UtbGlzdC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxjQUFjO0FBQ2QsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFFeEIsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogW1tpbmNsdWRlOms4cy1yZXNvdXJjZS1saXN0L1JFQURNRS5tZF1dXG4gKiBAbW9kdWxlIGs4cy1yZXNvdXJjZS1saXN0XG4gKiBAcHJlZmVycmVkXG4gKi9cbi8qKiBpbXBvcnRzICovXG5leHBvcnQgKiBmcm9tICcuL2Zvb3Rlci9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9rOHMtcmVzb3VyY2UtbGlzdCc7XG5leHBvcnQgKiBmcm9tICcuL2s4cy1yZXNvdXJjZS1saXN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2s4cy1yZXNvdXJjZS1wYWdlZC1saXN0JztcbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @packageDocumentation
|
|
3
|
+
* @module k8s-resource-list
|
|
4
|
+
*/
|
|
5
|
+
export var LoadAction;
|
|
6
|
+
(function (LoadAction) {
|
|
7
|
+
LoadAction["Reload"] = "Reload";
|
|
8
|
+
LoadAction["SilentReload"] = "SilentReload";
|
|
9
|
+
LoadAction["LoadMore"] = "LoadMore";
|
|
10
|
+
})(LoadAction || (LoadAction = {}));
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvazhzLXJlc291cmNlLWxpc3QvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBK0NILE1BQU0sQ0FBTixJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDcEIsK0JBQWlCLENBQUE7SUFDakIsMkNBQTZCLENBQUE7SUFDN0IsbUNBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUpXLFVBQVUsS0FBVixVQUFVLFFBSXJCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgazhzLXJlc291cmNlLWxpc3RcbiAqL1xuXG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgV2F0Y2hBUElSZXNwb25zZSB9IGZyb20gJy4uL2FwaS90eXBlcyc7XG5pbXBvcnQge1xuICBTdHJpbmdNYXAsXG4gIEt1YmVybmV0ZXNSZXNvdXJjZSxcbiAgS3ViZXJuZXRlc1Jlc291cmNlTGlzdCxcbiAgU3RhdHVzLFxufSBmcm9tICcuLi9jb3JlJztcblxuaW1wb3J0IHsgSzhTUmVzb3VyY2VMaXN0IH0gZnJvbSAnLi9rOHMtcmVzb3VyY2UtbGlzdCc7XG5cbmV4cG9ydCB0eXBlIFdhdGNoZXI8UiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSwgUT4gPSAoXG4gIHNlZWRWZXJzaW9uOiBzdHJpbmcsXG4gIHBhcmFtcz86IFEsXG4pID0+IE9ic2VydmFibGU8V2F0Y2hBUElSZXNwb25zZTxSPj47XG5leHBvcnQgdHlwZSBJbnNlcnRGbjxSPiA9IChpdGVtczogUltdLCByZXM6IFIsIGhhc01vcmU6IGJvb2xlYW4pID0+IFJbXTtcblxuZXhwb3J0IGludGVyZmFjZSBXYXRjaGVyUGFyYW1zPFIgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2UsIFE+IHtcbiAgbGlzdDogSzhTUmVzb3VyY2VMaXN0PFI+O1xuICB3YXRjaGVyOiBXYXRjaGVyPFIsIFE+O1xuICBpbnNlcnRGbj86IEluc2VydEZuPFI+O1xufVxuXG5pbnRlcmZhY2UgQmFzZUNvbmZpZzxSIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlLCBRPiB7XG4gIHdhdGNoZXI/OiBXYXRjaGVyPFIsIFE+O1xuICBpbnNlcnRGbj86IEluc2VydEZuPFI+O1xuICBsaW1pdD86IG51bWJlcjtcbiAgcG9sbGluZz86IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgSXRlbXNTY2FubmVyPFI+ID0gKGl0ZW1zOiBSW10pID0+IFJbXTtcblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdXaXRoUm91dGU8UiwgUSwgUD4gZXh0ZW5kcyBCYXNlQ29uZmlnPFIsIFE+IHtcbiAgZmV0Y2hlcjogKHBhcmFtczogUCkgPT4gT2JzZXJ2YWJsZTxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PFI+PjtcbiAgYWN0aXZhdGVkUm91dGU/OiBBY3RpdmF0ZWRSb3V0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdXaXRoUGFyYW1zPFIsIFEsIFA+IGV4dGVuZHMgQmFzZUNvbmZpZzxSLCBRPiB7XG4gIGZldGNoZXI6IChwYXJhbXM6IFApID0+IE9ic2VydmFibGU8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxSPj47XG4gIGZldGNoUGFyYW1zJD86IE9ic2VydmFibGU8UT47XG59XG5cbmV4cG9ydCBlbnVtIExvYWRBY3Rpb24ge1xuICBSZWxvYWQgPSAnUmVsb2FkJyxcbiAgU2lsZW50UmVsb2FkID0gJ1NpbGVudFJlbG9hZCcsXG4gIExvYWRNb3JlID0gJ0xvYWRNb3JlJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2FkU3RhdGU8Uj4ge1xuICBhY3Rpb24/OiBMb2FkQWN0aW9uO1xuICByYXdSZXNwb25zZT86IFI7XG4gIGxvYWRpbmc/OiBib29sZWFuO1xuICBsb2FkaW5nRXJyb3I/OiBIdHRwRXJyb3JSZXNwb25zZSB8IFN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0UGFyYW1zIGV4dGVuZHMgU3RyaW5nTWFwIHtcbiAgbGltaXQ6IHN0cmluZztcbiAgY29udGludWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdHJlYW1MaXN0TG9hZGVyPFIsIFQ+IHtcbiAgbG9hZFN0YXRlJDogT2JzZXJ2YWJsZTxMb2FkU3RhdGU8Uj4+O1xuICBsb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgbG9hZGluZ0Vycm9yJDogT2JzZXJ2YWJsZTxIdHRwRXJyb3JSZXNwb25zZSB8IFN0YXR1cz47XG4gIGhhc01vcmUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICByYXdSZXNwb25zZSQ6IE9ic2VydmFibGU8Uj47XG4gIGl0ZW1zJDogT2JzZXJ2YWJsZTxUW10+O1xuICBzbmFwc2hvdDogU3RyZWFtTGlzdExvYWRlclNuYXBzaG90PFIsIFQ+O1xuXG4gIGxvYWRNb3JlKCk6IHZvaWQ7XG4gIHJlbG9hZCgpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0cmVhbUxpc3RMb2FkZXJTbmFwc2hvdDxSLCBUPiB7XG4gIHJhd1Jlc3BvbnNlPzogUjtcbiAgbG9hZGluZz86IGJvb2xlYW47XG4gIGxvYWRpbmdFcnJvcj86IEh0dHBFcnJvclJlc3BvbnNlIHwgU3RhdHVzO1xuICBoYXNNb3JlPzogYm9vbGVhbjtcbiAgY29udGludWVUb2tlbj86IHN0cmluZztcbiAgaXRlbXM/OiBUW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZFNuYXBzaG90PFIsIFQsIFE+IGV4dGVuZHMgU3RyZWFtTGlzdExvYWRlclNuYXBzaG90PFIsIFQ+IHtcbiAgcXVlcnlQYXJhbXM/OiBRO1xufVxuIl19
|