{"version":3,"file":"ngx-toast-notify.mjs","sources":["../../../projects/ngx-toast-notify/src/lib/ngx-toast-notify.service.ts","../../../projects/ngx-toast-notify/src/lib/ngx-toast-notify.component.ts","../../../projects/ngx-toast-notify/src/lib/ngx-toast-notify.module.ts","../../../projects/ngx-toast-notify/src/public-api.ts","../../../projects/ngx-toast-notify/src/ngx-toast-notify.ts"],"sourcesContent":["import { animate, AnimationBuilder, style } from '@angular/animations';\nimport {\n  Injectable,\n  Optional,\n  Renderer2,\n  RendererFactory2,\n} from '@angular/core';\ninterface THEME {\n  color: string;\n  text: string;\n}\n@Injectable({\n  providedIn: 'root',\n})\nexport class NgxToastNotifyService {\n  private renderer: Renderer2;\n  constructor(\n    public rendererFactory: RendererFactory2,\n    private animationBuilder: AnimationBuilder\n  ) {\n    this.renderer = rendererFactory.createRenderer(null, null);\n  }\n\n  /**\n   * showToast: Creates toast notification.\n   * @param text: Toast text to be shown. - String\n   * @param mode: Toast appearance as - primary | warning | danger | success | info  - String\n   * @param position: Toast position at - top-left | top-right | bottom-left | bottom-right | top-center | bottom=\n   */\n  public showToast(text: string, mode: string, position: string) {\n    let alertContainer = this.renderer.createElement('div'); // Set the id of the div\n    this.renderer.setProperty(\n      alertContainer,\n      'id',\n      'ngx-toast-notify-container-' + Math.random()\n    ); // Append the created div to the body element\n\n    this.renderer.appendChild(document.body, alertContainer);\n    this.renderer.setStyle(alertContainer, 'visibility', 'hidden');\n    this.renderer.setStyle(alertContainer, 'width', '275px');\n    this.renderer.setStyle(\n      alertContainer,\n      'background-color', this.getTheme(mode).color\n    );\n    this.renderer.setStyle(\n      alertContainer,\n      'color', this.getTheme(mode).text\n    );\n    this.renderer.setStyle(alertContainer, 'text-align', 'left');\n    this.renderer.setStyle(alertContainer, 'border-radius', '5px');\n    this.renderer.setStyle(alertContainer, 'padding', '16px');\n    this.renderer.setStyle(alertContainer, 'z-index', '1');\n    this.renderer.setStyle(alertContainer, 'position', 'fixed');\n    this.renderer.setStyle(alertContainer, 'height', 'fit-content');\n    this.renderer.setStyle(alertContainer, 'line-height', '1.5rem');\n    this.renderer.setStyle(alertContainer, 'display', 'flex');\n    this.renderer.setStyle(alertContainer, 'align-items', 'center');\n    this.renderer.setStyle(alertContainer, 'justify-content', 'space-between');\n    this.renderer.setStyle(\n      alertContainer,\n      'box-shadow',\n      '0px 0px 10px 2px #d9d9d9'\n    );\n\n    const loaderFadeInAnimation = this.animationBuilder.build([\n      style({ opacity: 0 }),\n      animate(500, style({ opacity: 1 })\n      ),\n    ]);\n\n    const loaderFadeOutAnimation = this.animationBuilder.build([\n      style({ opacity: 1 }),\n      animate(500, style({ opacity: 0 })\n      ),\n    ]);\n\n    const loaderFadeInAnimationPlayer =\n      loaderFadeInAnimation.create(alertContainer);\n    const loaderFadeOutAnimationPlayer =\n      loaderFadeOutAnimation.create(alertContainer);\n\n    loaderFadeInAnimationPlayer.play();\n\n    this.setPosition(position, alertContainer);\n    this.renderer.setProperty(alertContainer, 'innerHTML', text);\n    this.renderer.setStyle(alertContainer, 'visibility', 'visible');\n\n    let closeButton = this.renderer.createElement('div');\n    this.renderer.setProperty(\n      closeButton,\n      'id',\n      'ngx-toast-notify-close-svg-' + Math.random()\n    );\n    this.renderer.setStyle(closeButton, 'display', 'flex');\n    this.renderer.setStyle(closeButton, 'padding', '0.25rem 0.5rem');\n    this.renderer.setProperty(\n      closeButton,\n      'innerHTML',\n      `<svg style=\"cursor:pointer\" xmlns=\"http://www.w3.org/this.config.animationDelayInMilliSeconds0/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" aria-hidden=\"true\" role=\"img\" width=\"1em\" height=\"1em\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 1536 1536\"><path d=\"M1149 994q0-26-19-45L949 768l181-181q19-19 19-45q0-27-19-46l-90-90q-19-19-46-19q-26 0-45 19L768 587L587 406q-19-19-45-19q-27 0-46 19l-90 90q-19 19-19 46q0 26 19 45l181 181l-181 181q-19 19-19 45q0 27 19 46l90 90q19 19 46 19q26 0 45-19l181-181l181 181q19 19 45 19q27 0 46-19l90-90q19-19 19-46zm387-226q0 209-103 385.5T1153.5 1433T768 1536t-385.5-103T103 1153.5T0 768t103-385.5T382.5 103T768 0t385.5 103T1433 382.5T1536 768z\" fill=\"currentColor\"/></svg>`\n    );\n    this.renderer.appendChild(alertContainer, closeButton);\n\n    this.renderer.listen(closeButton, 'click', (event) => {\n      loaderFadeOutAnimationPlayer.play();\n      setTimeout(\n        () => {\n          this.renderer.removeChild(document.body, alertContainer);\n          this.renderer.destroy();\n          alertContainer.remove();\n        },\n        500\n      );\n    });\n\n    setTimeout(() => {\n      loaderFadeOutAnimationPlayer.play();\n      setTimeout(\n        () => {\n          this.renderer.removeChild(document.body, alertContainer);\n          this.renderer.destroy();\n          alertContainer.remove();\n        },\n        500\n      );\n    }, 1000 * 5);\n  }\n\n  private getTheme(mode: string = 'primary'): THEME {\n    mode = mode.toLocaleLowerCase();\n    switch (mode) {\n      case 'primary':\n        return {\n          color: '#0275d8',\n          text: '#fff',\n        };\n      case 'success':\n        return {\n          color: '#5cb85c',\n          text: '#fff',\n        };\n      case 'info':\n        return {\n          color: '#5bc0de',\n          text: '#fff',\n        };\n      case 'warning':\n        return {\n          color: '#f0ad4e',\n          text: '#fff',\n        };\n      case 'danger':\n        return {\n          color: '#d9534f',\n          text: '#fff',\n        };\n      case 'light':\n        return {\n          color: '#fff',\n          text: '#000',\n        };\n      case 'dark':\n        return {\n          color: '#000',\n          text: '#fff',\n        };\n      default:\n        return {\n          color: '#000',\n          text: '#fff',\n        };\n    }\n  }\n\n  private setPosition(position: string = 'bottom-right', alertContainer: any) {\n    position = position.toLocaleLowerCase();\n    if (position === 'top-left') {\n      this.renderer.setStyle(alertContainer, 'top', '0px');\n      this.renderer.setStyle(alertContainer, 'left', '0px');\n      this.renderer.setStyle(alertContainer, 'margin', '1.5rem');\n    } else if (position === 'top-right') {\n      this.renderer.setStyle(alertContainer, 'top', '0px');\n      this.renderer.setStyle(alertContainer, 'right', '0px');\n      this.renderer.setStyle(alertContainer, 'margin', '1.5rem');\n    } else if (position === 'bottom-left') {\n      this.renderer.setStyle(alertContainer, 'bottom', '0px');\n      this.renderer.setStyle(alertContainer, 'left', '0px');\n      this.renderer.setStyle(alertContainer, 'margin', '1.5rem');\n    } else if (position === 'bottom-right') {\n      this.renderer.setStyle(alertContainer, 'bottom', '0px');\n      this.renderer.setStyle(alertContainer, 'right', '0px');\n      this.renderer.setStyle(alertContainer, 'margin', '1.5rem');\n    } else if (position === 'top-center') {\n      this.renderer.setStyle(alertContainer, 'top', '0px');\n      this.renderer.setStyle(alertContainer, 'left', '50%');\n      this.renderer.setStyle(alertContainer, 'margin-top', '1.5rem');\n      this.renderer.setStyle(alertContainer, 'transform', 'translateX(-50%)');\n    } else if (position === 'bottom-center') {\n      this.renderer.setStyle(alertContainer, 'bottom', '0px');\n      this.renderer.setStyle(alertContainer, 'left', '50%');\n      this.renderer.setStyle(alertContainer, 'margin-bottom', '1.5rem');\n      this.renderer.setStyle(alertContainer, 'transform', 'translateX(-50%)');\n    } else {\n      this.renderer.setStyle(alertContainer, 'bottom', '0px');\n      this.renderer.setStyle(alertContainer, 'right', '0px');\n      this.renderer.setStyle(alertContainer, 'margin', '1.5rem');\n    }\n  }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'lib-ngx-toast-notify',\n  template: `\n    <p>\n      ngx-toast-notify works!\n    </p>\n  `,\n  styles: [\n  ]\n})\nexport class NgxToastNotifyComponent {\n\n}\n","import {\n  ModuleWithProviders,\n  NgModule,\n  Optional,\n  SkipSelf,\n} from '@angular/core';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\n@NgModule({\n  declarations: [],\n  imports: [BrowserAnimationsModule],\n  exports: [],\n})\nexport class NgxToastNotifyModule {\n  constructor(@Optional() @SkipSelf() parentModule?: NgxToastNotifyModule) {\n    if (parentModule) {\n      throw new Error(\n        'NgxToastNotifyModule is already loaded. Import it in the AppModule only'\n      );\n    }\n  }\n}\n","/*\n * Public API Surface of ngx-toast-notify\n */\n\nexport * from './lib/ngx-toast-notify.service';\nexport * from './lib/ngx-toast-notify.component';\nexport * from './lib/ngx-toast-notify.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}