/**
 * @fileoverview added by tsickle
 * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
 */
import { WebPlatformApiService } from './../../../services/WebPlatformApiService';
import { Component, ChangeDetectorRef, HostListener } from '@angular/core';
import { DisplayStateService, CacheConstants, Events } from '../../../services/DisplayStateService';
import { ClientSettingsService } from '../../../services/ClientSettingsService';
import { WindowUtils } from '../../../classes/UtilityFunctions';
var TopNavComponent = /** @class */ (function () {
    function TopNavComponent(DisplayStateService, clientSettingsService, webPlatformApiService, cdr) {
        this.DisplayStateService = DisplayStateService;
        this.clientSettingsService = clientSettingsService;
        this.webPlatformApiService = webPlatformApiService;
        this.cdr = cdr;
        this.isBtnActive = true;
        this.appName = '';
        this.fullScreen = false;
        this.breadCrumbs = true;
        this.isAdmin = false;
        this.themePaths = [];
        this.isPrintModeOn = false;
        this.showScrollTotop = false;
        this.widgetsPerRowList = [
            { name: '1', value: '' },
            { name: '2', value: '' },
            { name: '3', value: '' },
            { name: '4', value: '' }
        ];
        this.cachePolicyList = [
            { name: CacheConstants.DEFAULT, value: 'Use default widget cache policy' },
            { name: CacheConstants.PERMANENT, value: 'Always Use cache' },
            { name: CacheConstants.NEVER, value: 'Never use cache' },
        ];
        this.appName = this.clientSettingsService.ApplicationName || 'Web Platform';
    }
    /**
     * @return {?}
     */
    TopNavComponent.prototype.onWindowScroll = /**
     * @return {?}
     */
    function () {
        /** @type {?} */
        var number = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
        if (number > 50) {
            this.showScrollTotop = true;
        }
        else if (number < 50) {
            this.showScrollTotop = false;
        }
    };
    ;
    /**
     * @return {?}
     */
    TopNavComponent.prototype.smoothScrollTotop = /**
     * @return {?}
     */
    function () {
        /** @type {?} */
        var scrollDuration = 200;
        /** @type {?} */
        var scrollStep = -window.scrollY / (scrollDuration / 50);
        /** @type {?} */
        var scrollInterval = setInterval(function () {
            if (window.scrollY !== 0) {
                window.scrollBy(0, scrollStep);
            }
            else {
                clearInterval(scrollInterval);
            }
        }, 15);
    };
    ;
    /**
     * @return {?}
     */
    TopNavComponent.prototype.ngOnInit = /**
     * @return {?}
     */
    function () {
        var _this = this;
        this.CustomMenus = this.clientSettingsService.CustomMenus;
        this.themePaths = this.clientSettingsService.ThemePaths;
        this.currentTheme = this.clientSettingsService.CurrentTheme;
        this.hideLayoutMenu = this.clientSettingsService.HideLayoutMenu;
        this.hideCacheMenu = this.clientSettingsService.HideCacheMenu;
        this.hidePrintLayout = this.clientSettingsService.HidePrintLayout;
        this.spoofUser = this.webPlatformApiService.spoofUser.value;
        this.newSpoofUser = this.spoofUser;
        if (this.DisplayStateService.appState.current.user !== undefined) {
            /** @type {?} */
            var user = this.DisplayStateService.appState.current.user.userName;
            this.User = user;
            this.MicronUserName = user.substring(0, user.indexOf('@'));
            this.isAdmin = this.DisplayStateService.appState.current.userIsAdmin;
        }
        this.DisplayStateService.TopNavBannerHtml.subscribe(function (html) {
            _this.bannerHtml = html;
        });
        this.statechanged$ = this.DisplayStateService.AppStateChanged.subscribe(function (x) {
            if (x === Events.USER_CHANGED) {
                /** @type {?} */
                var user = _this.DisplayStateService.appState.current.user.userName;
                _this.User = user;
                _this.MicronUserName = user.substring(0, user.indexOf('@'));
                _this.isAdmin = _this.DisplayStateService.appState.current.userIsAdmin;
            }
            if (x === Events.TITLE_CHANGED) {
                _this.appName = _this.DisplayStateService.appState.current.appTitle;
            }
            if (x === Events.SIDE_NAV_DISPLAYED_CHANGED) {
                // sync side-nav toggler button state with side nav display state
                // sync side-nav toggler button state with side nav display state
                _this.isBtnActive = (_this.DisplayStateService.appState.current.sideNav.displayState === 'show');
                _this.fullScreen = (_this.DisplayStateService.appState.current.sideNav.displayState !== 'show' && _this.DisplayStateService.appState.current.breadcrumb !== 'show');
            }
            if (x === Events.BREADCRUMB_DISPLAYED_CHANGED) {
                _this.breadCrumbs = (_this.DisplayStateService.appState.current.breadcrumb === 'show');
                _this.fullScreen = (_this.DisplayStateService.appState.current.sideNav.displayState !== 'show' && _this.DisplayStateService.appState.current.breadcrumb !== 'show');
            }
        });
        this.handleUnsupportedNavigator();
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.ngAfterViewChecked = /**
     * @return {?}
     */
    function () {
        // to stop ExpressionChangedAfterItHasBeenCheckedError errors by
        // from updating the parent components state from an event coming from a child component.
        this.cdr.detectChanges();
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.SetSpoofUser = /**
     * @return {?}
     */
    function () {
        this.ClearLocalCache();
        this.spoofUser = this.newSpoofUser;
        this.webPlatformApiService.spoofUser.next(this.spoofUser);
        this.DisplayStateService.RaiseSuccessToast("Set \"spoofed\" user name to " + this.spoofUser);
    };
    /**
     * @param {?} themePath
     * @return {?}
     */
    TopNavComponent.prototype.ChangeTheme = /**
     * @param {?} themePath
     * @return {?}
     */
    function (themePath) {
        /** @type {?} */
        var message = [];
        message['NewThemeRequest'] = themePath;
        this.DisplayStateService.MessageHouse.next(message);
        this.currentTheme = this.clientSettingsService.CurrentTheme;
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.toggleSideNav = /**
     * @return {?}
     */
    function () {
        this.DisplayStateService.ToggleNavDisplay();
        this.isBtnActive = !this.isBtnActive;
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.Refresh = /**
     * @return {?}
     */
    function () {
        location.reload();
    };
    /**
     * @param {?} linkName
     * @return {?}
     */
    TopNavComponent.prototype.QuickLink = /**
     * @param {?} linkName
     * @return {?}
     */
    function (linkName) {
        /** @type {?} */
        var newContext = [];
        if (linkName.toLowerCase() === 'diagnostics') {
            newContext['Source'] = 'Admin';
            newContext['Category'] = 'Help';
            newContext['Module'] = 'Diagnostics';
            this.DisplayStateService.SetContext(newContext);
        }
        else if (linkName.toLowerCase() === 'widgetstore') {
            newContext['Source'] = 'Admin';
            newContext['Category'] = 'Actions';
            newContext['Module'] = 'User Config';
            this.DisplayStateService.SetContext(newContext);
        }
        else if (linkName.toLowerCase() === 'cachedatareport') {
            newContext['Source'] = 'Admin';
            newContext['Category'] = 'Cache';
            newContext['Module'] = 'Cached Data Report';
            this.DisplayStateService.SetContext(newContext);
        }
        else if (linkName.toLowerCase() === 'platformconfig') {
            newContext['Source'] = 'Admin';
            newContext['Category'] = 'Actions';
            newContext['Module'] = 'Platform Config';
            this.DisplayStateService.SetContext(newContext);
        }
    };
    /**
     * @param {?} setting
     * @return {?}
     */
    TopNavComponent.prototype.SetAdminRights = /**
     * @param {?} setting
     * @return {?}
     */
    function (setting) {
        this.DisplayStateService.appState.current.userIsAdmin = setting;
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.ngOnDestroy = /**
     * @return {?}
     */
    function () {
        this.statechanged$.unsubscribe();
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.GoHome = /**
     * @return {?}
     */
    function () {
        this.DisplayStateService.RouteSideNav('Home');
        this.DisplayStateService.SetContext([]);
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.toggleNav = /**
     * @return {?}
     */
    function () {
        if (this.DisplayStateService.appState.current.sideNav.displayState === 'show') {
            this.DisplayStateService.RouteSideNavDisplay('hide');
            this.isBtnActive = false;
        }
        else {
            this.DisplayStateService.RouteSideNavDisplay('show');
            this.isBtnActive = true;
        }
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.toggleBreadCrumbs = /**
     * @return {?}
     */
    function () {
        this.breadCrumbs = !this.breadCrumbs;
        /** @type {?} */
        var sh = (this.breadCrumbs) ? 'show' : 'hide';
        this.DisplayStateService.RouteBreadcrumb(sh);
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.toggleFullScreen = /**
     * @return {?}
     */
    function () {
        this.fullScreen = !this.fullScreen;
        this.DisplayStateService.SetFullScreen(this.fullScreen);
    };
    /**
     * @param {?} n
     * @return {?}
     */
    TopNavComponent.prototype.PerRow = /**
     * @param {?} n
     * @return {?}
     */
    function (n) {
        return this.DisplayStateService.appState.current.perRow === n.toString();
    };
    /**
     * @param {?} name
     * @return {?}
     */
    TopNavComponent.prototype.SetCachePolicy = /**
     * @param {?} name
     * @return {?}
     */
    function (name) {
        this.DisplayStateService.appState.current.cachePolicy = name;
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.RaiseAToast = /**
     * @return {?}
     */
    function () {
        this.DisplayStateService.RaiseToast('Admin menu testing');
    };
    /**
     * @param {?} name
     * @return {?}
     */
    TopNavComponent.prototype.CachePolicyIs = /**
     * @param {?} name
     * @return {?}
     */
    function (name) {
        return this.DisplayStateService.appState.current.cachePolicy === name;
    };
    /**
     * @param {?} perRow
     * @return {?}
     */
    TopNavComponent.prototype.SetWidth = /**
     * @param {?} perRow
     * @return {?}
     */
    function (perRow) {
        this.DisplayStateService.RouteWidgetsPerRow(perRow);
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.ConfigureWidgetLayout = /**
     * @return {?}
     */
    function () {
        /** @type {?} */
        var messageParams = [];
        messageParams["ShowConfigureWidgetLayout"] = '';
        this.DisplayStateService.MessageHouse.next(messageParams);
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.ClearLocalCache = /**
     * @return {?}
     */
    function () {
        this.DisplayStateService.ClearLocalCache();
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.RefreshWidgetConfiguration = /**
     * @return {?}
     */
    function () {
        this.DisplayStateService.LoadWidgetConfigList();
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.onPrintPreviewMode = /**
     * @return {?}
     */
    function () {
        this.DisplayStateService.EnablePrintMode(true);
        this.isPrintModeOn = true;
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.onPrint = /**
     * @return {?}
     */
    function () {
        window.print();
        this.DisplayStateService.EnablePrintMode(false);
        this.isPrintModeOn = false;
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.onPrintCancel = /**
     * @return {?}
     */
    function () {
        this.DisplayStateService.EnablePrintMode(false);
        this.isPrintModeOn = false;
    };
    /**
     * @return {?}
     */
    TopNavComponent.prototype.handleUnsupportedNavigator = /**
     * @return {?}
     */
    function () {
        /** @type {?} */
        var $win = WindowUtils.getNativeWindowObject();
        this.showNoChromeMessage = !(/Chrome/.test($win.navigator.userAgent) && /Google Inc/.test($win.navigator.vendor));
        if (this.showNoChromeMessage) {
            this.DisplayStateService.RaiseWarnToast('We recommend you to use chrome for this appplication !!');
        }
    };
    TopNavComponent.decorators = [
        { type: Component, args: [{
                    selector: 'app-top-nav',
                    template: "<nav class=\"navbar navbar-expand-lg navbar-dark fixed-top fixed-height bg-primary\">\r\n    <div class=\"d-inline-flex center-hamburger\">\r\n        <a class=\"hamburger mr-2\" (click)=\"toggleNav()\" href=\"javascript:;\" [ngClass]=\"{'is-active': isBtnActive}\" id=\"hamburger-3\">\r\n            <span class=\"line\"></span>\r\n            <span class=\"line\"></span>\r\n            <span class=\"line\"></span>\r\n        </a>\r\n        <a class=\"navbar-brand\" [platformRouterLink]=\"{}\">{{appName}}</a>\r\n    </div>\r\n    <button class=\"navbar-toggler navbar-toggler-right\" type=\"button\" data-toggle=\"collapse\" data-target=\"#navbarNav\" aria-expanded=\"false\"\r\n        aria-label=\"Toggle navigation\">\r\n        <span class=\"navbar-toggler-icon\"></span>\r\n    </button>\r\n    <div class=\"navbar-collapse collapse\" id=\"navbarNav\">\r\n        <ul class=\"navbar-nav flex-row mr-auto justify-content-between\">\r\n            <li class=\"nav-item dropdown\" *ngIf=\"!hideLayoutMenu\">\r\n                <a href=\"javascript:;\" (click)=\"GoHome()\" class=\"nav-link\" id=\"gohome\"><i class=\"fa fa-home\"></i></a>\r\n            </li>\r\n            <li class=\"nav-item dropdown\" *ngIf=\"!hideLayoutMenu\">\r\n                <a href=\"javascript:;\" class=\"nav-link dropdown-toggle\" id=\"layout\" data-toggle=\"dropdown\">Layout</a>\r\n                <div class=\"dropdown-menu\" aria-labelledby=\"layout\">\r\n                    <a class=\"dropdown-item\" (click)=\"toggleFullScreen()\">Full Screen\r\n                        <i class=\"fa fa-check pull-right\" *ngIf=\"fullScreen\"></i>\r\n                    </a>\r\n                    <a class=\"dropdown-item mr-5\" (click)=\"toggleBreadCrumbs()\">BreadCrumbs\r\n                        <i class=\"fa fa-check pull-right\" *ngIf=\"breadCrumbs\"></i>\r\n                    </a>\r\n\r\n                    <div class=\"dropdown-submenu\">\r\n                        <button class=\"dropdown-item\" data-toggle=\"dropdown\">Page</button>\r\n                        <div class=\"dropdown-menu\">\r\n                            <a class=\"dropdown-item\" (click)=\"Refresh()\" href=\"javascript:;\">Refresh</a>\r\n                            <a class=\"dropdown-item\" (click)=\"ConfigureWidgetLayout()\" href=\"javascript:;\">Configure Widget Layout</a>\r\n                            <a class=\"dropdown-item\" (click)=\"RefreshWidgetConfiguration()\" href=\"javascript:;\">Refresh Widgets</a>\r\n                            <div class=\"dropdown-divider\"></div>\r\n                            <div class=\"dropdown-header\">Widgets Per Row</div>\r\n                            <div *ngFor=\"let perRow of widgetsPerRowList\">\r\n                                <a class=\"dropdown-item\" href=\"javascript:;\" (click)=\"SetWidth(perRow.name)\">\r\n                                    {{perRow.name}}\r\n                                    <i class=\"fa fa-check\" *ngIf=\"PerRow(perRow.name)\"></i>\r\n                                </a>\r\n                            </div>\r\n                            <div class=\"dropdown-divider\"></div>\r\n                            <div class=\"dropdown-header\">Quick Links</div>\r\n                            <a class=\"dropdown-item\" href=\"javascript:;\" (click)=\"QuickLink('widgetstore')\">Widget store</a>\r\n                            <a class=\"dropdown-item\" href=\"javascript:;\" (click)=\"QuickLink('diagnostics')\">Diagnostics</a>\r\n                            <a class=\"dropdown-item\" href=\"javascript:;\" (click)=\"QuickLink('cachedatareport')\">Cached Data Report</a>\r\n                        </div>\r\n                    </div>\r\n                    <div *ngIf=\"themePaths?.length\" class=\"dropdown-submenu\">\r\n                        <button class=\"dropdown-item\" data-toggle=\"dropdown\">Themes</button>\r\n                        <div class=\"dropdown-menu\">\r\n                            <a *ngFor=\"let theme of themePaths\" class=\"dropdown-item\" (click)=\"ChangeTheme(theme.name)\" href=\"javascript:;\">\r\n                                {{theme.name}}\r\n                                <i class=\"fa fa-check pull-right\" *ngIf=\"currentTheme == theme.name\"> </i>\r\n                            </a>\r\n                        </div>\r\n                    </div>\r\n                </div>\r\n            </li>\r\n            <!-- Cache Section Wrapper  -->\r\n            <li class=\"nav-item dropdown\" *ngIf=\"!hideCacheMenu\">\r\n                <a class=\"nav-link dropdown-toggle\" href=\"javascript:;\" id=\"cache\" data-toggle=\"dropdown\">Cache</a>\r\n                <div class=\"dropdown-menu\" aria-labelledby=\"cache\">\r\n                    <div *ngFor=\"let policy of cachePolicyList\">\r\n                        <a class=\"dropdown-item\" href=\"javascript:;\" (click)=\"SetCachePolicy(policy.name)\">{{policy.value}}\r\n                            <i class=\"fa fa-check\" *ngIf=\"CachePolicyIs(policy.name)\"></i>\r\n                        </a>\r\n                    </div>\r\n                    <div class=\"dropdown-divider\"></div>\r\n                    <a class=\"dropdown-item\" href=\"javascript:;\" (click)=\"ClearLocalCache()\">Clear Local Cache</a>\r\n                </div>\r\n            </li>\r\n            <!-- End of Cache Section Wrapper  -->\r\n            <li *ngIf=\"isAdmin\" class=\"nav-item dropdown\">\r\n                <a class=\"nav-link dropdown-toggle\" href=\"javascript:;\" id=\"admin\" data-toggle=\"dropdown\">Admin</a>\r\n                <div class=\"dropdown-menu\" aria-labelledby=\"admin\">\r\n                    <a class=\"dropdown-item\" (click)=\"QuickLink('platformconfig')\" href=\"javascript:;\">Platform Configuration</a>\r\n                    <a class=\"dropdown-item\" (click)=\"SetAdminRights(false)\" href=\"javascript:;\">Set Admin Off</a>\r\n                    <a class=\"dropdown-item\" (click)=\"SetAdminRights(true)\" href=\"javascript:;\">Set Admin On</a>\r\n                    <div class=\"dropdown-divider\"></div>\r\n                    <form class=\"px-3 py-2\">\r\n                        <div class=\"form-group\">\r\n                            <label for=\"exampleDropdownFormEmail1\">Spoof User</label>\r\n                            <input type=\"text\" name=\"spoofUser\" class=\"form-control\" [(ngModel)]=\"newSpoofUser\" id=\"exampleDropdownFormEmail1\" placeholder=\"username to spoof\">\r\n                        </div>                        \r\n                    </form>\r\n                    <a *ngIf=\"newSpoofUser != spoofUser\" class=\"dropdown-item\" (click)=\"SetSpoofUser()\" href=\"javascript:;\">Set spoofed user</a>\r\n                </div>\r\n            </li>\r\n            <div *ngIf=\"CustomMenus && CustomMenus.length > 0\">\r\n                <li *ngFor=\"let menu of CustomMenus\" class=\"nav-item dropdown\">\r\n                    <a class=\"nav-link dropdown-toggle\" href=\"javascript:;\" data-toggle=\"dropdown\">{{menu.name}}</a>\r\n                    <div class=\"dropdown-menu\">\r\n                        <a *ngFor=\"let item of menu.menuItems\" class=\"dropdown-item\" (click)=\"item.handler()\" href=\"javascript:;\">{{item.name}}</a>\r\n                    </div>\r\n                </li>\r\n            </div>\r\n            <li *ngIf=\"bannerHtml\" class=\"nav-item\">\r\n                <div [innerHTML]=\"bannerHtml\"></div>\r\n            </li>\r\n\r\n        </ul>\r\n        <!-- Users field  -->\r\n        <div class=\"my-2 hidden-sm-down\">\r\n            \r\n            <input *ngIf=\"!isPrintModeOn && !hidePrintLayout\" type=\"button\" class=\"btn btn-sm btn-info topnav-print\" value=\"Print Layout\"\r\n                (click)=\"onPrintPreviewMode()\" />\r\n            <div *ngIf=\"isPrintModeOn && !hidePrintLayout\" class=\"btn-group btn-group-sm topnav-print\" role=\"group\" aria-label=\"Small button group\">\r\n                <button type=\"button\" (click)=\"onPrint()\" class=\"btn btn-success topnav-print\">Print</button>\r\n                <button type=\"button\" (click)=\"onPrintCancel()\" class=\"btn btn-warning topnav-print\">Cancel</button>\r\n            </div>\r\n            <span *ngIf=\"showNoChromeMessage\" class=\"badge badge-danger\">Not Using Chrome !! </span>\r\n            <img class=\"img-circle\" src=\"http://bomysite.micron.com:80/User%20Photos/Profile%20Pictures/{{MicronUserName}}_MThumb.jpg\"\r\n            />\r\n            <span *ngIf=\"MicronUserName; else NotLoggedIn\" class=\"navbar-text\">Signed in as {{MicronUserName}}</span>\r\n            <span *ngIf=\"isAdmin\" class=\" navbar-text\">(Admin)</span>\r\n            <ng-template #NotLoggedIn>\r\n                <span class=\" navbar-text\">Obtaining user credentials...</span>\r\n            </ng-template>\r\n        </div>\r\n        <!-- End of Users field  -->\r\n    </div>\r\n</nav>\r\n\r\n<div class=\"scroll-to-top\" *ngIf=\"showScrollTotop\" (click)=\"smoothScrollTotop()\">\r\n    <i class=\"fa fa-chevron-up\" aria-hidden=\"true\"></i>\r\n</div>",
                    styles: [".alert-msg{height:40px;margin:0}#navbars{cursor:pointer}.navbar-text{padding:0}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:0;border-radius:.25rem}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropdown-submenu>a::after{border-bottom:.3em solid transparent;border-top:.3em solid transparent;content:\" \";display:block;float:right;height:0;margin-right:-.6em;margin-top:-.95em;width:0;border-left:.3em solid;border-left-color:inherit}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-75%}.dropdown-menu .divider{background-color:#e5e5e5;height:1px;margin:9px 0;overflow:hidden}.topnav-print{padding:0 7px!important}.img-circle{border-radius:35px;height:35px;margin-right:5px}.scroll-to-top{position:fixed;right:65px;bottom:50px;z-index:9999;padding:7px 12px 10px;border-radius:20px;box-shadow:7px 7px 5px 0 rgba(50,50,50,.75)}.scroll-to-top:hover{position:fixed;right:65px;bottom:50px;z-index:9999;padding:7px 12px 10px;border-radius:20px;background:rgba(128,128,128,.82);box-shadow:1px 1px 0 0 rgba(50,50,50,.75)}.hamburger .line{width:16px;height:3px;background-color:#ecf0f1;display:block;margin:2px auto;transition:all .3s ease-in-out}.hamburger:hover{cursor:pointer}#hamburger-3.is-active .line:nth-child(1),#hamburger-3.is-active .line:nth-child(3){width:16px}#hamburger-3.is-active .line:nth-child(1){-webkit-transform:translateX(-3px) rotate(-45deg);transform:translateX(-3px) rotate(-45deg)}#hamburger-3.is-active .line:nth-child(3){-webkit-transform:translateX(-3px) rotate(45deg);transform:translateX(-3px) rotate(45deg)}.center-hamburger{align-items:baseline}"]
                }] }
    ];
    /** @nocollapse */
    TopNavComponent.ctorParameters = function () { return [
        { type: DisplayStateService },
        { type: ClientSettingsService },
        { type: WebPlatformApiService },
        { type: ChangeDetectorRef }
    ]; };
    TopNavComponent.propDecorators = {
        onWindowScroll: [{ type: HostListener, args: ['window:scroll', [],] }]
    };
    return TopNavComponent;
}());
export { TopNavComponent };
if (false) {
    /** @type {?} */
    TopNavComponent.prototype.isBtnActive;
    /** @type {?} */
    TopNavComponent.prototype.sideNavToggle;
    /** @type {?} */
    TopNavComponent.prototype.noChromeMessage;
    /** @type {?} */
    TopNavComponent.prototype.statechanged$;
    /** @type {?} */
    TopNavComponent.prototype.appName;
    /** @type {?} */
    TopNavComponent.prototype.fullScreen;
    /** @type {?} */
    TopNavComponent.prototype.breadCrumbs;
    /** @type {?} */
    TopNavComponent.prototype.User;
    /** @type {?} */
    TopNavComponent.prototype.MicronUserName;
    /** @type {?} */
    TopNavComponent.prototype.isAdmin;
    /** @type {?} */
    TopNavComponent.prototype.themePaths;
    /** @type {?} */
    TopNavComponent.prototype.hideLayoutMenu;
    /** @type {?} */
    TopNavComponent.prototype.hideCacheMenu;
    /** @type {?} */
    TopNavComponent.prototype.hidePrintLayout;
    /** @type {?} */
    TopNavComponent.prototype.bannerHtml;
    /** @type {?} */
    TopNavComponent.prototype.spoofUser;
    /** @type {?} */
    TopNavComponent.prototype.newSpoofUser;
    /** @type {?} */
    TopNavComponent.prototype.currentTheme;
    /** @type {?} */
    TopNavComponent.prototype.showNoChromeMessage;
    /** @type {?} */
    TopNavComponent.prototype.isPrintModeOn;
    /** @type {?} */
    TopNavComponent.prototype.showScrollTotop;
    /** @type {?} */
    TopNavComponent.prototype.CustomMenus;
    /** @type {?} */
    TopNavComponent.prototype.widgetsPerRowList;
    /** @type {?} */
    TopNavComponent.prototype.cachePolicyList;
    /** @type {?} */
    TopNavComponent.prototype.DisplayStateService;
    /** @type {?} */
    TopNavComponent.prototype.clientSettingsService;
    /** @type {?} */
    TopNavComponent.prototype.webPlatformApiService;
    /** @type {?} */
    TopNavComponent.prototype.cdr;
}

//# sourceMappingURL=data:application/json;base64, 