UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

103 lines 13.6 kB
import { IconModule } from '@alauda/ui'; import { NgClass, NgIf } from '@angular/common'; import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; import { DefaultStatusColorMapper, DefaultStatusIconMapper, GenericStatusColor, GenericStatusIcon, } from '../../core/constants/status-icons'; import { PurePipe } from '../../core/public-api'; import { TRANSLATE_MODULE } from '../../translate/translate.module'; import * as i0 from "@angular/core"; import * as i1 from "@alauda/ui"; import * as i2 from "../../translate/translate.pipe"; const _c0 = ["*"]; const _c1 = a0 => ({ pending: a0 }); const _c2 = a0 => ({ disabled: a0 }); function StatusIconComponent_ng_container_0_aui_icon_1_Template(rf, ctx) { if (rf & 1) { i0.ɵɵelement(0, "aui-icon", 3); i0.ɵɵpipe(1, "pure"); i0.ɵɵpipe(2, "pure"); i0.ɵɵpipe(3, "pure"); } if (rf & 2) { const icon_r1 = ctx.ngIf; const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵstyleProp("font-size", ctx_r1.iconSize); i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(18, _c1, i0.ɵɵpipeBind3(1, 7, ctx_r1.status, ctx_r1.isPending, ctx_r1.iconMapper)))("color", i0.ɵɵpipeBind3(2, 11, ctx_r1.status, ctx_r1.getStatusColor, ctx_r1.colorMapper))("icon", icon_r1)("size", ctx_r1.iconSize)("background", i0.ɵɵpipeBind2(3, 15, icon_r1, ctx_r1.backgroundShape)); } } function StatusIconComponent_ng_container_0_span_3_Template(rf, ctx) { if (rf & 1) { i0.ɵɵelementStart(0, "span", 4); i0.ɵɵpipe(1, "translate"); i0.ɵɵtext(2); i0.ɵɵpipe(3, "translate"); i0.ɵɵelementEnd(); } if (rf & 2) { const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵproperty("title", i0.ɵɵpipeBind1(1, 3, ctx_r1.status.toLowerCase()))("ngClass", i0.ɵɵpureFunction1(7, _c2, ctx_r1.disabled)); i0.ɵɵadvance(2); i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 5, ctx_r1.status.toLowerCase())); } } function StatusIconComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) { i0.ɵɵelementContainerStart(0); i0.ɵɵtemplate(1, StatusIconComponent_ng_container_0_aui_icon_1_Template, 4, 20, "aui-icon", 1); i0.ɵɵpipe(2, "pure"); i0.ɵɵtemplate(3, StatusIconComponent_ng_container_0_span_3_Template, 4, 9, "span", 2); i0.ɵɵprojection(4); i0.ɵɵelementContainerEnd(); } if (rf & 2) { const ctx_r1 = i0.ɵɵnextContext(); i0.ɵɵadvance(); i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind3(2, 2, ctx_r1.status, ctx_r1.getStatusIcon, ctx_r1.iconMapper)); i0.ɵɵadvance(2); i0.ɵɵproperty("ngIf", ctx_r1.withText); } } export class StatusIconComponent { constructor() { this.withText = true; this.iconSize = '16px'; } isPending(status, iconMapper) { const icon = iconMapper ? { ...DefaultStatusIconMapper, ...iconMapper }[status] : DefaultStatusIconMapper[status]; return icon === GenericStatusIcon.Pending; } getStatusColor(status, colorMapper) { return colorMapper ? { ...DefaultStatusColorMapper, ...colorMapper }[status] : DefaultStatusColorMapper[status] || GenericStatusColor.Empty; } getStatusIcon(status, iconMapper) { return iconMapper ? { ...DefaultStatusIconMapper, ...iconMapper }[status] : DefaultStatusIconMapper[status] || GenericStatusIcon.Question; } backgroundShape(icon) { return icon?.endsWith('_circle_s') ? 'circle' : icon?.endsWith('_triangle_s') ? 'triangle' : null; } static { this.ɵfac = function StatusIconComponent_Factory(t) { return new (t || StatusIconComponent)(); }; } static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: StatusIconComponent, selectors: [["acl-status-icon"]], inputs: { status: "status", withText: "withText", colorMapper: "colorMapper", iconMapper: "iconMapper", disabled: "disabled", iconSize: "iconSize" }, standalone: true, features: [i0.ɵɵStandaloneFeature], ngContentSelectors: _c0, decls: 1, vars: 1, consts: [[4, "ngIf"], [3, "ngClass", "fontSize", "color", "icon", "size", "background", 4, "ngIf"], [3, "title", "ngClass", 4, "ngIf"], [3, "ngClass", "color", "icon", "size", "background"], [3, "title", "ngClass"]], template: function StatusIconComponent_Template(rf, ctx) { if (rf & 1) { i0.ɵɵprojectionDef(); i0.ɵɵtemplate(0, StatusIconComponent_ng_container_0_Template, 5, 6, "ng-container", 0); } if (rf & 2) { i0.ɵɵproperty("ngIf", ctx.status); } }, dependencies: [IconModule, i1.IconComponent, NgClass, PurePipe, NgIf, i2.TranslatePipe], styles: ["@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes _ngcontent-%COMP%_spin-with-pause{0%{transform:rotate(0)}20%{transform:rotate(180deg)}to{transform:rotate(180deg)}}[_nghost-%COMP%]{font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-main-text))}[_nghost-%COMP%] aui-icon[_ngcontent-%COMP%]{margin-right:4px}[_nghost-%COMP%] aui-icon.pending[_ngcontent-%COMP%]{display:inline-block;color:rgb(var(--aui-color-primary));animation:_ngcontent-%COMP%_spin 2s infinite linear}[_nghost-%COMP%] span.disabled[_ngcontent-%COMP%]{color:rgb(var(--aui-color-disabled-text))}"], changeDetection: 0 }); } } (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StatusIconComponent, [{ type: Component, args: [{ selector: 'acl-status-icon', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [IconModule, NgClass, PurePipe, NgIf, TRANSLATE_MODULE], template: "<ng-container *ngIf=\"status\">\n <aui-icon\n *ngIf=\"status | pure: getStatusIcon:iconMapper as icon\"\n [ngClass]=\"{ pending: status | pure: isPending:iconMapper }\"\n [style.fontSize]=\"iconSize\"\n [color]=\"status | pure: getStatusColor:colorMapper\"\n [icon]=\"icon\"\n [size]=\"iconSize\"\n [background]=\"icon | pure: backgroundShape\"\n >\n </aui-icon>\n <span\n *ngIf=\"withText\"\n [title]=\"status.toLowerCase() | translate\"\n [ngClass]=\"{ disabled: disabled }\"\n >{{ status.toLowerCase() | translate }}</span\n >\n <ng-content></ng-content>\n</ng-container>\n", styles: ["@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin-with-pause{0%{transform:rotate(0)}20%{transform:rotate(180deg)}to{transform:rotate(180deg)}}:host{font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-main-text))}:host aui-icon{margin-right:4px}:host aui-icon.pending{display:inline-block;color:rgb(var(--aui-color-primary));animation:spin 2s infinite linear}:host span.disabled{color:rgb(var(--aui-color-disabled-text))}\n"] }] }], null, { status: [{ type: Input }], withText: [{ type: Input }], colorMapper: [{ type: Input }], iconMapper: [{ type: Input }], disabled: [{ type: Input }], iconSize: [{ type: Input }] }); })(); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(StatusIconComponent, { className: "StatusIconComponent" }); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3dpZGdldC9zdGF0dXMtaWNvbi9zdGF0dXMtaWNvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvd2lkZ2V0L3N0YXR1cy1pY29uL3N0YXR1cy1pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLHVCQUF1QixFQUN2QixrQkFBa0IsRUFDbEIsaUJBQWlCLEdBQ2xCLE1BQU0sbUNBQW1DLENBQUM7QUFDM0MsT0FBTyxFQUFFLFFBQVEsRUFBYSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7OztJQ1ZsRSw4QkFTVzs7Ozs7OztJQU5ULDRDQUEyQjtJQUkzQixBQURBLEFBREEsQUFEQSxBQUZBLCtIQUE0RCwwRkFFVCxpQkFDdEMseUJBQ0ksc0VBQzBCOzs7SUFHN0MsK0JBSUc7O0lBQUEsWUFBc0M7O0lBQUEsaUJBQ3hDOzs7SUFGQyxBQURBLHlFQUEwQyx3REFDUjtJQUNqQyxlQUFzQztJQUF0Qyx1RUFBc0M7OztJQWYzQyw2QkFBNkI7SUFDM0IsOEZBUUM7O0lBRUQscUZBSUc7SUFFSCxrQkFBeUI7Ozs7SUFmdEIsY0FBOEM7SUFBOUMsbUdBQThDO0lBVTlDLGVBQWM7SUFBZCxzQ0FBYzs7QURTbkIsTUFBTSxPQUFPLG1CQUFtQjtJQVJoQztRQVlXLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFLaEIsYUFBUSxHQUFHLE1BQU0sQ0FBQztLQTRCNUI7SUExQkMsU0FBUyxDQUFDLE1BQWMsRUFBRSxVQUFxQjtRQUM3QyxNQUFNLElBQUksR0FBRyxVQUFVO1lBQ3JCLENBQUMsQ0FBQyxFQUFFLEdBQUcsdUJBQXVCLEVBQUUsR0FBRyxVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDdkQsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxLQUFLLGlCQUFpQixDQUFDLE9BQU8sQ0FBQztJQUM1QyxDQUFDO0lBRUQsY0FBYyxDQUFDLE1BQWMsRUFBRSxXQUFzQjtRQUNuRCxPQUFPLFdBQVc7WUFDaEIsQ0FBQyxDQUFDLEVBQUUsR0FBRyx3QkFBd0IsRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUN6RCxDQUFDLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLElBQUksa0JBQWtCLENBQUMsS0FBSyxDQUFDO0lBQ25FLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBYyxFQUFFLFVBQXFCO1FBQ2pELE9BQU8sVUFBVTtZQUNmLENBQUMsQ0FBQyxFQUFFLEdBQUcsdUJBQXVCLEVBQUUsR0FBRyxVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDdkQsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsQ0FBQztJQUNwRSxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQWE7UUFDM0IsT0FBTyxJQUFJLEVBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQztZQUNoQyxDQUFDLENBQUMsUUFBUTtZQUNWLENBQUMsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQztnQkFDN0IsQ0FBQyxDQUFDLFVBQVU7Z0JBQ1osQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNiLENBQUM7b0ZBcENVLG1CQUFtQjtvRUFBbkIsbUJBQW1COztZQ3JCaEMsc0ZBQTZCOztZQUFkLGlDQUFZOzRCRG1CZixVQUFVLG9CQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSTs7aUZBRWxDLG1CQUFtQjtjQVIvQixTQUFTOzJCQUNFLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsQ0FBQztnQkFJaEUsTUFBTTtrQkFETCxLQUFLO1lBR0csUUFBUTtrQkFBaEIsS0FBSztZQUVHLFdBQVc7a0JBQW5CLEtBQUs7WUFDRyxVQUFVO2tCQUFsQixLQUFLO1lBQ0csUUFBUTtrQkFBaEIsS0FBSztZQUNHLFFBQVE7a0JBQWhCLEtBQUs7O2tGQVRLLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IE5nQ2xhc3MsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgRGVmYXVsdFN0YXR1c0NvbG9yTWFwcGVyLFxuICBEZWZhdWx0U3RhdHVzSWNvbk1hcHBlcixcbiAgR2VuZXJpY1N0YXR1c0NvbG9yLFxuICBHZW5lcmljU3RhdHVzSWNvbixcbn0gZnJvbSAnLi4vLi4vY29yZS9jb25zdGFudHMvc3RhdHVzLWljb25zJztcbmltcG9ydCB7IFB1cmVQaXBlLCBTdHJpbmdNYXAgfSBmcm9tICcuLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgVFJBTlNMQVRFX01PRFVMRSB9IGZyb20gJy4uLy4uL3RyYW5zbGF0ZS90cmFuc2xhdGUubW9kdWxlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLXN0YXR1cy1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXR1cy1pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3RhdHVzLWljb24uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtJY29uTW9kdWxlLCBOZ0NsYXNzLCBQdXJlUGlwZSwgTmdJZiwgVFJBTlNMQVRFX01PRFVMRV0sXG59KVxuZXhwb3J0IGNsYXNzIFN0YXR1c0ljb25Db21wb25lbnQge1xuICBASW5wdXQoKVxuICBzdGF0dXM6IHN0cmluZztcblxuICBASW5wdXQoKSB3aXRoVGV4dCA9IHRydWU7XG5cbiAgQElucHV0KCkgY29sb3JNYXBwZXI6IFN0cmluZ01hcDtcbiAgQElucHV0KCkgaWNvbk1hcHBlcjogU3RyaW5nTWFwO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgaWNvblNpemUgPSAnMTZweCc7XG5cbiAgaXNQZW5kaW5nKHN0YXR1czogc3RyaW5nLCBpY29uTWFwcGVyOiBTdHJpbmdNYXApIHtcbiAgICBjb25zdCBpY29uID0gaWNvbk1hcHBlclxuICAgICAgPyB7IC4uLkRlZmF1bHRTdGF0dXNJY29uTWFwcGVyLCAuLi5pY29uTWFwcGVyIH1bc3RhdHVzXVxuICAgICAgOiBEZWZhdWx0U3RhdHVzSWNvbk1hcHBlcltzdGF0dXNdO1xuICAgIHJldHVybiBpY29uID09PSBHZW5lcmljU3RhdHVzSWNvbi5QZW5kaW5nO1xuICB9XG5cbiAgZ2V0U3RhdHVzQ29sb3Ioc3RhdHVzOiBzdHJpbmcsIGNvbG9yTWFwcGVyOiBTdHJpbmdNYXApIHtcbiAgICByZXR1cm4gY29sb3JNYXBwZXJcbiAgICAgID8geyAuLi5EZWZhdWx0U3RhdHVzQ29sb3JNYXBwZXIsIC4uLmNvbG9yTWFwcGVyIH1bc3RhdHVzXVxuICAgICAgOiBEZWZhdWx0U3RhdHVzQ29sb3JNYXBwZXJbc3RhdHVzXSB8fCBHZW5lcmljU3RhdHVzQ29sb3IuRW1wdHk7XG4gIH1cblxuICBnZXRTdGF0dXNJY29uKHN0YXR1czogc3RyaW5nLCBpY29uTWFwcGVyOiBTdHJpbmdNYXApIHtcbiAgICByZXR1cm4gaWNvbk1hcHBlclxuICAgICAgPyB7IC4uLkRlZmF1bHRTdGF0dXNJY29uTWFwcGVyLCAuLi5pY29uTWFwcGVyIH1bc3RhdHVzXVxuICAgICAgOiBEZWZhdWx0U3RhdHVzSWNvbk1hcHBlcltzdGF0dXNdIHx8IEdlbmVyaWNTdGF0dXNJY29uLlF1ZXN0aW9uO1xuICB9XG5cbiAgYmFja2dyb3VuZFNoYXBlKGljb24/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gaWNvbj8uZW5kc1dpdGgoJ19jaXJjbGVfcycpXG4gICAgICA/ICdjaXJjbGUnXG4gICAgICA6IGljb24/LmVuZHNXaXRoKCdfdHJpYW5nbGVfcycpXG4gICAgICAgID8gJ3RyaWFuZ2xlJ1xuICAgICAgICA6IG51bGw7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJzdGF0dXNcIj5cbiAgPGF1aS1pY29uXG4gICAgKm5nSWY9XCJzdGF0dXMgfCBwdXJlOiBnZXRTdGF0dXNJY29uOmljb25NYXBwZXIgYXMgaWNvblwiXG4gICAgW25nQ2xhc3NdPVwieyBwZW5kaW5nOiBzdGF0dXMgfCBwdXJlOiBpc1BlbmRpbmc6aWNvbk1hcHBlciB9XCJcbiAgICBbc3R5bGUuZm9udFNpemVdPVwiaWNvblNpemVcIlxuICAgIFtjb2xvcl09XCJzdGF0dXMgfCBwdXJlOiBnZXRTdGF0dXNDb2xvcjpjb2xvck1hcHBlclwiXG4gICAgW2ljb25dPVwiaWNvblwiXG4gICAgW3NpemVdPVwiaWNvblNpemVcIlxuICAgIFtiYWNrZ3JvdW5kXT1cImljb24gfCBwdXJlOiBiYWNrZ3JvdW5kU2hhcGVcIlxuICA+XG4gIDwvYXVpLWljb24+XG4gIDxzcGFuXG4gICAgKm5nSWY9XCJ3aXRoVGV4dFwiXG4gICAgW3RpdGxlXT1cInN0YXR1cy50b0xvd2VyQ2FzZSgpIHwgdHJhbnNsYXRlXCJcbiAgICBbbmdDbGFzc109XCJ7IGRpc2FibGVkOiBkaXNhYmxlZCB9XCJcbiAgICA+e3sgc3RhdHVzLnRvTG93ZXJDYXNlKCkgfCB0cmFuc2xhdGUgfX08L3NwYW5cbiAgPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==