{"version":3,"file":"toastr-notify.mjs","sources":["../../../projects/toastr-notify/src/lib/mToastr-config.service.ts","../../../projects/toastr-notify/src/lib/toastr-notify.service.ts","../../../projects/toastr-notify/src/lib/toastr-notify.component.ts","../../../projects/toastr-notify/src/lib/toastr-notify.component.html","../../../projects/toastr-notify/src/lib/mToastr.module.ts","../../../projects/toastr-notify/src/public-api.ts","../../../projects/toastr-notify/src/toastr-notify.ts"],"sourcesContent":["import {Injectable} from \"@angular/core\";\r\n\r\n@Injectable({\r\n  providedIn:'root'\r\n  }\r\n)\r\n\r\nexport class MToastrConfigService{\r\n  public config = {\r\n    closeButton: true,\r\n    toastrTimeOut:5000,\r\n    fontFamily:\"Arial\",\r\n    fontSize:15,\r\n    progressBarAnimation:'increase',\r\n    removeProgressBar:false,\r\n    removeButton:false,\r\n    removeBackgrounds:false,\r\n    position: \"_top\",\r\n    align_position:\"_right\"\r\n  };\r\n\r\n  toastrTimeOut:number = this.config.toastrTimeOut;\r\n  fontFamily: string = this.config.fontFamily;\r\n  fontSize:number = this.config.fontSize;\r\n  progressBarAnimation:string = this.config.progressBarAnimation;\r\n  removeProgressBar:boolean = this.config.removeProgressBar;\r\n  removeButton:boolean = this.config.removeButton;\r\n  removeBackgrounds:boolean = this.config.removeBackgrounds;\r\n  position:string = this.config.position;\r\n  align_position:string = this.config.align_position;\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport {DomSanitizer, SafeHtml} from \"@angular/platform-browser\";\r\nimport {MToastrModel} from \"./mToastr.model\";\r\nimport {MToastrConfigService} from \"./mToastr-config.service\";\r\n\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\n\r\nexport class ToastrNotifyService {\r\n  private toastrs: MToastrModel[] = [];\r\n  private toastrId = 0;\r\n  private toastrSubject = new BehaviorSubject<MToastrModel[]>([]);\r\n\r\n  constructor(private domsanitizer: DomSanitizer, private mToastrConfig: MToastrConfigService) {}\r\n\r\n   getToastr() {\r\n    return this.toastrSubject.asObservable();\r\n  }\r\n\r\n  showToastr(type: string, message: string, icon: SafeHtml,closeIcon: SafeHtml): void {\r\n    const toastr: MToastrModel = {\r\n      id: ++this.toastrId,\r\n      type,\r\n      message,\r\n      icon,\r\n      timeoutRef: null,\r\n      closeIcon\r\n    };\r\n    this.toastrs.push(toastr);\r\n    this.toastrSubject.next([...this.toastrs]);\r\n    this.autoClose(toastr);\r\n  }\r\n\r\n  showSuccess(message: string): void {\r\n    const success_icon = this.domsanitizer.bypassSecurityTrustHtml('<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"25\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"green\" class=\"w-6 h-6\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m4.5 12.75 6 6 9-13.5\" /></svg>');\r\n    const close_success = this.domsanitizer.bypassSecurityTrustHtml(`<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"19\" style=\"cursor: pointer\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"#1ea97c\" class=\"w-6 h-6\"> <path d=\"M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z\" />`)\r\n    this.showToastr('success', message, success_icon,close_success);\r\n  }\r\n  showWarning(message:string):void{\r\n    const warning_icon = this.domsanitizer.bypassSecurityTrustHtml('<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\"  width=\"25\" stroke=\"orange\" class=\"w-6 h-6\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126ZM12 15.75h.007v.008H12v-.008Z\" /></svg>');\r\n    const close_warning = this.domsanitizer.bypassSecurityTrustHtml(`<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"19\" style=\"cursor: pointer\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"#cc8925\" class=\"w-6 h-6\"> <path d=\"M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z\" />`)\r\n    this.showToastr('warning', message, warning_icon,close_warning);\r\n  }\r\n  showInfo(message:string):void{\r\n    const info_icon = this.domsanitizer.bypassSecurityTrustHtml('<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" width=\"25\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" class=\"w-6 h-6\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 9v3.75m9-.75a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 3.75h.008v.008H12v-.008Z\" /></svg>');\r\n    const close_info = this.domsanitizer.bypassSecurityTrustHtml(`<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"19\" style=\"cursor: pointer\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"#3b82f6\" class=\"w-6 h-6\"> <path d=\"M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z\" />`)\r\n    this.showToastr('info', message, info_icon,close_info);\r\n  }\r\n  showDanger(message:string):void{\r\n    const danger_icon = this.domsanitizer.bypassSecurityTrustHtml('<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"25\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"firebrick\" class=\"w-6 h-6\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 9v3.75m0-10.036A11.959 11.959 0 0 1 3.598 6 11.99 11.99 0 0 0 3 9.75c0 5.592 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.31-.21-2.57-.598-3.75h-.152c-3.196 0-6.1-1.25-8.25-3.286Zm0 13.036h.008v.008H12v-.008Z\" /></svg>');\r\n    const close_danger = this.domsanitizer.bypassSecurityTrustHtml(`<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"19\" style=\"cursor: pointer\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"#B22222FF\" class=\"w-6 h-6\"> <path d=\"M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z\" />`)\r\n    this.showToastr('danger', message, danger_icon,close_danger);\r\n  }\r\n\r\n  autoClose(toastr: MToastrModel): void {\r\n      toastr.timeoutRef = setTimeout(() => {\r\n        this.hide(toastr);\r\n      }, this.mToastrConfig.toastrTimeOut);\r\n  }\r\n\r\n  hide(toastr: any): void {\r\n    const index = this.toastrs.indexOf(toastr);\r\n    if (index !== -1) {\r\n      clearTimeout(toastr.timeoutRef);\r\n      this.toastrs.splice(index, 1);\r\n      this.toastrSubject.next([...this.toastrs]);\r\n    }\r\n  }\r\n\r\n\r\n}\r\n\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {NgClass, NgForOf, NgIf} from \"@angular/common\";\r\nimport {ToastrNotifyService} from \"./toastr-notify.service\";\r\nimport {SafeHtml} from \"@angular/platform-browser\";\r\nimport {animate, style, transition, trigger} from \"@angular/animations\";\r\nimport {MToastrConfigService} from \"./mToastr-config.service\";\r\n\r\n@Component({\r\n  selector: 'm-notify',\r\n  standalone: true,\r\n  imports: [\r\n    NgClass,\r\n    NgIf,\r\n    NgForOf\r\n  ],\r\n  templateUrl:'toastr-notify.component.html',\r\n  styleUrl:'toastr-notify.component.css',\r\n  animations: [\r\n    trigger('fadeInOut', [\r\n      transition(':enter', [\r\n        style({ opacity: 0 }),\r\n        animate('300ms ease-in', style({ opacity: 1 }))\r\n      ]),\r\n      transition(':leave', [\r\n        animate('300ms ease-out', style({ opacity: 0 }))\r\n      ])\r\n    ])\r\n  ]\r\n})\r\nexport class ToastrNotifyComponent implements OnInit{\r\n public toastr!: { type: string; message: string; icon: SafeHtml } |any;\r\n\r\n  constructor(private toastrService: ToastrNotifyService,\r\n              public mToastConfig: MToastrConfigService) {\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    this.toastrService.getToastr().subscribe(toastr => {\r\n      this.toastr = toastr;\r\n    });\r\n  }\r\n\r\n  hideToastr(id: number): void {\r\n    const toastrToRemove = this.toastr.find((toastr:any)=> toastr.id === id);\r\n    if (toastrToRemove) {\r\n      const index = this.toastr.indexOf(toastrToRemove);\r\n      this.toastr.splice(index, 1);\r\n      this.toastrService.hide(toastrToRemove);\r\n    }\r\n  }\r\n\r\n\r\n\r\n\r\n}\r\n","<div style=\"position: relative\">\r\n  <div class=\"base_notify\"\r\n    [class]=\"mToastConfig.align_position +' '+ mToastConfig.position\">\r\n    <div class=\"notifyBox border\"\r\n         *ngFor=\"let t of toastr\"\r\n         [class]=\"t.type\"\r\n         [ngClass]=\"!mToastConfig.removeProgressBar ?\r\n                    {'increase-animation': mToastConfig.progressBarAnimation === 'increase',\r\n                     'decrease-animation':  mToastConfig.progressBarAnimation === 'decrease',\r\n                     'remove_class': mToastConfig.removeBackgrounds\r\n                     } : ''\"\r\n         [style.--animation-duration]=\"mToastConfig.toastrTimeOut + 'ms'\"\r\n         [@fadeInOut]>\r\n      <span [innerHTML]=\"t.icon\"></span>\r\n      <span [style.font-family]=\"mToastConfig.fontFamily\"\r\n            [style.font-size.px]=\"mToastConfig.fontSize\">{{ t.message }}</span>\r\n      <ng-container *ngIf=\"!mToastConfig.removeButton;else showEmpty\">\r\n        <span [innerHTML]=\"t.closeIcon\"\r\n              (click)=\"hideToastr(t.id)\"></span>\r\n      </ng-container>\r\n      <ng-template #showEmpty>&nbsp;</ng-template>\r\n    </div>\r\n  </div>\r\n\r\n</div>\r\n","// app.module.ts\r\n\r\nimport { NgModule } from '@angular/core';\r\nimport {ToastrNotifyComponent} from \"./toastr-notify.component\";\r\nimport {ToastrNotifyService} from \"./toastr-notify.service\";\r\nimport {MToastrConfigService} from \"./mToastr-config.service\";\r\n\r\n@NgModule({\r\n  imports: [\r\n    ToastrNotifyComponent,\r\n  ],\r\n  providers: [ToastrNotifyService, MToastrConfigService],\r\n})\r\nexport class MToastrModule {\r\n  static withConfig(config: Partial<MToastrConfigService>): {\r\n    ngModule: typeof MToastrModule;\r\n    providers: { provide: typeof MToastrConfigService; useValue: Partial<MToastrConfigService> }[]\r\n  } {\r\n    const mergedConfig = { ...new MToastrConfigService(), ...config };\r\n    return {\r\n      ngModule: MToastrModule,\r\n      providers: [\r\n        { provide: MToastrConfigService, useValue: mergedConfig }\r\n      ]\r\n    };\r\n    }}\r\n","/*\r\n * Public API Surface of toastr-notify\r\n */\r\n\r\nexport * from './lib/toastr-notify.service';\r\nexport * from './lib/toastr-notify.component';\r\nexport * from './lib/mToastr.model';\r\nexport * from './lib/mToastr.module'\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.MToastrConfigService","i1.ToastrNotifyService"],"mappings":"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"}