@alauda-fe/common 1.2.1 → 1.3.0-beta.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.
Files changed (90) hide show
  1. package/api/api-gateway.service.d.ts +1 -11
  2. package/api/public-api.d.ts +0 -1
  3. package/array-form-table/key-value-form/component.d.ts +3 -2
  4. package/async-data/async-data.module.d.ts +6 -0
  5. package/authorization/public-api.d.ts +1 -0
  6. package/authorization/state.service.d.ts +13 -20
  7. package/authorization/storage-token.d.ts +11 -0
  8. package/chart/common/tooltip/tooltip.component.d.ts +2 -1
  9. package/core/abstract/base-form-container.d.ts +1 -1
  10. package/core/constants/tokens.d.ts +0 -18
  11. package/core/module.d.ts +16 -15
  12. package/core/services/k8s-util.service.d.ts +0 -5
  13. package/core/types/k8s/crd.d.ts +2 -1
  14. package/core/utils/common.d.ts +2 -1
  15. package/esm2022/api/api-gateway.service.mjs +10 -20
  16. package/esm2022/api/product.service.mjs +4 -4
  17. package/esm2022/api/project-api.service.mjs +4 -4
  18. package/esm2022/api/public-api.mjs +1 -2
  19. package/esm2022/array-form-table/key-value-form/component.mjs +65 -43
  20. package/esm2022/async-data/async-data.module.mjs +17 -5
  21. package/esm2022/authorization/public-api.mjs +2 -1
  22. package/esm2022/authorization/state.service.mjs +86 -115
  23. package/esm2022/authorization/storage-token.mjs +85 -0
  24. package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +2 -2
  25. package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +2 -2
  26. package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +2 -2
  27. package/esm2022/business/resource-select/exports/project-selector/component.mjs +2 -2
  28. package/esm2022/business/resource-select/module.mjs +9 -9
  29. package/esm2022/chart/chart.module.mjs +1 -1
  30. package/esm2022/chart/common/tooltip/tooltip.component.mjs +5 -2
  31. package/esm2022/core/abstract/base-form-container.mjs +1 -1
  32. package/esm2022/core/abstract/base-nested-form-control.mjs +2 -2
  33. package/esm2022/core/constants/tokens.mjs +1 -46
  34. package/esm2022/core/module.mjs +10 -3
  35. package/esm2022/core/pipes/page-env.pipe.mjs +6 -3
  36. package/esm2022/core/services/feature-gate.service.mjs +3 -3
  37. package/esm2022/core/services/k8s-util.service.mjs +1 -13
  38. package/esm2022/core/types/k8s/crd.mjs +1 -1
  39. package/esm2022/core/utils/common.mjs +11 -9
  40. package/esm2022/disabled-container/disabled-container.component.mjs +2 -2
  41. package/esm2022/form/validators/utils.mjs +37 -34
  42. package/esm2022/graph-canvas/graph-store.service.mjs +2 -2
  43. package/esm2022/help-document/service.mjs +3 -2
  44. package/esm2022/lazy-component/lazy-load-component.mjs +138 -0
  45. package/esm2022/lazy-component/public-api.mjs +14 -0
  46. package/esm2022/lazy-component/visibility.service.mjs +37 -0
  47. package/esm2022/list-display/component.mjs +159 -0
  48. package/esm2022/list-display/public-api.mjs +2 -0
  49. package/esm2022/metric-chart/metric-chart.component.mjs +2 -2
  50. package/esm2022/multi-search/action-input/component.mjs +2 -2
  51. package/esm2022/notification/feedback-notification/component.mjs +10 -4
  52. package/esm2022/notification/public-api.mjs +1 -2
  53. package/esm2022/page-scaffold/navigation/lottie-icons/animation-data.mjs +3 -1
  54. package/esm2022/page-scaffold/navigation/lottie-icons/animations/dashboard.json +1 -0
  55. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.types.mjs +1 -1
  56. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +10 -13
  57. package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +3 -3
  58. package/esm2022/public-api.mjs +4 -4
  59. package/esm2022/table/component.mjs +5 -5
  60. package/esm2022/table/types.mjs +1 -1
  61. package/esm2022/view-chart/view-chart.module.mjs +1 -1
  62. package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +3 -3
  63. package/esm2022/view-zchart/legend/legend.component.mjs +8 -8
  64. package/esm2022/view-zchart/units.mjs +13 -1
  65. package/esm2022/view-zchart/view-zchart.component.mjs +2 -2
  66. package/esm2022/view-zchart/view-zchart.module.mjs +1 -1
  67. package/esm2022/widget/foldable-item-in-table/component.mjs +2 -2
  68. package/esm2022/widget/search-panel/component.mjs +4 -4
  69. package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +66 -69
  70. package/esm2022/xterm/xterm.component.mjs +11 -3
  71. package/form/validators/utils.d.ts +7 -0
  72. package/lazy-component/lazy-load-component.d.ts +25 -0
  73. package/lazy-component/public-api.d.ts +9 -0
  74. package/lazy-component/visibility.service.d.ts +11 -0
  75. package/list-display/component.d.ts +15 -0
  76. package/list-display/public-api.d.ts +1 -0
  77. package/notification/feedback-notification/component.d.ts +1 -5
  78. package/notification/public-api.d.ts +0 -1
  79. package/package.json +1 -1
  80. package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts +1 -0
  81. package/page-scaffold/page-header/common-layout/product-select/component.d.ts +1 -2
  82. package/public-api.d.ts +3 -3
  83. package/styles/global.scss +6 -0
  84. package/styles/reset-browser.scss +4 -0
  85. package/styles/tailwind-preset.scss +1 -1
  86. package/table/types.d.ts +2 -0
  87. package/view-zchart/custom-template/dropdown-legend.d.ts +1 -1
  88. package/view-zchart/units.d.ts +3 -0
  89. package/xterm/xterm-terminal/xterm-terminal.component.d.ts +4 -3
  90. package/xterm/xterm.component.d.ts +4 -2
@@ -1,22 +1,12 @@
1
- /**
2
- * @packageDocumentation
3
- * @module api
4
- */
5
- import { HttpClient } from '@angular/common/http';
6
- import { OnDestroy } from '@angular/core';
7
1
  import * as i0 from "@angular/core";
8
2
  export interface ApiGatewayState {
9
3
  apiAddress: string;
10
4
  assetsHostPath: string;
11
5
  assetsURLPath: string;
12
6
  }
