@alauda-fe/common
Version:
Alauda frontend team common codes.
49 lines (48 loc) • 2.11 kB
TypeScript
import { Injector } from '@angular/core';
import { Observable } from 'rxjs';
import { K8sResourceDefinition, ResourceWriteParams } from '../api/types';
import { ANNOTATIONS, KubernetesResource, StringMap } from '../core/public-api';
import { K8sUtilService, LABELS } from '../core/services/k8s-util.service';
import * as i0 from "@angular/core";
export declare class K8sSharedUtilService<R extends string = string> extends K8sUtilService<R> {
constructor(injector: Injector);
/**
* 更新 Annotation 或 Label
*/
updatePart<T extends KubernetesResource>(params: ResourceWriteParams<R, T> & {
readonlyKeys?: Array<string | RegExp>;
part: typeof ANNOTATIONS | typeof LABELS;
getResourceSpec?: (stringMap: StringMap) => Record<string, unknown>;
dialogClass?: string;
}): Observable<T>;
updateDisplayName<T extends KubernetesResource>({ type, cluster, resource, definition, }: {
definition?: K8sResourceDefinition;
/**
* @deprecated use `definition` instead
*/
type?: R;
cluster?: string;
resource: T;
}, validateMaxLength?: boolean): Observable<T>;
updateDescription<T extends KubernetesResource>({ type, cluster, resource, definition, }: {
/**
* @deprecated use `definition` instead
*/
type?: R;
definition?: K8sResourceDefinition;
cluster?: string;
resource: T;
}): Observable<T>;
/**
* 单项目绑定切换至多项目绑定时,兼容之前的 project name 形式
* 老格式 cpaas.io/project: "ALL_ALL" 或者 project.cpaas.io/name: "ALL_ALL"
* 新格式 project.cpaas.io/ALL_ALL: "true"
* @param {(KubernetesResource | string[])} resource
* @returns
* @memberof K8sUtilService
*/
getProjectNames(resource: KubernetesResource | string[]): string[];
getProjectLabels(projects: string[], value?: string): StringMap;
static ɵfac: i0.ɵɵFactoryDeclaration<K8sSharedUtilService<any>, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<K8sSharedUtilService<any>>;
}