UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

96 lines 14.6 kB
import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; import dayjs from 'dayjs'; import utc from 'dayjs/plugin/utc'; import { DATE_TIME_FORMAT, K8sUtilService, } from '../../../../../core/public-api'; import { MESSAGE_TYPE_MAP, dateValueOf, } from '../../utils'; import * as i0 from "@angular/core"; import * as i1 from "../../../../../core/public-api"; function NotificationListComponent_ng_container_0_aui_tag_6_Template(rf, ctx) { if (rf & 1) { i0.ɵɵelementStart(0, "aui-tag", 10); i0.ɵɵtext(1); i0.ɵɵpipe(2, "translate"); i0.ɵɵelementEnd(); } if (rf & 2) { const tagOption_r4 = ctx.ngIf; i0.ɵɵproperty("color", (tagOption_r4 == null ? null : tagOption_r4.color) || "")("type", tagOption_r4 == null ? null : tagOption_r4.type); i0.ɵɵadvance(); i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 3, tagOption_r4 == null ? null : tagOption_r4.title), " "); } } function NotificationListComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) { const _r1 = i0.ɵɵgetCurrentView(); i0.ɵɵelementContainerStart(0); i0.ɵɵelementStart(1, "aui-accordion", 1)(2, "aui-accordion-item", 2); i0.ɵɵlistener("expandedChange", function NotificationListComponent_ng_container_0_Template_aui_accordion_item_expandedChange_2_listener($event) { const item_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.expandedChange($event, item_r2)); }); i0.ɵɵelementStart(3, "div", 3)(4, "div", 4)(5, "div", 5); i0.ɵɵtemplate(6, NotificationListComponent_ng_container_0_aui_tag_6_Template, 3, 5, "aui-tag", 6); i0.ɵɵpipe(7, "pure"); i0.ɵɵelementStart(8, "span", 7); i0.ɵɵtext(9); i0.ɵɵpipe(10, "aclCreationTimestamp"); i0.ɵɵpipe(11, "aclRelativeTime"); i0.ɵɵelementEnd()(); i0.ɵɵelementStart(12, "span", 8); i0.ɵɵtext(13); i0.ɵɵpipe(14, "aclFieldNotAvailable"); i0.ɵɵelementEnd()()(); i0.ɵɵelementStart(15, "div", 9); i0.ɵɵtext(16); i0.ɵɵpipe(17, "aclFieldNotAvailable"); i0.ɵɵelementEnd()()(); i0.ɵɵelementContainerEnd(); } if (rf & 2) { const item_r2 = ctx.$implicit; const ctx_r2 = i0.ɵɵnextContext(); i0.ɵɵadvance(); i0.ɵɵproperty("background", false); i0.ɵɵadvance(); i0.ɵɵclassProp("expand", item_r2.expanded); i0.ɵɵproperty("background", false); i0.ɵɵadvance(4); i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind2(7, 8, item_r2, ctx_r2.getTagOption)); i0.ɵɵadvance(3); i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(11, 13, i0.ɵɵpipeBind1(10, 11, item_r2))); i0.ɵɵadvance(4); i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(14, 15, item_r2.spec.subject), " "); i0.ɵɵadvance(3); i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(17, 17, item_r2.spec.content), " "); } } dayjs.extend(utc); export class NotificationListComponent { constructor(k8sUtil) { this.k8sUtil = k8sUtil; this.getTagOption = (value) => { const key = this.k8sUtil.getLabel(value, 'type'); return MESSAGE_TYPE_MAP[key]; }; } trackBy(_index, res) { return res.metadata.uid; } expandedChange(expanded, item) { item.expanded = expanded; } expired(item) { if (!item.spec.expiredTimestamp) { return true; } return dateValueOf(item.spec.expiredTimestamp) < Date.now(); } formatUtcStr(utcStr) { return dayjs.utc(utcStr).local().format(DATE_TIME_FORMAT); } static { this.ɵfac = function NotificationListComponent_Factory(t) { return new (t || NotificationListComponent)(i0.ɵɵdirectiveInject(i1.K8sUtilService)); }; } static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NotificationListComponent, selectors: [["acl-notification-list"]], inputs: { list: "list" }, decls: 1, vars: 1, consts: [[4, "ngFor", "ngForOf"], [1, "notify", 3, "background"], [3, "expandedChange", "background"], ["auiAccordionItemHeader", ""], [1, "notify_header"], [1, "notify_header_title"], ["size", "small", 3, "color", "type", 4, "ngIf"], [1, "notify_header_text"], [1, "notify_name"], [1, "notify_content"], ["size", "small", 3, "color", "type"]], template: function NotificationListComponent_Template(rf, ctx) { if (rf & 1) { i0.ɵɵtemplate(0, NotificationListComponent_ng_container_0_Template, 18, 19, "ng-container", 0); } if (rf & 2) { i0.ɵɵproperty("ngForOf", ctx.list); } }, styles: [".notify_header[_ngcontent-%COMP%]{display:flex;flex-direction:column}.notify_header_title[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding-left:6px}.notify_header_text[_ngcontent-%COMP%]{color:#acacac;font-size:12px}.notify_name[_ngcontent-%COMP%]{padding:9px 8px 0;color:rgb(var(--aui-color-main-text));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notify_content[_ngcontent-%COMP%]{background-color:rgb(var(--aui-color-n-9));padding:16px;color:rgb(var(--aui-color-secondary-text))}.nodata[_ngcontent-%COMP%]{width:100%;height:200px;display:flex;align-items:center;justify-content:center;color:rgb(var(--aui-color-help-text))}[_nghost-%COMP%] .aui-tag{align-items:center}[_nghost-%COMP%] .aui-accordion-item__expand-button{margin-top:5px}[_nghost-%COMP%] .aui-accordion-item__expand-button:first-child{margin-right:0}[_nghost-%COMP%] .aui-accordion-item{border:none;padding:0 0 20px}[_nghost-%COMP%] aui-accordion{display:block;border-bottom:1px solid rgb(var(--aui-color-n-8))}[_nghost-%COMP%] .aui-accordion-item__header{align-items:flex-start}[_nghost-%COMP%] .aui-accordion-item__header-content{flex:1}"], changeDetection: 0 }); } } (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NotificationListComponent, [{ type: Component, args: [{ selector: 'acl-notification-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let item of list\">\n <aui-accordion\n class=\"notify\"\n [background]=\"false\"\n >\n <aui-accordion-item\n [background]=\"false\"\n [class.expand]=\"item.expanded\"\n (expandedChange)=\"expandedChange($event, item)\"\n >\n <div auiAccordionItemHeader>\n <div class=\"notify_header\">\n <div class=\"notify_header_title\">\n <aui-tag\n size=\"small\"\n *ngIf=\"item | pure: getTagOption as tagOption\"\n [color]=\"tagOption?.color || ''\"\n [type]=\"tagOption?.type\"\n >\n {{ tagOption?.title | translate }}\n </aui-tag>\n <span class=\"notify_header_text\">{{\n item | aclCreationTimestamp | aclRelativeTime\n }}</span>\n </div>\n <span class=\"notify_name\">\n {{ item.spec.subject | aclFieldNotAvailable }}\n </span>\n </div>\n </div>\n <div class=\"notify_content\">\n {{ item.spec.content | aclFieldNotAvailable }}\n </div>\n </aui-accordion-item>\n </aui-accordion>\n</ng-container>\n", styles: [".notify_header{display:flex;flex-direction:column}.notify_header_title{display:flex;justify-content:space-between;align-items:center;padding-left:6px}.notify_header_text{color:#acacac;font-size:12px}.notify_name{padding:9px 8px 0;color:rgb(var(--aui-color-main-text));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notify_content{background-color:rgb(var(--aui-color-n-9));padding:16px;color:rgb(var(--aui-color-secondary-text))}.nodata{width:100%;height:200px;display:flex;align-items:center;justify-content:center;color:rgb(var(--aui-color-help-text))}:host ::ng-deep .aui-tag{align-items:center}:host ::ng-deep .aui-accordion-item__expand-button{margin-top:5px}:host ::ng-deep .aui-accordion-item__expand-button:first-child{margin-right:0}:host ::ng-deep .aui-accordion-item{border:none;padding:0 0 20px}:host ::ng-deep aui-accordion{display:block;border-bottom:1px solid rgb(var(--aui-color-n-8))}:host ::ng-deep .aui-accordion-item__header{align-items:flex-start}:host ::ng-deep .aui-accordion-item__header-content{flex:1}\n"] }] }], () => [{ type: i1.K8sUtilService }], { list: [{ type: Input }] }); })(); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NotificationListComponent, { className: "NotificationListComponent" }); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3BhZ2Utc2NhZmZvbGQvcGFnZS1oZWFkZXIvaGVhZGVyLW5vdGlmeS9jb21wb25lbnQvbm90aWZpY2F0aW9uLWxpc3Qvbm90aWZpY2F0aW9uLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3BhZ2Utc2NhZmZvbGQvcGFnZS1oZWFkZXIvaGVhZGVyLW5vdGlmeS9jb21wb25lbnQvbm90aWZpY2F0aW9uLWxpc3Qvbm90aWZpY2F0aW9uLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sR0FBRyxNQUFNLGtCQUFrQixDQUFDO0FBRW5DLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsY0FBYyxHQUNmLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUNMLGdCQUFnQixFQUdoQixXQUFXLEdBQ1osTUFBTSxhQUFhLENBQUM7Ozs7SUNBVCxtQ0FLQztJQUNDLFlBQ0Y7O0lBQUEsaUJBQVU7OztJQUhSLEFBREEsZ0ZBQWdDLHlEQUNSO0lBRXhCLGNBQ0Y7SUFERSx1R0FDRjs7OztJQXBCWiw2QkFBd0M7SUFLcEMsQUFKRix3Q0FHQyw0QkFLRTtJQURDLDRQQUFrQixzQ0FBNEIsS0FBQztJQUkzQyxBQURGLEFBREYsOEJBQTRCLGFBQ0MsYUFDUTtJQUMvQixpR0FLQzs7SUFHRCwrQkFBaUM7SUFBQSxZQUUvQjs7O0lBQ0osQUFESSxpQkFBTyxFQUNMO0lBQ04sZ0NBQTBCO0lBQ3hCLGFBQ0Y7O0lBRUosQUFERSxBQURFLGlCQUFPLEVBQ0gsRUFDRjtJQUNOLCtCQUE0QjtJQUMxQixhQUNGOztJQUVKLEFBREUsQUFERSxpQkFBTSxFQUNhLEVBQ1A7Ozs7O0lBL0JkLGNBQW9CO0lBQXBCLGtDQUFvQjtJQUlsQixjQUE4QjtJQUE5QiwwQ0FBOEI7SUFEOUIsa0NBQW9CO0lBU1gsZUFBZ0M7SUFBaEMseUVBQWdDO0lBTUYsZUFFL0I7SUFGK0IsNkVBRS9CO0lBR0YsZUFDRjtJQURFLDZFQUNGO0lBSUYsZUFDRjtJQURFLDZFQUNGOztBRGpCTixLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBT2xCLE1BQU0sT0FBTyx5QkFBeUI7SUFFcEMsWUFBNkIsT0FBdUI7UUFBdkIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFxQnBELGlCQUFZLEdBQUcsQ0FBQyxLQUFjLEVBQUUsRUFBRTtZQUNoQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFnQixDQUFDO1lBQ2hFLE9BQU8sZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDO0lBeEJxRCxDQUFDO0lBRXhELE9BQU8sQ0FBQyxNQUFjLEVBQUUsR0FBWTtRQUNsQyxPQUFPLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjLENBQUMsUUFBaUIsRUFBRSxJQUFhO1FBQzdDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFFRCxPQUFPLENBQUMsSUFBYTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ2hDLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVELFlBQVksQ0FBQyxNQUFjO1FBQ3pCLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM1RCxDQUFDOzBGQXJCVSx5QkFBeUI7b0VBQXpCLHlCQUF5QjtZQ3RCdEMsOEZBQXdDOztZQUFULGtDQUFPOzs7aUZEc0J6Qix5QkFBeUI7Y0FOckMsU0FBUzsyQkFDRSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU07K0NBR3RDLElBQUk7a0JBQVosS0FBSzs7a0ZBREsseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgdXRjIGZyb20gJ2RheWpzL3BsdWdpbi91dGMnO1xuXG5pbXBvcnQge1xuICBEQVRFX1RJTUVfRk9STUFULFxuICBLOHNVdGlsU2VydmljZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7XG4gIE1FU1NBR0VfVFlQRV9NQVAsXG4gIE1lc3NhZ2UsXG4gIE1lc3NhZ2VUeXBlLFxuICBkYXRlVmFsdWVPZixcbn0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5kYXlqcy5leHRlbmQodXRjKTtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC1ub3RpZmljYXRpb24tbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ub3RpZmljYXRpb24tbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vdGlmaWNhdGlvbi1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25MaXN0Q29tcG9uZW50IHtcbiAgQElucHV0KCkgbGlzdDogTWVzc2FnZVtdO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGs4c1V0aWw6IEs4c1V0aWxTZXJ2aWNlKSB7fVxuXG4gIHRyYWNrQnkoX2luZGV4OiBudW1iZXIsIHJlczogTWVzc2FnZSkge1xuICAgIHJldHVybiByZXMubWV0YWRhdGEudWlkO1xuICB9XG5cbiAgZXhwYW5kZWRDaGFuZ2UoZXhwYW5kZWQ6IGJvb2xlYW4sIGl0ZW06IE1lc3NhZ2UpIHtcbiAgICBpdGVtLmV4cGFuZGVkID0gZXhwYW5kZWQ7XG4gIH1cblxuICBleHBpcmVkKGl0ZW06IE1lc3NhZ2UpIHtcbiAgICBpZiAoIWl0ZW0uc3BlYy5leHBpcmVkVGltZXN0YW1wKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGVWYWx1ZU9mKGl0ZW0uc3BlYy5leHBpcmVkVGltZXN0YW1wKSA8IERhdGUubm93KCk7XG4gIH1cblxuICBmb3JtYXRVdGNTdHIodXRjU3RyOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gZGF5anMudXRjKHV0Y1N0cikubG9jYWwoKS5mb3JtYXQoREFURV9USU1FX0ZPUk1BVCk7XG4gIH1cblxuICBnZXRUYWdPcHRpb24gPSAodmFsdWU6IE1lc3NhZ2UpID0+IHtcbiAgICBjb25zdCBrZXkgPSB0aGlzLms4c1V0aWwuZ2V0TGFiZWwodmFsdWUsICd0eXBlJykgYXMgTWVzc2FnZVR5cGU7XG4gICAgcmV0dXJuIE1FU1NBR0VfVFlQRV9NQVBba2V5XTtcbiAgfTtcbn1cbiIsIjxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGlzdFwiPlxuICA8YXVpLWFjY29yZGlvblxuICAgIGNsYXNzPVwibm90aWZ5XCJcbiAgICBbYmFja2dyb3VuZF09XCJmYWxzZVwiXG4gID5cbiAgICA8YXVpLWFjY29yZGlvbi1pdGVtXG4gICAgICBbYmFja2dyb3VuZF09XCJmYWxzZVwiXG4gICAgICBbY2xhc3MuZXhwYW5kXT1cIml0ZW0uZXhwYW5kZWRcIlxuICAgICAgKGV4cGFuZGVkQ2hhbmdlKT1cImV4cGFuZGVkQ2hhbmdlKCRldmVudCwgaXRlbSlcIlxuICAgID5cbiAgICAgIDxkaXYgYXVpQWNjb3JkaW9uSXRlbUhlYWRlcj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5vdGlmeV9oZWFkZXJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibm90aWZ5X2hlYWRlcl90aXRsZVwiPlxuICAgICAgICAgICAgPGF1aS10YWdcbiAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtIHwgcHVyZTogZ2V0VGFnT3B0aW9uIGFzIHRhZ09wdGlvblwiXG4gICAgICAgICAgICAgIFtjb2xvcl09XCJ0YWdPcHRpb24/LmNvbG9yIHx8ICcnXCJcbiAgICAgICAgICAgICAgW3R5cGVdPVwidGFnT3B0aW9uPy50eXBlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgdGFnT3B0aW9uPy50aXRsZSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9hdWktdGFnPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJub3RpZnlfaGVhZGVyX3RleHRcIj57e1xuICAgICAgICAgICAgICBpdGVtIHwgYWNsQ3JlYXRpb25UaW1lc3RhbXAgfCBhY2xSZWxhdGl2ZVRpbWVcbiAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm90aWZ5X25hbWVcIj5cbiAgICAgICAgICAgIHt7IGl0ZW0uc3BlYy5zdWJqZWN0IHwgYWNsRmllbGROb3RBdmFpbGFibGUgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibm90aWZ5X2NvbnRlbnRcIj5cbiAgICAgICAge3sgaXRlbS5zcGVjLmNvbnRlbnQgfCBhY2xGaWVsZE5vdEF2YWlsYWJsZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9hdWktYWNjb3JkaW9uLWl0ZW0+XG4gIDwvYXVpLWFjY29yZGlvbj5cbjwvbmctY29udGFpbmVyPlxuIl19