13
- export declare class ApiGatewayService implements OnDestroy {
7
+ export declare class ApiGatewayService {
14
8
  private readonly http;
15
- private readonly modulesApi;
16
- private readonly destroy$$;
17
9
  private readonly state$;
18
- constructor(http: HttpClient, modulesApi: string);
19
- ngOnDestroy(): void;
20
10
  getApiAddress(): import("rxjs").Observable<string>;
21
11
  static ɵfac: i0.ɵɵFactoryDeclaration<ApiGatewayService, never>;
22
12
  static ɵprov: i0.ɵɵInjectableDeclaration<ApiGatewayService>;
@@ -13,7 +13,6 @@ export * from './k8s-api-resource.service';
13
13
  export * from './page-visibility.service';
14
14
  export * from './resource-update.service';
15
15
  export * from './types';
16
- export * from './monitor-api.service';
17
16
  export * from './crypto.interceptor';
18
17
  export * from './product.service';
19
18
  export * from './project-api.service';
@@ -1,4 +1,4 @@
1
- import { OnInit } from '@angular/core';
1
+ import { OnInit, TemplateRef } from '@angular/core';
2
2
  import { ValidatorFn } from '@angular/forms';
3
3
  import { StringMap } from '../../core/public-api';
4
4
  import { BaseStringMapFormComponent } from '../base-string-map-form.component';
@@ -24,6 +24,7 @@ export declare class KeyValueFormTableComponent extends BaseStringMapFormCompone
24
24
  maxRow: number;
25
25
  minRow: number;
26
26
  readonlyKeys: Array<string | RegExp>;
27
+ zeroStateTemplate: TemplateRef<any>;
27
28
  isReadonly(key: string): boolean;
28
29
  getDataValueByIndex(index: number): any;
29
30
  adaptResourceModel(resource: {
@@ -33,5 +34,5 @@ export declare class KeyValueFormTableComponent extends BaseStringMapFormCompone
33
34
  getValueValidators(): ValidatorFn | ValidatorFn[];
34
35
  isLabelReadonly(index: number): boolean;
35
36
  static ɵfac: i0.ɵɵFactoryDeclaration<KeyValueFormTableComponent, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<KeyValueFormTableComponent, "acl-key-value-form-table", never, { "resourceName": { "alias": "resourceName"; "required": false; }; "resourceNameTranslated": { "alias": "resourceNameTranslated"; "required": false; }; "multiLineValue": { "alias": "multiLineValue"; "required": false; }; "validator": { "alias": "validator"; "required": false; }; "errorMapper": { "alias": "errorMapper"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "textKey": { "alias": "textKey"; "required": false; }; "maxRow": { "alias": "maxRow"; "required": false; }; "minRow": { "alias": "minRow"; "required": false; }; "readonlyKeys": { "alias": "readonlyKeys"; "required": false; }; }, {}, never, never, true, never>;
37
+ static ɵcmp: i0.ɵɵComponentDeclaration<KeyValueFormTableComponent, "acl-key-value-form-table", never, { "resourceName": { "alias": "resourceName"; "required": false; }; "resourceNameTranslated": { "alias": "resourceNameTranslated"; "required": false; }; "multiLineValue": { "alias": "multiLineValue"; "required": false; }; "validator": { "alias": "validator"; "required": false; }; "errorMapper": { "alias": "errorMapper"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "textKey": { "alias": "textKey"; "required": false; }; "maxRow": { "alias": "maxRow"; "required": false; }; "minRow": { "alias": "minRow"; "required": false; }; "readonlyKeys": { "alias": "readonlyKeys"; "required": false; }; "zeroStateTemplate": { "alias": "zeroStateTemplate"; "required": false; }; }, {}, never, never, true, never>;
37
38
  }
@@ -1,6 +1,12 @@
1
+ import { ErrorStateComponent } from './error-page/component';
2
+ import { PageStateComponent } from './page-state/component';
1
3
  import * as i0 from "@angular/core";
2
4
  import * as i1 from "./page-state/component";
3
5
  import * as i2 from "./error-page/component";
6
+ export declare const ASYNC_DATA_MODULE: readonly [typeof PageStateComponent, typeof ErrorStateComponent, typeof ErrorStateComponent];
7
+ /**
8
+ * @deprecated use `ASYNC_DATA_MODULE`
9
+ */
4
10
  export declare class AsyncDataModule {
5
11
  static ɵfac: i0.ɵɵFactoryDeclaration<AsyncDataModule, never>;
6
12
  static ɵmod: i0.ɵɵNgModuleDeclaration<AsyncDataModule, never, [typeof i1.PageStateComponent, typeof i2.ErrorStateComponent, typeof i2.ErrorStateComponent], [typeof i1.PageStateComponent, typeof i2.ErrorStateComponent, typeof i2.ErrorStateComponent]>;
@@ -9,3 +9,4 @@ export * from './interceptor.service';
9
9
  export * from './app-init-url';
10
10
  export * from './session-manage.service';
11
11
  export * from './state.service';
12
+ export * from './storage-token';
@@ -1,52 +1,45 @@
1
- /**
2
- * @packageDocumentation
3
- * @module authorization
4
- */
5
- import { HttpClient } from '@angular/common/http';
6
- import { OnDestroy } from '@angular/core';
7
1
  import { Observable } from 'rxjs';
8
2
  import { AccountInfo } from '../page-scaffold/public-api';
9
3
  import * as i0 from "@angular/core";
10
4
  export interface AuthorizationState {
11
5
  idToken?: string;
12
6
  refreshToken?: string;
13
- authUrl?: string;
14
7
  state?: string;
8
+ authUrl?: string;
15
9
  logoutUrl?: string;
16
10
  }
17
- export declare class AuthorizationStateService implements OnDestroy {
11
+ export interface TokenResponse {
12
+ token_storage: StorageType;
13
+ id_token: string;
14
+ refresh_token: string;
15
+ }
16
+ export type StorageType = 'local' | 'session';
17
+ export declare const STORAGE_TYPE_KEY = "token_storage";
18
+ export declare const ID_TOKEN_KEY = "id_token";
19
+ export declare const REFRESH_TOKEN_KEY = "refresh_token";
20
+ export declare const CODE_KEY = "code";
21
+ export declare class AuthorizationStateService {
18
22
  private readonly http;
19
- private readonly idTokenKey;
20
- private readonly refreshTokenKey;
21
- private readonly codeKey;
22
- private readonly apiTokenLogin;
23
- private readonly apiTokenCallback;
24
- private readonly apiRefreshToken;
25
- private readonly apiTokenInfo;
26
- private readonly destroy$$;
27
23
  private readonly refreshToken$$;
28
24
  private readonly state$;
29
25
  private checkTokenCache;
30
26
  private refreshTokenCache$;
31
27
  stateSnapshot: AuthorizationState;
32
28
  payloadSnapshot: AccountInfo;
33
- constructor(http: HttpClient, idTokenKey: string, refreshTokenKey: string, codeKey: string, apiTokenLogin: string, apiTokenCallback: string, apiRefreshToken: string, apiTokenInfo: string);
34
29
  logout(specificUrl?: boolean): void;
35
30
  logoutAudit(): Observable<Object>;
36
- redirectToUrl(href?: string): void;
31
+ redirectToDex(redirectUrl?: string): Promise<void>;
37
32
  refreshToken(): Observable<string>;
38
33
  checkToken(token: string): Observable<unknown>;
39
34
  getToken(): Observable<string>;
40
35
  getTokenPayload<T>(): Observable<T>;
41
36
  getAccountInfo(): Observable<AccountInfo>;
42
- ngOnDestroy(): void;
43
37
  private getAuthConfiguration;
44
38
  private getExistedToken;
45
39
  private getTokenFromLocal;
46
40
  private getTokenByRefreshToken;
47
41
  private getTokenByCode;
48
42
  private getParams;
49
- private replaceRedirectUrl;
50
43
  static ɵfac: i0.ɵɵFactoryDeclaration<AuthorizationStateService, never>;
51
44
  static ɵprov: i0.ɵɵInjectableDeclaration<AuthorizationStateService>;
52
45
  }
@@ -0,0 +1,11 @@
1
+ import { StorageType } from './state.service';
2
+ export interface StorageToken {
3
+ storageType: StorageType;
4
+ idToken: string;
5
+ refreshToken: string;
6
+ }
7
+ export declare function readStorageType(): StorageType;
8
+ export declare function cleanStorageToken(): void;
9
+ export declare function writeStorageToken(token: StorageToken): void;
10
+ export declare function readStorageToken(): Partial<StorageToken>;
11
+ export declare function asyncReadStorageToken(): Promise<Partial<StorageToken>>;
@@ -1,7 +1,7 @@
1
1
  import { BaseTooltip } from '@alauda/ui';
2
2
  import { ChangeDetectorRef, OnDestroy, OnInit, TemplateRef, TrackByFunction } from '@angular/core';
3
+ import { ConfigType } from 'dayjs';
3
4
  import { Subject } from 'rxjs';
4
- import { handleDateFormat } from '../../../a-chart/public-api';
5
5
  import { ChartData } from '../../../view-chart/public-api';
6
6
  import { ContextChartService } from '../../chart.service';
7
7
  import { tooltipSuffixFormat } from '../../utils';
@@ -20,6 +20,7 @@ interface TooltipContext {
20
20
  source: ChartData[];
21
21
  values: ContextItem[];
22
22
  }
23
+ export declare function handleDateFormat(date: ConfigType, format?: string): string;
23
24
  export declare class ChartTooltipComponent implements OnInit, OnDestroy {
24
25
  readonly contextService: ContextChartService;
25
26
  private readonly cdr;
@@ -27,7 +27,7 @@ export declare abstract class BaseFormContainer<T = any> implements OnInit {
27
27
  protected notification: NotificationService;
28
28
  protected location: Location;
29
29
  protected fillResource: (resource: T) => T;
30
- abstract submit(): void;
30
+ abstract submit(params?: unknown): void;
31
31
  constructor(injector: Injector);
32
32
  ngOnInit(): void;
33
33
  switchFormView(view: 'YAML' | 'UI'): void;
@@ -5,31 +5,13 @@
5
5
  import { InjectionToken } from '@angular/core';
6
6
  import { K8sResourceDefinitions } from '../../api/types';
7
7
  import { Environments } from '../types/commons';
8
- export declare const idTokenKey = "id_token";
9
- export declare const refreshTokenKey = "refresh_token";
10
- export declare const codeKey = "code";
11
8
  export declare const anonymousApis: Array<string | RegExp>;
12
- export declare const modulesApi = "/console/api/v1/modules";
13
- export declare const tokenLoginApi = "/console/api/v1/token/login";
14
- export declare const tokenCallbackApi = "/console/api/v1/token/callback";
15
- export declare const tokenRefreshApi = "/console/api/v1/token/refresh";
16
- export declare const tokenInfoApi = "/console/api/v1/token/info";
17
- export declare const tokenNonAdminRedirectPath = "/";
18
9
  export declare const resourceDefinitions: K8sResourceDefinitions;
19
10
  export declare function initGlobalEnvironments(env: Environments): void;
20
11
  export declare function fetchGlobalEnvironments(callback?: (envs: Environments) => void): Promise<Environments>;
21
12
  export declare function getGlobalEnvironments(): Readonly<Environments>;
22
13
  export declare function getGlobalEnvironments<T extends keyof Environments>(name: T): Environments[T];
23
14
  export declare const ANONYMOUS_APIS: InjectionToken<(string | RegExp)[]>;
24
- export declare const ID_TOKEN_KEY: InjectionToken<string>;
25
- export declare const REFRESH_TOKEN_KEY: InjectionToken<string>;
26
- export declare const CODE_KEY: InjectionToken<string>;
27
- export declare const MODULES_API: InjectionToken<string>;
28
- export declare const TOKEN_LOGIN_API: InjectionToken<string>;
29
- export declare const TOKEN_CALLBACK_API: InjectionToken<string>;
30
- export declare const TOKEN_REFRESH_API: InjectionToken<string>;
31
- export declare const TOKEN_INFO_API: InjectionToken<string>;
32
- export declare const TOKEN_NON_ADMIN_REDIRECT_PATH: InjectionToken<string>;
33
15
  export declare const TOKEN_BASE_DOMAIN: InjectionToken<string>;
34
16
  export declare const TOKEN_GLOBAL_NAMESPACE: InjectionToken<string>;
35
17
  export declare const TOKEN_LOGO_URL: InjectionToken<string>;
package/core/module.d.ts CHANGED
@@ -12,22 +12,23 @@ import * as i10 from "@angular/common";
12
12
  import * as i11 from "@angular/forms";
13
13
  import * as i12 from "./pipes/k8s-util.pipe.module";
14
14
  import * as i13 from "../effect-directive/module";
15
- import * as i14 from "./pipes/parse-json-translate.pipe";
16
- import * as i15 from "./pipes/field-not-available.pipe";
17
- import * as i16 from "./pipes/img-header.pipe";
18
- import * as i17 from "./pipes/img-theme.pipe";
19
- import * as i18 from "./pipes/safe.pipe";
20
- import * as i19 from "./pipes/sanitize.pipe";
21
- import * as i20 from "./directives/page-header-content.directive";
22
- import * as i21 from "./directives/intercept-deactivate.directive";
23
- import * as i22 from "./directives/disabled.directive";
24
- import * as i23 from "./directives/click-outside.directive";
25
- import * as i24 from "./directives/scroll-border-observer.directive";
26
- import * as i25 from "./directives/resize.directive";
27
- import * as i26 from "./directives/feature-gate.directive";
28
- import * as i27 from "./pipes/pure.pipe";
15
+ import * as i14 from "../code/code.module";
16
+ import * as i15 from "./pipes/parse-json-translate.pipe";
17
+ import * as i16 from "./pipes/field-not-available.pipe";
18
+ import * as i17 from "./pipes/img-header.pipe";
19
+ import * as i18 from "./pipes/img-theme.pipe";
20
+ import * as i19 from "./pipes/safe.pipe";
21
+ import * as i20 from "./pipes/sanitize.pipe";
22
+ import * as i21 from "./directives/page-header-content.directive";
23
+ import * as i22 from "./directives/intercept-deactivate.directive";
24
+ import * as i23 from "./directives/disabled.directive";
25
+ import * as i24 from "./directives/click-outside.directive";
26
+ import * as i25 from "./directives/scroll-border-observer.directive";
27
+ import * as i26 from "./directives/resize.directive";
28
+ import * as i27 from "./directives/feature-gate.directive";
29
+ import * as i28 from "./pipes/pure.pipe";
29
30
  export declare class CoreModule {
30
31
  static ɵfac: i0.ɵɵFactoryDeclaration<CoreModule, never>;
31
- static ɵmod: i0.ɵɵNgModuleDeclaration<CoreModule, [typeof i1.StandardDatePipe, typeof i2.CrontabNextPipe, typeof i3.MarkedPipe, typeof i4.LocaleTransformPipe, typeof i4.ThemeTransformPipe, typeof i5.TimezoneDisplayPipe, typeof i6.CronHumanReadablePipe, typeof i7.ScrollToFirstInvalidMarkerDirective, typeof i8.FormItemMarginEffectDirective, typeof i9.SpanComponent], [typeof i10.CommonModule, typeof i11.ReactiveFormsModule, typeof i12.K8sUtilPipeModule, typeof i13.EffectDirectiveModule, typeof i9.ReadonlyFieldDirective, typeof i14.ParseJsonTranslatePipe, typeof i15.FieldNotAvailablePipe, typeof i16.ImgHeaderPipe, typeof i17.ImgThemePipe, typeof i18.SafePipe, typeof i19.SanitizePipe, typeof i1.RelativeTimePipe, typeof i20.PageHeaderContentDirective, typeof i1.StandardTimePipe, typeof i7.ScrollToFirstInvalidDirective, typeof i21.InterceptDeactivateDirective, typeof i22.DisabledDirective, typeof i23.ClickOutsideDirective, typeof i24.ScrollBorderObserverDirective, typeof i25.ResizeDirective, typeof i26.FeatureGateDirective, typeof i27.PurePipe], [typeof i1.StandardDatePipe, typeof i2.CrontabNextPipe, typeof i3.MarkedPipe, typeof i4.LocaleTransformPipe, typeof i4.ThemeTransformPipe, typeof i5.TimezoneDisplayPipe, typeof i6.CronHumanReadablePipe, typeof i7.ScrollToFirstInvalidMarkerDirective, typeof i8.FormItemMarginEffectDirective, typeof i9.ReadonlyFieldDirective, typeof i14.ParseJsonTranslatePipe, typeof i15.FieldNotAvailablePipe, typeof i16.ImgHeaderPipe, typeof i17.ImgThemePipe, typeof i18.SafePipe, typeof i19.SanitizePipe, typeof i1.RelativeTimePipe, typeof i20.PageHeaderContentDirective, typeof i1.StandardTimePipe, typeof i7.ScrollToFirstInvalidDirective, typeof i21.InterceptDeactivateDirective, typeof i22.DisabledDirective, typeof i23.ClickOutsideDirective, typeof i24.ScrollBorderObserverDirective, typeof i25.ResizeDirective, typeof i26.FeatureGateDirective, typeof i27.PurePipe, typeof i12.K8sUtilPipeModule, typeof i13.EffectDirectiveModule]>;
32
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CoreModule, [typeof i1.StandardDatePipe, typeof i2.CrontabNextPipe, typeof i3.MarkedPipe, typeof i4.LocaleTransformPipe, typeof i4.ThemeTransformPipe, typeof i5.TimezoneDisplayPipe, typeof i6.CronHumanReadablePipe, typeof i7.ScrollToFirstInvalidMarkerDirective, typeof i8.FormItemMarginEffectDirective, typeof i9.SpanComponent], [typeof i10.CommonModule, typeof i11.ReactiveFormsModule, typeof i12.K8sUtilPipeModule, typeof i13.EffectDirectiveModule, typeof i14.CodeModule, typeof i9.ReadonlyFieldDirective, typeof i15.ParseJsonTranslatePipe, typeof i16.FieldNotAvailablePipe, typeof i17.ImgHeaderPipe, typeof i18.ImgThemePipe, typeof i19.SafePipe, typeof i20.SanitizePipe, typeof i1.RelativeTimePipe, typeof i21.PageHeaderContentDirective, typeof i1.StandardTimePipe, typeof i7.ScrollToFirstInvalidDirective, typeof i22.InterceptDeactivateDirective, typeof i23.DisabledDirective, typeof i24.ClickOutsideDirective, typeof i25.ScrollBorderObserverDirective, typeof i26.ResizeDirective, typeof i27.FeatureGateDirective, typeof i28.PurePipe], [typeof i1.StandardDatePipe, typeof i2.CrontabNextPipe, typeof i3.MarkedPipe, typeof i4.LocaleTransformPipe, typeof i4.ThemeTransformPipe, typeof i5.TimezoneDisplayPipe, typeof i6.CronHumanReadablePipe, typeof i7.ScrollToFirstInvalidMarkerDirective, typeof i8.FormItemMarginEffectDirective, typeof i9.ReadonlyFieldDirective, typeof i15.ParseJsonTranslatePipe, typeof i16.FieldNotAvailablePipe, typeof i17.ImgHeaderPipe, typeof i18.ImgThemePipe, typeof i19.SafePipe, typeof i20.SanitizePipe, typeof i1.RelativeTimePipe, typeof i21.PageHeaderContentDirective, typeof i1.StandardTimePipe, typeof i7.ScrollToFirstInvalidDirective, typeof i22.InterceptDeactivateDirective, typeof i23.DisabledDirective, typeof i24.ClickOutsideDirective, typeof i25.ScrollBorderObserverDirective, typeof i26.ResizeDirective, typeof i27.FeatureGateDirective, typeof i28.PurePipe, typeof i12.K8sUtilPipeModule, typeof i14.CodeModule, typeof i13.EffectDirectiveModule]>;
32
33
  static ɵinj: i0.ɵɵInjectorDeclaration<CoreModule>;
33
34
  }
@@ -21,7 +21,6 @@ export declare const CREATOR = "creator";
21
21
  export declare const UPDATED__AT = "updated-at";
22
22
  export declare const PROJECT = "project";
23
23
  export declare const CLUSTER = "cluster";
24
- export declare const TRANSLATION = "translation";
25
24
  export interface BaseNormalizeTypeParams {
26
25
  type: string;
27
26
  baseDomain: string;
@@ -71,10 +70,6 @@ export declare class K8sUtilService<R extends string = string> {
71
70
  getLabel<T extends KubernetesResource>(resource: T, params: BaseNormalizeTypeParams): string;
72
71
  getProject<T extends KubernetesResource>(resource: T): string;
73
72
  private retryUpdate;
74
- /**
75
- * @deprecated
76
- */
77
- $get<T extends KubernetesResource>(resource: T, type: string): string;
78
73
  static ɵfac: i0.ɵɵFactoryDeclaration<K8sUtilService<any>, never>;
79
74
  static ɵprov: i0.ɵɵInjectableDeclaration<K8sUtilService<any>>;
80
75
  }
@@ -222,6 +222,7 @@ export interface ProductBaseSpec extends GenProduct<ProductKey> {
222
222
  external?: string;
223
223
  address: string;
224
224
  username: string;
225
+ secretRef?: string;
225
226
  };
226
227
  replicas: number;
227
228
  version: string;
@@ -584,7 +585,7 @@ export declare enum HelmRequestPhaseEnum {
584
585
  Uninstalling = "Uninstalling"
585
586
  }
586
587
  export interface HelmRequestSpec {
587
- chart: string;
588
+ chart?: string;
588
589
  values: Record<string, unknown>;
589
590
  valuesFrom?: Array<{
590
591
  configMapKeyRef?: ConfigMapKeyRef;
@@ -3,6 +3,7 @@
3
3
  * @module utils
4
4
  */
5
5
  import { Sort } from '@alauda/ui';
6
+ import { ActivatedRouteSnapshot } from '@angular/router';
6
7
  import { UnionToIntersection } from 'ts-essentials';
7
8
  import { Terminal } from 'xterm';
8
9
  import { Callback, Keys, KubernetesResource, Nullable, Readonlyable } from '../types/public-api';
@@ -54,7 +55,6 @@ export declare const getToPath: (from: string, relative: string) => string;
54
55
  export declare const trackByName: <T extends KubernetesResource>(_: number, resource: T) => string;
55
56
  export declare function tableSort<T>(list: T[], sort: Sort, sortActiveValueFn: (item: T, name: string) => string | number): T[];
56
57
  export declare function tableSortAdvance<T>(list: T[], sort: Sort, sortActiveValueFn: (item: T, name: string) => string | number): T[];
57
- export declare const nodeName2Address: (name: string) => string;
58
58
  export declare const buildImageAddress: (url: string, tagOrDigest: string) => string;
59
59
  export declare const parseImageAddress: (addr: string) => {
60
60
  digest?: string;
@@ -63,3 +63,4 @@ export declare const parseImageAddress: (addr: string) => {
63
63
  };
64
64
  export declare const setWindowsXtermTools: (xterm: Terminal) => void;
65
65
  export declare const clearWindowsXtermTools: () => void;
66
+ export declare function getParamFromParent(key: string, snapshot: ActivatedRouteSnapshot): string;
@@ -3,36 +3,26 @@
3
3
  * @module api
4
4
  */
5
5
  import { HttpClient } from '@angular/common/http';
6
- import { Inject, Injectable } from '@angular/core';
7
- import { Subject, map, retry, shareReplay, takeUntil } from 'rxjs';
8
- import { MODULES_API } from '../core/public-api';
6
+ import { Injectable, inject } from '@angular/core';
7
+ import { map, retry, shareReplay } from 'rxjs';
9
8
  import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/common/http";
9
+ const MODULES_API = '/console/api/v1/modules';
11
10
  const RETRY_COUNT = 3;
12
11
  export class ApiGatewayService {
13
- constructor(http, modulesApi) {
14
- this.http = http;
15
- this.modulesApi = modulesApi;
16
- this.destroy$$ = new Subject();
12
+ constructor() {
13
+ this.http = inject(HttpClient);
17
14
  this.state$ = this.http
18
- .get(this.modulesApi)
19
- .pipe(retry(RETRY_COUNT), shareReplay(1), takeUntil(this.destroy$$));
20
- }
21
- ngOnDestroy() {
22
- this.destroy$$.next();
23
- this.destroy$$.complete();
15
+ .get(MODULES_API)
16
+ .pipe(retry(RETRY_COUNT), shareReplay(1));
24
17
  }
25
18
  getApiAddress() {
26
19
  return this.state$.pipe(map(state => state.apiAddress));
27
20
  }
28
- static { this.ɵfac = function ApiGatewayService_Factory(t) { return new (t || ApiGatewayService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(MODULES_API)); }; }
21
+ static { this.ɵfac = function ApiGatewayService_Factory(t) { return new (t || ApiGatewayService)(); }; }
29
22
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ApiGatewayService, factory: ApiGatewayService.ɵfac, providedIn: 'root' }); }
30
23
  }
31
24
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ApiGatewayService, [{
32
25
  type: Injectable,
33
26
  args: [{ providedIn: 'root' }]
34
- }], function () { return [{ type: i1.HttpClient }, { type: undefined, decorators: [{
35
- type: Inject,
36
- args: [MODULES_API]
37
- }] }]; }, null); })();
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWdhdGV3YXkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvYXBpLWdhdGV3YXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7QUFRakQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBR3RCLE1BQU0sT0FBTyxpQkFBaUI7SUFPNUIsWUFDbUIsSUFBZ0IsRUFDSyxVQUFrQjtRQUR2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ0ssZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQVJ6QyxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVoQyxXQUFNLEdBQUcsSUFBSSxDQUFDLElBQUk7YUFDaEMsR0FBRyxDQUFrQixJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ3JDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUtwRSxDQUFDO0lBRUosV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDMUQsQ0FBQztrRkFuQlUsaUJBQWlCLDBDQVNsQixXQUFXO3VFQVRWLGlCQUFpQixXQUFqQixpQkFBaUIsbUJBREosTUFBTTs7dUZBQ25CLGlCQUFpQjtjQUQ3QixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztzQkFVN0IsTUFBTTt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYXBpXG4gKi9cblxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBtYXAsIHJldHJ5LCBzaGFyZVJlcGxheSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE1PRFVMRVNfQVBJIH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcblxuZXhwb3J0IGludGVyZmFjZSBBcGlHYXRld2F5U3RhdGUge1xuICBhcGlBZGRyZXNzOiBzdHJpbmc7XG4gIGFzc2V0c0hvc3RQYXRoOiBzdHJpbmc7XG4gIGFzc2V0c1VSTFBhdGg6IHN0cmluZztcbn1cblxuY29uc3QgUkVUUllfQ09VTlQgPSAzO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEFwaUdhdGV3YXlTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgc3RhdGUkID0gdGhpcy5odHRwXG4gICAgLmdldDxBcGlHYXRld2F5U3RhdGU+KHRoaXMubW9kdWxlc0FwaSlcbiAgICAucGlwZShyZXRyeShSRVRSWV9DT1VOVCksIHNoYXJlUmVwbGF5KDEpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXG4gICAgQEluamVjdChNT0RVTEVTX0FQSSkgcHJpdmF0ZSByZWFkb25seSBtb2R1bGVzQXBpOiBzdHJpbmcsXG4gICkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JCQuY29tcGxldGUoKTtcbiAgfVxuXG4gIGdldEFwaUFkZHJlc3MoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUkLnBpcGUobWFwKHN0YXRlID0+IHN0YXRlLmFwaUFkZHJlc3MpKTtcbiAgfVxufVxuIl19
27
+ }], null, null); })();
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWdhdGV3YXkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvYXBpLWdhdGV3YXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVEvQyxNQUFNLFdBQVcsR0FBRyx5QkFBeUIsQ0FBQztBQUU5QyxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUM7QUFHdEIsTUFBTSxPQUFPLGlCQUFpQjtJQUQ5QjtRQUVtQixTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTFCLFdBQU0sR0FBRyxJQUFJLENBQUMsSUFBSTthQUNoQyxHQUFHLENBQWtCLFdBQVcsQ0FBQzthQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBSzdDO0lBSEMsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDMUQsQ0FBQztrRkFUVSxpQkFBaUI7dUVBQWpCLGlCQUFpQixXQUFqQixpQkFBaUIsbUJBREosTUFBTTs7dUZBQ25CLGlCQUFpQjtjQUQ3QixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgYXBpXG4gKi9cblxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWFwLCByZXRyeSwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBBcGlHYXRld2F5U3RhdGUge1xuICBhcGlBZGRyZXNzOiBzdHJpbmc7XG4gIGFzc2V0c0hvc3RQYXRoOiBzdHJpbmc7XG4gIGFzc2V0c1VSTFBhdGg6IHN0cmluZztcbn1cblxuY29uc3QgTU9EVUxFU19BUEkgPSAnL2NvbnNvbGUvYXBpL3YxL21vZHVsZXMnO1xuXG5jb25zdCBSRVRSWV9DT1VOVCA9IDM7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXBpR2F0ZXdheVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzdGF0ZSQgPSB0aGlzLmh0dHBcbiAgICAuZ2V0PEFwaUdhdGV3YXlTdGF0ZT4oTU9EVUxFU19BUEkpXG4gICAgLnBpcGUocmV0cnkoUkVUUllfQ09VTlQpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgZ2V0QXBpQWRkcmVzcygpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZSQucGlwZShtYXAoc3RhdGUgPT4gc3RhdGUuYXBpQWRkcmVzcykpO1xuICB9XG59XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
- import { map, shareReplay } from 'rxjs';
3
- import { RESOURCE_TYPES } from '../core/public-api';
2
+ import { map } from 'rxjs';
3
+ import { RESOURCE_TYPES, publishRef, } from '../core/public-api';
4
4
  import { K8sApiService } from './k8s-api.service';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "./k8s-api.service";
@@ -13,7 +13,7 @@ export class ProductService {
13
13
  type: RESOURCE_TYPES.PRODUCT_BASE,
14
14
  name: 'base',
15
15
  })
16
- .pipe(shareReplay());
16
+ .pipe(publishRef());
17
17
  }
18
18
  filterDeployedProduct(data, accessor, filterFn) {
19
19
  return this.productBase$.pipe(map(base => filterFn(data || [], nav => {
@@ -33,4 +33,4 @@ export class ProductService {
33
33
  providedIn: 'root',
34
34
  }]
35
35
  }], function () { return [{ type: i1.K8sApiService }]; }, null); })();
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9wcm9kdWN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV4QyxPQUFPLEVBQTJCLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTdFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBS2xELE1BQU0sT0FBTyxjQUFjO0lBU3pCLFlBQTZCLE1BQXFCO1FBQXJCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFSbEQsYUFBUSxHQUE0QixFQUFFLENBQUM7UUFDdkMsaUJBQVksR0FBRyxJQUFJLENBQUMsTUFBTTthQUN2QixpQkFBaUIsQ0FBYztZQUM5QixJQUFJLEVBQUUsY0FBYyxDQUFDLFlBQVk7WUFDakMsSUFBSSxFQUFFLE1BQU07U0FDYixDQUFDO2FBQ0QsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFFOEIsQ0FBQztJQUV0RCxxQkFBcUIsQ0FDbkIsSUFBUyxFQUNULFFBQTRCLEVBQzVCLFFBQWtEO1FBRWxELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQzNCLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUNULFFBQVEsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQ3pCLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQWUsQ0FBQztZQUM1QyxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxPQUFPLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELGlCQUFpQixDQUFDLE9BQW1CO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQzsrRUE1QlUsY0FBYzt1RUFBZCxjQUFjLFdBQWQsY0FBYyxtQkFGYixNQUFNOzt1RkFFUCxjQUFjO2NBSDFCLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG1hcCwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgUHJvZHVjdEJhc2UsIFByb2R1Y3RLZXksIFJFU09VUkNFX1RZUEVTIH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHsgSzhzQXBpU2VydmljZSB9IGZyb20gJy4vazhzLWFwaS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RTZXJ2aWNlIHtcbiAgc2V0dGluZ3M6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XG4gIHByb2R1Y3RCYXNlJCA9IHRoaXMuazhzQXBpXG4gICAgLmdldEdsb2JhbFJlc291cmNlPFByb2R1Y3RCYXNlPih7XG4gICAgICB0eXBlOiBSRVNPVVJDRV9UWVBFUy5QUk9EVUNUX0JBU0UsXG4gICAgICBuYW1lOiAnYmFzZScsXG4gICAgfSlcbiAgICAucGlwZShzaGFyZVJlcGxheSgpKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGs4c0FwaTogSzhzQXBpU2VydmljZSkge31cblxuICBmaWx0ZXJEZXBsb3llZFByb2R1Y3Q8VD4oXG4gICAgZGF0YTogVFtdLFxuICAgIGFjY2Vzc29yOiAoYXJnOiBUKSA9PiBzdHJpbmcsXG4gICAgZmlsdGVyRm46IChhcmc6IFRbXSwgZm46IChhOiBUKSA9PiBib29sZWFuKSA9PiBUW10sXG4gICkge1xuICAgIHJldHVybiB0aGlzLnByb2R1Y3RCYXNlJC5waXBlKFxuICAgICAgbWFwKGJhc2UgPT5cbiAgICAgICAgZmlsdGVyRm4oZGF0YSB8fCBbXSwgbmF2ID0+IHtcbiAgICAgICAgICBjb25zdCBwcm9kdWN0ID0gYWNjZXNzb3IobmF2KSBhcyBQcm9kdWN0S2V5O1xuICAgICAgICAgIHJldHVybiAhcHJvZHVjdCB8fCBiYXNlLnNwZWM/Lltwcm9kdWN0XT8uaW5zdGFsbDtcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBpc1Byb2R1Y3REZXBsb3llZChwcm9kdWN0OiBQcm9kdWN0S2V5KSB7XG4gICAgcmV0dXJuIHRoaXMucHJvZHVjdEJhc2UkLnBpcGUobWFwKGJhc2UgPT4gYmFzZS5zcGVjPy5bcHJvZHVjdF0/Lmluc3RhbGwpKTtcbiAgfVxufVxuIl19
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2FwaS9wcm9kdWN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNCLE9BQU8sRUFHTCxjQUFjLEVBQ2QsVUFBVSxHQUNYLE1BQU0sb0JBQW9CLENBQUM7QUFFNUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFLbEQsTUFBTSxPQUFPLGNBQWM7SUFTekIsWUFBNkIsTUFBcUI7UUFBckIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQVJsRCxhQUFRLEdBQTRCLEVBQUUsQ0FBQztRQUN2QyxpQkFBWSxHQUFHLElBQUksQ0FBQyxNQUFNO2FBQ3ZCLGlCQUFpQixDQUFjO1lBQzlCLElBQUksRUFBRSxjQUFjLENBQUMsWUFBWTtZQUNqQyxJQUFJLEVBQUUsTUFBTTtTQUNiLENBQUM7YUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUUrQixDQUFDO0lBRXRELHFCQUFxQixDQUNuQixJQUFTLEVBQ1QsUUFBNEIsRUFDNUIsUUFBa0Q7UUFFbEQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDM0IsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ1QsUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDekIsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBZSxDQUFDO1lBQzVDLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsaUJBQWlCLENBQUMsT0FBbUI7UUFDbkMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM1RSxDQUFDOytFQTVCVSxjQUFjO3VFQUFkLGNBQWMsV0FBZCxjQUFjLG1CQUZiLE1BQU07O3VGQUVQLGNBQWM7Y0FIMUIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIFByb2R1Y3RCYXNlLFxuICBQcm9kdWN0S2V5LFxuICBSRVNPVVJDRV9UWVBFUyxcbiAgcHVibGlzaFJlZixcbn0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHsgSzhzQXBpU2VydmljZSB9IGZyb20gJy4vazhzLWFwaS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RTZXJ2aWNlIHtcbiAgc2V0dGluZ3M6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XG4gIHByb2R1Y3RCYXNlJCA9IHRoaXMuazhzQXBpXG4gICAgLmdldEdsb2JhbFJlc291cmNlPFByb2R1Y3RCYXNlPih7XG4gICAgICB0eXBlOiBSRVNPVVJDRV9UWVBFUy5QUk9EVUNUX0JBU0UsXG4gICAgICBuYW1lOiAnYmFzZScsXG4gICAgfSlcbiAgICAucGlwZShwdWJsaXNoUmVmKCkpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgazhzQXBpOiBLOHNBcGlTZXJ2aWNlKSB7fVxuXG4gIGZpbHRlckRlcGxveWVkUHJvZHVjdDxUPihcbiAgICBkYXRhOiBUW10sXG4gICAgYWNjZXNzb3I6IChhcmc6IFQpID0+IHN0cmluZyxcbiAgICBmaWx0ZXJGbjogKGFyZzogVFtdLCBmbjogKGE6IFQpID0+IGJvb2xlYW4pID0+IFRbXSxcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMucHJvZHVjdEJhc2UkLnBpcGUoXG4gICAgICBtYXAoYmFzZSA9PlxuICAgICAgICBmaWx0ZXJGbihkYXRhIHx8IFtdLCBuYXYgPT4ge1xuICAgICAgICAgIGNvbnN0IHByb2R1Y3QgPSBhY2Nlc3NvcihuYXYpIGFzIFByb2R1Y3RLZXk7XG4gICAgICAgICAgcmV0dXJuICFwcm9kdWN0IHx8IGJhc2Uuc3BlYz8uW3Byb2R1Y3RdPy5pbnN0YWxsO1xuICAgICAgICB9KSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIGlzUHJvZHVjdERlcGxveWVkKHByb2R1Y3Q6IFByb2R1Y3RLZXkpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9kdWN0QmFzZSQucGlwZShtYXAoYmFzZSA9PiBiYXNlLnNwZWM/Lltwcm9kdWN0XT8uaW5zdGFsbCkpO1xuICB9XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { HttpClient } from '@angular/common/http';
2
2
  import { Injectable } from '@angular/core';
