UNPKG

11.5 kBSource Map (JSON)View Raw
1{"version":3,"file":"primeng-messages.umd.js","sources":["ng://primeng/messages/messages.ts"],"sourcesContent":["import {NgModule,Component,OnDestroy,Input,Output,EventEmitter,AfterContentInit,Optional,ElementRef,ChangeDetectionStrategy,ContentChildren,QueryList,TemplateRef} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {trigger,state,style,transition,animate} from '@angular/animations';\nimport {Message,PrimeTemplate,MessageService} from 'primeng/api';\nimport {Subscription} from 'rxjs';\n\n@Component({\n selector: 'p-messages',\n template: `\n <div *ngIf=\"hasMessages()\" class=\"ui-messages ui-widget ui-corner-all\"\n [ngClass]=\"getSeverityClass()\" role=\"alert\" [ngStyle]=\"style\" [class]=\"styleClass\"\n [@messageAnimation]=\"{value: 'visible', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}\">\n <a tabindex=\"0\" class=\"ui-messages-close\" (click)=\"clear($event)\" (keydown.enter)=\"clear($event)\" *ngIf=\"closable\">\n <i class=\"pi pi-times\"></i>\n </a>\n <span class=\"ui-messages-icon pi\" [ngClass]=\"icon\"></span>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <ul *ngIf=\"value && value.length\">\n <li *ngFor=\"let msg of value\">\n <div *ngIf=\"!escape; else escapeOut\">\n <span *ngIf=\"msg.summary\" class=\"ui-messages-summary\" [innerHTML]=\"msg.summary\"></span>\n <span *ngIf=\"msg.detail\" class=\"ui-messages-detail\" [innerHTML]=\"msg.detail\"></span>\n </div>\n <ng-template #escapeOut>\n <span *ngIf=\"msg.summary\" class=\"ui-messages-summary\">{{msg.summary}}</span>\n <span *ngIf=\"msg.detail\" class=\"ui-messages-detail\">{{msg.detail}}</span>\n </ng-template>\n </li>\n </ul>\n </div>\n `,\n animations: [\n trigger('messageAnimation', [\n state('visible', style({\n transform: 'translateY(0)',\n opacity: 1\n })),\n transition('void => *', [\n style({transform: 'translateY(-25%)', opacity: 0}),\n animate('{{showTransitionParams}}')\n ]),\n transition('* => void', [\n animate(('{{hideTransitionParams}}'), style({\n opacity: 0,\n transform: 'translateY(-25%)'\n }))\n ])\n ])\n ],\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class Messages implements AfterContentInit, OnDestroy {\n\n @Input() value: Message[];\n\n @Input() closable: boolean = true;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() enableService: boolean = true;\n\n @Input() key: string;\n\n @Input() escape: boolean = true;\n\n @Input() severity: string;\n\n @Input() showTransitionOptions: string = '300ms ease-out';\n\n @Input() hideTransitionOptions: string = '250ms ease-in';\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n @Output() valueChange: EventEmitter<Message[]> = new EventEmitter<Message[]>();\n\n messageSubscription: Subscription;\n\n clearSubscription: Subscription;\n\n contentTemplate: TemplateRef<any>;\n\n constructor(@Optional() public messageService: MessageService, public el: ElementRef) {}\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch(item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n\n if (this.messageService && this.enableService && !this.contentTemplate) {\n this.messageSubscription = this.messageService.messageObserver.subscribe((messages: any) => {\n if (messages) {\n if (messages instanceof Array) {\n let filteredMessages = messages.filter(m => this.key === m.key);\n this.value = this.value ? [...this.value, ...filteredMessages] : [...filteredMessages];\n }\n else if (this.key === messages.key) {\n this.value = this.value ? [...this.value, ...[messages]] : [messages];\n }\n }\n });\n\n this.clearSubscription = this.messageService.clearObserver.subscribe(key => {\n if (key) {\n if (this.key === key) {\n this.value = null;\n }\n }\n else {\n this.value = null;\n }\n });\n }\n }\n\n hasMessages() {\n let parentEl = this.el.nativeElement.parentElement;\n if (parentEl && parentEl.offsetParent) {\n return this.contentTemplate != null || this.value && this.value.length > 0;\n }\n\n return false;\n }\n\n getSeverityClass() {\n if (this.severity) {\n return 'ui-messages-' + this.severity;\n }\n else {\n const msg = this.value[0];\n if (msg) {\n const severities = ['info', 'warn', 'error', 'success'];\n const severity = severities.find(item => item === msg.severity);\n\n return severity && `ui-messages-${severity}`;\n }\n }\n\n return null;\n }\n\n clear(event) {\n this.value = [];\n this.valueChange.emit(this.value);\n\n event.preventDefault();\n }\n\n get icon(): string {\n const severity = this.severity || (this.hasMessages() ? this.value[0].severity : null);\n\n if (this.hasMessages()) {\n switch(severity) {\n case 'success':\n return 'pi-check';\n break;\n\n case 'info':\n return 'pi-info-circle';\n break;\n\n case 'error':\n return 'pi-times';\n break;\n\n case 'warn':\n return 'pi-exclamation-triangle';\n break;\n\n default:\n return 'pi-info-circle';\n break;\n }\n }\n\n return null;\n }\n\n ngOnDestroy() {\n if (this.messageSubscription) {\n this.messageSubscription.unsubscribe();\n }\n\n if (this.clearSubscription) {\n this.clearSubscription.unsubscribe();\n }\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [Messages],\n declarations: [Messages]\n})\nexport class MessagesModule { }\n"],"names":["EventEmitter","MessageService","Optional","ElementRef","Input","ContentChildren","PrimeTemplate","Output","Component","trigger","state","style","transition","animate","ChangeDetectionStrategy","NgModule","CommonModule"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;QAmFI,kBAA+B,cAA8B,EAAS,EAAc;YAArD,mBAAc,GAAd,cAAc,CAAgB;YAAS,OAAE,GAAF,EAAE,CAAY;YA5B3E,aAAQ,GAAY,IAAI,CAAC;YAMzB,kBAAa,GAAY,IAAI,CAAC;YAI9B,WAAM,GAAY,IAAI,CAAC;YAIvB,0BAAqB,GAAW,gBAAgB,CAAC;YAEjD,0BAAqB,GAAW,eAAe,CAAC;YAI/C,gBAAW,GAA4B,IAAIA,iBAAY,EAAa,CAAC;SAQS;QAExF,qCAAkB,GAAlB;YAAA,iBAqCC;YApCG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAC,IAAI;gBACxB,QAAO,IAAI,CAAC,OAAO,EAAE;oBACjB,KAAK,SAAS;wBACV,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC;wBACzC,MAAM;oBAEN;wBACI,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC;wBACzC,MAAM;iBACT;aACJ,CAAC,CAAC;YAEH,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBACpE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC,UAAC,QAAa;oBACnF,IAAI,QAAQ,EAAE;wBACV,IAAI,QAAQ,YAAY,KAAK,EAAE;4BAC3B,IAAI,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,KAAI,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,GAAA,CAAC,CAAC;4BAChE,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,KAAK,YAAO,KAAI,CAAC,KAAK,EAAK,gBAAgB,aAAQ,gBAAgB,CAAC,CAAC;yBAC1F;6BACI,IAAI,KAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,EAAE;4BAChC,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,KAAK,YAAO,KAAI,CAAC,KAAK,EAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;yBACzE;qBACJ;iBACJ,CAAC,CAAC;gBAEH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,UAAA,GAAG;oBACpE,IAAI,GAAG,EAAE;wBACL,IAAI,KAAI,CAAC,GAAG,KAAK,GAAG,EAAE;4BAClB,KAAI,CAAC,KAAK,GAAG,IAAI,CAAC;yBACrB;qBACJ;yBACI;wBACD,KAAI,CAAC,KAAK,GAAG,IAAI,CAAC;qBACrB;iBACJ,CAAC,CAAC;aACN;SACJ;QAED,8BAAW,GAAX;YACI,IAAI,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC;YACnD,IAAI,QAAQ,IAAI,QAAQ,CAAC,YAAY,EAAE;gBACnC,OAAO,IAAI,CAAC,eAAe,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;aAC9E;YAED,OAAO,KAAK,CAAC;SAChB;QAED,mCAAgB,GAAhB;YACI,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,OAAO,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC;aACzC;iBACI;gBACD,IAAM,KAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,KAAG,EAAE;oBACL,IAAM,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;oBACxD,IAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,KAAK,KAAG,CAAC,QAAQ,GAAA,CAAC,CAAC;oBAEhE,OAAO,QAAQ,IAAI,iBAAe,QAAU,CAAC;iBAChD;aACJ;YAED,OAAO,IAAI,CAAC;SACf;QAED,wBAAK,GAAL,UAAM,KAAK;YACP,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAElC,KAAK,CAAC,cAAc,EAAE,CAAC;SAC1B;QAED,sBAAI,0BAAI;iBAAR;gBACI,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;gBAEvF,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;oBACpB,QAAO,QAAQ;wBACX,KAAK,SAAS;4BACV,OAAO,UAAU,CAAC;4BACtB,MAAM;wBAEN,KAAK,MAAM;4BACP,OAAO,gBAAgB,CAAC;4BAC5B,MAAM;wBAEN,KAAK,OAAO;4BACR,OAAO,UAAU,CAAC;4BACtB,MAAM;wBAEN,KAAK,MAAM;4BACP,OAAO,yBAAyB,CAAC;4BACrC,MAAM;wBAEN;4BACI,OAAO,gBAAgB,CAAC;4BAC5B,MAAM;qBACT;iBACJ;gBAED,OAAO,IAAI,CAAC;aACf;;;WAAA;QAED,8BAAW,GAAX;YACI,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC1B,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC;aAC1C;YAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBACxB,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;aACxC;SACJ;;oBAhH8CC,kBAAc,uBAAhDC,aAAQ;oBAAqDC,eAAU;;QA9B3E;YAARC,UAAK,EAAE;+CAAkB;QAEjB;YAARA,UAAK,EAAE;kDAA0B;QAEzB;YAARA,UAAK,EAAE;+CAAY;QAEX;YAARA,UAAK,EAAE;oDAAoB;QAEnB;YAARA,UAAK,EAAE;uDAA+B;QAE9B;YAARA,UAAK,EAAE;6CAAa;QAEZ;YAARA,UAAK,EAAE;gDAAwB;QAEvB;YAARA,UAAK,EAAE;kDAAkB;QAEjB;YAARA,UAAK,EAAE;+DAAkD;QAEjD;YAARA,UAAK,EAAE;+DAAiD;QAEzB;YAA/BC,oBAAe,CAACC,iBAAa,CAAC;mDAA2B;QAEhD;YAATC,WAAM,EAAE;qDAAsE;QAxBtE,QAAQ;YA7CpBC,cAAS,CAAC;gBACP,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,+9CAsBT;gBACD,UAAU,EAAE;oBACRC,kBAAO,CAAC,kBAAkB,EAAE;wBACxBC,gBAAK,CAAC,SAAS,EAAEC,gBAAK,CAAC;4BACnB,SAAS,EAAE,eAAe;4BAC1B,OAAO,EAAE,CAAC;yBACb,CAAC,CAAC;wBACHC,qBAAU,CAAC,WAAW,EAAE;4BACpBD,gBAAK,CAAC,EAAC,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;4BAClDE,kBAAO,CAAC,0BAA0B,CAAC;yBACtC,CAAC;wBACFD,qBAAU,CAAC,WAAW,EAAE;4BACpBC,kBAAO,EAAE,0BAA0B,GAAGF,gBAAK,CAAC;gCACxC,OAAO,EAAE,CAAC;gCACV,SAAS,EAAE,kBAAkB;6BAChC,CAAC,CAAC;yBACN,CAAC;qBACL,CAAC;iBACL;gBACD,eAAe,EAAEG,4BAAuB,CAAC,OAAO;aACnD,CAAC;YAiCe,WAAAZ,aAAQ,EAAE,CAAA;WAhCd,QAAQ,CAiJpB;QAAD,eAAC;KAjJD,IAiJC;;QAOD;SAA+B;QAAlB,cAAc;YAL1Ba,aAAQ,CAAC;gBACN,OAAO,EAAE,CAACC,mBAAY,CAAC;gBACvB,OAAO,EAAE,CAAC,QAAQ,CAAC;gBACnB,YAAY,EAAE,CAAC,QAAQ,CAAC;aAC3B,CAAC;WACW,cAAc,CAAI;QAAD,qBAAC;KAA/B;;;;;;;;;;;;;"}
\No newline at end of file