UNPKG

@zajsf/cssframework

Version:

Angular JSON Schema Form builder cssframework

33 lines 4.48 kB
import { Injectable } from '@angular/core'; import { Subject } from 'rxjs'; import * as i0 from "@angular/core"; export class CssframeworkService { constructor() { this.frameworkThemeSubject = new Subject(); this.frameworkTheme$ = this.frameworkThemeSubject.asObservable(); } //TODO-review: this acts as a public api to change the theme //but doesn't do the actual change, instead it relies on //the CssFramewkCoromponent having subscribed to listen //and perform the actual theme change requestThemeChange(themeName) { this.frameworkThemeSubject.next(themeName); this.activeRequestedTheme = themeName; } //TODO-review:there's no way of knowing what the individual component instance //has set its theme to, this is just the theme made through the requestThemeChange //calls and not guaranteed to correspond to the actual theme set by the //component instance themselves getActiveRequestedTheme() { return this.activeRequestedTheme; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CssframeworkService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CssframeworkService, providedIn: 'root' }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CssframeworkService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }], ctorParameters: () => [] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLWZyYW1ld29yay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemFqc2YtY3NzZnJhbWV3b3JrL3NyYy9saWIvY3NzLWZyYW1ld29yay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLG1CQUFtQjtJQUs5QjtRQUNFLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO1FBQ25ELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2xFLENBQUM7SUFFRCw0REFBNEQ7SUFDNUQseURBQXlEO0lBQ3pELHdEQUF3RDtJQUN4RCxxQ0FBcUM7SUFDckMsa0JBQWtCLENBQUMsU0FBZ0I7UUFDaEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsb0JBQW9CLEdBQUMsU0FBUyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCw4RUFBOEU7SUFDOUUsa0ZBQWtGO0lBQ2xGLHdFQUF3RTtJQUN4RSwrQkFBK0I7SUFDL0IsdUJBQXVCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0lBQ3BDLENBQUM7OEdBekJTLG1CQUFtQjtrSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzJGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENzc2ZyYW1ld29ya1NlcnZpY2Uge1xyXG5cclxuICBmcmFtZXdvcmtUaGVtZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcclxuICBhY3RpdmVSZXF1ZXN0ZWRUaGVtZTpzdHJpbmc7XHJcbiAgZnJhbWV3b3JrVGhlbWVTdWJqZWN0OiBTdWJqZWN0PHN0cmluZz47XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLmZyYW1ld29ya1RoZW1lU3ViamVjdCA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcclxuICAgIHRoaXMuZnJhbWV3b3JrVGhlbWUkID0gdGhpcy5mcmFtZXdvcmtUaGVtZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgIH1cclxuXHJcbiAgIC8vVE9ETy1yZXZpZXc6IHRoaXMgYWN0cyBhcyBhIHB1YmxpYyBhcGkgdG8gY2hhbmdlIHRoZSB0aGVtZVxyXG4gICAvL2J1dCBkb2Vzbid0IGRvIHRoZSBhY3R1YWwgY2hhbmdlLCBpbnN0ZWFkIGl0IHJlbGllcyBvbiBcclxuICAgLy90aGUgQ3NzRnJhbWV3a0Nvcm9tcG9uZW50IGhhdmluZyBzdWJzY3JpYmVkIHRvIGxpc3RlbiBcclxuICAgLy9hbmQgcGVyZm9ybSB0aGUgYWN0dWFsIHRoZW1lIGNoYW5nZVxyXG4gICByZXF1ZXN0VGhlbWVDaGFuZ2UodGhlbWVOYW1lOnN0cmluZyl7XHJcbiAgICAgIHRoaXMuZnJhbWV3b3JrVGhlbWVTdWJqZWN0Lm5leHQodGhlbWVOYW1lKTtcclxuICAgICAgdGhpcy5hY3RpdmVSZXF1ZXN0ZWRUaGVtZT10aGVtZU5hbWU7XHJcbiAgIH1cclxuXHJcbiAgIC8vVE9ETy1yZXZpZXc6dGhlcmUncyBubyB3YXkgb2Yga25vd2luZyB3aGF0IHRoZSBpbmRpdmlkdWFsIGNvbXBvbmVudCBpbnN0YW5jZVxyXG4gICAvL2hhcyBzZXQgaXRzIHRoZW1lIHRvLCB0aGlzIGlzIGp1c3QgdGhlIHRoZW1lIG1hZGUgdGhyb3VnaCB0aGUgcmVxdWVzdFRoZW1lQ2hhbmdlXHJcbiAgIC8vY2FsbHMgYW5kIG5vdCBndWFyYW50ZWVkIHRvIGNvcnJlc3BvbmQgdG8gdGhlIGFjdHVhbCB0aGVtZSBzZXQgYnkgdGhlIFxyXG4gICAvL2NvbXBvbmVudCBpbnN0YW5jZSB0aGVtc2VsdmVzXHJcbiAgIGdldEFjdGl2ZVJlcXVlc3RlZFRoZW1lKCk6c3RyaW5ne1xyXG4gICAgICByZXR1cm4gdGhpcy5hY3RpdmVSZXF1ZXN0ZWRUaGVtZTtcclxuICAgfVxyXG59XHJcbiJdfQ==