UNPKG

ng-responsive-nav

Version:
550 lines (531 loc) 25.9 kB
import { Component, InjectionToken, Inject, Directive, PLATFORM_ID, NgModule } from '@angular/core'; import { DOCUMENT, isPlatformBrowser, CommonModule } from '@angular/common'; import { BrowserModule } from '@angular/platform-browser'; import { NavigationEnd, Router, RouterModule } from '@angular/router'; import { Subscription } from 'rxjs'; import { faBars } from '@fortawesome/free-solid-svg-icons/faBars'; import { faTimes } from '@fortawesome/free-solid-svg-icons'; import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; /** * @fileoverview added by tsickle * Generated from: app/ng-responsive-nav.component.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ class NgResponsiveNavComponent { } NgResponsiveNavComponent.decorators = [ { type: Component, args: [{ selector: 'ng-responsive-nav', template: "<app-desktop-navigation class=\"display-flex\">\r\n <div desktopExtras>\r\n <ng-content select=\"[ngDesktopNavExtras]\"></ng-content>\r\n </div>\r\n</app-desktop-navigation>\r\n\r\n<app-mobile-navigation-component>\r\n <div mobileExtras>\r\n <ng-content select=\"[ngMobileNavExtras]\"></ng-content>\r\n </div>\r\n</app-mobile-navigation-component>\r\n", styles: [".link.desktop-link{margin:0 7px}.link.desktop-link.primary{text-decoration:none}.link.desktop-link.primary:hover{-webkit-filter:brightness(60%);filter:brightness(60%);text-decoration:underline}.link.desktop-link.primary:active{-webkit-filter:brightness(60%);filter:brightness(60%)}.link.mobile-link{margin:7px 0}.link.mobile-link.primary:active{-webkit-filter:brightness(60%);filter:brightness(60%)}.display-flex{display:flex}"] }] } ]; /** * @fileoverview added by tsickle * Generated from: app/models/nav.config.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @abstract */ class NavConfig { } if (false) { /** @type {?} */ NavConfig.prototype.navBrandConfig; /** @type {?} */ NavConfig.prototype.navigationMenuRoutes; /** @type {?} */ NavConfig.prototype.navigationHomeRoute; } /** * @fileoverview added by tsickle * Generated from: app/window/window.provider.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ const WINDOW = new InjectionToken('WindowToken'); /** * @fileoverview added by tsickle * Generated from: app/desktop-navigation/desktop-navigation.component.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ class DesktopNavigationComponent { /** * @param {?} navConfig * @param {?} window */ constructor(navConfig, window) { this.canFadeBoxShadowOut = false; this.navConfig = navConfig; this._window = window; } /** * @return {?} */ ngOnInit() { this._window.addEventListener('scroll', (/** * @return {?} */ () => { this.canFadeBoxShadowOut = this._window.scrollY > 0; })); } } DesktopNavigationComponent.decorators = [ { type: Component, args: [{ selector: 'app-desktop-navigation', template: "<div class=\"navigation-container\"\r\n [ngStyle]=\"{\r\n 'background-color': navConfig.navBrandConfig.colorPalette.backGroundColor,\r\n 'z-index': navConfig.navBrandConfig.zIndex,\r\n 'box-shadow': navConfig.navBrandConfig.boxShadow === true ? '0 0.5rem 1rem rgba(0, 0, 0, 0.15)' : 'none'\r\n}\">\r\n <div class=\"navigation-inner-container\">\r\n <div class=\"navigation-links\">\r\n <img class=\"navigation-image\"\r\n [routerLink]=\"navConfig.navigationHomeRoute.routePath\"\r\n [src]=\"navConfig.navBrandConfig.brandImageUrl\">\r\n <a class=\"link desktop-link primary\"\r\n [ngStyle]=\"{ 'color': navConfig.navBrandConfig.colorPalette.linkColor }\"\r\n *ngFor=\"let route of navConfig.navigationMenuRoutes\"\r\n [routerLink]=\"route.routePath\">{{route.routeName}}</a>\r\n </div>\r\n\r\n <div class=\"navigation-extras\">\r\n <ng-content select=\"[desktopExtras]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".link.desktop-link{margin:0 7px}.link.desktop-link.primary{text-decoration:none}.link.desktop-link.primary:hover{-webkit-filter:brightness(60%);filter:brightness(60%);text-decoration:underline}.link.desktop-link.primary:active{-webkit-filter:brightness(60%);filter:brightness(60%)}.link.mobile-link{margin:7px 0}.link.mobile-link.primary:active{-webkit-filter:brightness(60%);filter:brightness(60%)}.display-flex{display:flex}.navigation-container{height:64px;width:100%;position:fixed}@media only screen and (max-width:576px){.navigation-container{display:none}}.navigation-container .navigation-inner-container{display:flex!important;justify-content:space-between!important;height:100%}.navigation-container .navigation-inner-container .navigation-links{display:flex!important;align-items:center!important;height:100%}.navigation-container .navigation-inner-container .navigation-links .navigation-image{height:100%;cursor:pointer}.navigation-container .navigation-inner-container .navigation-extras{display:flex!important;align-items:center!important;height:100%;padding-right:1rem}"] }] } ]; /** @nocollapse */ DesktopNavigationComponent.ctorParameters = () => [ { type: NavConfig }, { type: Window, decorators: [{ type: Inject, args: [WINDOW,] }] } ]; if (false) { /** @type {?} */ DesktopNavigationComponent.prototype.navConfig; /** @type {?} */ DesktopNavigationComponent.prototype.canFadeBoxShadowOut; /** * @type {?} * @private */ DesktopNavigationComponent.prototype._window; } /** * @fileoverview added by tsickle * Generated from: app/mobile-navigation/mobile-navigation.component.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ class MobileNavigationComponent { /** * @param {?} router * @param {?} document * @param {?} navConfig */ constructor(router, document, navConfig) { this.faBars = faBars; this.faTimes = faTimes; this.canActivateMobileNav = false; this._subscriptions = new Subscription(); this._router = router; this._document = document; this.navConfig = navConfig; } /** * @return {?} */ ngOnInit() { this._document.body.style.overflowY = 'scroll'; this._watchNavigationChanges(this._router); } /** * @return {?} */ ngOnDestroy() { this.canActivateMobileNav = false; this._setOverFlowY(); this._subscriptions.unsubscribe(); } /** * @return {?} */ toggleCanActivateMobileNavBar() { this.canActivateMobileNav = !this.canActivateMobileNav; this._setOverFlowY(); } /** * @private * @return {?} */ _setOverFlowY() { this.canActivateMobileNav ? this._document.body.style.overflowY = 'hidden' : this._document.body.style.overflowY = 'scroll'; } /** * @private * @param {?} router * @return {?} */ _watchNavigationChanges(router) { this._subscriptions.add(router.events.subscribe((/** * @param {?} event * @return {?} */ (event) => { if (event instanceof NavigationEnd && this.canActivateMobileNav) { this.toggleCanActivateMobileNavBar(); } }))); } } MobileNavigationComponent.decorators = [ { type: Component, args: [{ selector: 'app-mobile-navigation-component', template: "<div class=\"mobile-navigation-burger-menu-button circle-container\"\r\n [ngStyle]=\"{\r\n 'background-color': navConfig.navBrandConfig.colorPalette.primaryColor,\r\n 'z-index': navConfig.navBrandConfig.zIndex + 1\r\n }\"\r\n (click)=\"toggleCanActivateMobileNavBar()\"\r\n [class.animation-slide-burger-right]=\"canActivateMobileNav\"\r\n [class.animation-slide-burger-left]=\"!canActivateMobileNav\" >\r\n\r\n <div class=\"mobile-navigation-burger-menu-button-inner\" [ngStyle]=\"{'z-index': navConfig.navBrandConfig.zIndex + 1}\">\r\n <fa-icon class=\"icon\" *ngIf=\"!canActivateMobileNav\" [ngStyle]=\"{ 'color': navConfig.navBrandConfig.colorPalette.secondaryColor }\" [icon]=\"faBars\"></fa-icon>\r\n <fa-icon class=\"icon\" *ngIf=\"canActivateMobileNav\" [ngStyle]=\"{ 'color': navConfig.navBrandConfig.colorPalette.primaryColor }\" [icon]=\"faTimes\"></fa-icon>\r\n </div>\r\n</div>\r\n\r\n<div appCheckOrientation class=\"mobile-navigation-menu\" *ngIf=\"canActivateMobileNav\" [ngStyle]=\"{'z-index': navConfig.navBrandConfig.zIndex}\">\r\n <div class=\"mobile-navigation-menu-items\"\r\n [ngStyle]=\"{ 'background-color': navConfig.navBrandConfig.colorPalette.backGroundColor }\"\r\n [class.animation-slide-in-nav-menu]=\"canActivateMobileNav\"\r\n [class.animation-slide-out-nav-menu]=\"!canActivateMobileNav\">\r\n\r\n <div class=\"mobile-navigation-button-runner\"\r\n [ngStyle]=\"{ 'background-color': navConfig.navBrandConfig.colorPalette.primaryColor }\"\r\n *ngIf=\"canActivateMobileNav\">\r\n <div class=\"runner-inner\"></div>\r\n </div>\r\n\r\n <div class=\"mobile-navigation-links\">\r\n <div class=\"mobile-navigation-links-inner\">\r\n <img class=\"mobile-navigation-inner-icon\"\r\n [routerLink]=\"navConfig.navigationHomeRoute.routePath\"\r\n [src]=\"navConfig.navBrandConfig.brandImageUrl\" />\r\n </div>\r\n <a class=\"link mobile-link\"\r\n *ngFor=\"let route of navConfig.navigationMenuRoutes\"\r\n [routerLink]=\"route.routePath\"\r\n [ngStyle]=\"{ 'color': navConfig.navBrandConfig.colorPalette.primaryColor }\">{{route.routeName}}</a>\r\n </div>\r\n\r\n <div class=\"mobile-navigation-extras\">\r\n <ng-content select=\"[mobileExtras]\"></ng-content>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n\r\n", styles: ["@-webkit-keyframes slide-burger-right{to{right:29%;margin:18px 0 0;background-color:transparent;color:#1976d2}}@keyframes slide-burger-right{to{right:29%;margin:18px 0 0;background-color:transparent;color:#1976d2}}@-webkit-keyframes slide-burger-left{from{right:29%}to{right:68%}}@keyframes slide-burger-left{from{right:29%}to{right:68%}}@-webkit-keyframes animation-slide-in-nav-left{from{right:100%}to{right:25%}}@keyframes animation-slide-in-nav-left{from{right:100%}to{right:25%}}@-webkit-keyframes animation-slide-in-left{from{right:100%}to{right:0}}@keyframes animation-slide-in-left{from{right:100%}to{right:0}}@-webkit-keyframes animation-slide-out-nav-right{from{right:0}to{right:100%}}@keyframes animation-slide-out-nav-right{from{right:0}to{right:100%}}@-webkit-keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@-webkit-keyframes rotate-clockwise{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotate-clockwise{from{transform:rotate(0)}to{transform:rotate(360deg)}}.animation-slide-burger-right{-webkit-animation:.2s 75ms forwards slide-burger-right;animation:.2s 75ms forwards slide-burger-right}.animation-slide-burger-left{-webkit-animation:.2s forwards slide-burger-left;animation:.2s forwards slide-burger-left}.animation-slide-in-nav-menu{-webkit-animation:.2s forwards animation-slide-in-nav-left;animation:.2s forwards animation-slide-in-nav-left}.animation-slide-out-nav-menu{-webkit-animation:.2s forwards animation-slide-out-nav-right;animation:.2s forwards animation-slide-out-nav-right}.link.desktop-link{margin:0 7px}.link.desktop-link.primary{text-decoration:none}.link.desktop-link.primary:hover{-webkit-filter:brightness(60%);filter:brightness(60%);text-decoration:underline}.link.desktop-link.primary:active{-webkit-filter:brightness(60%);filter:brightness(60%)}.link.mobile-link{margin:7px 0}.link.mobile-link.primary:active{-webkit-filter:brightness(60%);filter:brightness(60%)}.display-flex{display:flex}.mobile-navigation-burger-menu-button{position:fixed;z-index:1001;font-size:1.25rem;color:#fff;width:50px;height:50px;text-align:center;cursor:pointer;margin:18px 59px 0 0;right:68%}.mobile-navigation-burger-menu-button .mobile-navigation-burger-menu-button-inner{padding-top:27%}.mobile-navigation-burger-menu-button .mobile-navigation-burger-menu-button-inner .icon{font-weight:600!important;padding-top:14px}.mobile-navigation-burger-menu-button.circle-container{border-radius:50%;color:#fff;border:none}.mobile-navigation-menu{height:100%;z-index:1}@media only screen and (min-width:576px){.mobile-navigation-burger-menu-button,.mobile-navigation-menu{display:none}}.mobile-navigation-menu .mobile-navigation-menu-items{box-shadow:7px 4px 12px -8px rgba(0,0,0,.75);width:75%;height:100%;z-index:1;position:fixed;color:#fff}.mobile-navigation-menu .mobile-navigation-menu-items .mobile-navigation-extras{padding:12px!important;height:50vh;display:flex!important;flex-direction:column!important}.mobile-navigation-menu .mobile-navigation-menu-items .mobile-navigation-button-runner{padding-right:3rem;z-index:13;height:3px;width:60%;margin-top:41px}.mobile-navigation-menu .mobile-navigation-menu-items .mobile-navigation-button-runner .runner-inner{border-radius:50%;height:inherit;margin-top:.25rem;width:100%}.mobile-navigation-menu .mobile-navigation-menu-items .mobile-navigation-links{display:flex!important;flex-direction:column!important;height:50vh;margin-top:3rem!important;text-align:center}.mobile-navigation-menu .mobile-navigation-menu-items .mobile-navigation-links .mobile-navigation-links-inner{display:flex!important;justify-content:center!important}.mobile-navigation-menu .mobile-navigation-menu-items .mobile-navigation-links .mobile-navigation-inner-icon{width:80px;height:80px;margin-bottom:12px;padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%}.mobile-navigation-menu .mobile-navigation-menu-items .sticky-bottom{height:400px}"] }] } ]; /** @nocollapse */ MobileNavigationComponent.ctorParameters = () => [ { type: Router }, { type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] }, { type: NavConfig } ]; if (false) { /** @type {?} */ MobileNavigationComponent.prototype.navConfig; /** @type {?} */ MobileNavigationComponent.prototype.faBars; /** @type {?} */ MobileNavigationComponent.prototype.faTimes; /** @type {?} */ MobileNavigationComponent.prototype.canActivateMobileNav; /** * @type {?} * @private */ MobileNavigationComponent.prototype._document; /** * @type {?} * @private */ MobileNavigationComponent.prototype._router; /** * @type {?} * @private */ MobileNavigationComponent.prototype._subscriptions; } /** * @fileoverview added by tsickle * Generated from: app/directives/orientation.directive.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ class OrientationDirective { /** * @param {?} document * @param {?} window * @param {?} mobileNavMenu */ constructor(document, window, mobileNavMenu) { this.window = window; this.mobileNavMenu = mobileNavMenu; this.onInitialise(); } /** * @return {?} */ onInitialise() { this.window.addEventListener('orientationchange', (/** * @return {?} */ () => { if (this._isLandScape()) { this.mobileNavMenu.canActivateMobileNav = false; document.body.style.overflowY = 'scroll'; } })); } /** * @private * @return {?} */ _isLandScape() { return this.window.outerWidth < this.window.outerHeight; } } OrientationDirective.decorators = [ { type: Directive, args: [{ selector: '[appCheckOrientation]' },] } ]; /** @nocollapse */ OrientationDirective.ctorParameters = () => [ { type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] }, { type: Window, decorators: [{ type: Inject, args: [WINDOW,] }] }, { type: MobileNavigationComponent } ]; if (false) { /** * @type {?} * @private */ OrientationDirective.prototype.window; /** * @type {?} * @private */ OrientationDirective.prototype.mobileNavMenu; } /** * @fileoverview added by tsickle * Generated from: app/window/window.ref.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @abstract */ class WindowRef { /** * @return {?} */ get nativeWindow() { throw new Error('Not Implemented'); } } /** * @fileoverview added by tsickle * Generated from: app/window/browser-window.ref.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ class BrowserWindowRef extends WindowRef { /** * @return {?} */ get nativeWindow() { return window; } constructor() { super(); } } /** * @fileoverview added by tsickle * Generated from: app/window/window.factory.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @param {?} browserWindowRef * @param {?} platformId * @return {?} */ function WindowFactory(browserWindowRef, platformId) { if (isPlatformBrowser(platformId)) { return browserWindowRef.nativeWindow; } return {}; } /** * @fileoverview added by tsickle * Generated from: app/window/browser-window.provider.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ const browserWindowProvider = { provide: WindowRef, useClass: BrowserWindowRef }; const ɵ0 = WindowFactory; /** @type {?} */ const windowProvider = { provide: WINDOW, useFactory: ɵ0, deps: [WindowRef, PLATFORM_ID] }; /** @type {?} */ const WINDOW_PROVIDERS = [ browserWindowProvider, windowProvider ]; /** * @fileoverview added by tsickle * Generated from: app/factories/default-config.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ const defaultConfig = { navBrandConfig: { colorPalette: { primaryColor: '#1976D2', secondaryColor: '#ffffff', linkActiveColor: '#1976D2', linkColor: '#1976D2', tertiaryColor: '#1976D2', backGroundColor: '#ffffff' }, brandImageUrl: 'https://placehold.it/300x300', zIndex: 1, boxShadow: true, }, navigationHomeRoute: { routePath: '/', routeName: 'home' }, navigationMenuRoutes: [] }; /** * @fileoverview added by tsickle * Generated from: app/factories/nav-config.factory.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ // @dynamic class NavConfigFactory { /** * @private * @param {?} navLinks * @return {?} */ _mapNavigationMenuRoutes(navLinks) { return navLinks ? navLinks : defaultConfig.navigationMenuRoutes; } /** * @private * @param {?} homeRoute * @return {?} */ _mapNavigationHomeRoute(homeRoute) { return homeRoute ? homeRoute : defaultConfig.navigationHomeRoute; } /** * @private * @param {?} styles * @return {?} */ _mapBrandConfig(styles) { if (styles !== undefined) { return { brandImageUrl: styles.brandImageUrl ? styles.brandImageUrl : defaultConfig.navBrandConfig.brandImageUrl, colorPalette: this._mapColorPalette(styles.colorPalette), zIndex: styles.zIndex ? styles.zIndex : defaultConfig.navBrandConfig.zIndex, boxShadow: (styles.boxShadow === false || styles.boxShadow === true) ? styles.boxShadow : defaultConfig.navBrandConfig.boxShadow, }; } return defaultConfig.navBrandConfig; } /** * @private * @param {?} colorPalette * @return {?} */ _mapColorPalette(colorPalette) { if (colorPalette) { return { primaryColor: colorPalette.primaryColor, secondaryColor: colorPalette.secondaryColor, linkActiveColor: colorPalette.linkActiveColor, linkColor: colorPalette.linkColor, tertiaryColor: colorPalette.tertiaryColor, backGroundColor: colorPalette.backGroundColor, }; } return { primaryColor: defaultConfig.navBrandConfig.colorPalette.primaryColor, secondaryColor: defaultConfig.navBrandConfig.colorPalette.secondaryColor, linkActiveColor: defaultConfig.navBrandConfig.colorPalette.linkActiveColor, linkColor: defaultConfig.navBrandConfig.colorPalette.linkColor, tertiaryColor: defaultConfig.navBrandConfig.colorPalette.tertiaryColor, backGroundColor: defaultConfig.navBrandConfig.colorPalette.backGroundColor, }; } /** * @param {?} config * @return {?} */ for(config) { return { navigationMenuRoutes: this._mapNavigationMenuRoutes(config.navigationMenuRoutes), navigationHomeRoute: this._mapNavigationHomeRoute(config.navigationHomeRoute), navBrandConfig: this._mapBrandConfig(config.navBrandConfig) }; } } /** * @fileoverview added by tsickle * Generated from: app/ng-responsive-nav.module.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ const declarations = [ DesktopNavigationComponent, MobileNavigationComponent, OrientationDirective, NgResponsiveNavComponent ]; class NgResponsiveNavModule { /** * @param {?} navConfig * @return {?} */ static forRoot(navConfig) { /** @type {?} */ const navFactory = new NavConfigFactory(); /** @type {?} */ const navigationConfig = navFactory.for(navConfig); return { ngModule: NgResponsiveNavModule, providers: [ { provide: NavConfig, useValue: navigationConfig } ] }; } } NgResponsiveNavModule.decorators = [ { type: NgModule, args: [{ declarations: [...declarations], imports: [ CommonModule, BrowserModule, RouterModule, FontAwesomeModule ], exports: [ NgResponsiveNavComponent ], providers: [ WINDOW_PROVIDERS ] },] } ]; /** * @fileoverview added by tsickle * Generated from: app/models/nav-brand.config.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @abstract */ class NavBrandConfig { } if (false) { /** @type {?} */ NavBrandConfig.prototype.colorPalette; /** @type {?} */ NavBrandConfig.prototype.brandImageUrl; /** @type {?} */ NavBrandConfig.prototype.zIndex; /** @type {?} */ NavBrandConfig.prototype.boxShadow; } /** * @fileoverview added by tsickle * Generated from: app/models/nav-routes.config.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @abstract */ class NavigationMenuRoute { } if (false) { /** @type {?} */ NavigationMenuRoute.prototype.routeName; /** @type {?} */ NavigationMenuRoute.prototype.routePath; } /** * @fileoverview added by tsickle * Generated from: public-api.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @fileoverview added by tsickle * Generated from: ng-responsive-nav.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ export { BrowserWindowRef, DesktopNavigationComponent, MobileNavigationComponent, NavBrandConfig, NavConfig, NavigationMenuRoute, NgResponsiveNavComponent, NgResponsiveNavModule, WINDOW, WINDOW_PROVIDERS, WindowFactory, WindowRef, OrientationDirective as ɵa }; //# sourceMappingURL=ng-responsive-nav.js.map