UNPKG

ng-zorro-antd

Version:

An enterprise-class UI components based on Ant Design and Angular

37 lines 4.33 kB
/** * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE */ import { Injectable } from '@angular/core'; import { BehaviorSubject, Subject } from 'rxjs'; export class MenuService { constructor() { /** all descendant menu click **/ this.descendantMenuItemClick$ = new Subject(); /** child menu item click **/ this.childMenuItemClick$ = new Subject(); this.theme$ = new BehaviorSubject('light'); this.mode$ = new BehaviorSubject('vertical'); this.inlineIndent$ = new BehaviorSubject(24); this.isChildSubMenuOpen$ = new BehaviorSubject(false); } onDescendantMenuItemClick(menu) { this.descendantMenuItemClick$.next(menu); } onChildMenuItemClick(menu) { this.childMenuItemClick$.next(menu); } setMode(mode) { this.mode$.next(mode); } setTheme(theme) { this.theme$.next(theme); } setInlineIndent(indent) { this.inlineIndent$.next(indent); } } MenuService.decorators = [ { type: Injectable } ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3ZzdHMvd29yay8xL3MvY29tcG9uZW50cy9tZW51LyIsInNvdXJjZXMiOlsibWVudS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJaEQsTUFBTSxPQUFPLFdBQVc7SUFEeEI7UUFFRSxpQ0FBaUM7UUFDakMsNkJBQXdCLEdBQUcsSUFBSSxPQUFPLEVBQWEsQ0FBQztRQUNwRCw2QkFBNkI7UUFDN0Isd0JBQW1CLEdBQUcsSUFBSSxPQUFPLEVBQWEsQ0FBQztRQUMvQyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQWtCLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELFVBQUssR0FBRyxJQUFJLGVBQWUsQ0FBaUIsVUFBVSxDQUFDLENBQUM7UUFDeEQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNoRCx3QkFBbUIsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQXFCNUQsQ0FBQztJQW5CQyx5QkFBeUIsQ0FBQyxJQUFlO1FBQ3ZDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELG9CQUFvQixDQUFDLElBQWU7UUFDbEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQW9CO1FBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBc0I7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFjO1FBQzVCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7OztZQTdCRixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2dpdGh1Yi5jb20vTkctWk9SUk8vbmctem9ycm8tYW50ZC9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTnpTYWZlQW55IH0gZnJvbSAnbmctem9ycm8tYW50ZC9jb3JlL3R5cGVzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTnpNZW51TW9kZVR5cGUsIE56TWVudVRoZW1lVHlwZSB9IGZyb20gJy4vbWVudS50eXBlcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNZW51U2VydmljZSB7XG4gIC8qKiBhbGwgZGVzY2VuZGFudCBtZW51IGNsaWNrICoqL1xuICBkZXNjZW5kYW50TWVudUl0ZW1DbGljayQgPSBuZXcgU3ViamVjdDxOelNhZmVBbnk+KCk7XG4gIC8qKiBjaGlsZCBtZW51IGl0ZW0gY2xpY2sgKiovXG4gIGNoaWxkTWVudUl0ZW1DbGljayQgPSBuZXcgU3ViamVjdDxOelNhZmVBbnk+KCk7XG4gIHRoZW1lJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TnpNZW51VGhlbWVUeXBlPignbGlnaHQnKTtcbiAgbW9kZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE56TWVudU1vZGVUeXBlPigndmVydGljYWwnKTtcbiAgaW5saW5lSW5kZW50JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigyNCk7XG4gIGlzQ2hpbGRTdWJNZW51T3BlbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBvbkRlc2NlbmRhbnRNZW51SXRlbUNsaWNrKG1lbnU6IE56U2FmZUFueSk6IHZvaWQge1xuICAgIHRoaXMuZGVzY2VuZGFudE1lbnVJdGVtQ2xpY2skLm5leHQobWVudSk7XG4gIH1cblxuICBvbkNoaWxkTWVudUl0ZW1DbGljayhtZW51OiBOelNhZmVBbnkpOiB2b2lkIHtcbiAgICB0aGlzLmNoaWxkTWVudUl0ZW1DbGljayQubmV4dChtZW51KTtcbiAgfVxuXG4gIHNldE1vZGUobW9kZTogTnpNZW51TW9kZVR5cGUpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGUkLm5leHQobW9kZSk7XG4gIH1cblxuICBzZXRUaGVtZSh0aGVtZTogTnpNZW51VGhlbWVUeXBlKTogdm9pZCB7XG4gICAgdGhpcy50aGVtZSQubmV4dCh0aGVtZSk7XG4gIH1cblxuICBzZXRJbmxpbmVJbmRlbnQoaW5kZW50OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLmlubGluZUluZGVudCQubmV4dChpbmRlbnQpO1xuICB9XG59XG4iXX0=