ngx-mat-cdk
Version:
Extra Components for Angular Material including Filters,Drag Drop File, MatSelect Mobile Version
39 lines • 5.55 kB
JavaScript
import { MediaObserver } from '@angular/flex-layout';
import { Directive, Injector } from '@angular/core';
export class MediaTracker {
constructor(injector) {
this.isMobile = false;
this.isXs = false;
this.isSm = false;
this.mediaObserver = injector.get(MediaObserver);
this.watcher = this.mediaObserver.asObservable().subscribe((change) => {
var _a, _b, _c, _d;
this.isMobile = (((_a = change[0]) === null || _a === void 0 ? void 0 : _a.mqAlias) === 'sm' || ((_b = change[0]) === null || _b === void 0 ? void 0 : _b.mqAlias) === 'xs');
this.isXs = ((_c = change[0]) === null || _c === void 0 ? void 0 : _c.mqAlias) === 'xs';
this.isSm = ((_d = change[0]) === null || _d === void 0 ? void 0 : _d.mqAlias) === 'sm';
if (this.isXs) {
if (!document.documentElement.classList.contains('ngx-mat-cdk-mobile')) {
document.documentElement.classList.add('ngx-mat-cdk-mobile');
}
}
else {
document.documentElement.classList.remove('ngx-mat-cdk-mobile');
}
if (this.onChangeMediaTracker && typeof (this.onChangeMediaTracker) === 'function') {
this.onChangeMediaTracker(change[0]);
}
});
}
ngOnDestroy() {
if (this.watcher) {
this.watcher.unsubscribe();
}
}
}
MediaTracker.decorators = [
{ type: Directive, args: [{},] }
];
MediaTracker.ctorParameters = () => [
{ type: Injector }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtdHJhY2tlci5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9BbGlyZXphIE1vaGFtbWFkaS9zb3VyY2UvcmVwb3MvTXlMaWJyYXJ5L0FuZ3VsYXIuTGlicmFyeS9saWJzL3Byb2plY3RzL25neC1tYXQtY2RrL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zaGFyZWQvbWVkaWEtdHJhY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFDLFNBQVMsRUFBRSxRQUFRLEVBQVksTUFBTSxlQUFlLENBQUM7QUFJN0QsTUFBTSxPQUFnQixZQUFZO0lBT2hDLFlBQ0UsUUFBa0I7UUFOcEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsU0FBSSxHQUFHLEtBQUssQ0FBQztRQU1YLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBcUIsRUFBRSxFQUFFOztZQUVuRixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsT0FBQSxNQUFNLENBQUMsQ0FBQyxDQUFDLDBDQUFFLE9BQU8sTUFBSyxJQUFJLElBQUksT0FBQSxNQUFNLENBQUMsQ0FBQyxDQUFDLDBDQUFFLE9BQU8sTUFBSyxJQUFJLENBQUMsQ0FBQztZQUM3RSxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQUEsTUFBTSxDQUFDLENBQUMsQ0FBQywwQ0FBRSxPQUFPLE1BQUssSUFBSSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBQSxNQUFNLENBQUMsQ0FBQyxDQUFDLDBDQUFFLE9BQU8sTUFBSyxJQUFJLENBQUM7WUFDeEMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsRUFBRTtvQkFDdEUsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUM7aUJBQzlEO2FBQ0Y7aUJBQU07Z0JBQ0wsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7YUFFakU7WUFDRCxJQUFJLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssVUFBVSxFQUFFO2dCQUNsRixJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDdEM7UUFHSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFJRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDNUI7SUFDSCxDQUFDOzs7WUF2Q0YsU0FBUyxTQUFDLEVBQUU7OztZQUhNLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01lZGlhQ2hhbmdlLCBNZWRpYU9ic2VydmVyfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XHJcbmltcG9ydCB7RGlyZWN0aXZlLCBJbmplY3RvciwgT25EZXN0cm95fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xyXG5cclxuQERpcmVjdGl2ZSh7fSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1lZGlhVHJhY2tlciBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIG1lZGlhT2JzZXJ2ZXI6IE1lZGlhT2JzZXJ2ZXI7XHJcbiAgaXNNb2JpbGUgPSBmYWxzZTtcclxuICBpc1hzID0gZmFsc2U7XHJcbiAgaXNTbSA9IGZhbHNlO1xyXG4gIHdhdGNoZXI6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yXHJcbiAgKSB7XHJcbiAgICB0aGlzLm1lZGlhT2JzZXJ2ZXIgPSBpbmplY3Rvci5nZXQoTWVkaWFPYnNlcnZlcik7XHJcbiAgICB0aGlzLndhdGNoZXIgPSB0aGlzLm1lZGlhT2JzZXJ2ZXIuYXNPYnNlcnZhYmxlKCkuc3Vic2NyaWJlKChjaGFuZ2U6IE1lZGlhQ2hhbmdlW10pID0+IHtcclxuXHJcbiAgICAgIHRoaXMuaXNNb2JpbGUgPSAoY2hhbmdlWzBdPy5tcUFsaWFzID09PSAnc20nIHx8IGNoYW5nZVswXT8ubXFBbGlhcyA9PT0gJ3hzJyk7XHJcbiAgICAgIHRoaXMuaXNYcyA9IGNoYW5nZVswXT8ubXFBbGlhcyA9PT0gJ3hzJztcclxuICAgICAgdGhpcy5pc1NtID0gY2hhbmdlWzBdPy5tcUFsaWFzID09PSAnc20nO1xyXG4gICAgICBpZiAodGhpcy5pc1hzKSB7XHJcbiAgICAgICAgaWYgKCFkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCduZ3gtbWF0LWNkay1tb2JpbGUnKSkge1xyXG4gICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ25neC1tYXQtY2RrLW1vYmlsZScpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgnbmd4LW1hdC1jZGstbW9iaWxlJyk7XHJcblxyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLm9uQ2hhbmdlTWVkaWFUcmFja2VyICYmIHR5cGVvZiAodGhpcy5vbkNoYW5nZU1lZGlhVHJhY2tlcikgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlTWVkaWFUcmFja2VyKGNoYW5nZVswXSk7XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZU1lZGlhVHJhY2tlcjogKGNoYW5nZTogTWVkaWFDaGFuZ2UpID0+IHZvaWQ7XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMud2F0Y2hlcikge1xyXG4gICAgICB0aGlzLndhdGNoZXIudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19