@alauda-fe/common 1.4.5 → 1.4.7

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.
@@ -0,0 +1,76 @@
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
2
+ import { uniq } from 'lodash-es';
3
+ import { startWith, switchMap, takeUntil } from 'rxjs';
4
+ import { K8sUtilService, publishRef, } from '../../../../core/public-api';
5
+ import { CommonLayoutContextService } from '../../../../page-scaffold/public-api';
6
+ import { ResourceListBase } from '../../base-list';
7
+ import { ResourceSelectContextService } from '../../context.service';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../../../page-scaffold/public-api";
10
+ import * as i2 from "../../context.service";
11
+ import * as i3 from "../../../../core/public-api";
12
+ export class ProjectListComponent extends ResourceListBase {
13
+ constructor(commonLayoutService, contextService, cdr, k8sUtil) {
14
+ super(cdr, k8sUtil, contextService);
15
+ this.commonLayoutService = commonLayoutService;
16
+ this.type = 'project';
17
+ this.projects = [];
18
+ this.projects$ = this.reload$$.pipe(startWith(null), switchMap(() => this.commonLayoutService.getProjects()), takeUntil(this.destroy$$), publishRef());
19
+ this.mapResource = (list) => list.map(item => {
20
+ const cachedItem = this.projects.find(project => project.name === this.k8sUtil.getName(item));
21
+ return {
22
+ name: this.k8sUtil.getName(item),
23
+ displayName: this.k8sUtil.getDisplayName(item),
24
+ status: item.status?.phase === 'Active' ? 'normal' : 'abnormal',
25
+ admin: cachedItem?.admin || '',
26
+ timestamp: item.metadata.creationTimestamp,
27
+ __origin: item,
28
+ };
29
+ });
30
+ }
31
+ ngOnInit() {
32
+ this.projects = this.contextService.cachedProjects;
33
+ this.setSelected();
34
+ this.projects$.subscribe({
35
+ next: projects => {
36
+ this.load.emit({
37
+ project: projects.length,
38
+ cluster: uniq(projects.reduce((acc, cur) => [
39
+ ...acc,
40
+ ...(cur.spec.clusters || []).map(c => c.name),
41
+ ], [])).length,
42
+ });
43
+ this.projects = this.mapResource(projects);
44
+ this.contextService.cachedProjects = this.projects;
45
+ this.setSelected();
46
+ this.loading = false;
47
+ this.forceLoading = false;
48
+ this.cdr.markForCheck();
49
+ },
50
+ error: () => {
51
+ this.loading = false;
52
+ this.forceLoading = false;
53
+ this.cdr.markForCheck();
54
+ },
55
+ });
56
+ }
57
+ setSelected() {
58
+ this.selectedProject = this.projects.find(p => p.name === this.value);
59
+ }
60
+ static { this.ɵfac = function ProjectListComponent_Factory(t) { return new (t || ProjectListComponent)(i0.ɵɵdirectiveInject(i1.CommonLayoutContextService), i0.ɵɵdirectiveInject(i2.ResourceSelectContextService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i3.K8sUtilService)); }; }
61
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProjectListComponent, selectors: [["acl-project-list"]], inputs: { value: "value" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 7, consts: [[3, "selectItem", "reload", "data", "fields", "context", "popupLite", "type", "selectedUid", "loading"]], template: function ProjectListComponent_Template(rf, ctx) { if (rf & 1) {
62
+ i0.ɵɵelementStart(0, "acl-resource-data-grid", 0);
63
+ i0.ɵɵlistener("selectItem", function ProjectListComponent_Template_acl_resource_data_grid_selectItem_0_listener($event) { return ctx.onSelect($event); })("reload", function ProjectListComponent_Template_acl_resource_data_grid_reload_0_listener() { return ctx.reload(); });
64
+ i0.ɵɵelementEnd();
65
+ } if (rf & 2) {
66
+ i0.ɵɵproperty("data", ctx.projects)("fields", ctx.fields)("context", ctx.context)("popupLite", ctx.popupLite)("type", ctx.type)("selectedUid", ctx.selectedProject == null ? null : ctx.selectedProject.__origin.metadata.uid)("loading", ctx.forceLoading || !ctx.projects.length && ctx.loading);
67
+ } }, styles: ["[_nghost-%COMP%]{display:flex;flex-direction:column}.filter[_ngcontent-%COMP%]{display:flex;border-bottom:1px solid rgb(var(--aui-color-n-8));padding-bottom:8px}.filter[_ngcontent-%COMP%] aui-form-item[_ngcontent-%COMP%] .aui-form-item{margin-bottom:0}.filter__project[_ngcontent-%COMP%]{margin-right:50px;padding-bottom:8px}.filter__project[_ngcontent-%COMP%] aui-select[_ngcontent-%COMP%]{width:240px}.filter__cluster[_ngcontent-%COMP%]{flex:1}.cluster-tags[_ngcontent-%COMP%] aui-check-tag[_ngcontent-%COMP%]{margin-bottom:8px;display:inline-flex}.cluster-tags[_ngcontent-%COMP%] aui-check-tag[_ngcontent-%COMP%] .aui-tag{border:none}.cluster-tags[_ngcontent-%COMP%] aui-check-tag[_ngcontent-%COMP%] .aui-tag--info{background-color:rgb(var(--aui-color-n-8))}"], changeDetection: 0 }); }
68
+ }
69
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProjectListComponent, [{
70
+ type: Component,
71
+ args: [{ selector: 'acl-project-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<acl-resource-data-grid\n [data]=\"projects\"\n [fields]=\"fields\"\n [context]=\"context\"\n [popupLite]=\"popupLite\"\n (selectItem)=\"onSelect($event)\"\n [type]=\"type\"\n [selectedUid]=\"selectedProject?.__origin.metadata.uid\"\n [loading]=\"forceLoading || (!projects.length && loading)\"\n (reload)=\"reload()\"\n></acl-resource-data-grid>\n", styles: [":host{display:flex;flex-direction:column}.filter{display:flex;border-bottom:1px solid rgb(var(--aui-color-n-8));padding-bottom:8px}.filter aui-form-item ::ng-deep .aui-form-item{margin-bottom:0}.filter__project{margin-right:50px;padding-bottom:8px}.filter__project aui-select{width:240px}.filter__cluster{flex:1}.cluster-tags aui-check-tag{margin-bottom:8px;display:inline-flex}.cluster-tags aui-check-tag::ng-deep .aui-tag{border:none}.cluster-tags aui-check-tag::ng-deep .aui-tag--info{background-color:rgb(var(--aui-color-n-8))}\n"] }]
72
+ }], () => [{ type: i1.CommonLayoutContextService }, { type: i2.ResourceSelectContextService }, { type: i0.ChangeDetectorRef }, { type: i3.K8sUtilService }], { value: [{
73
+ type: Input
74
+ }] }); })();
75
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProjectListComponent, { className: "ProjectListComponent", filePath: "business/resource-select/exports/project-list/component.ts", lineNumber: 29 }); })();
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2J1c2luZXNzL3Jlc291cmNlLXNlbGVjdC9leHBvcnRzL3Byb2plY3QtbGlzdC9jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvYnVzaW5lc3MvcmVzb3VyY2Utc2VsZWN0L2V4cG9ydHMvcHJvamVjdC1saXN0L3RlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssR0FHTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2RCxPQUFPLEVBQ0wsY0FBYyxFQUVkLFVBQVUsR0FDWCxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7OztBQVVyRSxNQUFNLE9BQU8sb0JBQ1gsU0FBUSxnQkFBZ0I7SUFxQnhCLFlBQ21CLG1CQUErQyxFQUNoRSxjQUE0QyxFQUM1QyxHQUFzQixFQUN0QixPQUF1QjtRQUV2QixLQUFLLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztRQUxuQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQTRCO1FBZGxFLFNBQUksR0FBRyxTQUFrQixDQUFDO1FBSTFCLGFBQVEsR0FBc0IsRUFBRSxDQUFDO1FBRWpDLGNBQVMsR0FB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QUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hFLENBQUM7cUZBakVVLG9CQUFvQjtvRUFBcEIsb0JBQW9CO1lDNUJqQyxpREFVQztZQURDLEFBSkEsaUlBQWMsb0JBQWdCLElBQUMsc0dBSXJCLFlBQVEsSUFBQztZQUNwQixpQkFBeUI7O1lBRnhCLEFBREEsQUFEQSxBQUZBLEFBREEsQUFEQSxBQURBLG1DQUFpQixzQkFDQSx3QkFDRSw0QkFDSSxrQkFFViwrRkFDeUMsb0VBQ0c7OztpRkRvQjlDLG9CQUFvQjtjQU5oQyxTQUFTOzJCQUNFLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNO21LQU8vQyxLQUFLO2tCQURKLEtBQUs7O2tGQUpLLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdW5pcSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIEs4c1V0aWxTZXJ2aWNlLFxuICBQcm9qZWN0LFxuICBwdWJsaXNoUmVmLFxufSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQ29tbW9uTGF5b3V0Q29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9wYWdlLXNjYWZmb2xkL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgUmVzb3VyY2VMaXN0QmFzZSB9IGZyb20gJy4uLy4uL2Jhc2UtbGlzdCc7XG5pbXBvcnQgeyBSZXNvdXJjZVNlbGVjdENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29udGV4dC5zZXJ2aWNlJztcblxuaW1wb3J0IHsgUHJvamVjdERhdGFJdGVtIH0gZnJvbSAnLi8uLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1wcm9qZWN0LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFByb2plY3RMaXN0Q29tcG9uZW50XG4gIGV4dGVuZHMgUmVzb3VyY2VMaXN0QmFzZVxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95XG57XG4gIEBJbnB1dCgpXG4gIHZhbHVlOiBzdHJpbmc7XG5cbiAgc2VsZWN0ZWRQcm9qZWN0OiBQcm9qZWN0RGF0YUl0ZW07XG5cbiAgdHlwZSA9ICdwcm9qZWN0JyBhcyBjb25zdDtcblxuICBzZWxlY3RlZFVpZDogc3RyaW5nO1xuXG4gIHByb2plY3RzOiBQcm9qZWN0RGF0YUl0ZW1bXSA9IFtdO1xuXG4gIHByb2plY3RzJCA9IHRoaXMucmVsb2FkJCQucGlwZShcbiAgICBzdGFydFdpdGgobnVsbCBhcyB2b2lkKSxcbiAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb21tb25MYXlvdXRTZXJ2aWNlLmdldFByb2plY3RzKCkpLFxuICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29tbW9uTGF5b3V0U2VydmljZTogQ29tbW9uTGF5b3V0Q29udGV4dFNlcnZpY2UsXG4gICAgY29udGV4dFNlcnZpY2U6IFJlc291cmNlU2VsZWN0Q29udGV4dFNlcnZpY2UsXG4gICAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBrOHNVdGlsOiBLOHNVdGlsU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIoY2RyLCBrOHNVdGlsLCBjb250ZXh0U2VydmljZSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnByb2plY3RzID0gdGhpcy5jb250ZXh0U2VydmljZS5jYWNoZWRQcm9qZWN0cztcbiAgICB0aGlzLnNldFNlbGVjdGVkKCk7XG4gICAgdGhpcy5wcm9qZWN0cyQuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IHByb2plY3RzID0+IHtcbiAgICAgICAgdGhpcy5sb2FkLmVtaXQoe1xuICAgICAgICAgIHByb2plY3Q6IHByb2plY3RzLmxlbmd0aCxcbiAgICAgICAgICBjbHVzdGVyOiB1bmlxKFxuICAgICAgICAgICAgcHJvamVjdHMucmVkdWNlKFxuICAgICAgICAgICAgICAoYWNjLCBjdXIpID0+IFtcbiAgICAgICAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgICAgICAgLi4uKGN1ci5zcGVjLmNsdXN0ZXJzIHx8IFtdKS5tYXAoYyA9PiBjLm5hbWUpLFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICBbXSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgKS5sZW5ndGgsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnByb2plY3RzID0gdGhpcy5tYXBSZXNvdXJjZShwcm9qZWN0cyk7XG4gICAgICAgIHRoaXMuY29udGV4dFNlcnZpY2UuY2FjaGVkUHJvamVjdHMgPSB0aGlzLnByb2plY3RzO1xuICAgICAgICB0aGlzLnNldFNlbGVjdGVkKCk7XG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmZvcmNlTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5mb3JjZUxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgc2V0U2VsZWN0ZWQoKSB7XG4gICAgdGhpcy5zZWxlY3RlZFByb2plY3QgPSB0aGlzLnByb2plY3RzLmZpbmQocCA9PiBwLm5hbWUgPT09IHRoaXMudmFsdWUpO1xuICB9XG5cbiAgbWFwUmVzb3VyY2UgPSAobGlzdDogUHJvamVjdFtdKTogUHJvamVjdERhdGFJdGVtW10gPT5cbiAgICBsaXN0Lm1hcChpdGVtID0+IHtcbiAgICAgIGNvbnN0IGNhY2hlZEl0ZW0gPSB0aGlzLnByb2plY3RzLmZpbmQoXG4gICAgICAgIHByb2plY3QgPT4gcHJvamVjdC5uYW1lID09PSB0aGlzLms4c1V0aWwuZ2V0TmFtZShpdGVtKSxcbiAgICAgICk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiB0aGlzLms4c1V0aWwuZ2V0TmFtZShpdGVtKSxcbiAgICAgICAgZGlzcGxheU5hbWU6IHRoaXMuazhzVXRpbC5nZXREaXNwbGF5TmFtZShpdGVtKSxcbiAgICAgICAgc3RhdHVzOiBpdGVtLnN0YXR1cz8ucGhhc2UgPT09ICdBY3RpdmUnID8gJ25vcm1hbCcgOiAnYWJub3JtYWwnLFxuICAgICAgICBhZG1pbjogY2FjaGVkSXRlbT8uYWRtaW4gfHwgJycsXG4gICAgICAgIHRpbWVzdGFtcDogaXRlbS5tZXRhZGF0YS5jcmVhdGlvblRpbWVzdGFtcCxcbiAgICAgICAgX19vcmlnaW46IGl0ZW0sXG4gICAgICB9O1xuICAgIH0pO1xufVxuIiwiPGFjbC1yZXNvdXJjZS1kYXRhLWdyaWRcbiAgW2RhdGFdPVwicHJvamVjdHNcIlxuICBbZmllbGRzXT1cImZpZWxkc1wiXG4gIFtjb250ZXh0XT1cImNvbnRleHRcIlxuICBbcG9wdXBMaXRlXT1cInBvcHVwTGl0ZVwiXG4gIChzZWxlY3RJdGVtKT1cIm9uU2VsZWN0KCRldmVudClcIlxuICBbdHlwZV09XCJ0eXBlXCJcbiAgW3NlbGVjdGVkVWlkXT1cInNlbGVjdGVkUHJvamVjdD8uX19vcmlnaW4ubWV0YWRhdGEudWlkXCJcbiAgW2xvYWRpbmddPVwiZm9yY2VMb2FkaW5nIHx8ICghcHJvamVjdHMubGVuZ3RoICYmIGxvYWRpbmcpXCJcbiAgKHJlbG9hZCk9XCJyZWxvYWQoKVwiXG4+PC9hY2wtcmVzb3VyY2UtZGF0YS1ncmlkPlxuIl19
@@ -8,20 +8,20 @@ import { CoreModule, DeclareDirective } from '../../core/public-api';
8
8
  import { K8SResourceListModule } from '../../k8s-resource-list/public-api';
