UNPKG

ng-ytl-zorro-antd

Version:

An enterprise-class UI components based on Ant Design and Angular

65 lines (62 loc) 2.73 kB
import { animate, state, style, transition, trigger, } from '@angular/animations'; import { Component, ViewEncapsulation } from '@angular/core'; import { NzMessageComponent } from '../message/nz-message.component'; import { NzNotificationContainerComponent } from './nz-notification-container.component'; @Component({ selector : 'nz-notification', encapsulation: ViewEncapsulation.None, animations : [ trigger('enterLeave', [ state('enter', style({ opacity: 1, transform: 'translateX(0)' })), transition('* => enter', [ style({ opacity: 0, transform: 'translateX(5%)' }), animate('100ms linear') ]), state('leave', style({ opacity: 0, transform: 'translateY(-10%)' })), transition('* => leave', [ style({ opacity: 1, transform: 'translateY(0)' }), animate('100ms linear') ]), ]) ], template : ` <div class="ant-notification-notice ant-notification-notice-closable" [@enterLeave]="nzMessage.state" (mouseenter)="onEnter()" (mouseleave)="onLeave()"> <div *ngIf="!nzMessage.html" class="ant-notification-notice-content"> <div class="ant-notification-notice-content" [ngClass]="{ 'ant-notification-notice-with-icon': nzMessage.type !== 'blank' }"> <ng-container [ngSwitch]="nzMessage.type"> <i *ngSwitchCase="'success'" class="ant-notification-notice-icon ant-notification-notice-icon-success anticon anticon-check-circle-o"></i> <i *ngSwitchCase="'info'" class="ant-notification-notice-icon ant-notification-notice-icon-info anticon anticon-info-circle-o"></i> <i *ngSwitchCase="'warning'" class="ant-notification-notice-icon ant-notification-notice-icon-warning anticon anticon-exclamation-circle-o"></i> <i *ngSwitchCase="'error'" class="ant-notification-notice-icon ant-notification-notice-icon-error anticon anticon-cross-circle-o"></i> </ng-container> <div class="ant-notification-notice-message">{{ nzMessage.title }}</div> <div class="ant-notification-notice-description">{{ nzMessage.content }}</div> </div> </div> <div *ngIf="nzMessage.html" [innerHTML]="nzMessage.html"></div> <a tabindex="0" class="ant-notification-notice-close" (click)="onClickClose()"> <span class="ant-notification-notice-close-x"></span> </a> </div> `, styleUrls : [ './style/index.less' ] }) export class NzNotificationComponent extends NzMessageComponent { constructor(container: NzNotificationContainerComponent) { super(container); } onClickClose(): void { this._destroy(); } }