3
3
  import { flatMap } from 'lodash-es';
4
- import { forkJoin, map, pluck, switchMap } from 'rxjs';
4
+ import { forkJoin, map, switchMap } from 'rxjs';
5
5
  import { API_GATEWAY, skipError, } from '../core/public-api';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@angular/common/http";
@@ -13,7 +13,7 @@ export class ProjectApiService {
13
13
  getProjects(params) {
14
14
  return this.http
15
15
  .get(BASE_URL, params ? { params } : undefined)
16
- .pipe(pluck('items'), skipError([]));
16
+ .pipe(map(res => res.items), skipError([]));
17
17
  }
18
18
  getNamespaces({ project, cluster }) {
19
19
  return this.http.get(`${BASE_URL}/${project}/clusters/${cluster}/namespaces`);
@@ -32,7 +32,7 @@ export class ProjectApiService {
32
32
  return forkJoin(clusters.map(({ name: clusterName }) => this.getClusterNamespaces(projectName, clusterName).pipe(map(list => list.map(item => ({
33
33
  namespace: item.metadata.name,
34
34
  cluster: clusterName,
35
- }))))));
35
+ }))), skipError([]))));
36
36
  }), map(groups => flatMap(groups)), skipError([]));
37
37
  }
38
38
  static { this.ɵfac = function ProjectApiService_Factory(t) { return new (t || ProjectApiService)(i0.ɵɵinject(i1.HttpClient)); }; }
