UNPKG

ngx-slice-kit

Version:

[![npm version](https://badge.fury.io/js/ngx-slice-kit.svg)](https://badge.fury.io/js/ngx-slice-kit)

43 lines 5.08 kB
import { Injectable } from '@angular/core'; import { BehaviorSubject } from 'rxjs'; import { SidenavOptions } from './sidenav.options'; import * as i0 from "@angular/core"; export class SidenavService { constructor() { this.sidenavOpened$ = new BehaviorSubject(true); this.options$ = new BehaviorSubject(new SidenavOptions({})); } get options() { return this.options$.getValue(); } set options(value) { this.options$.next(value); } get optionsObservable() { return this.sidenavOpened$.asObservable(); } get isOpened() { return this.sidenavOpened$.getValue(); } set isOpened(value) { this.sidenavOpened$.next(value); } get openedState() { return this.isOpened ? 'opened' : 'closed'; } get openedObservableState() { return this.sidenavOpened$.asObservable(); } updateOptions(o) { this.options = Object.assign(this.options, o); } } SidenavService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: SidenavService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); SidenavService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: SidenavService, providedIn: 'root' }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: SidenavService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }], ctorParameters: function () { return []; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZ3gtc2xpY2Uta2l0L3NyYy9saWIvbmF2aWdhdGlvbi9zaWRlbmF2L3NpZGVuYXYuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFFbkQsT0FBTyxFQUFFLGNBQWMsRUFBZ0IsTUFBTSxtQkFBbUIsQ0FBQzs7QUFLakUsTUFBTSxPQUFPLGNBQWM7SUFLdkI7UUFITyxtQkFBYyxHQUE2QixJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUM5RSxhQUFRLEdBQW9DLElBQUksZUFBZSxDQUFDLElBQUksY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFHL0YsQ0FBQztJQUVELElBQVcsT0FBTztRQUNkLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBVyxPQUFPLENBQUMsS0FBcUI7UUFDcEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQVcsaUJBQWlCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFXLFFBQVEsQ0FBQyxLQUFjO1FBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBVyxxQkFBcUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFTSxhQUFhLENBQUMsQ0FBaUI7UUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7MkdBdENRLGNBQWM7K0dBQWQsY0FBYyxjQUZYLE1BQU07MkZBRVQsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2lkZW5hdk9wdGlvbnMsIFNpZGVuYXZTdGF0ZSB9IGZyb20gJy4vc2lkZW5hdi5vcHRpb25zJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTaWRlbmF2U2VydmljZSB7XG5cbiAgICBwdWJsaWMgc2lkZW5hdk9wZW5lZCQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gICAgcHVibGljIG9wdGlvbnMkOiBCZWhhdmlvclN1YmplY3Q8U2lkZW5hdk9wdGlvbnM+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChuZXcgU2lkZW5hdk9wdGlvbnMoe30pKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgb3B0aW9ucygpOiBTaWRlbmF2T3B0aW9ucyB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCBvcHRpb25zKHZhbHVlOiBTaWRlbmF2T3B0aW9ucykge1xuICAgICAgICB0aGlzLm9wdGlvbnMkLm5leHQodmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgb3B0aW9uc09ic2VydmFibGUoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpZGVuYXZPcGVuZWQkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNPcGVuZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpZGVuYXZPcGVuZWQkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCBpc09wZW5lZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnNpZGVuYXZPcGVuZWQkLm5leHQodmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgb3BlbmVkU3RhdGUoKTogU2lkZW5hdlN0YXRlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNPcGVuZWQgPyAnb3BlbmVkJyA6ICdjbG9zZWQnO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgb3BlbmVkT2JzZXJ2YWJsZVN0YXRlKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaWRlbmF2T3BlbmVkJC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlT3B0aW9ucyhvOiBTaWRlbmF2T3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHRoaXMub3B0aW9ucywgbyk7XG4gICAgfVxuXG59XG4iXX0=