UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

55 lines 7.97 kB
import { TagModule, ThemeService, TooltipModule } from '@alauda/ui'; import { CommonModule } from '@angular/common'; import { Component, ChangeDetectionStrategy, input, computed, Input, } from '@angular/core'; import { toSignal } from '@angular/core/rxjs-interop'; import { getResourceMark, getResourceColor } from './util'; import * as i0 from "@angular/core"; import * as i1 from "@alauda/ui"; export class K8sResourceMarkComponent { constructor(theme) { this.theme = theme; this.size = 'mini'; this.currentTheme = toSignal(this.theme.currentTheme$); this.kind = input(); this.apiVersion = input(); this.resource = input(); this.mark = computed(() => { const apiGroup = (this.resource()?.apiVersion || this.apiVersion())?.split('/')?.[0]; return this.resource() ? getResourceMark(this.resource()?.kind, apiGroup) : getResourceMark(this.kind(), apiGroup); }); this.color = computed(() => { const kind = this.resource()?.kind || this.kind(); return `#fff,${getResourceColor(kind, this.currentTheme())}`; }); } static { this.ɵfac = function K8sResourceMarkComponent_Factory(t) { return new (t || K8sResourceMarkComponent)(i0.ɵɵdirectiveInject(i1.ThemeService)); }; } static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: K8sResourceMarkComponent, selectors: [["acl-k8s-mark"]], inputs: { size: "size", kind: [1, "kind"], apiVersion: [1, "apiVersion"], resource: [1, "resource"] }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 5, consts: [[3, "size", "solid", "color", "auiTooltip"]], template: function K8sResourceMarkComponent_Template(rf, ctx) { if (rf & 1) { i0.ɵɵelementStart(0, "aui-tag", 0); i0.ɵɵtext(1); i0.ɵɵelementEnd(); } if (rf & 2) { let tmp_3_0; i0.ɵɵproperty("size", ctx.size)("solid", true)("color", ctx.color())("auiTooltip", ((tmp_3_0 = ctx.resource()) == null ? null : tmp_3_0.kind) || ctx.kind()); i0.ɵɵadvance(); i0.ɵɵtextInterpolate1(" ", ctx.mark(), " "); } }, dependencies: [CommonModule, TagModule, i1.TagComponent, TooltipModule, i1.TooltipDirective], styles: ["[_nghost-%COMP%] aui-tag[_ngcontent-%COMP%]{margin-right:8px}[_ngcontent-%COMP%]:is() .aui-tag[_ngcontent-%COMP%]{min-width:24px;justify-content:center}"], changeDetection: 0 }); } } (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(K8sResourceMarkComponent, [{ type: Component, args: [{ selector: 'acl-k8s-mark', standalone: true, imports: [CommonModule, TagModule, TooltipModule], template: ` <aui-tag [size]="size" [solid]="true" [color]="color()" [auiTooltip]="resource()?.kind || kind()" > {{ mark() }} </aui-tag> `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host aui-tag{margin-right:8px}:is() .aui-tag{min-width:24px;justify-content:center}\n"] }] }], () => [{ type: i1.ThemeService }], { size: [{ type: Input }] }); })(); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(K8sResourceMarkComponent, { className: "K8sResourceMarkComponent" }); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLXJlc291cmNlLW1hcmsuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2s4cy1zaGFyZWQvcmVzb3VyY2UtbWFyay9rOHMtcmVzb3VyY2UtbWFyay5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUNULHVCQUF1QixFQUN2QixLQUFLLEVBQ0wsUUFBUSxFQUNSLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFFBQVEsQ0FBQzs7O0FBK0IzRCxNQUFNLE9BQU8sd0JBQXdCO0lBTW5DLFlBQW9CLEtBQW1CO1FBQW5CLFVBQUssR0FBTCxLQUFLLENBQWM7UUFKdkMsU0FBSSxHQUFxQixNQUFNLENBQUM7UUFFaEMsaUJBQVksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUlsRCxTQUFJLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDdkIsZUFBVSxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQzdCLGFBQVEsR0FBRyxLQUFLLEVBQXNCLENBQUM7UUFFdkMsU0FBSSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDbkIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FDeEUsR0FBRyxDQUNKLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDcEIsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQztnQkFDbEQsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7UUFFSCxVQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNwQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsRCxPQUFPLFFBQVEsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDL0QsQ0FBQyxDQUFDLENBQUM7SUFsQnVDLENBQUM7eUZBTmhDLHdCQUF3QjtvRUFBeEIsd0JBQXdCO1lBeEJqQyxrQ0FLQztZQUNDLFlBQ0Y7WUFBQSxpQkFBVTs7O1lBSFIsQUFEQSxBQURBLEFBREEsK0JBQWEsZUFDQyxzQkFDRyx3RkFDd0I7WUFFekMsY0FDRjtZQURFLDJDQUNGOzRCQVRRLFlBQVksRUFBRSxTQUFTLG1CQUFFLGFBQWE7O2lGQTBCckMsd0JBQXdCO2NBN0JwQyxTQUFTOzJCQUNFLGNBQWMsY0FDWixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLGFBQWEsQ0FBQyxZQUN2Qzs7Ozs7Ozs7O0dBU1QsbUJBY2dCLHVCQUF1QixDQUFDLE1BQU07NkNBSS9DLElBQUk7a0JBREgsS0FBSzs7a0ZBREssd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFnTW9kdWxlLCBUaGVtZVNlcnZpY2UsIFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBpbnB1dCxcbiAgY29tcHV0ZWQsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5pbXBvcnQgeyBLdWJlcm5ldGVzUmVzb3VyY2UgfSBmcm9tICcuLi8uLi9jb3JlL3R5cGVzL2s4cy9jb3JlJztcblxuaW1wb3J0IHsgZ2V0UmVzb3VyY2VNYXJrLCBnZXRSZXNvdXJjZUNvbG9yIH0gZnJvbSAnLi91dGlsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLWs4cy1tYXJrJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVGFnTW9kdWxlLCBUb29sdGlwTW9kdWxlXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8YXVpLXRhZ1xuICAgICAgW3NpemVdPVwic2l6ZVwiXG4gICAgICBbc29saWRdPVwidHJ1ZVwiXG4gICAgICBbY29sb3JdPVwiY29sb3IoKVwiXG4gICAgICBbYXVpVG9vbHRpcF09XCJyZXNvdXJjZSgpPy5raW5kIHx8IGtpbmQoKVwiXG4gICAgPlxuICAgICAge3sgbWFyaygpIH19XG4gICAgPC9hdWktdGFnPlxuICBgLFxuICBzdHlsZXM6IGBcbiAgICA6aG9zdCB7XG4gICAgICBhdWktdGFnIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgIDo6bmctZGVlcCB7XG4gICAgICAgICAgLmF1aS10YWcge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyNHB4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgSzhzUmVzb3VyY2VNYXJrQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgc2l6ZTogJ3NtYWxsJyB8ICdtaW5pJyA9ICdtaW5pJztcblxuICBjdXJyZW50VGhlbWUgPSB0b1NpZ25hbCh0aGlzLnRoZW1lLmN1cnJlbnRUaGVtZSQpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdGhlbWU6IFRoZW1lU2VydmljZSkge31cblxuICBraW5kID0gaW5wdXQ8c3RyaW5nPigpO1xuICBhcGlWZXJzaW9uID0gaW5wdXQ8c3RyaW5nPigpO1xuICByZXNvdXJjZSA9IGlucHV0PEt1YmVybmV0ZXNSZXNvdXJjZT4oKTtcblxuICBtYXJrID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGFwaUdyb3VwID0gKHRoaXMucmVzb3VyY2UoKT8uYXBpVmVyc2lvbiB8fCB0aGlzLmFwaVZlcnNpb24oKSk/LnNwbGl0KFxuICAgICAgJy8nLFxuICAgICk/LlswXTtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZSgpXG4gICAgICA/IGdldFJlc291cmNlTWFyayh0aGlzLnJlc291cmNlKCk/LmtpbmQsIGFwaUdyb3VwKVxuICAgICAgOiBnZXRSZXNvdXJjZU1hcmsodGhpcy5raW5kKCksIGFwaUdyb3VwKTtcbiAgfSk7XG5cbiAgY29sb3IgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qga2luZCA9IHRoaXMucmVzb3VyY2UoKT8ua2luZCB8fCB0aGlzLmtpbmQoKTtcbiAgICByZXR1cm4gYCNmZmYsJHtnZXRSZXNvdXJjZUNvbG9yKGtpbmQsIHRoaXMuY3VycmVudFRoZW1lKCkpfWA7XG4gIH0pO1xufVxuIl19