{"version":3,"file":"ngx-toast-notifier.mjs","sources":["../../../projects/ngx-toast-notifier/src/lib/interfaces/i-notification.ts","../../../projects/ngx-toast-notifier/src/lib/services/ngx-toast-notifier.service.ts","../../../projects/ngx-toast-notifier/src/lib/services/ngx-toast.service.ts","../../../projects/ngx-toast-notifier/src/lib/animations/animations.ts","../../../projects/ngx-toast-notifier/src/lib/components/notification/notification.component.ts","../../../projects/ngx-toast-notifier/src/lib/components/ngx-toast-notifier.component.ts","../../../projects/ngx-toast-notifier/src/lib/ngx-toast-notifier.module.ts","../../../projects/ngx-toast-notifier/src/public-api.ts","../../../projects/ngx-toast-notifier/src/ngx-toast-notifier.ts"],"sourcesContent":["import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface INotification{\r\n  title: string;\r\n  text: string;\r\n  icon: 'success' | 'warning' | 'info' | 'danger';\r\n  bgColor: string | undefined;\r\n}\r\n\r\n\r\nexport interface GlobalConfiguration{\r\n  timeOut: number;\r\n  bgColors: Partial<BgColors>\r\n}\r\n\r\nexport interface BgColors{\r\n  success: string;\r\n  warning: string;\r\n  info: string;\r\n  danger: string;\r\n}\r\n\r\nexport const DefaultGlobalConfig: GlobalConfiguration = {\r\n  timeOut: 3000,\r\n  bgColors: {\r\n    success: '#54a254',\r\n    warning: '#e09f26',\r\n    info: '#1976d2',\r\n    danger: '#da2d2d',\r\n  }\r\n}\r\n\r\nexport interface NotificationToken{\r\n  default: GlobalConfiguration,\r\n  config: Partial<GlobalConfiguration>\r\n}\r\n\r\n\r\nexport const NOTIFICATION_CONFIG = new InjectionToken<NotificationToken>('NotificationConfig');","import { Inject, Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport {\r\n  INotification,\r\n  NotificationToken,\r\n  NOTIFICATION_CONFIG,\r\n} from '../interfaces/i-notification';\r\n\r\n@Injectable({\r\n  providedIn: 'root',\r\n})\r\nexport class NgxToastNotifierService {\r\n  private $notifications: BehaviorSubject<INotification[]> =\r\n    new BehaviorSubject<INotification[]>([]);\r\n  public $notificationsObs = this.$notifications.asObservable();\r\n  public defaultConfig!: NotificationToken;\r\n  constructor(@Inject(NOTIFICATION_CONFIG) config: NotificationToken) {\r\n    this.defaultConfig = config;\r\n  }\r\n\r\n  get notifications(): INotification[] {\r\n    return this.$notifications.value;\r\n  }\r\n\r\n  onShowNotification(notification: INotification): void {\r\n    this.$notifications.next([\r\n      ...this.notifications,\r\n      {\r\n        ...notification,\r\n      },\r\n    ]);\r\n\r\n    setTimeout(() => {\r\n      this.onRemove()\r\n    }, this.defaultConfig.config.timeOut ? this.defaultConfig.config.timeOut : this.defaultConfig.default.timeOut);\r\n  }\r\n\r\n  private onRemove(): void {\r\n    this.notifications.shift()\r\n    this.$notifications.next(this.notifications);\r\n  }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { INotification } from '../interfaces/i-notification';\nimport { NgxToastNotifierService } from './ngx-toast-notifier.service';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class NgxToastService {\n\n  constructor(private ngxToastService: NgxToastNotifierService) { }\n\n\n  onSuccess(title: string, text: string): void {\n    const notification: INotification = {\n      text,\n      title,\n      icon: 'success',\n      bgColor: this.ngxToastService.defaultConfig.config.bgColors?.success\n        ? this.ngxToastService.defaultConfig.config.bgColors.success\n        : this.ngxToastService.defaultConfig.default.bgColors.success,\n    };\n    this.ngxToastService.onShowNotification(notification);\n  }\n\n  onInfo(title: string, text: string): void {\n    const notification: INotification = {\n      text,\n      title,\n      icon: 'info',\n      bgColor: this.ngxToastService.defaultConfig.config.bgColors?.info\n        ? this.ngxToastService.defaultConfig.config.bgColors.info\n        : this.ngxToastService.defaultConfig.default.bgColors.info,\n    };\n    this.ngxToastService.onShowNotification(notification);\n  }\n\n  onWarning(title: string, text: string): void {\n    const notification: INotification = {\n      text,\n      title,\n      icon: 'warning',\n      bgColor: this.ngxToastService.defaultConfig.config.bgColors?.warning\n        ? this.ngxToastService.defaultConfig.config.bgColors.warning\n        : this.ngxToastService.defaultConfig.default.bgColors.warning,\n    };\n    this.ngxToastService.onShowNotification(notification);\n  }\n\n  onDanger(title: string, text: string): void {\n    const notification: INotification = {\n      text,\n      title,\n      icon: 'danger',\n      bgColor: this.ngxToastService.defaultConfig.config.bgColors?.danger\n        ? this.ngxToastService.defaultConfig.config.bgColors.danger\n        : this.ngxToastService.defaultConfig.default.bgColors.danger,\n    };\n    this.ngxToastService.onShowNotification(notification);\n  }\n}\n","import {\r\n  animate,\r\n  AnimationTriggerMetadata,\r\n  style,\r\n  transition,\r\n  trigger,\r\n} from '@angular/animations';\r\n\r\nexport const onEnterLeave: AnimationTriggerMetadata = trigger('onEnterLeave', [\r\n  transition(':enter', [\r\n    style({ opacity: '0' }),\r\n    animate(500, style({ opacity: '1' })),\r\n  ]),\r\n  transition(':leave', [\r\n    style({ opacity: '1' }),\r\n    animate(500, style({ opacity: '0' })),\r\n  ]),\r\n]);\r\n","import { Component, Input } from '@angular/core';\r\nimport { INotification } from '../../interfaces/i-notification';\r\nimport { NgxToastNotifierService } from '../../services/ngx-toast-notifier.service';\r\n\r\n@Component({\r\n  selector: 'ngx-notification',\r\n  template: `\r\n    <div\r\n      class=\"wrap-notification\"\r\n      [ngStyle]=\"{'background-color' : notificationData.bgColor}\"\r\n    >\r\n      <div class=\"icon-start\">\r\n        <svg viewBox=\"0 0 24 24\" *ngIf=\"notificationData.icon === 'success'\">\r\n          <path\r\n            fill=\"currentColor\"\r\n            d=\"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M12 20C7.59 20 4 16.41 4 12S7.59 4 12 4 20 7.59 20 12 16.41 20 12 20M16.59 7.58L10 14.17L7.41 11.59L6 13L10 17L18 9L16.59 7.58Z\"\r\n          />\r\n        </svg>\r\n        <svg viewBox=\"0 0 24 24\" *ngIf=\"notificationData.icon === 'info'\">\r\n          <path\r\n            fill=\"currentColor\"\r\n            d=\"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z\"\r\n          />\r\n        </svg>\r\n        <svg viewBox=\"0 0 24 24\" *ngIf=\"notificationData.icon === 'warning'\">\r\n          <path\r\n            fill=\"currentColor\"\r\n            d=\"M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z\"\r\n          />\r\n        </svg>\r\n\r\n        <svg viewBox=\"0 0 24 24\" *ngIf=\"notificationData.icon === 'danger'\">\r\n          <path\r\n            fill=\"currentColor\"\r\n            d=\"M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2C6.47,2 2,6.47 2,12C2,17.53 6.47,22 12,22C17.53,22 22,17.53 22,12C22,6.47 17.53,2 12,2M14.59,8L12,10.59L9.41,8L8,9.41L10.59,12L8,14.59L9.41,16L12,13.41L14.59,16L16,14.59L13.41,12L16,9.41L14.59,8Z\"\r\n          />\r\n        </svg>\r\n      </div>\r\n      <div class=\"wrap-texts\">\r\n        <h3>{{ notificationData.title }}</h3>\r\n        <p>{{ notificationData.text }}</p>\r\n      </div>\r\n    </div>\r\n  `,\r\n  styles: [\r\n    `\r\n      :host{\r\n        cursor: default;\r\n      }\r\n      .wrap-notification {\r\n        display: flex;\r\n        padding: 10px 15px;\r\n        width: 100%;\r\n        border-radius: 5px;\r\n        margin-bottom: 8px;\r\n        color: #ffffff;\r\n        min-height: 50px;\r\n      }\r\n\r\n      .icon-start {\r\n        height: 30px;\r\n        width: 30px;\r\n        flex: 0 0 30px;\r\n        margin-right: 5px;\r\n      }\r\n      \r\n      .wrap-texts {\r\n        flex: auto;\r\n      }\r\n\r\n      .wrap-texts h3 {\r\n        font-size: 16px;\r\n        width: 100%;\r\n        margin: 0;\r\n      }\r\n\r\n      .wrap-texts p {\r\n        font-size: 14px;\r\n        width: 100%;\r\n        margin: 0;\r\n      }\r\n\r\n      .wrap-notification:hover {\r\n        box-shadow: 0px 10px 70px -3px rgba(0, 0, 0, 0.1);\r\n      }\r\n    `,\r\n  ],\r\n})\r\nexport class NotificationComponent {\r\n  @Input() notificationData!: INotification;\r\n  constructor(private notificationSvc: NgxToastNotifierService) {}\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { onEnterLeave } from '../animations/animations';\nimport { INotification } from '../interfaces/i-notification';\nimport { NgxToastNotifierService } from '../services/ngx-toast-notifier.service';\n\n@Component({\n  selector: 'ngx-toast-notifier',\n  template: `\n    <div class=\"wrap-notifications\">\n      <ngx-notification\n        [notificationData]=\"item\"\n        *ngFor=\"let item of $notifications | async\"\n        @onEnterLeave\n      >\n      </ngx-notification>\n    </div>\n  `,\n  styles: [\n    `\n      :host {\n        display: flex;\n        position: fixed;\n        width: 300px;\n        height: auto;\n        max-height: 100vh;\n        overflow: auto;\n        top: 80px;\n        right: 15px;\n        z-index: 99;\n      }\n\n      .wrap-notifications {\n        position: relative;\n        width: 100%;\n        overflow: hidden;\n      }\n\n      @media only screen and (max-width: 500px) {\n        :host {\n          width: 95%;\n          top: 20px;\n          left: 0;\n          right: 0;\n          bottom: 0;\n          margin: auto;\n        }\n      }\n    `,\n  ],\n  animations: [onEnterLeave],\n})\nexport class NgxToastNotifierComponent implements OnInit {\n  $notifications!: Observable<INotification[]>;\n  constructor(private notificationSvc: NgxToastNotifierService) {}\n\n  ngOnInit(): void {\n    this.$notifications = this.notificationSvc.$notificationsObs;\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { DefaultGlobalConfig, GlobalConfiguration, NOTIFICATION_CONFIG } from './interfaces/i-notification';\nimport { NgxToastNotifierComponent } from './components/ngx-toast-notifier.component';\nimport { NotificationComponent } from './components/notification/notification.component';\n\n\n\n@NgModule({\n  declarations: [\n    NgxToastNotifierComponent,\n    NotificationComponent\n  ],\n  imports: [\n    CommonModule\n  ],\n  exports: [\n    NgxToastNotifierComponent\n  ]\n})\nexport class NgxToastNotifierModule {\n  static forRoot(config : Partial<GlobalConfiguration> = {}): ModuleWithProviders<NgxToastNotifierModule>{\n    return {\n      ngModule: NgxToastNotifierModule,\n      providers: [\n        {\n          provide: NOTIFICATION_CONFIG,\n          useValue: {\n            default: DefaultGlobalConfig,\n            config\n          }\n        }\n      ]\n    }\n  }\n}\n","/*\n * Public API Surface of ngx-toast-notifier\n */\n\nexport * from './lib/services/ngx-toast-notifier.service';\nexport * from './lib/services/ngx-toast.service';\nexport * from './lib/components/ngx-toast-notifier.component';\nexport * from './lib/ngx-toast-notifier.module';\nexport * from './lib/animations/animations'\nexport * from './lib/interfaces/i-notification'\nexport * from './lib/components/notification/notification.component'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NgxToastNotifierService","i2.NotificationComponent","i3"],"mappings":"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"}