@@ -42,4 +42,4 @@ export class ProjectApiService {
42
42
  type: Injectable,
43
43
  args: [{ providedIn: 'root' }]
44
44
  }], function () { return [{ type: i1.HttpClient }]; }, null); })();
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvcHJvamVjdC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBYyxRQUFRLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbkUsT0FBTyxFQUNMLFdBQVcsRUFLWCxTQUFTLEdBQ1YsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBRTVCLE1BQU0sUUFBUSxHQUFHLEdBQUcsV0FBVyxtQkFBbUIsQ0FBQztBQUduRCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQTZCLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7SUFBRyxDQUFDO0lBRWpELFdBQVcsQ0FBQyxNQUEyQjtRQUNyQyxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsR0FBRyxDQUNGLFFBQVEsRUFDUixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FDaEM7YUFDQSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxhQUFhLENBQUMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUF3QztRQUN0RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQixHQUFHLFFBQVEsSUFBSSxPQUFPLGFBQWEsT0FBTyxhQUFhLENBQ3hELENBQUM7SUFDSixDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQixtREFBbUQsSUFBSSxFQUFFLENBQzFELENBQUM7SUFDSixDQUFDO0lBRUQsb0JBQW9CLENBQUMsT0FBZSxFQUFFLE9BQWU7UUFDbkQsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNiLEdBQUcsQ0FDRixvQ0FBb0MsT0FBTyxhQUFhLE9BQU8sYUFBYSxDQUM3RTthQUNBLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsb0JBQW9CLENBQ2xCLFdBQW1CO1FBRW5CLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQy9CLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNsQixNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUV2QyxPQUFPLFFBQVEsQ0FDYixRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxDQUNyQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDdEQsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ1QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2hCLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUk7Z0JBQzdCLE9BQU8sRUFBRSxXQUFXO2FBQ3JCLENBQUMsQ0FBQyxDQUNKLENBQ0YsQ0FDRixDQUNGLENBQUM7UUFDSixDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsRUFDOUIsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUNkLENBQUM7SUFDSixDQUFDO2tGQXZEVSxpQkFBaUI7dUVBQWpCLGlCQUFpQixXQUFqQixpQkFBaUIsbUJBREosTUFBTTs7dUZBQ25CLGlCQUFpQjtjQUQ3QixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZsYXRNYXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZm9ya0pvaW4sIG1hcCwgcGx1Y2ssIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBBUElfR0FURVdBWSxcbiAgS3ViZXJuZXRlc1Jlc291cmNlTGlzdCxcbiAgTmFtZXNwYWNlLFxuICBQcm9qZWN0LFxuICBSZXNvdXJjZUxpc3RQYXJhbXMsXG4gIHNraXBFcnJvcixcbn0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcblxuY29uc3QgQkFTRV9VUkwgPSBgJHtBUElfR0FURVdBWX0vYXV0aC92MS9wcm9qZWN0c2A7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgUHJvamVjdEFwaVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQpIHt9XG5cbiAgZ2V0UHJvamVjdHMocGFyYW1zPzogUmVzb3VyY2VMaXN0UGFyYW1zKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PFByb2plY3Q+PihcbiAgICAgICAgQkFTRV9VUkwsXG4gICAgICAgIHBhcmFtcyA/IHsgcGFyYW1zIH0gOiB1bmRlZmluZWQsXG4gICAgICApXG4gICAgICAucGlwZShwbHVjaygnaXRlbXMnKSwgc2tpcEVycm9yKFtdIGFzIFByb2plY3RbXSkpO1xuICB9XG5cbiAgZ2V0TmFtZXNwYWNlcyh7IHByb2plY3QsIGNsdXN0ZXIgfTogeyBwcm9qZWN0OiBzdHJpbmc7IGNsdXN0ZXI6IHN0cmluZyB9KSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxOYW1lc3BhY2U+PihcbiAgICAgIGAke0JBU0VfVVJMfS8ke3Byb2plY3R9L2NsdXN0ZXJzLyR7Y2x1c3Rlcn0vbmFtZXNwYWNlc2AsXG4gICAgKTtcbiAgfVxuXG4gIGdldChuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFByb2plY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxQcm9qZWN0PihcbiAgICAgIGB7e0FQSV9HQVRFV0FZfX0vYXBpcy9hdXRoLmFsYXVkYS5pby92MS9wcm9qZWN0cy8ke25hbWV9YCxcbiAgICApO1xuICB9XG5cbiAgZ2V0Q2x1c3Rlck5hbWVzcGFjZXMocHJvamVjdDogc3RyaW5nLCBjbHVzdGVyOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PEt1YmVybmV0ZXNSZXNvdXJjZUxpc3Q8TmFtZXNwYWNlPj4oXG4gICAgICAgIGB7e0FQSV9HQVRFV0FZfX0vYXV0aC92MS9wcm9qZWN0cy8ke3Byb2plY3R9L2NsdXN0ZXJzLyR7Y2x1c3Rlcn0vbmFtZXNwYWNlc2AsXG4gICAgICApXG4gICAgICAucGlwZShtYXAocmVzID0+IHJlcy5pdGVtcykpO1xuICB9XG5cbiAgZ2V0UHJvamVjdE5hbWVzcGFjZXMoXG4gICAgcHJvamVjdE5hbWU6IHN0cmluZyxcbiAgKTogT2JzZXJ2YWJsZTxBcnJheTx7IGNsdXN0ZXI6IHN0cmluZzsgbmFtZXNwYWNlOiBzdHJpbmcgfT4+IHtcbiAgICByZXR1cm4gdGhpcy5nZXQocHJvamVjdE5hbWUpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAocHJvamVjdCA9PiB7XG4gICAgICAgIGNvbnN0IGNsdXN0ZXJzID0gcHJvamVjdC5zcGVjLmNsdXN0ZXJzO1xuXG4gICAgICAgIHJldHVybiBmb3JrSm9pbihcbiAgICAgICAgICBjbHVzdGVycy5tYXAoKHsgbmFtZTogY2x1c3Rlck5hbWUgfSkgPT5cbiAgICAgICAgICAgIHRoaXMuZ2V0Q2x1c3Rlck5hbWVzcGFjZXMocHJvamVjdE5hbWUsIGNsdXN0ZXJOYW1lKS5waXBlKFxuICAgICAgICAgICAgICBtYXAobGlzdCA9PlxuICAgICAgICAgICAgICAgIGxpc3QubWFwKGl0ZW0gPT4gKHtcbiAgICAgICAgICAgICAgICAgIG5hbWVzcGFjZTogaXRlbS5tZXRhZGF0YS5uYW1lLFxuICAgICAgICAgICAgICAgICAgY2x1c3RlcjogY2x1c3Rlck5hbWUsXG4gICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgICBtYXAoZ3JvdXBzID0+IGZsYXRNYXAoZ3JvdXBzKSksXG4gICAgICBza2lwRXJyb3IoW10pLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvcHJvamVjdC1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBYyxRQUFRLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU1RCxPQUFPLEVBQ0wsV0FBVyxFQUtYLFNBQVMsR0FDVixNQUFNLG9CQUFvQixDQUFDOzs7QUFFNUIsTUFBTSxRQUFRLEdBQUcsR0FBRyxXQUFXLG1CQUFtQixDQUFDO0FBR25ELE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFBNkIsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUFHLENBQUM7SUFFakQsV0FBVyxDQUFDLE1BQTJCO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixHQUFHLENBQ0YsUUFBUSxFQUNSLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUNoQzthQUNBLElBQUksQ0FDSCxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQ3JCLFNBQVMsQ0FBQyxFQUFlLENBQUMsQ0FDM0IsQ0FBQztJQUNOLENBQUM7SUFFRCxhQUFhLENBQUMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUF3QztRQUN0RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQixHQUFHLFFBQVEsSUFBSSxPQUFPLGFBQWEsT0FBTyxhQUFhLENBQ3hELENBQUM7SUFDSixDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQixtREFBbUQsSUFBSSxFQUFFLENBQzFELENBQUM7SUFDSixDQUFDO0lBRUQsb0JBQW9CLENBQUMsT0FBZSxFQUFFLE9BQWU7UUFDbkQsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNiLEdBQUcsQ0FDRixvQ0FBb0MsT0FBTyxhQUFhLE9BQU8sYUFBYSxDQUM3RTthQUNBLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsb0JBQW9CLENBQ2xCLFdBQW1CO1FBRW5CLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQy9CLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNsQixNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUV2QyxPQUFPLFFBQVEsQ0FDYixRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxDQUNyQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDdEQsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ1QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2hCLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUk7Z0JBQzdCLE9BQU8sRUFBRSxXQUFXO2FBQ3JCLENBQUMsQ0FBQyxDQUNKLEVBQ0QsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUNkLENBQ0YsQ0FDRixDQUFDO1FBQ0osQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQzlCLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FDZCxDQUFDO0lBQ0osQ0FBQztrRkEzRFUsaUJBQWlCO3VFQUFqQixpQkFBaUIsV0FBakIsaUJBQWlCLG1CQURKLE1BQU07O3VGQUNuQixpQkFBaUI7Y0FEN0IsVUFBVTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmbGF0TWFwIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZvcmtKb2luLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICBBUElfR0FURVdBWSxcbiAgS3ViZXJuZXRlc1Jlc291cmNlTGlzdCxcbiAgTmFtZXNwYWNlLFxuICBQcm9qZWN0LFxuICBSZXNvdXJjZUxpc3RQYXJhbXMsXG4gIHNraXBFcnJvcixcbn0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcblxuY29uc3QgQkFTRV9VUkwgPSBgJHtBUElfR0FURVdBWX0vYXV0aC92MS9wcm9qZWN0c2A7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgUHJvamVjdEFwaVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQpIHt9XG5cbiAgZ2V0UHJvamVjdHMocGFyYW1zPzogUmVzb3VyY2VMaXN0UGFyYW1zKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PFByb2plY3Q+PihcbiAgICAgICAgQkFTRV9VUkwsXG4gICAgICAgIHBhcmFtcyA/IHsgcGFyYW1zIH0gOiB1bmRlZmluZWQsXG4gICAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlcyA9PiByZXMuaXRlbXMpLFxuICAgICAgICBza2lwRXJyb3IoW10gYXMgUHJvamVjdFtdKSxcbiAgICAgICk7XG4gIH1cblxuICBnZXROYW1lc3BhY2VzKHsgcHJvamVjdCwgY2x1c3RlciB9OiB7IHByb2plY3Q6IHN0cmluZzsgY2x1c3Rlcjogc3RyaW5nIH0pIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PE5hbWVzcGFjZT4+KFxuICAgICAgYCR7QkFTRV9VUkx9LyR7cHJvamVjdH0vY2x1c3RlcnMvJHtjbHVzdGVyfS9uYW1lc3BhY2VzYCxcbiAgICApO1xuICB9XG5cbiAgZ2V0KG5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8UHJvamVjdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFByb2plY3Q+KFxuICAgICAgYHt7QVBJX0dBVEVXQVl9fS9hcGlzL2F1dGguYWxhdWRhLmlvL3YxL3Byb2plY3RzLyR7bmFtZX1gLFxuICAgICk7XG4gIH1cblxuICBnZXRDbHVzdGVyTmFtZXNwYWNlcyhwcm9qZWN0OiBzdHJpbmcsIGNsdXN0ZXI6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxOYW1lc3BhY2U+PihcbiAgICAgICAgYHt7QVBJX0dBVEVXQVl9fS9hdXRoL3YxL3Byb2plY3RzLyR7cHJvamVjdH0vY2x1c3RlcnMvJHtjbHVzdGVyfS9uYW1lc3BhY2VzYCxcbiAgICAgIClcbiAgICAgIC5waXBlKG1hcChyZXMgPT4gcmVzLml0ZW1zKSk7XG4gIH1cblxuICBnZXRQcm9qZWN0TmFtZXNwYWNlcyhcbiAgICBwcm9qZWN0TmFtZTogc3RyaW5nLFxuICApOiBPYnNlcnZhYmxlPEFycmF5PHsgY2x1c3Rlcjogc3RyaW5nOyBuYW1lc3BhY2U6IHN0cmluZyB9Pj4ge1xuICAgIHJldHVybiB0aGlzLmdldChwcm9qZWN0TmFtZSkucGlwZShcbiAgICAgIHN3aXRjaE1hcChwcm9qZWN0ID0+IHtcbiAgICAgICAgY29uc3QgY2x1c3RlcnMgPSBwcm9qZWN0LnNwZWMuY2x1c3RlcnM7XG5cbiAgICAgICAgcmV0dXJuIGZvcmtKb2luKFxuICAgICAgICAgIGNsdXN0ZXJzLm1hcCgoeyBuYW1lOiBjbHVzdGVyTmFtZSB9KSA9PlxuICAgICAgICAgICAgdGhpcy5nZXRDbHVzdGVyTmFtZXNwYWNlcyhwcm9qZWN0TmFtZSwgY2x1c3Rlck5hbWUpLnBpcGUoXG4gICAgICAgICAgICAgIG1hcChsaXN0ID0+XG4gICAgICAgICAgICAgICAgbGlzdC5tYXAoaXRlbSA9PiAoe1xuICAgICAgICAgICAgICAgICAgbmFtZXNwYWNlOiBpdGVtLm1ldGFkYXRhLm5hbWUsXG4gICAgICAgICAgICAgICAgICBjbHVzdGVyOiBjbHVzdGVyTmFtZSxcbiAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIHNraXBFcnJvcihbXSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICAgIG1hcChncm91cHMgPT4gZmxhdE1hcChncm91cHMpKSxcbiAgICAgIHNraXBFcnJvcihbXSksXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -13,11 +13,10 @@ export * from './k8s-api-resource.service';
13
13
  export * from './page-visibility.service';