9
9
  import { TranslateModule } from '../../translate/public-api';
10
10
  import { WidgetModule } from '../../widget/public-api';
11
+ import { ClusterListComponent } from './exports/cluster-list/component';
11
12
  import { ClusterSelectorComponent } from './exports/cluster-selector/component';
13
+ import { ResourceIconComponent } from './exports/icon/component';
12
14
  import { ServiceMeshGroupSelectorComponent } from './exports/mesh-group-selector/component';
15
+ import { NamespaceListComponent } from './exports/namespace-list/component';
13
16
  import { NamespacePageComponent } from './exports/namespace-page/component';
14
17
  import { NamespaceSelectorComponent } from './exports/namespace-selector/component';
18
+ import { ProjectListComponent } from './exports/project-list/component';
15
19
  import { ProjectPageComponent } from './exports/project-page/component';
16
20
  import { ProjectSelectorComponent } from './exports/project-selector/component';
17
21
  import { ResourceGridHeaderDirective } from './helpers.directive';
18
- import { ClusterListComponent } from './internals/cluster-list/component';
19
22
  import { ResourceDataGridComponent } from './internals/data-grid/component';
20
- import { ResourceIconComponent } from './internals/icon/component';
21
23
  import { ServiceMeshGroupListComponent } from './internals/meshgroup-list/component';
22
- import { NamespaceListComponent } from './internals/namespace-list/component';
23
24
  import { ResourceNoDataComponent } from './internals/no-data/component';
24
- import { ProjectListComponent } from './internals/project-list/component';
25
25
  import { ResourceDashboardComponent } from './internals/resource-dashboard/component';
26
26
  import { ResourceSelectorPopupComponent } from './internals/selector-popup/component';
27
27
  import { ResourceSelectorPopupService } from './internals/selector-popup/service';
@@ -30,15 +30,15 @@ import * as i1 from "@alauda/ui";
30
30
  import * as i2 from "@angular/common";
31
31
  import * as i3 from "../../core/pipes/time.pipe";
32
32
  import * as i4 from "../../translate/translate.pipe";
33
- import * as i5 from "../../core/pipes/pure.pipe";
34
- import * as i6 from "@angular/forms";
35
- import * as i7 from "../../effect-directive/e2e-attribute-binding.directive";
36
- import * as i8 from "../../core/directives/declare.directive";
37
- import * as i9 from "../../core/pipes/k8s-util.pipe";
38
- import * as i10 from "../../core/pipes/img-theme.pipe";
39
- import * as i11 from "../../widget/zero-state/zero-state.component";
40
- import * as i12 from "../../widget/loading-mask/loading-mask.component";
41
- import * as i13 from "../../core/pipes/field-not-available.pipe";
33
+ import * as i5 from "../../effect-directive/e2e-attribute-binding.directive";
34
+ import * as i6 from "../../core/pipes/img-theme.pipe";
35
+ import * as i7 from "../../widget/zero-state/zero-state.component";
36
+ import * as i8 from "../../widget/loading-mask/loading-mask.component";
37
+ import * as i9 from "../../core/pipes/pure.pipe";
38
+ import * as i10 from "../../core/pipes/field-not-available.pipe";
39
+ import * as i11 from "@angular/forms";
40
+ import * as i12 from "../../core/directives/declare.directive";
41
+ import * as i13 from "../../core/pipes/k8s-util.pipe";
42
42
  const EXPORTS = [
43
43
  NamespacePageComponent,
44
44
  NamespaceSelectorComponent,
@@ -46,6 +46,10 @@ const EXPORTS = [
46
46
  ProjectSelectorComponent,
47
47
  ClusterSelectorComponent,
48
48
  ServiceMeshGroupSelectorComponent,
49
+ ProjectListComponent,
50
+ ClusterListComponent,
51
+ NamespaceListComponent,
52
+ ResourceIconComponent,
49
53
  ];
50
54
  export class ResourceSelectModule {
51
55
  static { this.ɵfac = function ResourceSelectModule_Factory(t) { return new (t || ResourceSelectModule)(); }; }
@@ -95,13 +99,9 @@ export class ResourceSelectModule {
95
99
  ],
96
100
  declarations: [
97
101
  ResourceDashboardComponent,
98
- ResourceIconComponent,
99
- NamespaceListComponent,
100
102
  ResourceNoDataComponent,
101
103
  ResourceSelectorPopupComponent,
102
- ProjectListComponent,
103
104
  ResourceDataGridComponent,
104
- ClusterListComponent,
105
105
  ResourceGridHeaderDirective,
106
106
  ServiceMeshGroupListComponent,
107
107
  ...EXPORTS,
@@ -111,20 +111,20 @@ export class ResourceSelectModule {
111
111
  }]
112
112
  }], null, null); })();
113
113
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(ResourceSelectModule, { declarations: [ResourceDashboardComponent,
114
- ResourceIconComponent,
115
- NamespaceListComponent,
116
114
  ResourceNoDataComponent,
117
115
  ResourceSelectorPopupComponent,
118
- ProjectListComponent,
119
116
  ResourceDataGridComponent,
120
- ClusterListComponent,
121
117
  ResourceGridHeaderDirective,
122
118
  ServiceMeshGroupListComponent, NamespacePageComponent,
123
119
  NamespaceSelectorComponent,
124
120
  ProjectPageComponent,
125
121
  ProjectSelectorComponent,
126
122
  ClusterSelectorComponent,
127
- ServiceMeshGroupSelectorComponent], imports: [CommonModule,
123
+ ServiceMeshGroupSelectorComponent,
124
+ ProjectListComponent,
125
+ ClusterListComponent,
126
+ NamespaceListComponent,
127
+ ResourceIconComponent], imports: [CommonModule,
128
128
  CoreModule,
129
129
  DialogModule,
130
130
  MessageModule,
@@ -147,23 +147,24 @@ export class ResourceSelectModule {
147
147
  ProjectPageComponent,
148
148
  ProjectSelectorComponent,
149
149
  ClusterSelectorComponent,
150
- ServiceMeshGroupSelectorComponent] }); })();
150
+ ServiceMeshGroupSelectorComponent,
151
+ ProjectListComponent,
152
+ ClusterListComponent,
153
+ NamespaceListComponent,
154
+ ResourceIconComponent] }); })();
151
155
  i0.ɵɵsetComponentScope(ResourceDashboardComponent, [i1.IconComponent], [i2.AsyncPipe, i3.RelativeTimePipe, i4.TranslatePipe]);
152
- i0.ɵɵsetComponentScope(ResourceIconComponent, [i1.IconComponent], [i5.PurePipe]);
153
- i0.ɵɵsetComponentScope(NamespaceListComponent, [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, i6.NgControlStatus, i6.NgModel, i7.E2eAttributeBindingDirective, i1.FormItemComponent, i1.FormItemLabelDirective, i1.FormItemControlDirective, i1.SelectComponent, i1.OptionComponent, i1.OptionPlaceholderComponent, i1.TooltipDirective, i8.DeclareDirective, ResourceDataGridComponent,
154
- ResourceGridHeaderDirective], [i2.AsyncPipe, i5.PurePipe, i9.K8sNamePipe, i9.K8sUnionDisplayNamePipe, i4.TranslatePipe]);
155
- i0.ɵɵsetComponentScope(ResourceNoDataComponent, [i2.NgIf, i7.E2eAttributeBindingDirective], [i10.ImgThemePipe, i4.TranslatePipe]);
156
+ i0.ɵɵsetComponentScope(ResourceNoDataComponent, [i2.NgIf, i5.E2eAttributeBindingDirective], [i6.ImgThemePipe, i4.TranslatePipe]);
157
+ i0.ɵɵsetComponentScope(ResourceDataGridComponent, [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, i5.E2eAttributeBindingDirective, i1.IconComponent, i1.SearchComponent, i1.TagComponent, i1.TooltipDirective, i7.ZeroStateComponent, i8.LoadingMaskComponent, ResourceNoDataComponent, ResourceIconComponent], [i2.AsyncPipe, i3.RelativeTimePipe, i9.PurePipe, i4.TranslatePipe]);
158
+ i0.ɵɵsetComponentScope(ServiceMeshGroupListComponent, [ResourceDataGridComponent], []);
159
+ i0.ɵɵsetComponentScope(NamespacePageComponent, [ResourceDashboardComponent, NamespaceListComponent], []);
160
+ i0.ɵɵsetComponentScope(NamespaceSelectorComponent, [i2.NgClass, i2.NgIf, i5.E2eAttributeBindingDirective, i1.IconComponent, NamespaceListComponent], [i4.TranslatePipe]);
161
+ i0.ɵɵsetComponentScope(ProjectPageComponent, [ResourceDashboardComponent, ProjectListComponent], []);
162
+ i0.ɵɵsetComponentScope(ProjectSelectorComponent, [i2.NgClass, i2.NgIf, i5.E2eAttributeBindingDirective, i1.IconComponent, ProjectListComponent], [i4.TranslatePipe]);
163
+ i0.ɵɵsetComponentScope(ClusterSelectorComponent, [i2.NgClass, i2.NgIf, i5.E2eAttributeBindingDirective, i1.IconComponent, ClusterListComponent], [i4.TranslatePipe]);
164
+ i0.ɵɵsetComponentScope(ServiceMeshGroupSelectorComponent, [i2.NgClass, i5.E2eAttributeBindingDirective, i1.IconComponent, ServiceMeshGroupListComponent], [i10.FieldNotAvailablePipe, i4.TranslatePipe]);
156
165
  i0.ɵɵsetComponentScope(ProjectListComponent, [ResourceDataGridComponent], []);
157
- i0.ɵɵsetComponentScope(ResourceDataGridComponent, [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, i7.E2eAttributeBindingDirective, i1.IconComponent, i1.SearchComponent, i1.TagComponent, i1.TooltipDirective, i11.ZeroStateComponent, i12.LoadingMaskComponent, ResourceIconComponent,
158
- ResourceNoDataComponent], [i2.AsyncPipe, i3.RelativeTimePipe, i5.PurePipe, i4.TranslatePipe]);
159
166
  i0.ɵɵsetComponentScope(ClusterListComponent, [ResourceDataGridComponent], []);
