UNPKG

ngx-admin-lte

Version:

AdminLTE theme for angular

42 lines 6.39 kB
import * as tslib_1 from "tslib"; import { Injectable } from '@angular/core'; import { Subject, ReplaySubject } from 'rxjs'; import { map } from 'rxjs/operators'; const initialNotifications = []; let NotificationsService = class NotificationsService { // public markThreadAsRead: Subject<any> = new Subject<any>(); constructor() { this.notificationsList = []; // a stream that publishes new notifications only once this.newNotifications = new Subject(); // `notifications` is a stream that emits an array of the most up to date notifications this.notifications = new ReplaySubject(1); // `updates` receives _operations_ to be applied to our `notifications` // it's a way we can perform changes on *all* notifications (that are currently // stored in `notifications`) this.updates = new Subject(); // action streams this.create = new Subject(); // recois des operation, et les fais sur la liste interne, puis diffuse le resultat sur notifications this.updates.subscribe((ope) => { this.notificationsList = ope(this.notificationsList); console.log(this.notificationsList); this.notifications.next(this.notificationsList); }); this.newNotifications.pipe(map(function (notification) { return (notifications) => { return notifications.concat(notification); }; })) .subscribe(this.updates); } // an imperative function call to this action stream addNotification(notification) { this.newNotifications.next(notification); } }; NotificationsService = tslib_1.__decorate([ Injectable() ], NotificationsService); export { NotificationsService }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWFkbWluLWx0ZS8iLCJzb3VyY2VzIjpbInNlcnZpY2VzL25vdGlmaWNhdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBR0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsTUFBTSxvQkFBb0IsR0FBbUIsRUFBRSxDQUFDO0FBS2hELElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0lBZS9CLDhEQUE4RDtJQUU5RDtRQWhCUSxzQkFBaUIsR0FBbUIsRUFBRSxDQUFDO1FBQy9DLHNEQUFzRDtRQUMvQyxxQkFBZ0IsR0FBMEIsSUFBSSxPQUFPLEVBQWdCLENBQUM7UUFFN0UsdUZBQXVGO1FBQ2hGLGtCQUFhLEdBQWtDLElBQUksYUFBYSxDQUFpQixDQUFDLENBQUMsQ0FBQztRQUUzRix1RUFBdUU7UUFDdkUsK0VBQStFO1FBQy9FLDZCQUE2QjtRQUN0QixZQUFPLEdBQWlCLElBQUksT0FBTyxFQUFPLENBQUM7UUFFbEQsaUJBQWlCO1FBQ1YsV0FBTSxHQUEwQixJQUFJLE9BQU8sRUFBZ0IsQ0FBQztRQUlqRSxxR0FBcUc7UUFDckcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUM3QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ3JELE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbEQsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUN4QixHQUFHLENBQUMsVUFBUyxZQUEwQjtZQUNyQyxPQUFPLENBQUMsYUFBNkIsRUFBRSxFQUFFO2dCQUN2QyxPQUFPLGFBQWEsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDNUMsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0g7YUFDRSxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRTdCLENBQUM7SUFFRCxvREFBb0Q7SUFDN0MsZUFBZSxDQUFDLFlBQTBCO1FBQy9DLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDM0MsQ0FBQztDQUVGLENBQUE7QUF6Q1ksb0JBQW9CO0lBRGhDLFVBQVUsRUFBRTtHQUNBLG9CQUFvQixDQXlDaEM7U0F6Q1ksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiXG4vLyBiYXNlZCBvbiBodHRwczovL2dpdGh1Yi5jb20vbmctYm9vay9hbmd1bGFyMi1yeGpzLWNoYXQvYmxvYi9tYXN0ZXIvYXBwL3RzL3NlcnZpY2VzL05vdGlmaWNhdGlvbnNTZXJ2aWNlLnRzXG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvbm90aWZpY2F0aW9uJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuY29uc3QgaW5pdGlhbE5vdGlmaWNhdGlvbnM6IE5vdGlmaWNhdGlvbltdID0gW107XG5cbnR5cGUgSU5vdGlmaWNhdGlvbnNPcGVyYXRpb24gPSAobm90aWZpY2F0aW9uczogTm90aWZpY2F0aW9uW10pID0+IE5vdGlmaWNhdGlvbltdO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uc1NlcnZpY2Uge1xuICBwcml2YXRlIG5vdGlmaWNhdGlvbnNMaXN0OiBOb3RpZmljYXRpb25bXSA9IFtdO1xuICAvLyBhIHN0cmVhbSB0aGF0IHB1Ymxpc2hlcyBuZXcgbm90aWZpY2F0aW9ucyBvbmx5IG9uY2VcbiAgcHVibGljIG5ld05vdGlmaWNhdGlvbnM6IFN1YmplY3Q8Tm90aWZpY2F0aW9uPiA9IG5ldyBTdWJqZWN0PE5vdGlmaWNhdGlvbj4oKTtcblxuICAvLyBgbm90aWZpY2F0aW9uc2AgaXMgYSBzdHJlYW0gdGhhdCBlbWl0cyBhbiBhcnJheSBvZiB0aGUgbW9zdCB1cCB0byBkYXRlIG5vdGlmaWNhdGlvbnNcbiAgcHVibGljIG5vdGlmaWNhdGlvbnM6IFJlcGxheVN1YmplY3Q8Tm90aWZpY2F0aW9uW10+ID0gbmV3IFJlcGxheVN1YmplY3Q8Tm90aWZpY2F0aW9uW10+KDEpO1xuXG4gIC8vIGB1cGRhdGVzYCByZWNlaXZlcyBfb3BlcmF0aW9uc18gdG8gYmUgYXBwbGllZCB0byBvdXIgYG5vdGlmaWNhdGlvbnNgXG4gIC8vIGl0J3MgYSB3YXkgd2UgY2FuIHBlcmZvcm0gY2hhbmdlcyBvbiAqYWxsKiBub3RpZmljYXRpb25zICh0aGF0IGFyZSBjdXJyZW50bHlcbiAgLy8gc3RvcmVkIGluIGBub3RpZmljYXRpb25zYClcbiAgcHVibGljIHVwZGF0ZXM6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcblxuICAvLyBhY3Rpb24gc3RyZWFtc1xuICBwdWJsaWMgY3JlYXRlOiBTdWJqZWN0PE5vdGlmaWNhdGlvbj4gPSBuZXcgU3ViamVjdDxOb3RpZmljYXRpb24+KCk7XG4gIC8vIHB1YmxpYyBtYXJrVGhyZWFkQXNSZWFkOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgLy8gcmVjb2lzIGRlcyBvcGVyYXRpb24sIGV0IGxlcyBmYWlzIHN1ciBsYSBsaXN0ZSBpbnRlcm5lLCBwdWlzIGRpZmZ1c2UgbGUgcmVzdWx0YXQgc3VyIG5vdGlmaWNhdGlvbnNcbiAgICB0aGlzLnVwZGF0ZXMuc3Vic2NyaWJlKChvcGUpID0+IHtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9uc0xpc3QgPSBvcGUodGhpcy5ub3RpZmljYXRpb25zTGlzdCk7XG4gICAgICBjb25zb2xlLmxvZyh0aGlzLm5vdGlmaWNhdGlvbnNMaXN0KTtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy5uZXh0KHRoaXMubm90aWZpY2F0aW9uc0xpc3QpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5uZXdOb3RpZmljYXRpb25zLnBpcGUoXG4gICAgICBtYXAoZnVuY3Rpb24obm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24pOiBJTm90aWZpY2F0aW9uc09wZXJhdGlvbiB7XG4gICAgICAgIHJldHVybiAobm90aWZpY2F0aW9uczogTm90aWZpY2F0aW9uW10pID0+IHtcbiAgICAgICAgICByZXR1cm4gbm90aWZpY2F0aW9ucy5jb25jYXQobm90aWZpY2F0aW9uKTtcbiAgICAgICAgfTtcbiAgICAgIH0pXG4gICAgKVxuICAgICAgLnN1YnNjcmliZSh0aGlzLnVwZGF0ZXMpO1xuXG4gIH1cblxuICAvLyBhbiBpbXBlcmF0aXZlIGZ1bmN0aW9uIGNhbGwgdG8gdGhpcyBhY3Rpb24gc3RyZWFtXG4gIHB1YmxpYyBhZGROb3RpZmljYXRpb24obm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24pOiB2b2lkIHtcbiAgICB0aGlzLm5ld05vdGlmaWNhdGlvbnMubmV4dChub3RpZmljYXRpb24pO1xuICB9XG5cbn1cbiJdfQ==