@alauda-fe/common
Version:
Alauda frontend team common codes.
55 lines • 7.97 kB
JavaScript
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