14
14
  export * from './resource-update.service';
15
15
  export * from './types';
16
- export * from './monitor-api.service';
17
16
  export * from './crypto.interceptor';
18
17
  export * from './product.service';
19
18
  export * from './project-api.service';
20
19
  export * from './platform-ui.service';
21
20
  export * from './api-compatible.interceptor';
22
21
  export * from './acp-common-api.service';
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsY0FBYztBQUNkLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogW1tpbmNsdWRlOmFwaS9SRUFETUUubWRdXVxuICogQG1vZHVsZSBhcGlcbiAqIEBwcmVmZXJyZWRcbiAqL1xuXG4vKiogaW1wb3J0cyAqL1xuZXhwb3J0ICogZnJvbSAnLi9hcGktZ2F0ZXdheS5pbnRlcmNlcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL2FwaS1nYXRld2F5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jbHVzdGVyLXZlcnNpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2hlbHBlcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9rOHMtYXBpLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9rOHMtYXBpLXJlc291cmNlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wYWdlLXZpc2liaWxpdHkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc291cmNlLXVwZGF0ZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9tb25pdG9yLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY3J5cHRvLmludGVyY2VwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZHVjdC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvamVjdC1hcGkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3BsYXRmb3JtLXVpLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGktY29tcGF0aWJsZS5pbnRlcmNlcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL2FjcC1jb21tb24tYXBpLnNlcnZpY2UnO1xuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9hcGkvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsY0FBYztBQUNkLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFtbaW5jbHVkZTphcGkvUkVBRE1FLm1kXV1cbiAqIEBtb2R1bGUgYXBpXG4gKiBAcHJlZmVycmVkXG4gKi9cblxuLyoqIGltcG9ydHMgKi9cbmV4cG9ydCAqIGZyb20gJy4vYXBpLWdhdGV3YXkuaW50ZXJjZXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9hcGktZ2F0ZXdheS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY2x1c3Rlci12ZXJzaW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vazhzLWFwaS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vazhzLWFwaS1yZXNvdXJjZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcGFnZS12aXNpYmlsaXR5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9yZXNvdXJjZS11cGRhdGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vY3J5cHRvLmludGVyY2VwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZHVjdC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvamVjdC1hcGkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3BsYXRmb3JtLXVpLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGktY29tcGF0aWJsZS5pbnRlcmNlcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL2FjcC1jb21tb24tYXBpLnNlcnZpY2UnO1xuIl19