160
- i0.ɵɵsetComponentScope(ServiceMeshGroupListComponent, [ResourceDataGridComponent], []);
161
- i0.ɵɵsetComponentScope(NamespacePageComponent, [ResourceDashboardComponent,
162
- NamespaceListComponent], []);
163
- i0.ɵɵsetComponentScope(NamespaceSelectorComponent, [i2.NgClass, i2.NgIf, i7.E2eAttributeBindingDirective, i1.IconComponent, NamespaceListComponent], [i4.TranslatePipe]);
164
- i0.ɵɵsetComponentScope(ProjectPageComponent, [ResourceDashboardComponent,
165
- ProjectListComponent], []);
166
- i0.ɵɵsetComponentScope(ProjectSelectorComponent, [i2.NgClass, i2.NgIf, i7.E2eAttributeBindingDirective, i1.IconComponent, ProjectListComponent], [i4.TranslatePipe]);
167
- i0.ɵɵsetComponentScope(ClusterSelectorComponent, [i2.NgClass, i2.NgIf, i7.E2eAttributeBindingDirective, i1.IconComponent, ClusterListComponent], [i4.TranslatePipe]);
168
- i0.ɵɵsetComponentScope(ServiceMeshGroupSelectorComponent, [i2.NgClass, i7.E2eAttributeBindingDirective, i1.IconComponent, ServiceMeshGroupListComponent], [i13.FieldNotAvailablePipe, i4.TranslatePipe]);
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2J1c2luZXNzL3Jlc291cmNlLXNlbGVjdC9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixZQUFZLEVBQ1osY0FBYyxFQUNkLFVBQVUsRUFDVixVQUFVLEVBQ1YsV0FBVyxFQUNYLGFBQWEsRUFDYixZQUFZLEVBQ1osU0FBUyxFQUNULGFBQWEsR0FDZCxNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM1RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FB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QUNkLFlBQVk7UUFDWixhQUFhO1FBQ2IscUJBQXFCO1FBQ3JCLGFBQWE7UUFDYixZQUFZO1FBQ1osWUFBWTtRQUNaLGdCQUFnQixhQTVCbEIsc0JBQXNCO1FBQ3RCLDBCQUEwQjtRQUMxQixvQkFBb0I7UUFDcEIsd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QixpQ0FBaUM7dUJBMEIvQiwwQkFBMEI7dUJBQzFCLHFCQUFxQjt1QkFDckIsc0JBQXNCLHlUQUl0Qix5QkFBeUI7SUFFekIsMkJBQTJCO3VCQUwzQix1QkFBdUI7dUJBRXZCLG9CQUFvQixHQUNwQix5QkFBeUI7dUJBQXpCLHlCQUF5Qix3TkFMekIscUJBQXFCO0lBRXJCLHVCQUF1Qjt1QkFJdkIsb0JBQW9CLEdBRHBCLHlCQUF5Qjt1QkFHekIsNkJBQTZCLEdBSDdCLHlCQUF5Qjt1QkFyQzNCLHNCQUFzQixHQStCcEIsMEJBQTBCO0lBRTFCLHNCQUFzQjt1QkFoQ3hCLDBCQUEwQiwyRUFnQ3hCLHNCQUFzQjt1QkEvQnhCLG9CQUFvQixHQTZCbEIsMEJBQTBCO0lBSzFCLG9CQUFvQjt1QkFqQ3RCLHdCQUF3QiwyRUFpQ3RCLG9CQUFvQjt1QkFoQ3RCLHdCQUF3QiwyRUFrQ3RCLG9CQUFvQjt1QkFqQ3RCLGlDQUFpQyxrRUFtQy9CLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJ1dHRvbk1vZHVsZSxcbiAgRGlhbG9nTW9kdWxlLFxuICBEcm9wZG93bk1vZHVsZSxcbiAgRm9ybU1vZHVsZSxcbiAgSWNvbk1vZHVsZSxcbiAgSW5wdXRNb2R1bGUsXG4gIE1lc3NhZ2VNb2R1bGUsXG4gIFNlbGVjdE1vZHVsZSxcbiAgVGFnTW9kdWxlLFxuICBUb29sdGlwTW9kdWxlLFxufSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IENvcmVNb2R1bGUsIERlY2xhcmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgSzhTUmVzb3VyY2VMaXN0TW9kdWxlIH0gZnJvbSAnLi4vLi4vazhzLXJlc291cmNlLWxpc3QvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICcuLi8uLi90cmFuc2xhdGUvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBXaWRnZXRNb2R1bGUgfSBmcm9tICcuLi8uLi93aWRnZXQvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IENsdXN0ZXJTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vZXhwb3J0cy9jbHVzdGVyLXNlbGVjdG9yL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBTZXJ2aWNlTWVzaEdyb3VwU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuL2V4cG9ydHMvbWVzaC1ncm91cC1zZWxlY3Rvci9jb21wb25lbnQnO1xuaW1wb3J0IHsgTmFtZXNwYWNlUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZXhwb3J0cy9uYW1lc3BhY2UtcGFnZS9jb21wb25lbnQnO1xuaW1wb3J0IHsgTmFtZXNwYWNlU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuL2V4cG9ydHMvbmFtZXNwYWNlLXNlbGVjdG9yL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9qZWN0UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZXhwb3J0cy9wcm9qZWN0LXBhZ2UvY29tcG9uZW50JztcbmltcG9ydCB7IFByb2plY3RTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vZXhwb3J0cy9wcm9qZWN0LXNlbGVjdG9yL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXNvdXJjZUdyaWRIZWFkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2hlbHBlcnMuZGlyZWN0aXZlJztcbmltcG9ydCB7IENsdXN0ZXJMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcm5hbHMvY2x1c3Rlci1saXN0L2NvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXNvdXJjZURhdGFHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcm5hbHMvZGF0YS1ncmlkL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXNvdXJjZUljb25Db21wb25lbnQgfSBmcm9tICcuL2ludGVybmFscy9pY29uL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBTZXJ2aWNlTWVzaEdyb3VwTGlzdENvbXBvbmVudCB9IGZyb20gJy4vaW50ZXJuYWxzL21lc2hncm91cC1saXN0L2NvbXBvbmVudCc7XG5pbXBvcnQgeyBOYW1lc3BhY2VMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcm5hbHMvbmFtZXNwYWNlLWxpc3QvY29tcG9uZW50JztcbmltcG9ydCB7IFJlc291cmNlTm9EYXRhQ29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcm5hbHMvbm8tZGF0YS9jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvamVjdExpc3RDb21wb25lbnQgfSBmcm9tICcuL2ludGVybmFscy9wcm9qZWN0LWxpc3QvY29tcG9uZW50JztcbmltcG9ydCB7IFJlc291cmNlRGFzaGJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcm5hbHMvcmVzb3VyY2UtZGFzaGJvYXJkL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXNvdXJjZVNlbGVjdG9yUG9wdXBDb21wb25lbnQgfSBmcm9tICcuL2ludGVybmFscy9zZWxlY3Rvci1wb3B1cC9jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzb3VyY2VTZWxlY3RvclBvcHVwU2VydmljZSB9IGZyb20gJy4vaW50ZXJuYWxzL3NlbGVjdG9yLXBvcHVwL3NlcnZpY2UnO1xuXG5jb25zdCBFWFBPUlRTID0gW1xuICBOYW1lc3BhY2VQYWdlQ29tcG9uZW50LFxuICBOYW1lc3BhY2VTZWxlY3RvckNvbXBvbmVudCxcbiAgUHJvamVjdFBhZ2VDb21wb25lbnQsXG4gIFByb2plY3RTZWxlY3RvckNvbXBvbmVudCxcbiAgQ2x1c3RlclNlbGVjdG9yQ29tcG9uZW50LFxuICBTZXJ2aWNlTWVzaEdyb3VwU2VsZWN0b3JDb21wb25lbnQsXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIENvcmVNb2R1bGUsXG4gICAgRGlhbG9nTW9kdWxlLFxuICAgIE1lc3NhZ2VNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIEljb25Nb2R1bGUsXG4gICAgRm9ybU1vZHVsZSxcbiAgICBTZWxlY3RNb2R1bGUsXG4gICAgSW5wdXRNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgVGFnTW9kdWxlLFxuICAgIERyb3Bkb3duTW9kdWxlLFxuICAgIFBvcnRhbE1vZHVsZSxcbiAgICBPdmVybGF5TW9kdWxlLFxuICAgIEs4U1Jlc291cmNlTGlzdE1vZHVsZSxcbiAgICBUb29sdGlwTW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBXaWRnZXRNb2R1bGUsXG4gICAgRGVjbGFyZURpcmVjdGl2ZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUmVzb3VyY2VEYXNoYm9hcmRDb21wb25lbnQsXG4gICAgUmVzb3VyY2VJY29uQ29tcG9uZW50LFxuICAgIE5hbWVzcGFjZUxpc3RDb21wb25lbnQsXG4gICAgUmVzb3VyY2VOb0RhdGFDb21wb25lbnQsXG4gICAgUmVzb3VyY2VTZWxlY3RvclBvcHVwQ29tcG9uZW50LFxuICAgIFByb2plY3RMaXN0Q29tcG9uZW50LFxuICAgIFJlc291cmNlRGF0YUdyaWRDb21wb25lbnQsXG4gICAgQ2x1c3Rlckxpc3RDb21wb25lbnQsXG4gICAgUmVzb3VyY2VHcmlkSGVhZGVyRGlyZWN0aXZlLFxuICAgIFNlcnZpY2VNZXNoR3JvdXBMaXN0Q29tcG9uZW50LFxuICAgIC4uLkVYUE9SVFMsXG4gIF0sXG4gIGV4cG9ydHM6IFsuLi5FWFBPUlRTXSxcbiAgcHJvdmlkZXJzOiBbUmVzb3VyY2VTZWxlY3RvclBvcHVwU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFJlc291cmNlU2VsZWN0TW9kdWxlIHt9XG4iXX0=
167
+ i0.ɵɵsetComponentScope(NamespaceListComponent, [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, i11.NgControlStatus, i11.NgModel, i5.E2eAttributeBindingDirective, i1.FormItemComponent, i1.FormItemLabelDirective, i1.FormItemControlDirective, i1.SelectComponent, i1.OptionComponent, i1.OptionPlaceholderComponent, i1.TooltipDirective, i12.DeclareDirective, ResourceDataGridComponent,
168
+ ResourceGridHeaderDirective], [i2.AsyncPipe, i9.PurePipe, i13.K8sNamePipe, i13.K8sUnionDisplayNamePipe, i4.TranslatePipe]);
169
+ i0.ɵɵsetComponentScope(ResourceIconComponent, [i1.IconComponent], [i9.PurePipe]);
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2J1c2luZXNzL3Jlc291cmNlLXNlbGVjdC9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixZQUFZLEVBQ1osY0FBYyxFQUNkLFVBQVUsRUFDVixVQUFVLEVBQ1YsV0FBVyxFQUNYLGFBQWEsRUFDYixZQUFZLEVBQ1osU0FBUyxFQUNULGFBQWEsR0FDZCxNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM1RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FB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QUFZO1FBQ1osYUFBYTtRQUNiLHFCQUFxQjtRQUNyQixhQUFhO1FBQ2IsWUFBWTtRQUNaLFlBQVk7UUFDWixnQkFBZ0IsYUFoQ2xCLHNCQUFzQjtRQUN0QiwwQkFBMEI7UUFDMUIsb0JBQW9CO1FBQ3BCLHdCQUF3QjtRQUN4Qix3QkFBd0I7UUFDeEIsaUNBQWlDO1FBQ2pDLG9CQUFvQjtRQUNwQixvQkFBb0I7UUFDcEIsc0JBQXNCO1FBQ3RCLHFCQUFxQjt1QkEwQm5CLDBCQUEwQjt1QkFDMUIsdUJBQXVCO3VCQUV2Qix5QkFBeUIsc05BRnpCLHVCQUF1QixFQTNCekIscUJBQXFCO3VCQStCbkIsNkJBQTZCLEdBRjdCLHlCQUF5Qjt1QkF0QzNCLHNCQUFzQixHQW1DcEIsMEJBQTBCLEVBM0I1QixzQkFBc0I7dUJBUHRCLDBCQUEwQiwyRUFPMUIsc0JBQXNCO3VCQU50QixvQkFBb0IsR0FpQ2xCLDBCQUEwQixFQTdCNUIsb0JBQW9CO3VCQUhwQix3QkFBd0IsMkVBR3hCLG9CQUFvQjt1QkFGcEIsd0JBQXdCLDJFQUd4QixvQkFBb0I7dUJBRnBCLGlDQUFpQyxrRUFtQy9CLDZCQUE2Qjt1QkFsQy9CLG9CQUFvQixHQWdDbEIseUJBQXlCO3VCQS9CM0Isb0JBQW9CLEdBK0JsQix5QkFBeUI7dUJBOUIzQixzQkFBc0IsNFRBOEJwQix5QkFBeUI7SUFDekIsMkJBQTJCO3VCQTlCN0IscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQnV0dG9uTW9kdWxlLFxuICBEaWFsb2dNb2R1bGUsXG4gIERyb3Bkb3duTW9kdWxlLFxuICBGb3JtTW9kdWxlLFxuICBJY29uTW9kdWxlLFxuICBJbnB1dE1vZHVsZSxcbiAgTWVzc2FnZU1vZHVsZSxcbiAgU2VsZWN0TW9kdWxlLFxuICBUYWdNb2R1bGUsXG4gIFRvb2x0aXBNb2R1bGUsXG59IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgQ29yZU1vZHVsZSwgRGVjbGFyZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2NvcmUvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBLOFNSZXNvdXJjZUxpc3RNb2R1bGUgfSBmcm9tICcuLi8uLi9rOHMtcmVzb3VyY2UtbGlzdC9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJy4uLy4uL3RyYW5zbGF0ZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFdpZGdldE1vZHVsZSB9IGZyb20gJy4uLy4uL3dpZGdldC9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHsgQ2x1c3Rlckxpc3RDb21wb25lbnQgfSBmcm9tICcuL2V4cG9ydHMvY2x1c3Rlci1saXN0L2NvbXBvbmVudCc7XG5pbXBvcnQgeyBDbHVzdGVyU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuL2V4cG9ydHMvY2x1c3Rlci1zZWxlY3Rvci9jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzb3VyY2VJY29uQ29tcG9uZW50IH0gZnJvbSAnLi9leHBvcnRzL2ljb24vY29tcG9uZW50JztcbmltcG9ydCB7IFNlcnZpY2VNZXNoR3JvdXBTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vZXhwb3J0cy9tZXNoLWdyb3VwLXNlbGVjdG9yL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBOYW1lc3BhY2VMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9leHBvcnRzL25hbWVzcGFjZS1saXN0L2NvbXBvbmVudCc7XG5pbXBvcnQgeyBOYW1lc3BhY2VQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9leHBvcnRzL25hbWVzcGFjZS1wYWdlL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBOYW1lc3BhY2VTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vZXhwb3J0cy9uYW1lc3BhY2Utc2VsZWN0b3IvY29tcG9uZW50JztcbmltcG9ydCB7IFByb2plY3RMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9leHBvcnRzL3Byb2plY3QtbGlzdC9jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvamVjdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2V4cG9ydHMvcHJvamVjdC1wYWdlL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9qZWN0U2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuL2V4cG9ydHMvcHJvamVjdC1zZWxlY3Rvci9jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzb3VyY2VHcmlkSGVhZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9oZWxwZXJzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSZXNvdXJjZURhdGFHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcm5hbHMvZGF0YS1ncmlkL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBTZXJ2aWNlTWVzaEdyb3VwTGlzdENvbXBvbmVudCB9IGZyb20gJy4vaW50ZXJuYWxzL21lc2hncm91cC1saXN0L2NvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXNvdXJjZU5vRGF0YUNvbXBvbmVudCB9IGZyb20gJy4vaW50ZXJuYWxzL25vLWRhdGEvY29tcG9uZW50JztcbmltcG9ydCB7IFJlc291cmNlRGFzaGJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcm5hbHMvcmVzb3VyY2UtZGFzaGJvYXJkL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXNvdXJjZVNlbGVjdG9yUG9wdXBDb21wb25lbnQgfSBmcm9tICcuL2ludGVybmFscy9zZWxlY3Rvci1wb3B1cC9jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzb3VyY2VTZWxlY3RvclBvcHVwU2VydmljZSB9IGZyb20gJy4vaW50ZXJuYWxzL3NlbGVjdG9yLXBvcHVwL3NlcnZpY2UnO1xuXG5jb25zdCBFWFBPUlRTID0gW1xuICBOYW1lc3BhY2VQYWdlQ29tcG9uZW50LFxuICBOYW1lc3BhY2VTZWxlY3RvckNvbXBvbmVudCxcbiAgUHJvamVjdFBhZ2VDb21wb25lbnQsXG4gIFByb2plY3RTZWxlY3RvckNvbXBvbmVudCxcbiAgQ2x1c3RlclNlbGVjdG9yQ29tcG9uZW50LFxuICBTZXJ2aWNlTWVzaEdyb3VwU2VsZWN0b3JDb21wb25lbnQsXG4gIFByb2plY3RMaXN0Q29tcG9uZW50LFxuICBDbHVzdGVyTGlzdENvbXBvbmVudCxcbiAgTmFtZXNwYWNlTGlzdENvbXBvbmVudCxcbiAgUmVzb3VyY2VJY29uQ29tcG9uZW50LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDb3JlTW9kdWxlLFxuICAgIERpYWxvZ01vZHVsZSxcbiAgICBNZXNzYWdlTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBJY29uTW9kdWxlLFxuICAgIEZvcm1Nb2R1bGUsXG4gICAgU2VsZWN0TW9kdWxlLFxuICAgIElucHV0TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFRhZ01vZHVsZSxcbiAgICBEcm9wZG93bk1vZHVsZSxcbiAgICBQb3J0YWxNb2R1bGUsXG4gICAgT3ZlcmxheU1vZHVsZSxcbiAgICBLOFNSZXNvdXJjZUxpc3RNb2R1bGUsXG4gICAgVG9vbHRpcE1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgV2lkZ2V0TW9kdWxlLFxuICAgIERlY2xhcmVEaXJlY3RpdmUsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFJlc291cmNlRGFzaGJvYXJkQ29tcG9uZW50LFxuICAgIFJlc291cmNlTm9EYXRhQ29tcG9uZW50LFxuICAgIFJlc291cmNlU2VsZWN0b3JQb3B1cENvbXBvbmVudCxcbiAgICBSZXNvdXJjZURhdGFHcmlkQ29tcG9uZW50LFxuICAgIFJlc291cmNlR3JpZEhlYWRlckRpcmVjdGl2ZSxcbiAgICBTZXJ2aWNlTWVzaEdyb3VwTGlzdENvbXBvbmVudCxcbiAgICAuLi5FWFBPUlRTLFxuICBdLFxuICBleHBvcnRzOiBbLi4uRVhQT1JUU10sXG4gIHByb3ZpZGVyczogW1Jlc291cmNlU2VsZWN0b3JQb3B1cFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBSZXNvdXJjZVNlbGVjdE1vZHVsZSB7fVxuIl19
@@ -9,9 +9,13 @@ export * from './exports/namespace-selector/component';
9
9
  export * from './exports/project-page/component';
