UNPKG

ngx-toast-notifier

Version:

This is a nofitications library for Angular

41 lines 5.25 kB
import { Inject, Injectable } from '@angular/core'; import { BehaviorSubject } from 'rxjs'; import { NOTIFICATION_CONFIG, } from '../interfaces/i-notification'; import * as i0 from "@angular/core"; export class NgxToastNotifierService { constructor(config) { this.$notifications = new BehaviorSubject([]); this.$notificationsObs = this.$notifications.asObservable(); this.defaultConfig = config; } get notifications() { return this.$notifications.value; } onShowNotification(notification) { this.$notifications.next([ ...this.notifications, { ...notification, }, ]); setTimeout(() => { this.onRemove(); }, this.defaultConfig.config.timeOut ? this.defaultConfig.config.timeOut : this.defaultConfig.default.timeOut); } onRemove() { this.notifications.shift(); this.$notifications.next(this.notifications); } } NgxToastNotifierService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.10", ngImport: i0, type: NgxToastNotifierService, deps: [{ token: NOTIFICATION_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); NgxToastNotifierService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.10", ngImport: i0, type: NgxToastNotifierService, providedIn: 'root' }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.10", ngImport: i0, type: NgxToastNotifierService, decorators: [{ type: Injectable, args: [{ providedIn: 'root', }] }], ctorParameters: function () { return [{ type: undefined, decorators: [{ type: Inject, args: [NOTIFICATION_CONFIG] }] }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXRvYXN0LW5vdGlmaWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdG9hc3Qtbm90aWZpZXIvc3JjL2xpYi9zZXJ2aWNlcy9uZ3gtdG9hc3Qtbm90aWZpZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFHTCxtQkFBbUIsR0FDcEIsTUFBTSw4QkFBOEIsQ0FBQzs7QUFLdEMsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQyxZQUF5QyxNQUF5QjtRQUoxRCxtQkFBYyxHQUNwQixJQUFJLGVBQWUsQ0FBa0IsRUFBRSxDQUFDLENBQUM7UUFDcEMsc0JBQWlCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUc1RCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsWUFBMkI7UUFDNUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7WUFDdkIsR0FBRyxJQUFJLENBQUMsYUFBYTtZQUNyQjtnQkFDRSxHQUFHLFlBQVk7YUFDaEI7U0FDRixDQUFDLENBQUM7UUFFSCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFBO1FBQ2pCLENBQUMsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVPLFFBQVE7UUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMvQyxDQUFDOztxSEE3QlUsdUJBQXVCLGtCQUtkLG1CQUFtQjt5SEFMNUIsdUJBQXVCLGNBRnRCLE1BQU07NEZBRVAsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBTWMsTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgSU5vdGlmaWNhdGlvbixcclxuICBOb3RpZmljYXRpb25Ub2tlbixcclxuICBOT1RJRklDQVRJT05fQ09ORklHLFxyXG59IGZyb20gJy4uL2ludGVyZmFjZXMvaS1ub3RpZmljYXRpb24nO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5neFRvYXN0Tm90aWZpZXJTZXJ2aWNlIHtcclxuICBwcml2YXRlICRub3RpZmljYXRpb25zOiBCZWhhdmlvclN1YmplY3Q8SU5vdGlmaWNhdGlvbltdPiA9XHJcbiAgICBuZXcgQmVoYXZpb3JTdWJqZWN0PElOb3RpZmljYXRpb25bXT4oW10pO1xyXG4gIHB1YmxpYyAkbm90aWZpY2F0aW9uc09icyA9IHRoaXMuJG5vdGlmaWNhdGlvbnMuYXNPYnNlcnZhYmxlKCk7XHJcbiAgcHVibGljIGRlZmF1bHRDb25maWchOiBOb3RpZmljYXRpb25Ub2tlbjtcclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KE5PVElGSUNBVElPTl9DT05GSUcpIGNvbmZpZzogTm90aWZpY2F0aW9uVG9rZW4pIHtcclxuICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IGNvbmZpZztcclxuICB9XHJcblxyXG4gIGdldCBub3RpZmljYXRpb25zKCk6IElOb3RpZmljYXRpb25bXSB7XHJcbiAgICByZXR1cm4gdGhpcy4kbm90aWZpY2F0aW9ucy52YWx1ZTtcclxuICB9XHJcblxyXG4gIG9uU2hvd05vdGlmaWNhdGlvbihub3RpZmljYXRpb246IElOb3RpZmljYXRpb24pOiB2b2lkIHtcclxuICAgIHRoaXMuJG5vdGlmaWNhdGlvbnMubmV4dChbXHJcbiAgICAgIC4uLnRoaXMubm90aWZpY2F0aW9ucyxcclxuICAgICAge1xyXG4gICAgICAgIC4uLm5vdGlmaWNhdGlvbixcclxuICAgICAgfSxcclxuICAgIF0pO1xyXG5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLm9uUmVtb3ZlKClcclxuICAgIH0sIHRoaXMuZGVmYXVsdENvbmZpZy5jb25maWcudGltZU91dCA/IHRoaXMuZGVmYXVsdENvbmZpZy5jb25maWcudGltZU91dCA6IHRoaXMuZGVmYXVsdENvbmZpZy5kZWZhdWx0LnRpbWVPdXQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvblJlbW92ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMubm90aWZpY2F0aW9ucy5zaGlmdCgpXHJcbiAgICB0aGlzLiRub3RpZmljYXRpb25zLm5leHQodGhpcy5ub3RpZmljYXRpb25zKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==