{"version":3,"file":"egovsolutions-angular-messages.mjs","sources":["../../../projects/angular-messages/src/lib/messages/message/message.component.ts","../../../projects/angular-messages/src/lib/messages/message/message.component.html","../../../projects/angular-messages/src/lib/messages/messages.component.ts","../../../projects/angular-messages/src/lib/messages/messages.component.html","../../../projects/angular-messages/src/lib/messages.module.ts","../../../projects/angular-messages/src/public-api.ts","../../../projects/angular-messages/src/egovsolutions-angular-messages.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, Input, OnDestroy, OnInit } from '@angular/core';\nimport { Message, MessageType } from '../../models/message.model';\n\n@Component({\n    selector: 'egov-message',\n    templateUrl: './message.component.html',\n    styleUrls: ['./message.component.scss'],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MessageComponent implements OnInit, OnDestroy\n{\n    public static readonly instancesByElement = new Map<HTMLElement, MessageComponent>();\n\n    constructor\n    (\n        // Element reference\n\n        private readonly elRef: ElementRef,\n    )\n    {}\n\n\n    // Init\n\n    ngOnInit() { MessageComponent.instancesByElement.set(this.elRef.nativeElement, this); }\n\n\n    // Customize by passing a Message\n\n    @Input() public message?: Message;\n\n\n    // Customize by passing separate values\n\n    @Input() public content?: string;\n    @Input() public html?: boolean;\n    @Input() public dismissable?: boolean;\n    @Input() public type?: MessageType;\n    @Input() public dismissed?: boolean;\n\n\n    // Dismiss\n\n    public selfDismissed = false;\n\n    public dismiss()\n    {\n        if (this.message)\n            this.message.dismissed = true;\n        else\n            this.selfDismissed = true;\n    }\n\n\n    // Host classes\n\n    private getType() { return this.message ? this.message.type : this.type; }\n    @HostBinding('class.info') public get a() { return this.getType() === 'info'; }\n    @HostBinding('class.warning') public get b() { return this.getType() === 'warning'; }\n    @HostBinding('class.error') public get c() { return this.getType() === 'error'; }\n    @HostBinding('class.unavailable') public get d() { return this.getType() === 'unavailable'; }\n\n    @HostBinding('class.dismissed') public get e()\n    { return this.message?.dismissed || this.dismissed || this.selfDismissed; }\n\n\n    // Destroy\n\n    ngOnDestroy() { MessageComponent.instancesByElement.delete(this.elRef.nativeElement); }\n\n}\n","<ng-template #messageTemplate let-message>\n    <button class=\"close\" *ngIf=\"message.dismissable\" (click)=\"dismiss()\" type=\"button\">\n        <mat-icon>close</mat-icon>\n    </button>\n    <div class=\"message-content\">\n        <div class=\"icon\">&nbsp;</div>\n        <ng-container *ngIf=\"message.content\">\n            <ng-container *ngIf=\"!message.html\">\n                <div class=\"message-text\">{{ message.content }}</div>\n            </ng-container>\n            <ng-container *ngIf=\"message.html\">\n                <div class=\"message-text\" [innerHTML]=\"message.content\"></div>\n            </ng-container>\n        </ng-container>\n        <ng-container *ngIf=\"!message.content\">\n            <div class=\"message-text\"><ng-content></ng-content></div>\n        </ng-container>\n    </div>\n</ng-template>\n<ng-container\n    *ngTemplateOutlet=\"\n        messageTemplate;\n        context: {\n            $implicit: message || {\n                dismissable: dismissable,\n                content: content,\n                html: html\n            }\n        }\n    \"\n></ng-container>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { Message } from '../models/message.model';\n\n@Component({\n    selector: 'egov-messages',\n    templateUrl: './messages.component.html',\n    styleUrls: ['./messages.component.scss'],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MessagesComponent\n{\n    // Customizations\n\n    @Input() public messages?: Message[];\n}\n","<egov-message *ngFor=\"let message of messages\" [message]=\"message\"></egov-message>\n<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\nimport { MessageComponent } from './messages/message/message.component';\nimport { MessagesComponent } from './messages/messages.component';\nimport { CommonModule } from '@angular/common';\nimport { MatIconModule } from '@angular/material/icon';\n\n@NgModule({\n    declarations: [\n        MessageComponent,\n        MessagesComponent,\n    ],\n    imports: [\n        CommonModule,\n        MatIconModule,\n    ],\n    exports: [\n        MessageComponent,\n        MessagesComponent,\n    ]\n})\nexport class MessagesModule { }\n","/*\n * Public API Surface of angular-messages\n */\n\nexport * from './lib/messages.module';\nexport * from './lib/models/message.model';\nexport { MessageComponent } from './lib/messages/message/message.component';\nexport { MessagesComponent } from './lib/messages/messages.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MASa,gBAAgB;IAIzB;;IAIqB,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;;QA0B/B,kBAAa,GAAG,KAAK,CAAC;KAxB3B;;IAKF,QAAQ,KAAK,gBAAgB,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,EAAE;IAqBhF,OAAO;QAEV,IAAI,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;;YAE9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;KACjC;;IAKO,OAAO,KAAK,OAAO,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE;IAC1E,IAAsC,CAAC,KAAK,OAAO,IAAI,CAAC,OAAO,EAAE,KAAK,MAAM,CAAC,EAAE;IAC/E,IAAyC,CAAC,KAAK,OAAO,IAAI,CAAC,OAAO,EAAE,KAAK,SAAS,CAAC,EAAE;IACrF,IAAuC,CAAC,KAAK,OAAO,IAAI,CAAC,OAAO,EAAE,KAAK,OAAO,CAAC,EAAE;IACjF,IAA6C,CAAC,KAAK,OAAO,IAAI,CAAC,OAAO,EAAE,KAAK,aAAa,CAAC,EAAE;IAE7F,IAA2C,CAAC,KAC1C,OAAO,IAAI,CAAC,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,EAAE;;IAK3E,WAAW,KAAK,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE;;AAzDhE,mCAAkB,GAAG,IAAI,GAAG,EAAkC,CAAA;6GAF5E,gBAAgB;iGAAhB,gBAAgB,0VCT7B,smCA+BA;2FDtBa,gBAAgB;kBAN5B,SAAS;+BACI,cAAc,mBAGP,uBAAuB,CAAC,MAAM;iGAsB/B,OAAO;sBAAtB,KAAK;gBAKU,OAAO;sBAAtB,KAAK;gBACU,IAAI;sBAAnB,KAAK;gBACU,WAAW;sBAA1B,KAAK;gBACU,IAAI;sBAAnB,KAAK;gBACU,SAAS;sBAAxB,KAAK;gBAmBgC,CAAC;sBAAtC,WAAW;uBAAC,YAAY;gBACgB,CAAC;sBAAzC,WAAW;uBAAC,eAAe;gBACW,CAAC;sBAAvC,WAAW;uBAAC,aAAa;gBACmB,CAAC;sBAA7C,WAAW;uBAAC,mBAAmB;gBAEW,CAAC;sBAA3C,WAAW;uBAAC,iBAAiB;;;MErDrB,iBAAiB;;8GAAjB,iBAAiB;kGAAjB,iBAAiB,uFCT9B,qHAEA;2FDOa,iBAAiB;kBAN7B,SAAS;+BACI,eAAe,mBAGR,uBAAuB,CAAC,MAAM;8BAM/B,QAAQ;sBAAvB,KAAK;;;MEOG,cAAc;;2GAAd,cAAc;4GAAd,cAAc,iBAZnB,gBAAgB;QAChB,iBAAiB,aAGjB,YAAY;QACZ,aAAa,aAGb,gBAAgB;QAChB,iBAAiB;4GAGZ,cAAc,YATd;YACL,YAAY;YACZ,aAAa;SAChB;2FAMQ,cAAc;kBAd1B,QAAQ;mBAAC;oBACN,YAAY,EAAE;wBACV,gBAAgB;wBAChB,iBAAiB;qBACpB;oBACD,OAAO,EAAE;wBACL,YAAY;wBACZ,aAAa;qBAChB;oBACD,OAAO,EAAE;wBACL,gBAAgB;wBAChB,iBAAiB;qBACpB;iBACJ;;;ACnBD;;;;ACAA;;;;;;"}