[{"__symbolic":"module","version":3,"metadata":{"ThfMenuComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@totvs/thf-core/components/thf-menu-base","name":"ThfMenuBaseComponent"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"thf-menu","template":"<div *ngIf=\"menuMobileOpened\" class=\"thf-menu-overlay\" (click)=\"toggleMenuMobile()\"></div> <div class=\"thf-menu-mobile thf-clickable\" (click)=\"toggleMenuMobile()\"> <span class=\"thf-icon thf-icon-menu\"></span> </div> <div class=\"thf-menu\" [ngClass]=\"{ 'thf-menu-animation' : menuMobileOpened }\"> <a href=\"/\" class=\"thf-menu-logo-container\"> <div class=\"thf-menu-logo\"></div> </a> <nav class=\"thf-menu-container\"> <!-- Inner e outer para esconder scroll --> <div class=\"thf-menu-outer\"> <div class=\"thf-menu-inner\"> <div *ngFor=\"let menu of menus\" class=\"thf-menu-item-wrapper\"> <!-- item de menu não selecionado sem agrupamento --> <a *ngIf=\"!menu.subItems && !this.isExternalLink(menu.link) && menu.link\" class=\"thf-menu-item-link\" (click)=\"clickMenuItem(menu)\" [routerLink]=\"menu.link\"> <div [ngClass]=\"{'thf-menu-item': true, 'thf-menu-item-selected': menuItemActive === menu}\"> {{ menu.label }} </div> </a> <a *ngIf=\"!menu.subItems && (this.isExternalLink(menu.link) || !menu.link)\" class=\"thf-menu-item-link\" (click)=\"$event.preventDefault();clickMenuItem(menu);\" [href]=\"menu.link ? menu.link : 'javascript:;'\"> <div [ngClass]=\"{'thf-menu-item': true, 'thf-menu-item-selected': menuItemActive === menu}\"> {{ menu.label }} </div> </a> <!-- item de menu com sub itens --> <div *ngIf=\"menu.subItems\"> <div (click)=\"clickMenuItemGrouped(menu)\" class=\"thf-menu-item thf-clickable\" [ngClass]=\"{ 'thf-menu-item-selected': isMenuItemSelected(menu), 'thf-menu-item-grouper-up': menu === menuItemOpened }\"> <!-- menu agrupado fechado --> <div *ngIf=\"menu !== menuItemOpened\" class=\"thf-menu-grouper-icon-down\"> <span class=\"thf-icon thf-icon-arrow-down\"></span> </div> <!-- menu agrupado aberto --> <div *ngIf=\"menu === menuItemOpened\" class=\"thf-menu-grouper-icon-up\"> <span class=\"thf-icon thf-icon-arrow-up\"></span> </div> {{ menu.label }} </div> <!-- sub itens menu agrupado --> <div [ngClass]=\"{ 'thf-menu-sub-items-visible': menu === menuItemOpened }\" class=\"thf-menu-sub-items\"> <div *ngFor=\"let subMenu of menu.subItems\"> <a *ngIf=\"!this.isExternalLink(subMenu.link) && subMenu.link\" class=\"thf-menu-item-link\" [routerLink]=\"subMenu.link\" (click)=\"clickSubMenuItem(subMenu)\"> <div [ngClass]=\"{'thf-menu-item': true, 'thf-menu-item-selected': menuItemActive === subMenu}\"> {{ subMenu.label }} </div> </a> <a *ngIf=\"(this.isExternalLink(subMenu.link) || !subMenu.link)\" class=\"thf-menu-item-link\" [href]=\"subMenu.link ? subMenu.link : 'javascript:;'\" (click)=\"$event.preventDefault(); clickSubMenuItem(subMenu);\"> <div [ngClass]=\"{'thf-menu-item': true, 'thf-menu-item-selected': menuItemActive === subMenu}\"> {{ subMenu.label }} </div> </a> </div> </div> </div> </div> </div> </div> </nav> </div> "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef"},{"__symbolic":"reference","module":"@angular/common","name":"Location"},{"__symbolic":"reference","module":"@angular/router","name":"Router"}]}],"ngOnInit":[{"__symbolic":"method"}],"validateMenus":[{"__symbolic":"method"}],"clickMenuItem":[{"__symbolic":"method"}],"clickMenuItemGrouped":[{"__symbolic":"method"}],"clickSubMenuItem":[{"__symbolic":"method"}],"toggleMenuMobile":[{"__symbolic":"method"}],"isMenuItemSelected":[{"__symbolic":"method"}],"checkActiveMenuByUrl":[{"__symbolic":"method"}],"checkUrl":[{"__symbolic":"method"}],"setActiveMenuByUrl":[{"__symbolic":"method"}],"executeMenuAction":[{"__symbolic":"method"}],"openExternalLink":[{"__symbolic":"method"}],"isExternalLink":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"ThfMenuComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@totvs/thf-core/components/thf-menu-base","name":"ThfMenuBaseComponent"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"thf-menu","template":"<div *ngIf=\"menuMobileOpened\" class=\"thf-menu-overlay\" (click)=\"toggleMenuMobile()\"></div> <div class=\"thf-menu-mobile thf-clickable\" (click)=\"toggleMenuMobile()\"> <span class=\"thf-icon thf-icon-menu\"></span> </div> <div class=\"thf-menu\" [ngClass]=\"{ 'thf-menu-animation' : menuMobileOpened }\"> <a href=\"/\" class=\"thf-menu-logo-container\"> <div class=\"thf-menu-logo\"></div> </a> <nav class=\"thf-menu-container\"> <!-- Inner e outer para esconder scroll --> <div class=\"thf-menu-outer\"> <div class=\"thf-menu-inner\"> <div *ngFor=\"let menu of menus\" class=\"thf-menu-item-wrapper\"> <!-- item de menu não selecionado sem agrupamento --> <a *ngIf=\"!menu.subItems && !this.isExternalLink(menu.link) && menu.link\" class=\"thf-menu-item-link\" (click)=\"clickMenuItem(menu)\" [routerLink]=\"menu.link\"> <div [ngClass]=\"{'thf-menu-item': true, 'thf-menu-item-selected': menuItemActive === menu}\"> {{ menu.label }} </div> </a> <a *ngIf=\"!menu.subItems && (this.isExternalLink(menu.link) || !menu.link)\" class=\"thf-menu-item-link\" (click)=\"$event.preventDefault();clickMenuItem(menu);\" [href]=\"menu.link ? menu.link : 'javascript:;'\"> <div [ngClass]=\"{'thf-menu-item': true, 'thf-menu-item-selected': menuItemActive === menu}\"> {{ menu.label }} </div> </a> <!-- item de menu com sub itens --> <div *ngIf=\"menu.subItems\"> <div (click)=\"clickMenuItemGrouped(menu)\" class=\"thf-menu-item thf-clickable\" [ngClass]=\"{ 'thf-menu-item-selected': isMenuItemSelected(menu), 'thf-menu-item-grouper-up': menu === menuItemOpened }\"> <!-- menu agrupado fechado --> <div *ngIf=\"menu !== menuItemOpened\" class=\"thf-menu-grouper-icon-down\"> <span class=\"thf-icon thf-icon-arrow-down\"></span> </div> <!-- menu agrupado aberto --> <div *ngIf=\"menu === menuItemOpened\" class=\"thf-menu-grouper-icon-up\"> <span class=\"thf-icon thf-icon-arrow-up\"></span> </div> {{ menu.label }} </div> <!-- sub itens menu agrupado --> <div [ngClass]=\"{ 'thf-menu-sub-items-visible': menu === menuItemOpened }\" class=\"thf-menu-sub-items\"> <div *ngFor=\"let subMenu of menu.subItems\"> <a *ngIf=\"!this.isExternalLink(subMenu.link) && subMenu.link\" class=\"thf-menu-item-link\" [routerLink]=\"subMenu.link\" (click)=\"clickSubMenuItem(subMenu)\"> <div [ngClass]=\"{'thf-menu-item': true, 'thf-menu-item-selected': menuItemActive === subMenu}\"> {{ subMenu.label }} </div> </a> <a *ngIf=\"(this.isExternalLink(subMenu.link) || !subMenu.link)\" class=\"thf-menu-item-link\" [href]=\"subMenu.link ? subMenu.link : 'javascript:;'\" (click)=\"$event.preventDefault(); clickSubMenuItem(subMenu);\"> <div [ngClass]=\"{'thf-menu-item': true, 'thf-menu-item-selected': menuItemActive === subMenu}\"> {{ subMenu.label }} </div> </a> </div> </div> </div> </div> </div> </div> </nav> </div> "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef"},{"__symbolic":"reference","module":"@angular/common","name":"Location"},{"__symbolic":"reference","module":"@angular/router","name":"Router"}]}],"ngOnInit":[{"__symbolic":"method"}],"validateMenus":[{"__symbolic":"method"}],"clickMenuItem":[{"__symbolic":"method"}],"clickMenuItemGrouped":[{"__symbolic":"method"}],"clickSubMenuItem":[{"__symbolic":"method"}],"toggleMenuMobile":[{"__symbolic":"method"}],"isMenuItemSelected":[{"__symbolic":"method"}],"checkActiveMenuByUrl":[{"__symbolic":"method"}],"checkUrl":[{"__symbolic":"method"}],"setActiveMenuByUrl":[{"__symbolic":"method"}],"executeMenuAction":[{"__symbolic":"method"}],"openExternalLink":[{"__symbolic":"method"}],"isExternalLink":[{"__symbolic":"method"}]}}}}]