UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

81 lines 11.7 kB
import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { combineLatest, of, catchError, map, pluck } from 'rxjs'; import { K8sApiService } from '../../../api/k8s-api.service'; import { ProjectService } from '../../../business/resource-select/project.service'; import { API_GATEWAY } from '../../../core/constants/constants'; import { publishRef, COMMON_RESOURCE_DEFINITIONS, } from '../../../core/public-api'; import * as i0 from "@angular/core"; import * as i1 from "../../../api/k8s-api.service"; import * as i2 from "@angular/common/http"; import * as i3 from "../../../business/resource-select/project.service"; /** * @packageDocumentation * @module common-layout */ const ITEMS = 'items'; export const ProductEntryName = { ACP: 'acp', DevOps: 'devops', ASM: 'asm', AML: 'aml', AAM: 'e-aam', SECURITY: 'security', PLATFORM: 'platform', PROJECT: 'project', DATA_SERVICES: 'dataservices', CEC: 'cec', }; export class CommonLayoutContextService { constructor(k8sApi, httpClient, projectService) { this.k8sApi = k8sApi; this.httpClient = httpClient; this.projectService = projectService; } getProjects() { return this.projectService.getProjects(null, false); } getProducts() { return this.k8sApi .getGlobalResourceList({ definition: COMMON_RESOURCE_DEFINITIONS.PRODUCT_ENTRY, queryParams: { limit: '0', }, }) .pipe(pluck('items')); } getProduct(name) { return this.k8sApi .getGlobalResource({ definition: COMMON_RESOURCE_DEFINITIONS.PRODUCT_ENTRY, name, }) .pipe(publishRef()); } getProjectClusters(_projectName) { return combineLatest([ this.httpClient .get(`${API_GATEWAY}/apis/auth.alauda.io/v1/projects/${_projectName}`) .pipe(catchError(() => of(null))), this.httpClient .get(API_GATEWAY + '/auth/v1/clusters') .pipe(pluck('items'), catchError(() => of([]))), ]).pipe(map(([project, clusters]) => { const clusterRefs = project.spec.clusters; return clusters.filter(c => clusterRefs.find(ref => ref.name === c.metadata.name)); }), catchError(() => of([]))); } getClusterNamespaces(_projectName, _clusterName) { return this.httpClient .get(`${API_GATEWAY}/auth/v1/projects/${_projectName}/clusters/${_clusterName}/namespaces`) .pipe(pluck(ITEMS)); } static { this.ɵfac = function CommonLayoutContextService_Factory(t) { return new (t || CommonLayoutContextService)(i0.ɵɵinject(i1.K8sApiService), i0.ɵɵinject(i2.HttpClient), i0.ɵɵinject(i3.ProjectService)); }; } static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CommonLayoutContextService, factory: CommonLayoutContextService.ɵfac, providedIn: 'root' }); } } (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CommonLayoutContextService, [{ type: Injectable, args: [{ providedIn: 'root' }] }], () => [{ type: i1.K8sApiService }, { type: i2.HttpClient }, { type: i3.ProjectService }], null); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3BhZ2Utc2NhZmZvbGQvcGFnZS1oZWFkZXIvY29tbW9uLWxheW91dC9jb250ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLGFBQWEsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFN0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDaEUsT0FBTyxFQUtMLFVBQVUsRUFDViwyQkFBMkIsR0FHNUIsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUFHbEM7OztHQUdHO0FBRUgsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDO0FBc0N0QixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM5QixHQUFHLEVBQUUsS0FBSztJQUNWLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLEdBQUcsRUFBRSxLQUFLO0lBQ1YsR0FBRyxFQUFFLEtBQUs7SUFDVixHQUFHLEVBQUUsT0FBTztJQUNaLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLGFBQWEsRUFBRSxjQUFjO0lBQzdCLEdBQUcsRUFBRSxLQUFLO0NBQ0YsQ0FBQztBQUtYLE1BQU0sT0FBTywwQkFBMEI7SUFDckMsWUFDbUIsTUFBcUIsRUFDckIsVUFBc0IsRUFDdEIsY0FBOEI7UUFGOUIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUNyQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUM5QyxDQUFDO0lBRUosV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTTthQUNmLHFCQUFxQixDQUFlO1lBQ25DLFVBQVUsRUFBRSwyQkFBMkIsQ0FBQyxhQUFhO1lBQ3JELFdBQVcsRUFBRTtnQkFDWCxLQUFLLEVBQUUsR0FBRzthQUNYO1NBQ0YsQ0FBQzthQUNELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVk7UUFDckIsT0FBTyxJQUFJLENBQUMsTUFBTTthQUNmLGlCQUFpQixDQUFlO1lBQy9CLFVBQVUsRUFBRSwyQkFBMkIsQ0FBQyxhQUFhO1lBQ3JELElBQUk7U0FDTCxDQUFDO2FBQ0QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELGtCQUFrQixDQUFDLFlBQW9CO1FBQ3JDLE9BQU8sYUFBYSxDQUFDO1lBQ25CLElBQUksQ0FBQyxVQUFVO2lCQUNaLEdBQUcsQ0FDRixHQUFHLFdBQVcsb0NBQW9DLFlBQVksRUFBRSxDQUNqRTtpQkFDQSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFlLENBQUMsQ0FBQyxDQUFDO1lBQzlDLElBQUksQ0FBQyxVQUFVO2lCQUNaLEdBQUcsQ0FBa0MsV0FBVyxHQUFHLG1CQUFtQixDQUFDO2lCQUN2RSxJQUFJLENBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUNkLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDekI7U0FDSixDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUU7WUFDMUIsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDMUMsT0FBUSxRQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUN4QyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUN0RCxDQUFDO1FBQ0osQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUN6QixDQUFDO0lBQ0osQ0FBQztJQUVELG9CQUFvQixDQUNsQixZQUFvQixFQUNwQixZQUFvQjtRQUVwQixPQUFPLElBQUksQ0FBQyxVQUFVO2FBQ25CLEdBQUcsQ0FFRixHQUFHLFdBQVcscUJBQXFCLFlBQVksYUFBYSxZQUFZLGFBQWEsQ0FBQzthQUN2RixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQzsyRkFoRVUsMEJBQTBCO3VFQUExQiwwQkFBMEIsV0FBMUIsMEJBQTBCLG1CQURiLE1BQU07O2lGQUNuQiwwQkFBMEI7Y0FEdEMsVUFBVTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBvZiwgY2F0Y2hFcnJvciwgbWFwLCBwbHVjayB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBLOHNBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vYXBpL2s4cy1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9qZWN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2J1c2luZXNzL3Jlc291cmNlLXNlbGVjdC9wcm9qZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVBJX0dBVEVXQVkgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2NvbnN0YW50cy9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBLdWJlcm5ldGVzUmVzb3VyY2VMaXN0LFxuICBPYmplY3RNZXRhLFxuICBWYWx1ZU9mLFxuICBwdWJsaXNoUmVmLFxuICBDT01NT05fUkVTT1VSQ0VfREVGSU5JVElPTlMsXG4gIFByb2plY3QsXG4gIFByb2R1Y3RFbnRyeSxcbn0gZnJvbSAnLi4vLi4vLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFRyYW5zbGF0ZUtleSB9IGZyb20gJy4uLy4uLy4uL3RyYW5zbGF0ZS90eXBlcyc7XG5cbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIGNvbW1vbi1sYXlvdXRcbiAqL1xuXG5jb25zdCBJVEVNUyA9ICdpdGVtcyc7XG5pbnRlcmZhY2UgQ2x1c3RlciBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIG1ldGFkYXRhPzogT2JqZWN0TWV0YSAmIHtcbiAgICBmaW5hbGl6ZXJzPzogc3RyaW5nW107XG4gIH07XG4gIGRldGFpbHM/OiB7XG4gICAgZ3JvdXA6IHN0cmluZztcbiAgICBraW5kOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHVpZDogc3RyaW5nO1xuICB9O1xufVxuXG5pbnRlcmZhY2UgTmFtZXNwYWNlIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3RhdHVzPzoge1xuICAgIHBoYXNlPzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3Rpb24gZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBraW5kOiAnUHJvZHVjdGlvbic7XG4gIHNwZWM6IHtcbiAgICBncm91cDogJ3Byb2R1Y3Rpb24nIHwgJ290aGVycyc7XG4gICAgaW5kZXg6IG51bWJlcjtcbiAgICBsb2dvVVJMPzogc3RyaW5nO1xuICAgIHRpdGxlOiBUcmFuc2xhdGVLZXk7XG4gICAgdmVyc2lvbj86IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBvcGVuSW5CbGFuaz86IGJvb2xlYW47XG4gICAgaG9tZXBhZ2U6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYW1lc3BhY2VJZGVudGl0eSB7XG4gIGNsdXN0ZXI6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgUHJvZHVjdEVudHJ5TmFtZSA9IHtcbiAgQUNQOiAnYWNwJyxcbiAgRGV2T3BzOiAnZGV2b3BzJyxcbiAgQVNNOiAnYXNtJyxcbiAgQU1MOiAnYW1sJyxcbiAgQUFNOiAnZS1hYW0nLFxuICBTRUNVUklUWTogJ3NlY3VyaXR5JyxcbiAgUExBVEZPUk06ICdwbGF0Zm9ybScsXG4gIFBST0pFQ1Q6ICdwcm9qZWN0JyxcbiAgREFUQV9TRVJWSUNFUzogJ2RhdGFzZXJ2aWNlcycsXG4gIENFQzogJ2NlYycsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0RW50cnlOYW1lID0gVmFsdWVPZjx0eXBlb2YgUHJvZHVjdEVudHJ5TmFtZT47XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQ29tbW9uTGF5b3V0Q29udGV4dFNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGs4c0FwaTogSzhzQXBpU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcm9qZWN0U2VydmljZTogUHJvamVjdFNlcnZpY2UsXG4gICkge31cblxuICBnZXRQcm9qZWN0cygpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9qZWN0U2VydmljZS5nZXRQcm9qZWN0cyhudWxsLCBmYWxzZSk7XG4gIH1cblxuICBnZXRQcm9kdWN0cygpOiBPYnNlcnZhYmxlPFByb2R1Y3RFbnRyeVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuazhzQXBpXG4gICAgICAuZ2V0R2xvYmFsUmVzb3VyY2VMaXN0PFByb2R1Y3RFbnRyeT4oe1xuICAgICAgICBkZWZpbml0aW9uOiBDT01NT05fUkVTT1VSQ0VfREVGSU5JVElPTlMuUFJPRFVDVF9FTlRSWSxcbiAgICAgICAgcXVlcnlQYXJhbXM6IHtcbiAgICAgICAgICBsaW1pdDogJzAnLFxuICAgICAgICB9LFxuICAgICAgfSlcbiAgICAgIC5waXBlKHBsdWNrKCdpdGVtcycpKTtcbiAgfVxuXG4gIGdldFByb2R1Y3QobmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxQcm9kdWN0RW50cnk+IHtcbiAgICByZXR1cm4gdGhpcy5rOHNBcGlcbiAgICAgIC5nZXRHbG9iYWxSZXNvdXJjZTxQcm9kdWN0RW50cnk+KHtcbiAgICAgICAgZGVmaW5pdGlvbjogQ09NTU9OX1JFU09VUkNFX0RFRklOSVRJT05TLlBST0RVQ1RfRU5UUlksXG4gICAgICAgIG5hbWUsXG4gICAgICB9KVxuICAgICAgLnBpcGUocHVibGlzaFJlZigpKTtcbiAgfVxuXG4gIGdldFByb2plY3RDbHVzdGVycyhfcHJvamVjdE5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8S3ViZXJuZXRlc1Jlc291cmNlW10+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmh0dHBDbGllbnRcbiAgICAgICAgLmdldDxQcm9qZWN0PihcbiAgICAgICAgICBgJHtBUElfR0FURVdBWX0vYXBpcy9hdXRoLmFsYXVkYS5pby92MS9wcm9qZWN0cy8ke19wcm9qZWN0TmFtZX1gLFxuICAgICAgICApXG4gICAgICAgIC5waXBlKGNhdGNoRXJyb3IoKCkgPT4gb2YobnVsbCBhcyBQcm9qZWN0KSkpLFxuICAgICAgdGhpcy5odHRwQ2xpZW50XG4gICAgICAgIC5nZXQ8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxDbHVzdGVyPj4oQVBJX0dBVEVXQVkgKyAnL2F1dGgvdjEvY2x1c3RlcnMnKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBwbHVjaygnaXRlbXMnKSxcbiAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IG9mKFtdKSksXG4gICAgICAgICksXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3Byb2plY3QsIGNsdXN0ZXJzXSkgPT4ge1xuICAgICAgICBjb25zdCBjbHVzdGVyUmVmcyA9IHByb2plY3Quc3BlYy5jbHVzdGVycztcbiAgICAgICAgcmV0dXJuIChjbHVzdGVycyBhcyBDbHVzdGVyW10pLmZpbHRlcihjID0+XG4gICAgICAgICAgY2x1c3RlclJlZnMuZmluZChyZWYgPT4gcmVmLm5hbWUgPT09IGMubWV0YWRhdGEubmFtZSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YoW10pKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0Q2x1c3Rlck5hbWVzcGFjZXMoXG4gICAgX3Byb2plY3ROYW1lOiBzdHJpbmcsXG4gICAgX2NsdXN0ZXJOYW1lOiBzdHJpbmcsXG4gICk6IE9ic2VydmFibGU8S3ViZXJuZXRlc1Jlc291cmNlW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAuZ2V0PFxuICAgICAgICBLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PE5hbWVzcGFjZT5cbiAgICAgID4oYCR7QVBJX0dBVEVXQVl9L2F1dGgvdjEvcHJvamVjdHMvJHtfcHJvamVjdE5hbWV9L2NsdXN0ZXJzLyR7X2NsdXN0ZXJOYW1lfS9uYW1lc3BhY2VzYClcbiAgICAgIC5waXBlKHBsdWNrKElURU1TKSk7XG4gIH1cbn1cbiJdfQ==