10
10
  export * from './exports/project-selector/component';
11
11
  export * from './exports/mesh-group-selector/component';
12
+ export * from './exports/icon/component';
13
+ export * from './exports/cluster-list/component';
14
+ export * from './exports/project-list/component';
15
+ export * from './exports/namespace-list/component';
12
16
  export * from './helpers.directive';
13
17
  export * from './module';
14
18
  export { ConfigurableField } from './types';
15
19
  export * from './utils';
16
20
  export { ProjectService } from './project.service';
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9idXNpbmVzcy9yZXNvdXJjZS1zZWxlY3QvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixPQUFPLEVBQUUsaUJBQWlCLEVBQXFDLE1BQU0sU0FBUyxDQUFDO0FBQy9FLGNBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIGJ1c2luZXNzL3Jlc291cmNlLXNlbGVjdFxuICogQHByZWZlcnJlZFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vZXhwb3J0cy9jbHVzdGVyLXNlbGVjdG9yL2NvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2V4cG9ydHMvbmFtZXNwYWNlLXBhZ2UvY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZXhwb3J0cy9uYW1lc3BhY2Utc2VsZWN0b3IvY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZXhwb3J0cy9wcm9qZWN0LXBhZ2UvY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZXhwb3J0cy9wcm9qZWN0LXNlbGVjdG9yL2NvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2V4cG9ydHMvbWVzaC1ncm91cC1zZWxlY3Rvci9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL21vZHVsZSc7XG5leHBvcnQgeyBDb25maWd1cmFibGVGaWVsZCwgRGlzYWJsZUZuLCBTZWxlY3RlZE5hbWVzcGFjZVZhbHVlIH0gZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IHsgUHJvamVjdFNlcnZpY2UgfSBmcm9tICcuL3Byb2plY3Quc2VydmljZSc7XG4iXX0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9idXNpbmVzcy9yZXNvdXJjZS1zZWxlY3QvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLE9BQU8sRUFBRSxpQkFBaUIsRUFBcUMsTUFBTSxTQUFTLENBQUM7QUFDL0UsY0FBYyxTQUFTLENBQUM7QUFFeEIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYnVzaW5lc3MvcmVzb3VyY2Utc2VsZWN0XG4gKiBAcHJlZmVycmVkXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9leHBvcnRzL2NsdXN0ZXItc2VsZWN0b3IvY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZXhwb3J0cy9uYW1lc3BhY2UtcGFnZS9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9leHBvcnRzL25hbWVzcGFjZS1zZWxlY3Rvci9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9leHBvcnRzL3Byb2plY3QtcGFnZS9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9leHBvcnRzL3Byb2plY3Qtc2VsZWN0b3IvY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZXhwb3J0cy9tZXNoLWdyb3VwLXNlbGVjdG9yL2NvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2V4cG9ydHMvaWNvbi9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9leHBvcnRzL2NsdXN0ZXItbGlzdC9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9leHBvcnRzL3Byb2plY3QtbGlzdC9jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9leHBvcnRzL25hbWVzcGFjZS1saXN0L2NvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2hlbHBlcnMuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kdWxlJztcbmV4cG9ydCB7IENvbmZpZ3VyYWJsZUZpZWxkLCBEaXNhYmxlRm4sIFNlbGVjdGVkTmFtZXNwYWNlVmFsdWUgfSBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgeyBQcm9qZWN0U2VydmljZSB9IGZyb20gJy4vcHJvamVjdC5zZXJ2aWNlJztcbiJdfQ==
@@ -6,7 +6,7 @@ import { DialogService, MessageService } from '@alauda/ui';
6
6
  import { Injectable, Injector } from '@angular/core';
7
7
  import { get } from 'lodash-es';
8
8
  import { from, throwError, of, catchError, switchMap, tap, } from 'rxjs';
9
- import { K8sApiService } from '../../api/public-api';
9
+ import { K8sApiService, } from '../../api/public-api';
10
10
  import { TranslateService } from '../../translate/public-api';
11
11
  import { SPACE, TOKEN_BASE_DOMAIN } from '../constants/public-api';
12
12
  import { catchPromise, skipError, ifExist, wrapText, } from '../utils/public-api';
@@ -28,7 +28,7 @@ export class K8sUtilService {
28
28
  this.injector = injector;
29
29
  this.dialog = injector.get(DialogService);
30
30
  this.message = injector.get(MessageService);
31
- this.k8sApi = injector.get(K8sApiService);
31
+ this.k8sApi = injector.get((K8sApiService));
32
32
  this.translate = injector.get(TranslateService);
33
33
  this.baseDomain = injector.get(TOKEN_BASE_DOMAIN);
34
34
  }
@@ -52,24 +52,27 @@ export class K8sUtilService {
52
52
  : this.k8sApi.deleteGlobalResource(params)).pipe(tap(() => this.message.success(this.translate.get('delete_success'))), skipError()),
53
53
  }));
54
54
  }
