UNPKG

ontimize-web-ngx

Version:
45 lines 6.7 kB
import { Injectable, Injector } from '@angular/core'; import { MatSnackBar } from '@angular/material/snack-bar'; import { Observable } from 'rxjs'; import { OSnackBarComponent } from '../shared/components/snackbar/o-snackbar.component'; import * as i0 from "@angular/core"; export class SnackBarService { constructor(injector) { this.injector = injector; this.matSnackBar = this.injector.get(MatSnackBar); } open(message, config) { const self = this; const observable = new Observable(observer => { const containerClasses = [SnackBarService.DEFAULT_CONTAINER_CLASS]; if (config && config.cssClass) { containerClasses.push(config.cssClass); } const matConfig = { duration: config && config.milliseconds ? config.milliseconds : SnackBarService.DEFAULT_DURATION, panelClass: containerClasses }; self.snackBarRef = self.matSnackBar.openFromComponent(OSnackBarComponent, matConfig); self.snackBarRef.onAction().subscribe(arg => { observer.next(arg); }); self.snackBarRef.afterDismissed().subscribe(() => { observer.complete(); self.snackBarRef = null; }); self.snackBarRef.instance.open(message, config); }); return observable.toPromise(); } } SnackBarService.DEFAULT_DURATION = 2000; SnackBarService.DEFAULT_CONTAINER_CLASS = 'o-snackbar-container'; SnackBarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SnackBarService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); SnackBarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SnackBarService, providedIn: 'root' }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SnackBarService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }], ctorParameters: function () { return [{ type: i0.Injector }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2tiYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9zZXJ2aWNlcy9zbmFja2Jhci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQXFDLE1BQU0sNkJBQTZCLENBQUM7QUFDN0YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsQyxPQUFPLEVBQUUsa0JBQWtCLEVBQW1CLE1BQU0sb0RBQW9ELENBQUM7O0FBS3pHLE1BQU0sT0FBTyxlQUFlO0lBUTFCLFlBQ1ksUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUU1QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTSxJQUFJLENBQUMsT0FBZSxFQUFFLE1BQXdCO1FBQ25ELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQztRQUNsQixNQUFNLFVBQVUsR0FBb0IsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDNUQsTUFBTSxnQkFBZ0IsR0FBYSxDQUFDLGVBQWUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQzdFLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7Z0JBQzdCLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDeEM7WUFFRCxNQUFNLFNBQVMsR0FBc0I7Z0JBQ25DLFFBQVEsRUFBRSxNQUFNLElBQUksTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLGdCQUFnQjtnQkFDaEcsVUFBVSxFQUFFLGdCQUFnQjthQUM3QixDQUFDO1lBRUYsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBRXJGLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUMxQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3JCLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUMvQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQzFCLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sVUFBVSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2hDLENBQUM7O0FBdkNnQixnQ0FBZ0IsR0FBVyxJQUFJLENBQUM7QUFDaEMsdUNBQXVCLEdBQVcsc0JBQXNCLENBQUM7NkdBSC9ELGVBQWU7aUhBQWYsZUFBZSxjQUZkLE1BQU07NEZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0U25hY2tCYXIsIE1hdFNuYWNrQmFyQ29uZmlnLCBNYXRTbmFja0JhclJlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE9TbmFja0JhckNvbXBvbmVudCwgT1NuYWNrQmFyQ29uZmlnIH0gZnJvbSAnLi4vc2hhcmVkL2NvbXBvbmVudHMvc25hY2tiYXIvby1zbmFja2Jhci5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTbmFja0JhclNlcnZpY2Uge1xuXG4gIHByb3RlY3RlZCBzdGF0aWMgREVGQVVMVF9EVVJBVElPTjogbnVtYmVyID0gMjAwMDtcbiAgcHJvdGVjdGVkIHN0YXRpYyBERUZBVUxUX0NPTlRBSU5FUl9DTEFTUzogc3RyaW5nID0gJ28tc25hY2tiYXItY29udGFpbmVyJztcblxuICBwcm90ZWN0ZWQgbWF0U25hY2tCYXI6IE1hdFNuYWNrQmFyO1xuICBwcm90ZWN0ZWQgc25hY2tCYXJSZWY6IE1hdFNuYWNrQmFyUmVmPE9TbmFja0JhckNvbXBvbmVudD47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgKSB7XG4gICAgdGhpcy5tYXRTbmFja0JhciA9IHRoaXMuaW5qZWN0b3IuZ2V0KE1hdFNuYWNrQmFyKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKG1lc3NhZ2U6IHN0cmluZywgY29uZmlnPzogT1NuYWNrQmFyQ29uZmlnKTogUHJvbWlzZTxhbnk+IHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICBjb25zdCBvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPGFueT4gPSBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDbGFzc2VzOiBzdHJpbmdbXSA9IFtTbmFja0JhclNlcnZpY2UuREVGQVVMVF9DT05UQUlORVJfQ0xBU1NdO1xuICAgICAgaWYgKGNvbmZpZyAmJiBjb25maWcuY3NzQ2xhc3MpIHtcbiAgICAgICAgY29udGFpbmVyQ2xhc3Nlcy5wdXNoKGNvbmZpZy5jc3NDbGFzcyk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1hdENvbmZpZzogTWF0U25hY2tCYXJDb25maWcgPSB7XG4gICAgICAgIGR1cmF0aW9uOiBjb25maWcgJiYgY29uZmlnLm1pbGxpc2Vjb25kcyA/IGNvbmZpZy5taWxsaXNlY29uZHMgOiBTbmFja0JhclNlcnZpY2UuREVGQVVMVF9EVVJBVElPTixcbiAgICAgICAgcGFuZWxDbGFzczogY29udGFpbmVyQ2xhc3Nlc1xuICAgICAgfTtcblxuICAgICAgc2VsZi5zbmFja0JhclJlZiA9IHNlbGYubWF0U25hY2tCYXIub3BlbkZyb21Db21wb25lbnQoT1NuYWNrQmFyQ29tcG9uZW50LCBtYXRDb25maWcpO1xuXG4gICAgICBzZWxmLnNuYWNrQmFyUmVmLm9uQWN0aW9uKCkuc3Vic2NyaWJlKGFyZyA9PiB7XG4gICAgICAgIG9ic2VydmVyLm5leHQoYXJnKTtcbiAgICAgIH0pO1xuXG4gICAgICBzZWxmLnNuYWNrQmFyUmVmLmFmdGVyRGlzbWlzc2VkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgc2VsZi5zbmFja0JhclJlZiA9IG51bGw7XG4gICAgICB9KTtcblxuICAgICAgc2VsZi5zbmFja0JhclJlZi5pbnN0YW5jZS5vcGVuKG1lc3NhZ2UsIGNvbmZpZyk7XG4gICAgfSk7XG4gICAgcmV0dXJuIG9ic2VydmFibGUudG9Qcm9taXNlKCk7XG4gIH1cblxuXG5cbn1cbiJdfQ==