ngx-admin/src/app/theme/directives/baThemeRun/baThemeRun.directive.ts

36 lines
728 B
TypeScript
Raw Normal View History

2016-05-17 14:13:56 +03:00
import {Directive, HostBinding} from '@angular/core';
import {BaThemeConfigProvider, isMobile} from '../../../theme';
@Directive({
selector: '[baThemeRun]'
})
export class BaThemeRun {
2016-05-19 11:29:41 +03:00
private _classes:Array<string> = [];
@HostBinding('class') classesString:string;
2016-05-17 14:13:56 +03:00
constructor(private _baConfig:BaThemeConfigProvider) {
}
2016-05-18 16:47:23 +03:00
public ngOnInit():void {
2016-05-19 11:29:41 +03:00
this._assignTheme();
2016-05-18 16:47:23 +03:00
this._assignMobile();
2016-05-17 14:13:56 +03:00
}
2016-05-19 11:29:41 +03:00
private _assignTheme():void {
this._addClass(this._baConfig.get().theme.name);
2016-05-17 14:13:56 +03:00
}
2016-05-18 16:47:23 +03:00
private _assignMobile():void {
2016-05-19 11:29:41 +03:00
if (isMobile()) {
this._addClass('mobile');
}
}
private _addClass(cls:string) {
this._classes.push(cls);
this.classesString = this._classes.join(' ');
2016-05-17 14:13:56 +03:00
}
}