55
- updateResource({ type, cluster, resource, silent, }) {
55
+ updateResource({ type, definition, cluster, resource, silent, }) {
56
56
  const put = (res) => this.k8sApi.putResource({
57
57
  type,
58
+ definition,
58
59
  cluster,
59
60
  resource: res,
60
61
  notifyOnError: !silent,
61
62
  });
62
63
  const get = () => this.k8sApi.getResource({
63
64
  type,
65
+ definition,
64
66
  cluster,
65
67
  namespace: resource.metadata.namespace,
66
68
  name: resource.metadata.name,
67
69
  });
68
70
  return this.retryUpdate(put, get, resource, silent);
69
71
  }
70
- updateGlobalResource({ type, namespaced, resource, namespace, silent, }) {
72
+ updateGlobalResource({ type, definition, namespaced, resource, namespace, silent, }) {
71
73
  const put = (res) => this.k8sApi.putGlobalResource({
72
74
  type,
75
+ definition,
73
76
  namespaced,
74
77
  resource: res,
75
78
  namespace,
@@ -77,6 +80,7 @@ export class K8sUtilService {
77
80
  });
78
81
  const get = () => this.k8sApi.getGlobalResource({
79
82
  type,
83
+ definition,
80
84
  namespaced,
81
85
  name: resource.metadata.name,
82
86
  namespace,
@@ -163,4 +167,4 @@ export class K8sUtilService {
163
167
  providedIn: 'root',
164
168
  }]
165
169
  }], () => [{ type: i0.Injector }], null); })();
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLXV0aWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jb3JlL3NlcnZpY2VzL2s4cy11dGlsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNoQyxPQUFPLEVBRUwsSUFBSSxFQUNKLFVBQVUsRUFDVixFQUFFLEVBQ0YsVUFBVSxFQUNWLFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQUUsYUFBYSxFQUF3QixNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRSxPQUFPLEVBQ0wsWUFBWSxFQUNaLFNBQVMsRUFDVCxPQUFPLEVBQ1AsUUFBUSxHQUNULE1BQU0scUJBQXFCLENBQUM7O0FBRTdCLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUM7QUFDbkMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQztBQUNyQyxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDO0FBQzNCLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLG1CQUFtQixDQUFDO0FBQ3RELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxhQUFhLENBQUM7QUFDekMsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQztBQUMvQixNQUFNLENBQUMsTUFBTSxZQUFZ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QixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQ3JFLENBQ0YsQ0FBQztJQUNKLENBQUM7K0VBdFFVLGNBQWM7dUVBQWQsY0FBYyxXQUFkLGNBQWMsbUJBRmIsTUFBTTs7aUZBRVAsY0FBYztjQUgxQixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSB1dGlsc1xuICovXG5cbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7XG4gIE9ic2VydmFibGUsXG4gIGZyb20sXG4gIHRocm93RXJyb3IsXG4gIG9mLFxuICBjYXRjaEVycm9yLFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEs4c0FwaVNlcnZpY2UsIFJlc291cmNlRGVsZXRlUGFyYW1zIH0gZnJvbSAnLi4vLi4vYXBpL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL3RyYW5zbGF0ZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFNQQUNFLCBUT0tFTl9CQVNFX0RPTUFJTiB9IGZyb20gJy4uL2NvbnN0YW50cy9wdWJsaWMtYXBpJztcbmltcG9ydCB7IEt1YmVybmV0ZXNSZXNvdXJjZSwgU3RhdHVzIH0gZnJvbSAnLi4vdHlwZXMvcHVibGljLWFwaSc7XG5pbXBvcnQge1xuICBjYXRjaFByb21pc2UsXG4gIHNraXBFcnJvcixcbiAgaWZFeGlzdCxcbiAgd3JhcFRleHQsXG59IGZyb20gJy4uL3V0aWxzL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgY29uc3QgTUVUQURBVEEgPSAnbWV0YWRhdGEnO1xuZXhwb3J0IGNvbnN0IE5BTUVTUEFDRSA9ICduYW1lc3BhY2UnO1xuZXhwb3J0IGNvbnN0IE5BTUUgPSAnbmFtZSc7XG5leHBvcnQgY29uc3QgQ1JFQVRJT05fVElNRVNUQU1QID0gJ2NyZWF0aW9uVGltZXN0YW1wJztcbmV4cG9ydCBjb25zdCBBTk5PVEFUSU9OUyA9ICdhbm5vdGF0aW9ucyc7XG5leHBvcnQgY29uc3QgTEFCRUxTID0gJ2xhYmVscyc7XG5leHBvcnQgY29uc3QgRElTUExBWV9OQU1FID0gJ2Rpc3BsYXktbmFtZSc7XG5leHBvcnQgY29uc3QgREVTQ1JJUFRJT04gPSAnZGVzY3JpcHRpb24nO1xuZXhwb3J0IGNvbnN0IENSRUFUT1IgPSAnY3JlYXRvcic7XG5leHBvcnQgY29uc3QgVVBEQVRFRF9fQVQgPSAndXBkYXRlZC1hdCc7XG5leHBvcnQgY29uc3QgUFJPSkVDVCA9ICdwcm9qZWN0JztcbmV4cG9ydCBjb25zdCBDTFVTVEVSID0gJ2NsdXN0ZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VOb3JtYWxpemVUeXBlUGFyYW1zIHtcbiAgdHlwZTogc3RyaW5nO1xuICBiYXNlRG9tYWluOiBzdHJpbmc7XG4gIHByZWZpeD86IHN0cmluZztcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEs4c1V0aWxTZXJ2aWNlPFIgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+IHtcbiAgcHJvdGVjdGVkIGRpYWxvZzogRGlhbG9nU2VydmljZTtcbiAgcHJvdGVjdGVkIG1lc3NhZ2U6IE1lc3NhZ2VTZXJ2aWNlO1xuICBwcm90ZWN0ZWQgazhzQXBpOiBLOHNBcGlTZXJ2aWNlPFI+O1xuICBwcm90ZWN0ZWQgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlO1xuICBwcm90ZWN0ZWQgYmFzZURvbWFpbjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLmRpYWxvZyA9IGluamVjdG9yLmdldChEaWFsb2dTZXJ2aWNlIGFzIFR5cGU8RGlhbG9nU2VydmljZT4pO1xuICAgIHRoaXMubWVzc2FnZSA9IGluamVjdG9yLmdldChNZXNzYWdlU2VydmljZSBhcyBUeXBlPE1lc3NhZ2VTZXJ2aWNlPik7XG4gICAgdGhpcy5rOHNBcGkgPSBpbmplY3Rvci5nZXQoSzhzQXBpU2VydmljZSBhcyBUeXBlPEs4c0FwaVNlcnZpY2U+KTtcbiAgICB0aGlzLnRyYW5zbGF0ZSA9IGluamVjdG9yLmdldChUcmFuc2xhdGVTZXJ2aWNlIGFzIFR5cGU8VHJhbnNsYXRlU2VydmljZT4pO1xuICAgIHRoaXMuYmFzZURvbWFpbiA9IGluamVjdG9yLmdldChUT0tFTl9CQVNFX0RPTUFJTik7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHR5cGUgLSDlr7nlupTotYTmupDnmoTnv7vor5Ega2V5XG4gICAqL1xuICBkZWxldGVSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICBwYXJhbXM6IFJlc291cmNlRGVsZXRlUGFyYW1zPFIsIFQ+LFxuICAgIHR5cGVPck9wdGlvbnM6IHN0cmluZyB8IHsgdHlwZTogc3RyaW5nOyBjb250ZW50OiBzdHJpbmcgfSxcbiAgKSB7XG4gICAgY29uc3QgeyB0eXBlLCBjb250ZW50IH0gPVxuICAgICAgdHlwZW9mIHR5cGVPck9wdGlvbnMgPT09ICdzdHJpbmcnXG4gICAgICAgID8geyB0eXBlOiB0eXBlT3JPcHRpb25zLCBjb250ZW50OiBudWxsIH1cbiAgICAgICAgOiB0eXBlT3JPcHRpb25zO1xuICAgIHJldHVybiBjYXRjaFByb21pc2UoXG4gICAgICB0aGlzLmRpYWxvZy5jb25maXJtKHtcbiAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmdldCgnY29uZmlybV9kZWxldGVfcmVzb3VyY2UnLCB7XG4gICAgICAgICAgdHlwZTogdGhpcy50cmFuc2xhdGUuZ2V0KHR5cGUpLFxuICAgICAgICAgIG5hbWU6ICduYW1lJyBpbiBwYXJhbXMgPyBwYXJhbXMubmFtZSA6IHRoaXMuZ2V0TmFtZShwYXJhbXMucmVzb3VyY2UpLFxuICAgICAgICB9KSxcbiAgICAgICAgY29udGVudCxcbiAgICAgICAgY29uZmlybVRleHQ6IHRoaXMudHJhbnNsYXRlLmdldCgnZGVsZXRlJyksXG4gICAgICAgIGNhbmNlbFRleHQ6IHRoaXMudHJhbnNsYXRlLmdldCgnY2FuY2VsJyksXG4gICAgICAgIGJlZm9yZUNvbmZpcm06ICgpID0+XG4gICAgICAgICAgKCdjbHVzdGVyJyBpbiBwYXJhbXNcbiAgICAgICAgICAgID8gdGhpcy5rOHNBcGkuZGVsZXRlUmVzb3VyY2UocGFyYW1zKVxuICAgICAgICAgICAgOiB0aGlzLms4c0FwaS5kZWxldGVHbG9iYWxSZXNvdXJjZShwYXJhbXMpXG4gICAgICAgICAgKS5waXBlKFxuICAgICAgICAgICAgdGFwKCgpID0+XG4gICAgICAgICAgICAgIHRoaXMubWVzc2FnZS5zdWNjZXNzKHRoaXMudHJhbnNsYXRlLmdldCgnZGVsZXRlX3N1Y2Nlc3MnKSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc2tpcEVycm9yKCksXG4gICAgICAgICAgKSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICB1cGRhdGVSZXNvdXJjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPih7XG4gICAgdHlwZSxcbiAgICBjbHVzdGVyLFxuICAgIHJlc291cmNlLFxuICAgIHNpbGVudCxcbiAgfToge1xuICAgIHR5cGU6IFI7XG4gICAgY2x1c3Rlcjogc3RyaW5nO1xuICAgIHJlc291cmNlOiBUO1xuICAgIHNpbGVudD86IGJvb2xlYW47XG4gIH0pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICBjb25zdCBwdXQgPSAocmVzOiBUKSA9PlxuICAgICAgdGhpcy5rOHNBcGkucHV0UmVzb3VyY2Uoe1xuICAgICAgICB0eXBlLFxuICAgICAgICBjbHVzdGVyLFxuICAgICAgICByZXNvdXJjZTogcmVzLFxuICAgICAgICBub3RpZnlPbkVycm9yOiAhc2lsZW50LFxuICAgICAgfSk7XG4gICAgY29uc3QgZ2V0ID0gKCkgPT5cbiAgICAgIHRoaXMuazhzQXBpLmdldFJlc291cmNlPFQ+KHtcbiAgICAgICAgdHlwZSxcbiAgICAgICAgY2x1c3RlcixcbiAgICAgICAgbmFtZXNwYWNlOiByZXNvdXJjZS5tZXRhZGF0YS5uYW1lc3BhY2UsXG4gICAgICAgIG5hbWU6IHJlc291cmNlLm1ldGFkYXRhLm5hbWUsXG4gICAgICB9KTtcblxuICAgIHJldHVybiB0aGlzLnJldHJ5VXBkYXRlKHB1dCwgZ2V0LCByZXNvdXJjZSwgc2lsZW50KTtcbiAgfVxuXG4gIHVwZGF0ZUdsb2JhbFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHtcbiAgICB0eXBlLFxuICAgIG5hbWVzcGFjZWQsXG4gICAgcmVzb3VyY2UsXG4gICAgbmFtZXNwYWNlLFxuICAgIHNpbGVudCxcbiAgfToge1xuICAgIHR5cGU6IFI7XG4gICAgbmFtZXNwYWNlZD86IGJvb2xlYW47XG4gICAgcmVzb3VyY2U6IFQ7XG4gICAgbmFtZXNwYWNlPzogc3RyaW5nO1xuICAgIHNpbGVudD86IGJvb2xlYW47XG4gIH0pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICBjb25zdCBwdXQgPSAocmVzOiBUKSA9PlxuICAgICAgdGhpcy5rOHNBcGkucHV0R2xvYmFsUmVzb3VyY2Uoe1xuICAgICAgICB0eXBlLFxuICAgICAgICBuYW1lc3BhY2VkLFxuICAgICAgICByZXNvdXJjZTogcmVzLFxuICAgICAgICBuYW1lc3BhY2UsXG4gICAgICAgIG5vdGlmeU9uRXJyb3I6ICFzaWxlbnQsXG4gICAgICB9KTtcbiAgICBjb25zdCBnZXQgPSAoKSA9PlxuICAgICAgdGhpcy5rOHNBcGkuZ2V0R2xvYmFsUmVzb3VyY2U8VD4oe1xuICAgICAgICB0eXBlLFxuICAgICAgICBuYW1lc3BhY2VkLFxuICAgICAgICBuYW1lOiByZXNvdXJjZS5tZXRhZGF0YS5uYW1lLFxuICAgICAgICBuYW1lc3BhY2UsXG4gICAgICB9KTtcblxuICAgIHJldHVybiB0aGlzLnJldHJ5VXBkYXRlKHB1dCwgZ2V0LCByZXNvdXJjZSwgc2lsZW50KTtcbiAgfVxuXG4gIC8vIHJlZmVyZW5jZTogaHR0cDovL2NvbmZsdWVuY2UuYWxhdWRhdGVjaC5jb20vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0yNzE2Njk0NlxuICBub3JtYWxpemVUeXBlKHR5cGU6IHN0cmluZywgcHJlZml4Pzogc3RyaW5nKTogc3RyaW5nO1xuICBub3JtYWxpemVUeXBlKHBhcmFtczogQmFzZU5vcm1hbGl6ZVR5cGVQYXJhbXMpOiBzdHJpbmc7XG4gIG5vcm1hbGl6ZVR5cGUoXG4gICAgdHlwZU9yUGFyYW1zOiBzdHJpbmcgfCBCYXNlTm9ybWFsaXplVHlwZVBhcmFtcyxcbiAgICBwcmVmaXg/OiBzdHJpbmcsXG4gICk6IHN0cmluZyB7XG4gICAgaWYgKHR5cGVvZiB0eXBlT3JQYXJhbXMgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gYCR7aWZFeGlzdChwcmVmaXgsIHByZWZpeCArICcuJyl9JHtcbiAgICAgICAgdGhpcy5iYXNlRG9tYWluXG4gICAgICB9LyR7dHlwZU9yUGFyYW1zfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGAke2lmRXhpc3QodHlwZU9yUGFyYW1zLnByZWZpeCwgdHlwZU9yUGFyYW1zLnByZWZpeCArICcuJyl9JHtcbiAgICAgIHR5cGVPclBhcmFtcy5iYXNlRG9tYWluXG4gICAgfS8ke3R5cGVPclBhcmFtcy50eXBlfWA7XG4gIH1cblxuICBnZXRBbm5vdGF0aW9uPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHJlc291cmNlOiBULFxuICAgIHR5cGU6IHN0cmluZyxcbiAgICBwcmVmaXg/OiBzdHJpbmcsXG4gICk6IHN0cmluZztcblxuICBnZXRBbm5vdGF0aW9uPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHJlc291cmNlOiBULFxuICAgIHBhcmFtczogQmFzZU5vcm1hbGl6ZVR5cGVQYXJhbXMsXG4gICk6IHN0cmluZztcblxuICBnZXRBbm5vdGF0aW9uPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHJlc291cmNlOiBULFxuICAgIHBhcmFtc09yVHlwZTogc3RyaW5nIHwgQmFzZU5vcm1hbGl6ZVR5cGVQYXJhbXMsXG4gICAgcHJlZml4Pzogc3RyaW5nLFxuICApOiBzdHJpbmcge1xuICAgIHJldHVybiBnZXQocmVzb3VyY2UsIFtcbiAgICAgIE1FVEFEQVRBLFxuICAgICAgQU5OT1RBVElPTlMsXG4gICAgICB0aGlzLm5vcm1hbGl6ZVR5cGUocGFyYW1zT3JUeXBlIGFzIHN0cmluZywgcHJlZml4KSxcbiAgICBdKTtcbiAgfVxuXG4gIGdldE5hbWVzcGFjZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihyZXNvdXJjZTogVCkge1xuICAgIHJldHVybiBnZXQocmVzb3VyY2UsIFtNRVRBREFUQSwgTkFNRVNQQUNFXSk7XG4gIH1cblxuICBnZXROYW1lPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHJlc291cmNlOiBUKSB7XG4gICAgcmV0dXJuIGdldChyZXNvdXJjZSwgW01FVEFEQVRBLCBOQU1FXSk7XG4gIH1cblxuICBnZXRDcmVhdGlvblRpbWVzdGFtcDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihyZXNvdXJjZTogVCkge1xuICAgIHJldHVybiBnZXQocmVzb3VyY2UsIFtNRVRBREFUQSwgQ1JFQVRJT05fVElNRVNUQU1QXSk7XG4gIH1cblxuICBnZXREaXNwbGF5TmFtZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihyZXNvdXJjZTogVCwgcHJlZml4Pzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QW5ub3RhdGlvbihyZXNvdXJjZSwgRElTUExBWV9OQU1FLCBwcmVmaXgpO1xuICB9XG5cbiAgZ2V0VW5pb25EaXNwbGF5TmFtZTxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICByZXNvdXJjZTogVCxcbiAgICBuYW1lUHJlZml4Pzogc3RyaW5nIHwgZmFsc2UsXG4gICAgZGlzcGxheU5hbWVQcmVmaXg/OiBzdHJpbmcsXG4gICkge1xuICAgIGlmICghcmVzb3VyY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgbmFtZSA9XG4gICAgICAobmFtZVByZWZpeCAhPT0gZmFsc2UgJiZcbiAgICAgICAgdGhpcy5nZXRBbm5vdGF0aW9uKHJlc291cmNlLCBOQU1FLCBuYW1lUHJlZml4KSkgfHxcbiAgICAgIHRoaXMuZ2V0TmFtZShyZXNvdXJjZSk7XG4gICAgY29uc3QgZGlzcGxheU5hbWUgPSB0aGlzLmdldERpc3BsYXlOYW1lKHJlc291cmNlLCBkaXNwbGF5TmFtZVByZWZpeCk7XG4gICAgcmV0dXJuIG5hbWUgKyBpZkV4aXN0KGRpc3BsYXlOYW1lLCBTUEFDRSArIHdyYXBUZXh0KGRpc3BsYXlOYW1lKSk7XG4gIH1cblxuICBnZXREZXNjcmlwdGlvbjxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihyZXNvdXJjZTogVCwgcHJlZml4Pzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QW5ub3RhdGlvbihyZXNvdXJjZSwgREVTQ1JJUFRJT04sIHByZWZpeCk7XG4gIH1cblxuICBnZXRDcmVhdG9yPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHJlc291cmNlOiBULCBwcmVmaXg/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbm5vdGF0aW9uKHJlc291cmNlLCBDUkVBVE9SLCBwcmVmaXgpO1xuICB9XG5cbiAgZ2V0VXBkYXRlZEF0PFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHJlc291cmNlOiBULCBwcmVmaXg/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbm5vdGF0aW9uKHJlc291cmNlLCBVUERBVEVEX19BVCwgcHJlZml4KTtcbiAgfVxuXG4gIGdldExhYmVsPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHJlc291cmNlOiBULFxuICAgIHR5cGU6IHN0cmluZyxcbiAgICBwcmVmaXg/OiBzdHJpbmcsXG4gICk6IHN0cmluZztcblxuICBnZXRMYWJlbDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICByZXNvdXJjZTogVCxcbiAgICBwYXJhbXM6IEJhc2VOb3JtYWxpemVUeXBlUGFyYW1zLFxuICApOiBzdHJpbmc7XG5cbiAgZ2V0TGFiZWw8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcmVzb3VyY2U6IFQsXG4gICAgcGFyYW1zT3JUeXBlOiBzdHJpbmcgfCBCYXNlTm9ybWFsaXplVHlwZVBhcmFtcyxcbiAgICBwcmVmaXg/OiBzdHJpbmcsXG4gICk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldChyZXNvdXJjZSwgW1xuICAgICAgTUVUQURBVEEsXG4gICAgICBMQUJFTFMsXG4gICAgICB0aGlzLm5vcm1hbGl6ZVR5cGUocGFyYW1zT3JUeXBlIGFzIHN0cmluZywgcHJlZml4KSxcbiAgICBdKTtcbiAgfVxuXG4gIGdldFByb2plY3Q8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4ocmVzb3VyY2U6IFQpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRMYWJlbChyZXNvdXJjZSwgUFJPSkVDVCk7XG4gIH1cblxuICBwcml2YXRlIHJldHJ5VXBkYXRlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHB1dDogKHJlc291cmNlOiBUKSA9PiBPYnNlcnZhYmxlPFQ+LFxuICAgIGdldDogKCkgPT4gT2JzZXJ2YWJsZTxUPixcbiAgICByZXNvdXJjZTogVCxcbiAgICBzaWxlbnQ/OiBib29sZWFuLFxuICApOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICBjb25zdCB3YWl0VXNlckNvbmZpcm1SZXRyeSA9IChlcnI6IFN0YXR1cykgPT5cbiAgICAgIChzaWxlbnRcbiAgICAgICAgPyBvZihudWxsKVxuICAgICAgICA6IGZyb20oXG4gICAgICAgICAgICB0aGlzLmRpYWxvZy5jb25maXJtKHtcbiAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmdldCgncmVzb3VyY2VfdmVyc2lvbl9jb25mbGljdCcpLFxuICAgICAgICAgICAgICBjb250ZW50OiB0aGlzLnRyYW5zbGF0ZS5nZXQoJ2NvbmZpcm1fcmV0cnlfd2l0aF9sYXRlc3RfdmVyc2lvbicpLFxuICAgICAgICAgICAgICBjb25maXJtVGV4dDogdGhpcy50cmFuc2xhdGUuZ2V0KCdjb25maXJtJyksXG4gICAgICAgICAgICAgIGNhbmNlbFRleHQ6IHRoaXMudHJhbnNsYXRlLmdldCgnY2FuY2VsJyksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApXG4gICAgICApLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PlxuICAgICAgICAgIGdldCgpLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAobmV3UmVzb3VyY2UgPT5cbiAgICAgICAgICAgICAgcHV0KHtcbiAgICAgICAgICAgICAgICAuLi5yZXNvdXJjZSxcbiAgICAgICAgICAgICAgICBtZXRhZGF0YToge1xuICAgICAgICAgICAgICAgICAgLi4ucmVzb3VyY2UubWV0YWRhdGEsXG4gICAgICAgICAgICAgICAgICByZXNvdXJjZVZlcnNpb246IG5ld1Jlc291cmNlLm1ldGFkYXRhLnJlc291cmNlVmVyc2lvbixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHRoaXMucmV0cnlVcGRhdGUocHV0LCBnZXQsIHJlc291cmNlLCBzaWxlbnQpKSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgICBjYXRjaEVycm9yKCgpID0+IHRocm93RXJyb3IoKCkgPT4gZXJyKSksXG4gICAgICApO1xuXG4gICAgcmV0dXJuIHB1dChyZXNvdXJjZSkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGVycjogU3RhdHVzKSA9PlxuICAgICAgICBlcnIuY29kZSA9PT0gNDA5ID8gd2FpdFVzZXJDb25maXJtUmV0cnkoZXJyKSA6IHRocm93RXJyb3IoKCkgPT4gZXJyKSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxufVxuIl19
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLXV0aWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jb3JlL3NlcnZpY2VzL2s4cy11dGlsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNoQyxPQUFPLEVBRUwsSUFBSSxFQUNKLFVBQVUsRUFDVixFQUFFLEVBQ0YsVUFBVSxFQUNWLFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsYUFBYSxHQUdkLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRW5FLE9BQU8sRUFDTCxZQUFZLEVBQ1osU0FBUyxFQUNULE9BQU8sRUFDUCxRQUFRLEdBQ1QsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFN0IsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQztBQUNuQyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDO0FBQ3JDLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUM7QUFDM0IsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsbUJBQW1CLENBQUM7QUFDdEQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLGFBQWEsQ0FBQztBQUN6QyxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLFlBQVks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QUMsR0FBVyxFQUFFLEVBQUUsQ0FDekIsR0FBRyxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQ3JFLENBQ0YsQ0FBQztJQUNKLENBQUM7K0VBOVFVLGNBQWM7dUVBQWQsY0FBYyxXQUFkLGNBQWMsbUJBRmIsTUFBTTs7aUZBRVAsY0FBYztjQUgxQixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSB1dGlsc1xuICovXG5cbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7XG4gIE9ic2VydmFibGUsXG4gIGZyb20sXG4gIHRocm93RXJyb3IsXG4gIG9mLFxuICBjYXRjaEVycm9yLFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIEs4c0FwaVNlcnZpY2UsXG4gIEs4c1Jlc291cmNlRGVmaW5pdGlvbixcbiAgUmVzb3VyY2VEZWxldGVQYXJhbXMsXG59IGZyb20gJy4uLy4uL2FwaS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi90cmFuc2xhdGUvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBTUEFDRSwgVE9LRU5fQkFTRV9ET01BSU4gfSBmcm9tICcuLi9jb25zdGFudHMvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBLdWJlcm5ldGVzUmVzb3VyY2UsIFN0YXR1cyB9IGZyb20gJy4uL3R5cGVzL3B1YmxpYy1hcGknO1xuaW1wb3J0IHtcbiAgY2F0Y2hQcm9taXNlLFxuICBza2lwRXJyb3IsXG4gIGlmRXhpc3QsXG4gIHdyYXBUZXh0LFxufSBmcm9tICcuLi91dGlscy9wdWJsaWMtYXBpJztcblxuZXhwb3J0IGNvbnN0IE1FVEFEQVRBID0gJ21ldGFkYXRhJztcbmV4cG9ydCBjb25zdCBOQU1FU1BBQ0UgPSAnbmFtZXNwYWNlJztcbmV4cG9ydCBjb25zdCBOQU1FID0gJ25hbWUnO1xuZXhwb3J0IGNvbnN0IENSRUFUSU9OX1RJTUVTVEFNUCA9ICdjcmVhdGlvblRpbWVzdGFtcCc7XG5leHBvcnQgY29uc3QgQU5OT1RBVElPTlMgPSAnYW5ub3RhdGlvbnMnO1xuZXhwb3J0IGNvbnN0IExBQkVMUyA9ICdsYWJlbHMnO1xuZXhwb3J0IGNvbnN0IERJU1BMQVlfTkFNRSA9ICdkaXNwbGF5LW5hbWUnO1xuZXhwb3J0IGNvbnN0IERFU0NSSVBUSU9OID0gJ2Rlc2NyaXB0aW9uJztcbmV4cG9ydCBjb25zdCBDUkVBVE9SID0gJ2NyZWF0b3InO1xuZXhwb3J0IGNvbnN0IFVQREFURURfX0FUID0gJ3VwZGF0ZWQtYXQnO1xuZXhwb3J0IGNvbnN0IFBST0pFQ1QgPSAncHJvamVjdCc7XG5leHBvcnQgY29uc3QgQ0xVU1RFUiA9ICdjbHVzdGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBCYXNlTm9ybWFsaXplVHlwZVBhcmFtcyB7XG4gIHR5cGU6IHN0cmluZztcbiAgYmFzZURvbWFpbjogc3RyaW5nO1xuICBwcmVmaXg/OiBzdHJpbmc7XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBLOHNVdGlsU2VydmljZTxSIGV4dGVuZHMgc3RyaW5nID0gc3RyaW5nPiB7XG4gIHByb3RlY3RlZCBkaWFsb2c6IERpYWxvZ1NlcnZpY2U7XG4gIHByb3RlY3RlZCBtZXNzYWdlOiBNZXNzYWdlU2VydmljZTtcbiAgcHJvdGVjdGVkIGs4c0FwaTogSzhzQXBpU2VydmljZTxSPjtcbiAgcHJvdGVjdGVkIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZTtcbiAgcHJvdGVjdGVkIGJhc2VEb21haW46IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy5kaWFsb2cgPSBpbmplY3Rvci5nZXQoRGlhbG9nU2VydmljZSBhcyBUeXBlPERpYWxvZ1NlcnZpY2U+KTtcbiAgICB0aGlzLm1lc3NhZ2UgPSBpbmplY3Rvci5nZXQoTWVzc2FnZVNlcnZpY2UgYXMgVHlwZTxNZXNzYWdlU2VydmljZT4pO1xuICAgIHRoaXMuazhzQXBpID0gaW5qZWN0b3IuZ2V0KEs4c0FwaVNlcnZpY2U8Uj4gYXMgVHlwZTxLOHNBcGlTZXJ2aWNlPik7XG4gICAgdGhpcy50cmFuc2xhdGUgPSBpbmplY3Rvci5nZXQoVHJhbnNsYXRlU2VydmljZSBhcyBUeXBlPFRyYW5zbGF0ZVNlcnZpY2U+KTtcbiAgICB0aGlzLmJhc2VEb21haW4gPSBpbmplY3Rvci5nZXQoVE9LRU5fQkFTRV9ET01BSU4pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB0eXBlIC0g5a+55bqU6LWE5rqQ55qE57+76K+RIGtleVxuICAgKi9cbiAgZGVsZXRlUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcGFyYW1zOiBSZXNvdXJjZURlbGV0ZVBhcmFtczxSLCBUPixcbiAgICB0eXBlT3JPcHRpb25zOiBzdHJpbmcgfCB7IHR5cGU6IHN0cmluZzsgY29udGVudDogc3RyaW5nIH0sXG4gICkge1xuICAgIGNvbnN0IHsgdHlwZSwgY29udGVudCB9ID1cbiAgICAgIHR5cGVvZiB0eXBlT3JPcHRpb25zID09PSAnc3RyaW5nJ1xuICAgICAgICA/IHsgdHlwZTogdHlwZU9yT3B0aW9ucywgY29udGVudDogbnVsbCB9XG4gICAgICAgIDogdHlwZU9yT3B0aW9ucztcbiAgICByZXR1cm4gY2F0Y2hQcm9taXNlKFxuICAgICAgdGhpcy5kaWFsb2cuY29uZmlybSh7XG4gICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5nZXQoJ2NvbmZpcm1fZGVsZXRlX3Jlc291cmNlJywge1xuICAgICAgICAgIHR5cGU6IHRoaXMudHJhbnNsYXRlLmdldCh0eXBlKSxcbiAgICAgICAgICBuYW1lOiAnbmFtZScgaW4gcGFyYW1zID8gcGFyYW1zLm5hbWUgOiB0aGlzLmdldE5hbWUocGFyYW1zLnJlc291cmNlKSxcbiAgICAgICAgfSksXG4gICAgICAgIGNvbnRlbnQsXG4gICAgICAgIGNvbmZpcm1UZXh0OiB0aGlzLnRyYW5zbGF0ZS5nZXQoJ2RlbGV0ZScpLFxuICAgICAgICBjYW5jZWxUZXh0OiB0aGlzLnRyYW5zbGF0ZS5nZXQoJ2NhbmNlbCcpLFxuICAgICAgICBiZWZvcmVDb25maXJtOiAoKSA9PlxuICAgICAgICAgICgnY2x1c3RlcicgaW4gcGFyYW1zXG4gICAgICAgICAgICA/IHRoaXMuazhzQXBpLmRlbGV0ZVJlc291cmNlKHBhcmFtcylcbiAgICAgICAgICAgIDogdGhpcy5rOHNBcGkuZGVsZXRlR2xvYmFsUmVzb3VyY2UocGFyYW1zKVxuICAgICAgICAgICkucGlwZShcbiAgICAgICAgICAgIHRhcCgoKSA9PlxuICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2Uuc3VjY2Vzcyh0aGlzLnRyYW5zbGF0ZS5nZXQoJ2RlbGV0ZV9zdWNjZXNzJykpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHNraXBFcnJvcigpLFxuICAgICAgICAgICksXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgdXBkYXRlUmVzb3VyY2U8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oe1xuICAgIHR5cGUsXG4gICAgZGVmaW5pdGlvbixcbiAgICBjbHVzdGVyLFxuICAgIHJlc291cmNlLFxuICAgIHNpbGVudCxcbiAgfToge1xuICAgIHR5cGU/OiBSO1xuICAgIGRlZmluaXRpb24/OiBLOHNSZXNvdXJjZURlZmluaXRpb247XG4gICAgY2x1c3Rlcjogc3RyaW5nO1xuICAgIHJlc291cmNlOiBUO1xuICAgIHNpbGVudD86IGJvb2xlYW47XG4gIH0pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICBjb25zdCBwdXQgPSAocmVzOiBUKSA9PlxuICAgICAgdGhpcy5rOHNBcGkucHV0UmVzb3VyY2Uoe1xuICAgICAgICB0eXBlLFxuICAgICAgICBkZWZpbml0aW9uLFxuICAgICAgICBjbHVzdGVyLFxuICAgICAgICByZXNvdXJjZTogcmVzLFxuICAgICAgICBub3RpZnlPbkVycm9yOiAhc2lsZW50LFxuICAgICAgfSk7XG4gICAgY29uc3QgZ2V0ID0gKCkgPT5cbiAgICAgIHRoaXMuazhzQXBpLmdldFJlc291cmNlPFQ+KHtcbiAgICAgICAgdHlwZSxcbiAgICAgICAgZGVmaW5pdGlvbixcbiAgICAgICAgY2x1c3RlcixcbiAgICAgICAgbmFtZXNwYWNlOiByZXNvdXJjZS5tZXRhZGF0YS5uYW1lc3BhY2UsXG4gICAgICAgIG5hbWU6IHJlc291cmNlLm1ldGFkYXRhLm5hbWUsXG4gICAgICB9KTtcblxuICAgIHJldHVybiB0aGlzLnJldHJ5VXBkYXRlKHB1dCwgZ2V0LCByZXNvdXJjZSwgc2lsZW50KTtcbiAgfVxuXG4gIHVwZGF0ZUdsb2JhbFJlc291cmNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHtcbiAgICB0eXBlLFxuICAgIGRlZmluaXRpb24sXG4gICAgbmFtZXNwYWNlZCxcbiAgICByZXNvdXJjZSxcbiAgICBuYW1lc3BhY2UsXG4gICAgc2lsZW50LFxuICB9OiB7XG4gICAgdHlwZT86IFI7XG4gICAgZGVmaW5pdGlvbj86IEs4c1Jlc291cmNlRGVmaW5pdGlvbjtcbiAgICBuYW1lc3BhY2VkPzogYm9vbGVhbjtcbiAgICByZXNvdXJjZTogVDtcbiAgICBuYW1lc3BhY2U/OiBzdHJpbmc7XG4gICAgc2lsZW50PzogYm9vbGVhbjtcbiAgfSk6IE9ic2VydmFibGU8VD4ge1xuICAgIGNvbnN0IHB1dCA9IChyZXM6IFQpID0+XG4gICAgICB0aGlzLms4c0FwaS5wdXRHbG9iYWxSZXNvdXJjZSh7XG4gICAgICAgIHR5cGUsXG4gICAgICAgIGRlZmluaXRpb24sXG4gICAgICAgIG5hbWVzcGFjZWQsXG4gICAgICAgIHJlc291cmNlOiByZXMsXG4gICAgICAgIG5hbWVzcGFjZSxcbiAgICAgICAgbm90aWZ5T25FcnJvcjogIXNpbGVudCxcbiAgICAgIH0pO1xuICAgIGNvbnN0IGdldCA9ICgpID0+XG4gICAgICB0aGlzLms4c0FwaS5nZXRHbG9iYWxSZXNvdXJjZTxUPih7XG4gICAgICAgIHR5cGUsXG4gICAgICAgIGRlZmluaXRpb24sXG4gICAgICAgIG5hbWVzcGFjZWQsXG4gICAgICAgIG5hbWU6IHJlc291cmNlLm1ldGFkYXRhLm5hbWUsXG4gICAgICAgIG5hbWVzcGFjZSxcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMucmV0cnlVcGRhdGUocHV0LCBnZXQsIHJlc291cmNlLCBzaWxlbnQpO1xuICB9XG5cbiAgLy8gcmVmZXJlbmNlOiBodHRwOi8vY29uZmx1ZW5jZS5hbGF1ZGF0ZWNoLmNvbS9wYWdlcy92aWV3cGFnZS5hY3Rpb24/cGFnZUlkPTI3MTY2OTQ2XG4gIG5vcm1hbGl6ZVR5cGUodHlwZTogc3RyaW5nLCBwcmVmaXg/OiBzdHJpbmcpOiBzdHJpbmc7XG4gIG5vcm1hbGl6ZVR5cGUocGFyYW1zOiBCYXNlTm9ybWFsaXplVHlwZVBhcmFtcyk6IHN0cmluZztcbiAgbm9ybWFsaXplVHlwZShcbiAgICB0eXBlT3JQYXJhbXM6IHN0cmluZyB8IEJhc2VOb3JtYWxpemVUeXBlUGFyYW1zLFxuICAgIHByZWZpeD86IHN0cmluZyxcbiAgKTogc3RyaW5nIHtcbiAgICBpZiAodHlwZW9mIHR5cGVPclBhcmFtcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBgJHtpZkV4aXN0KHByZWZpeCwgcHJlZml4ICsgJy4nKX0ke1xuICAgICAgICB0aGlzLmJhc2VEb21haW5cbiAgICAgIH0vJHt0eXBlT3JQYXJhbXN9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gYCR7aWZFeGlzdCh0eXBlT3JQYXJhbXMucHJlZml4LCB0eXBlT3JQYXJhbXMucHJlZml4ICsgJy4nKX0ke1xuICAgICAgdHlwZU9yUGFyYW1zLmJhc2VEb21haW5cbiAgICB9LyR7dHlwZU9yUGFyYW1zLnR5cGV9YDtcbiAgfVxuXG4gIGdldEFubm90YXRpb248VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcmVzb3VyY2U6IFQsXG4gICAgdHlwZTogc3RyaW5nLFxuICAgIHByZWZpeD86IHN0cmluZyxcbiAgKTogc3RyaW5nO1xuXG4gIGdldEFubm90YXRpb248VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcmVzb3VyY2U6IFQsXG4gICAgcGFyYW1zOiBCYXNlTm9ybWFsaXplVHlwZVBhcmFtcyxcbiAgKTogc3RyaW5nO1xuXG4gIGdldEFubm90YXRpb248VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcmVzb3VyY2U6IFQsXG4gICAgcGFyYW1zT3JUeXBlOiBzdHJpbmcgfCBCYXNlTm9ybWFsaXplVHlwZVBhcmFtcyxcbiAgICBwcmVmaXg/OiBzdHJpbmcsXG4gICk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldChyZXNvdXJjZSwgW1xuICAgICAgTUVUQURBVEEsXG4gICAgICBBTk5PVEFUSU9OUyxcbiAgICAgIHRoaXMubm9ybWFsaXplVHlwZShwYXJhbXNPclR5cGUgYXMgc3RyaW5nLCBwcmVmaXgpLFxuICAgIF0pO1xuICB9XG5cbiAgZ2V0TmFtZXNwYWNlPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHJlc291cmNlOiBUKSB7XG4gICAgcmV0dXJuIGdldChyZXNvdXJjZSwgW01FVEFEQVRBLCBOQU1FU1BBQ0VdKTtcbiAgfVxuXG4gIGdldE5hbWU8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4ocmVzb3VyY2U6IFQpIHtcbiAgICByZXR1cm4gZ2V0KHJlc291cmNlLCBbTUVUQURBVEEsIE5BTUVdKTtcbiAgfVxuXG4gIGdldENyZWF0aW9uVGltZXN0YW1wPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHJlc291cmNlOiBUKSB7XG4gICAgcmV0dXJuIGdldChyZXNvdXJjZSwgW01FVEFEQVRBLCBDUkVBVElPTl9USU1FU1RBTVBdKTtcbiAgfVxuXG4gIGdldERpc3BsYXlOYW1lPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHJlc291cmNlOiBULCBwcmVmaXg/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbm5vdGF0aW9uKHJlc291cmNlLCBESVNQTEFZX05BTUUsIHByZWZpeCk7XG4gIH1cblxuICBnZXRVbmlvbkRpc3BsYXlOYW1lPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHJlc291cmNlOiBULFxuICAgIG5hbWVQcmVmaXg/OiBzdHJpbmcgfCBmYWxzZSxcbiAgICBkaXNwbGF5TmFtZVByZWZpeD86IHN0cmluZyxcbiAgKSB7XG4gICAgaWYgKCFyZXNvdXJjZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBuYW1lID1cbiAgICAgIChuYW1lUHJlZml4ICE9PSBmYWxzZSAmJlxuICAgICAgICB0aGlzLmdldEFubm90YXRpb24ocmVzb3VyY2UsIE5BTUUsIG5hbWVQcmVmaXgpKSB8fFxuICAgICAgdGhpcy5nZXROYW1lKHJlc291cmNlKTtcbiAgICBjb25zdCBkaXNwbGF5TmFtZSA9IHRoaXMuZ2V0RGlzcGxheU5hbWUocmVzb3VyY2UsIGRpc3BsYXlOYW1lUHJlZml4KTtcbiAgICByZXR1cm4gbmFtZSArIGlmRXhpc3QoZGlzcGxheU5hbWUsIFNQQUNFICsgd3JhcFRleHQoZGlzcGxheU5hbWUpKTtcbiAgfVxuXG4gIGdldERlc2NyaXB0aW9uPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KHJlc291cmNlOiBULCBwcmVmaXg/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbm5vdGF0aW9uKHJlc291cmNlLCBERVNDUklQVElPTiwgcHJlZml4KTtcbiAgfVxuXG4gIGdldENyZWF0b3I8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4ocmVzb3VyY2U6IFQsIHByZWZpeD86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmdldEFubm90YXRpb24ocmVzb3VyY2UsIENSRUFUT1IsIHByZWZpeCk7XG4gIH1cblxuICBnZXRVcGRhdGVkQXQ8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4ocmVzb3VyY2U6IFQsIHByZWZpeD86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmdldEFubm90YXRpb24ocmVzb3VyY2UsIFVQREFURURfX0FULCBwcmVmaXgpO1xuICB9XG5cbiAgZ2V0TGFiZWw8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcmVzb3VyY2U6IFQsXG4gICAgdHlwZTogc3RyaW5nLFxuICAgIHByZWZpeD86IHN0cmluZyxcbiAgKTogc3RyaW5nO1xuXG4gIGdldExhYmVsPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICAgIHJlc291cmNlOiBULFxuICAgIHBhcmFtczogQmFzZU5vcm1hbGl6ZVR5cGVQYXJhbXMsXG4gICk6IHN0cmluZztcblxuICBnZXRMYWJlbDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihcbiAgICByZXNvdXJjZTogVCxcbiAgICBwYXJhbXNPclR5cGU6IHN0cmluZyB8IEJhc2VOb3JtYWxpemVUeXBlUGFyYW1zLFxuICAgIHByZWZpeD86IHN0cmluZyxcbiAgKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ2V0KHJlc291cmNlLCBbXG4gICAgICBNRVRBREFUQSxcbiAgICAgIExBQkVMUyxcbiAgICAgIHRoaXMubm9ybWFsaXplVHlwZShwYXJhbXNPclR5cGUgYXMgc3RyaW5nLCBwcmVmaXgpLFxuICAgIF0pO1xuICB9XG5cbiAgZ2V0UHJvamVjdDxUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlPihyZXNvdXJjZTogVCkge1xuICAgIHJldHVybiB0aGlzLmdldExhYmVsKHJlc291cmNlLCBQUk9KRUNUKTtcbiAgfVxuXG4gIHByaXZhdGUgcmV0cnlVcGRhdGU8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gICAgcHV0OiAocmVzb3VyY2U6IFQpID0+IE9ic2VydmFibGU8VD4sXG4gICAgZ2V0OiAoKSA9PiBPYnNlcnZhYmxlPFQ+LFxuICAgIHJlc291cmNlOiBULFxuICAgIHNpbGVudD86IGJvb2xlYW4sXG4gICk6IE9ic2VydmFibGU8VD4ge1xuICAgIGNvbnN0IHdhaXRVc2VyQ29uZmlybVJldHJ5ID0gKGVycjogU3RhdHVzKSA9PlxuICAgICAgKHNpbGVudFxuICAgICAgICA/IG9mKG51bGwpXG4gICAgICAgIDogZnJvbShcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nLmNvbmZpcm0oe1xuICAgICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGUuZ2V0KCdyZXNvdXJjZV92ZXJzaW9uX2NvbmZsaWN0JyksXG4gICAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMudHJhbnNsYXRlLmdldCgnY29uZmlybV9yZXRyeV93aXRoX2xhdGVzdF92ZXJzaW9uJyksXG4gICAgICAgICAgICAgIGNvbmZpcm1UZXh0OiB0aGlzLnRyYW5zbGF0ZS5nZXQoJ2NvbmZpcm0nKSxcbiAgICAgICAgICAgICAgY2FuY2VsVGV4dDogdGhpcy50cmFuc2xhdGUuZ2V0KCdjYW5jZWwnKSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIClcbiAgICAgICkucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgICAgZ2V0KCkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChuZXdSZXNvdXJjZSA9PlxuICAgICAgICAgICAgICBwdXQoe1xuICAgICAgICAgICAgICAgIC4uLnJlc291cmNlLFxuICAgICAgICAgICAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAuLi5yZXNvdXJjZS5tZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgIHJlc291cmNlVmVyc2lvbjogbmV3UmVzb3VyY2UubWV0YWRhdGEucmVzb3VyY2VWZXJzaW9uLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gdGhpcy5yZXRyeVVwZGF0ZShwdXQsIGdldCwgcmVzb3VyY2UsIHNpbGVudCkpLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gdGhyb3dFcnJvcigoKSA9PiBlcnIpKSxcbiAgICAgICk7XG5cbiAgICByZXR1cm4gcHV0KHJlc291cmNlKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoZXJyOiBTdGF0dXMpID0+XG4gICAgICAgIGVyci5jb2RlID09PSA0MDkgPyB3YWl0VXNlckNvbmZpcm1SZXRyeShlcnIpIDogdGhyb3dFcnJvcigoKSA9PiBlcnIpLFxuICAgICAgKSxcbiAgICApO1xuICB9XG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alauda-fe/common",
3
- "version": "1.4.5",
3
+ "version": "1.4.7",
4
4
  "description": "Alauda frontend team common codes.",
