ng-responsive-nav
Version:
A mobile friendly navigation solution
71 lines • 5.23 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: app/directives/orientation.directive.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { WINDOW } from '../window/window.provider';
import { DOCUMENT } from '@angular/common';
import { MobileNavigationComponent } from '../mobile-navigation/mobile-navigation.component';
import { Inject, Directive } from '@angular/core';
var OrientationDirective = /** @class */ (function () {
function OrientationDirective(document, window, mobileNavMenu) {
this.window = window;
this.mobileNavMenu = mobileNavMenu;
this.onInitialise();
}
/**
* @return {?}
*/
OrientationDirective.prototype.onInitialise = /**
* @return {?}
*/
function () {
var _this = this;
this.window.addEventListener('orientationchange', (/**
* @return {?}
*/
function () {
if (_this._isLandScape()) {
_this.mobileNavMenu.canActivateMobileNav = false;
document.body.style.overflowY = 'scroll';
}
}));
};
/**
* @private
* @return {?}
*/
OrientationDirective.prototype._isLandScape = /**
* @private
* @return {?}
*/
function () {
return this.window.outerWidth < this.window.outerHeight;
};
OrientationDirective.decorators = [
{ type: Directive, args: [{
selector: '[appCheckOrientation]'
},] }
];
/** @nocollapse */
OrientationDirective.ctorParameters = function () { return [
{ type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] },
{ type: Window, decorators: [{ type: Inject, args: [WINDOW,] }] },
{ type: MobileNavigationComponent }
]; };
return OrientationDirective;
}());
export { OrientationDirective };
if (false) {
/**
* @type {?}
* @private
*/
OrientationDirective.prototype.window;
/**
* @type {?}
* @private
*/
OrientationDirective.prototype.mobileNavMenu;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JpZW50YXRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctcmVzcG9uc2l2ZS1uYXYvIiwic291cmNlcyI6WyJhcHAvZGlyZWN0aXZlcy9vcmllbnRhdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDakQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWhEO0lBUUUsOEJBQThCLFFBQWtCLEVBQWtCLE1BQWMsRUFBRSxhQUF3QztRQUN4SCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUVuQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7OztJQUVNLDJDQUFZOzs7SUFBbkI7UUFBQSxpQkFPQztRQU5DLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1COzs7UUFBRTtZQUNoRCxJQUFJLEtBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRTtnQkFDdkIsS0FBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUM7Z0JBQ2hELFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7YUFDMUM7UUFDSCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7Ozs7O0lBRU8sMkNBQVk7Ozs7SUFBcEI7UUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO0lBQzFELENBQUM7O2dCQTFCRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtpQkFDbEM7Ozs7Z0JBTXlDLFFBQVEsdUJBQW5DLE1BQU0sU0FBQyxRQUFRO2dCQUE4QyxNQUFNLHVCQUE3QixNQUFNLFNBQUMsTUFBTTtnQkFYMUQseUJBQXlCOztJQThCakMsMkJBQUM7Q0FBQSxBQTNCRCxJQTJCQztTQXZCWSxvQkFBb0I7Ozs7OztJQUMvQixzQ0FBZ0M7Ozs7O0lBQ2hDLDZDQUEwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7V0lORE9XfSBmcm9tICcuLi93aW5kb3cvd2luZG93LnByb3ZpZGVyJztcclxuaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtNb2JpbGVOYXZpZ2F0aW9uQ29tcG9uZW50fSBmcm9tICcuLi9tb2JpbGUtbmF2aWdhdGlvbi9tb2JpbGUtbmF2aWdhdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQge0luamVjdCwgRGlyZWN0aXZlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2FwcENoZWNrT3JpZW50YXRpb25dJ1xyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIE9yaWVudGF0aW9uRGlyZWN0aXZlIHtcclxuICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93O1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgbW9iaWxlTmF2TWVudTogTW9iaWxlTmF2aWdhdGlvbkNvbXBvbmVudDtcclxuXHJcbiAgY29uc3RydWN0b3IoQEluamVjdChET0NVTUVOVCkgZG9jdW1lbnQ6IERvY3VtZW50LCBASW5qZWN0KFdJTkRPVykgd2luZG93OiBXaW5kb3csIG1vYmlsZU5hdk1lbnU6IE1vYmlsZU5hdmlnYXRpb25Db21wb25lbnQpIHtcclxuICAgIHRoaXMud2luZG93ID0gd2luZG93O1xyXG4gICAgdGhpcy5tb2JpbGVOYXZNZW51ID0gbW9iaWxlTmF2TWVudTtcclxuXHJcbiAgICB0aGlzLm9uSW5pdGlhbGlzZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uSW5pdGlhbGlzZSgpOiB2b2lkIHtcclxuICAgIHRoaXMud2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ29yaWVudGF0aW9uY2hhbmdlJywgKCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5faXNMYW5kU2NhcGUoKSkge1xyXG4gICAgICAgIHRoaXMubW9iaWxlTmF2TWVudS5jYW5BY3RpdmF0ZU1vYmlsZU5hdiA9IGZhbHNlO1xyXG4gICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3dZID0gJ3Njcm9sbCc7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaXNMYW5kU2NhcGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy53aW5kb3cub3V0ZXJXaWR0aCA8IHRoaXMud2luZG93Lm91dGVySGVpZ2h0O1xyXG4gIH1cclxufVxyXG4iXX0=