5
5
  "author": "Alauda Frontend",
6
6
  "license": "MIT",
@@ -1,75 +0,0 @@
1
- import { HttpClient } from '@angular/common/http';
2
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
3
- import { of, Subject, catchError, startWith, switchMap, takeUntil, map, } from 'rxjs';
4
- import { API_GATEWAY, K8sUtilService, publishRef, } from '../../../../core/public-api';
5
- import { ResourceListBase } from '../../base-list';
6
- import { ResourceSelectContextService } from '../../context.service';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common/http";
9
- import * as i2 from "../../context.service";
10
- import * as i3 from "../../../../core/public-api";
11
- export class ClusterListComponent extends ResourceListBase {
12
- constructor(http, contextService, cdr, k8sUtil) {
13
- super(cdr, k8sUtil, contextService);
14
- this.http = http;
15
- this.type = 'cluster';
16
- this.clusters = [];
17
- this.clusters$ = this.reload$$.pipe(startWith(null), switchMap(() => this.http.get(`${API_GATEWAY}/auth/v1/clusters`)), map(list => list.items), catchError(() => of([])), takeUntil(this.destroy$$), publishRef());
18
- this.loadClusterInfo$$ = new Subject();
19
- }
20
- ngOnInit() {
21
- this.clusters = this.contextService.cachedClusters;
22
- this.setSelected();
23
- this.clusters$.subscribe(clusters => {
24
- this.clusters = this.mapResource(clusters);
25
- this.setSelected();
26
- this.loading = false;
27
- this.forceLoading = false;
28
- this.loadClusterInfo$$.next(clusters);
29
- this.cdr.markForCheck();
30
- });
31
- }
32
- setSelected() {
33
- this.selectedCluster = this.clusters.find(c => c.name === this.value);
34
- }
35
- ngOnDestroy() {
36
- this.destroy$$.next();
37
- this.destroy$$.complete();
38
- }
39
- mapResource(list) {
40
- return list.map(item => ({
41
- name: this.k8sUtil.getName(item),
42
- displayName: this.k8sUtil.getDisplayName(item),
43
- status: this.getClusterStatus(item),
44
- timestamp: item.metadata.creationTimestamp,
45
- __origin: item,
46
- }));
47
- }
48
- getClusterStatus(cluster) {
49
- if (cluster?.status) {
50
- const clusterStatus = cluster.status.conditions.find(condition => condition.type === 'ComponentNotHealthy');
51
- if (clusterStatus) {
52
- return clusterStatus.status.toLowerCase() === 'true'
53
- ? 'abnormal'
54
- : 'normal';
55
- }
56
- }
57
- return 'abnormal';
58
- }
59
- static { this.ɵfac = function ClusterListComponent_Factory(t) { return new (t || ClusterListComponent)(i0.ɵɵdirectiveInject(i1.HttpClient), i0.ɵɵdirectiveInject(i2.ResourceSelectContextService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i3.K8sUtilService)); }; }
60
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ClusterListComponent, selectors: [["acl-cluster-list"]], inputs: { value: "value" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 7, consts: [[3, "selectItem", "reload", "data", "fields", "context", "popupLite", "selectedUid", "type", "loading"]], template: function ClusterListComponent_Template(rf, ctx) { if (rf & 1) {
61
- i0.ɵɵelementStart(0, "acl-resource-data-grid", 0);
62
- i0.ɵɵlistener("selectItem", function ClusterListComponent_Template_acl_resource_data_grid_selectItem_0_listener($event) { return ctx.onSelect($event); })("reload", function ClusterListComponent_Template_acl_resource_data_grid_reload_0_listener() { return ctx.reload(); });
63
- i0.ɵɵelementEnd();
64
- } if (rf & 2) {
65
- i0.ɵɵproperty("data", ctx.clusters)("fields", ctx.fields)("context", ctx.context)("popupLite", ctx.popupLite)("selectedUid", ctx.selectedCluster == null ? null : ctx.selectedCluster.__origin.metadata.uid)("type", ctx.type)("loading", ctx.forceLoading || !(ctx.clusters == null ? null : ctx.clusters.length) && ctx.loading);
66
- } }, styles: ["[_nghost-%COMP%]{height:100%;display:flex;flex-direction:column;padding-top:20px}.filter[_ngcontent-%COMP%]{display:flex;border-bottom:1px solid rgb(var(--aui-color-n-8));padding-bottom:8px}.filter[_ngcontent-%COMP%] aui-form-item[_ngcontent-%COMP%] .aui-form-item{margin-bottom:0}.filter__project[_ngcontent-%COMP%]{margin-right:50px;padding-bottom:8px}.filter__project[_ngcontent-%COMP%] aui-select[_ngcontent-%COMP%]{width:240px}.filter__cluster[_ngcontent-%COMP%]{flex:1}.cluster-tags[_ngcontent-%COMP%] aui-check-tag[_ngcontent-%COMP%]{margin-bottom:8px;display:inline-flex}.cluster-tags[_ngcontent-%COMP%] aui-check-tag[_ngcontent-%COMP%] .aui-tag{border:none}.cluster-tags[_ngcontent-%COMP%] aui-check-tag[_ngcontent-%COMP%] .aui-tag--info{background-color:rgb(var(--aui-color-n-8))}"], changeDetection: 0 }); }
67
- }
68
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ClusterListComponent, [{
69
- type: Component,
70
- args: [{ selector: 'acl-cluster-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<acl-resource-data-grid\n [data]=\"clusters\"\n [fields]=\"fields\"\n [context]=\"context\"\n [popupLite]=\"popupLite\"\n (selectItem)=\"onSelect($event)\"\n [selectedUid]=\"selectedCluster?.__origin.metadata.uid\"\n [type]=\"type\"\n [loading]=\"forceLoading || (!clusters?.length && loading)\"\n (reload)=\"reload()\"\n></acl-resource-data-grid>\n", styles: [":host{height:100%;display:flex;flex-direction:column;padding-top:20px}.filter{display:flex;border-bottom:1px solid rgb(var(--aui-color-n-8));padding-bottom:8px}.filter aui-form-item ::ng-deep .aui-form-item{margin-bottom:0}.filter__project{margin-right:50px;padding-bottom:8px}.filter__project aui-select{width:240px}.filter__cluster{flex:1}.cluster-tags aui-check-tag{margin-bottom:8px;display:inline-flex}.cluster-tags aui-check-tag::ng-deep .aui-tag{border:none}.cluster-tags aui-check-tag::ng-deep .aui-tag--info{background-color:rgb(var(--aui-color-n-8))}\n"] }]
71
- }], () => [{ type: i1.HttpClient }, { type: i2.ResourceSelectContextService }, { type: i0.ChangeDetectorRef }, { type: i3.K8sUtilService }], { value: [{
72
- type: Input
73
- }] }); })();
74
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ClusterListComponent, { className: "ClusterListComponent", filePath: "business/resource-select/internals/cluster-list/component.ts", lineNumber: 37 }); })();
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2J1c2luZXNzL3Jlc291cmNlLXNlbGVjdC9pbnRlcm5hbHMvY2x1c3Rlci1saXN0L2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9idXNpbmVzcy9yZXNvdXJjZS1zZWxlY3QvaW50ZXJuYWxzL2NsdXN0ZXItbGlzdC90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxFQUFFLEVBQ0YsT0FBTyxFQUNQLFVBQVUsRUFDVixTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsRUFDVCxHQUFHLEdBQ0osTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBR0wsV0FBVyxFQUNYLGNBQWMsRUFDZCxVQUFVLEdBQ1gsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7QUFTckUsTUFBTSxPQUFPLG9CQUNYLFNBQVEsZ0JBQWdCO0lBMkJ4QixZQUNtQixJQUFnQixFQUNqQyxjQUE0QyxFQUM1QyxHQUFzQixFQUN0QixPQUF1QjtRQUV2QixLQUFLLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztRQUxuQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBdEJuQyxTQUFJLEdBQUcsU0FBa0IsQ0FBQztRQUkxQixhQUFRLEdBQXNCLEVBQUUsQ0FBQztRQUVqQyxjQUFT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QyxzR0FJckIsWUFBUSxJQUFDO1lBQ3BCLGlCQUF5Qjs7WUFGeEIsQUFEQSxBQURBLEFBRkEsQUFEQSxBQURBLEFBREEsbUNBQWlCLHNCQUNBLHdCQUNFLDRCQUNJLCtGQUUrQixrQkFDekMsb0dBQzZDOzs7aUZENEIvQyxvQkFBb0I7Y0FOaEMsU0FBUzsyQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTTttSkFPL0MsS0FBSztrQkFESixLQUFLOztrRkFKSyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBvZixcbiAgU3ViamVjdCxcbiAgY2F0Y2hFcnJvcixcbiAgc3RhcnRXaXRoLFxuICBzd2l0Y2hNYXAsXG4gIHRha2VVbnRpbCxcbiAgbWFwLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgQ2x1c3RlcixcbiAgS3ViZXJuZXRlc1Jlc291cmNlTGlzdCxcbiAgQVBJX0dBVEVXQVksXG4gIEs4c1V0aWxTZXJ2aWNlLFxuICBwdWJsaXNoUmVmLFxufSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgUmVzb3VyY2VMaXN0QmFzZSB9IGZyb20gJy4uLy4uL2Jhc2UtbGlzdCc7XG5pbXBvcnQgeyBSZXNvdXJjZVNlbGVjdENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IENsdXN0ZXJEYXRhSXRlbSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLWNsdXN0ZXItbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ2x1c3Rlckxpc3RDb21wb25lbnRcbiAgZXh0ZW5kcyBSZXNvdXJjZUxpc3RCYXNlXG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcbntcbiAgQElucHV0KClcbiAgdmFsdWU6IHN0cmluZztcblxuICB0eXBlID0gJ2NsdXN0ZXInIGFzIGNvbnN0O1xuXG4gIHNlbGVjdGVkQ2x1c3RlcjogQ2x1c3RlckRhdGFJdGVtO1xuXG4gIGNsdXN0ZXJzOiBDbHVzdGVyRGF0YUl0ZW1bXSA9IFtdO1xuXG4gIGNsdXN0ZXJzJCA9IHRoaXMucmVsb2FkJCQucGlwZShcbiAgICBzdGFydFdpdGgobnVsbCBhcyB2b2lkKSxcbiAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgIHRoaXMuaHR0cC5nZXQ8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxDbHVzdGVyPj4oXG4gICAgICAgIGAke0FQSV9HQVRFV0FZfS9hdXRoL3YxL2NsdXN0ZXJzYCxcbiAgICAgICksXG4gICAgKSxcbiAgICBtYXAobGlzdCA9PiBsaXN0Lml0ZW1zKSxcbiAgICBjYXRjaEVycm9yKCgpID0+IG9mKFtdIGFzIENsdXN0ZXJbXSkpLFxuICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGxvYWRDbHVzdGVySW5mbyQkID0gbmV3IFN1YmplY3Q8Q2x1c3RlcltdPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBjb250ZXh0U2VydmljZTogUmVzb3VyY2VTZWxlY3RDb250ZXh0U2VydmljZSxcbiAgICBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIGs4c1V0aWw6IEs4c1V0aWxTZXJ2aWNlLFxuICApIHtcbiAgICBzdXBlcihjZHIsIGs4c1V0aWwsIGNvbnRleHRTZXJ2aWNlKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY2x1c3RlcnMgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmNhY2hlZENsdXN0ZXJzO1xuICAgIHRoaXMuc2V0U2VsZWN0ZWQoKTtcbiAgICB0aGlzLmNsdXN0ZXJzJC5zdWJzY3JpYmUoY2x1c3RlcnMgPT4ge1xuICAgICAgdGhpcy5jbHVzdGVycyA9IHRoaXMubWFwUmVzb3VyY2UoY2x1c3RlcnMpO1xuICAgICAgdGhpcy5zZXRTZWxlY3RlZCgpO1xuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICB0aGlzLmZvcmNlTG9hZGluZyA9IGZhbHNlO1xuICAgICAgdGhpcy5sb2FkQ2x1c3RlckluZm8kJC5uZXh0KGNsdXN0ZXJzKTtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRTZWxlY3RlZCgpIHtcbiAgICB0aGlzLnNlbGVjdGVkQ2x1c3RlciA9IHRoaXMuY2x1c3RlcnMuZmluZChjID0+IGMubmFtZSA9PT0gdGhpcy52YWx1ZSk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JCQuY29tcGxldGUoKTtcbiAgfVxuXG4gIG1hcFJlc291cmNlKGxpc3Q6IENsdXN0ZXJbXSk6IENsdXN0ZXJEYXRhSXRlbVtdIHtcbiAgICByZXR1cm4gbGlzdC5tYXAoaXRlbSA9PiAoe1xuICAgICAgbmFtZTogdGhpcy5rOHNVdGlsLmdldE5hbWUoaXRlbSksXG4gICAgICBkaXNwbGF5TmFtZTogdGhpcy5rOHNVdGlsLmdldERpc3BsYXlOYW1lKGl0ZW0pLFxuICAgICAgc3RhdHVzOiB0aGlzLmdldENsdXN0ZXJTdGF0dXMoaXRlbSksXG4gICAgICB0aW1lc3RhbXA6IGl0ZW0ubWV0YWRhdGEuY3JlYXRpb25UaW1lc3RhbXAsXG4gICAgICBfX29yaWdpbjogaXRlbSxcbiAgICB9KSk7XG4gIH1cblxuICBnZXRDbHVzdGVyU3RhdHVzKGNsdXN0ZXI/OiBDbHVzdGVyKSB7XG4gICAgaWYgKGNsdXN0ZXI/LnN0YXR1cykge1xuICAgICAgY29uc3QgY2x1c3RlclN0YXR1cyA9IGNsdXN0ZXIuc3RhdHVzLmNvbmRpdGlvbnMuZmluZChcbiAgICAgICAgY29uZGl0aW9uID0+IGNvbmRpdGlvbi50eXBlID09PSAnQ29tcG9uZW50Tm90SGVhbHRoeScsXG4gICAgICApO1xuICAgICAgaWYgKGNsdXN0ZXJTdGF0dXMpIHtcbiAgICAgICAgcmV0dXJuIGNsdXN0ZXJTdGF0dXMuc3RhdHVzLnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJ1xuICAgICAgICAgID8gJ2Fibm9ybWFsJ1xuICAgICAgICAgIDogJ25vcm1hbCc7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiAnYWJub3JtYWwnO1xuICB9XG59XG4iLCI8YWNsLXJlc291cmNlLWRhdGEtZ3JpZFxuICBbZGF0YV09XCJjbHVzdGVyc1wiXG4gIFtmaWVsZHNdPVwiZmllbGRzXCJcbiAgW2NvbnRleHRdPVwiY29udGV4dFwiXG4gIFtwb3B1cExpdGVdPVwicG9wdXBMaXRlXCJcbiAgKHNlbGVjdEl0ZW0pPVwib25TZWxlY3QoJGV2ZW50KVwiXG4gIFtzZWxlY3RlZFVpZF09XCJzZWxlY3RlZENsdXN0ZXI/Ll9fb3JpZ2luLm1ldGFkYXRhLnVpZFwiXG4gIFt0eXBlXT1cInR5cGVcIlxuICBbbG9hZGluZ109XCJmb3JjZUxvYWRpbmcgfHwgKCFjbHVzdGVycz8ubGVuZ3RoICYmIGxvYWRpbmcpXCJcbiAgKHJlbG9hZCk9XCJyZWxvYWQoKVwiXG4+PC9hY2wtcmVzb3VyY2UtZGF0YS1ncmlkPlxuIl19