keevo-components 1.8.227 → 1.8.229
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/kv-layout/layout/kv-layout.component.mjs +35 -6
- package/esm2022/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.mjs +72 -0
- package/esm2022/lib/components/kv-workspace/kv-workspace.module.mjs +15 -6
- package/esm2022/lib/components/kv-workspace/logo/kv-workspace-logo.component.mjs +22 -0
- package/esm2022/lib/components/kv-workspace/master/kv-workspace-master.component.mjs +63 -0
- package/esm2022/lib/components/kv-workspace/workspace/kv-workspace.component.mjs +61 -0
- package/esm2022/public-api.mjs +2 -2
- package/fesm2022/keevo-components.mjs +179 -102
- package/fesm2022/keevo-components.mjs.map +1 -1
- package/lib/components/kv-layout/layout/kv-layout.component.d.ts +4 -1
- package/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.d.ts +20 -0
- package/lib/components/kv-workspace/kv-workspace.module.d.ts +12 -9
- package/lib/components/kv-workspace/logo/kv-workspace-logo.component.d.ts +11 -0
- package/lib/components/kv-workspace/master/kv-workspace-master.component.d.ts +18 -0
- package/lib/components/kv-workspace/workspace/kv-workspace.component.d.ts +26 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -1
- package/esm2022/lib/components/kv-workspace/kv-workspace.component.mjs +0 -167
- package/lib/components/kv-workspace/kv-workspace.component.d.ts +0 -65
|
@@ -112,6 +112,7 @@ import Quill from 'quill';
|
|
|
112
112
|
import * as i1$5 from 'ngx-loading';
|
|
113
113
|
import { NgxLoadingModule } from 'ngx-loading';
|
|
114
114
|
import { ProgressSpinnerModule } from 'primeng/progressspinner';
|
|
115
|
+
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
115
116
|
import { OrgChart } from 'd3-org-chart';
|
|
116
117
|
import * as d3 from 'd3';
|
|
117
118
|
import * as i7$2 from '@angular/cdk/drag-drop';
|
|
@@ -4531,6 +4532,7 @@ class KvLayoutComponent {
|
|
|
4531
4532
|
this.expandMenuEmit = new EventEmitter();
|
|
4532
4533
|
this.logoutEmit = new EventEmitter();
|
|
4533
4534
|
this.selectAppEmit = new EventEmitter();
|
|
4535
|
+
this.navigateToDefaultRouteEmit = new EventEmitter();
|
|
4534
4536
|
}
|
|
4535
4537
|
accessKeePass(event) {
|
|
4536
4538
|
this.sistemasPanel.hide();
|
|
@@ -4555,7 +4557,7 @@ class KvLayoutComponent {
|
|
|
4555
4557
|
}
|
|
4556
4558
|
callRoute(e, expand) {
|
|
4557
4559
|
if (!expand)
|
|
4558
|
-
!this.expandMenu ? this.expandMenu = !this.expandMenu : '';
|
|
4560
|
+
!this.expandMenu ? (this.expandMenu = !this.expandMenu) : '';
|
|
4559
4561
|
this.router.navigateByUrl(e);
|
|
4560
4562
|
}
|
|
4561
4563
|
changeEmpresa(event) {
|
|
@@ -4586,7 +4588,6 @@ class KvLayoutComponent {
|
|
|
4586
4588
|
if (this.sistemasPanel) {
|
|
4587
4589
|
this.sistemasPanel.hide();
|
|
4588
4590
|
}
|
|
4589
|
-
;
|
|
4590
4591
|
}
|
|
4591
4592
|
nameEmpresa(nomeLicenca) {
|
|
4592
4593
|
if (nomeLicenca) {
|
|
@@ -4664,12 +4665,38 @@ class KvLayoutComponent {
|
|
|
4664
4665
|
verifySelectedPage(link) {
|
|
4665
4666
|
return this.router.url.includes(link);
|
|
4666
4667
|
}
|
|
4668
|
+
navigateToDefaultRoute() {
|
|
4669
|
+
this.navigateToDefaultRouteEmit.emit();
|
|
4670
|
+
}
|
|
4671
|
+
getSidebarState() {
|
|
4672
|
+
return this.expandMenu ? 'expanded' : 'collapsed';
|
|
4673
|
+
}
|
|
4667
4674
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvLayoutComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i2$1.FormBuilder }, { token: i3$1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4668
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvLayoutComponent, selector: "kv-layout", inputs: { apps: "apps", breadCrumbItems: "breadCrumbItems", masters: "masters", menus: "menus", expandMenu: "expandMenu", logoMenuExpand: "logoMenuExpand", logoMenuHide: "logoMenuHide", selectedApp: "selectedApp", selectedEmpresa: "selectedEmpresa", selectedMaster: "selectedMaster", showButtonApps: "showButtonApps", showButtonUser: "showButtonUser", showExpandMenu: "showExpandMenu", showDropdownLicenca: "showDropdownLicenca", showMenu: "showMenu", showTrocaEmpresa: "showTrocaEmpresa", userName: "userName" }, outputs: { accessKeePassEmit: "accessKeePassEmit", changeEmpresaEmit: "changeEmpresaEmit", changeLicenseEmit: "changeLicenseEmit", expandMenuEmit: "expandMenuEmit", logoutEmit: "logoutEmit", selectAppEmit: "selectAppEmit" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, viewQueries: [{ propertyName: "meusDadosPanel", first: true, predicate: ["meusDadosPanel"], descendants: true }, { propertyName: "sidebarRef", first: true, predicate: ["sidebarRef"], descendants: true }, { propertyName: "sistemasPanel", first: true, predicate: ["sistemasPanel"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"flex flex-row overflow-y-hidden w- full-container\">\n\n @if (showMenu) {\n <div [style]=\"{ minWidth: expandMenu ? '300px' : '60px' }\"></div>\n }\n\n @if(showMenu) {\n <p-sidebar\n #sidebarRef\n [visible]=\"true\"\n [showCloseIcon]=\"false\"\n [modal]=\"false\"\n [style]=\"{ width: expandMenu ? '300px' : '60px' }\">\n <ng-template pTemplate=\"headless\">\n <div class=\"flex flex-column mx-1\">\n <div\n class=\"flex flex-column gap-2 justify-content-between flex-shrink-0 mx-2\">\n <div\n class=\"flex flex-row align-items-center {{\n expandMenu ? 'justify-content-between' : 'justify-content-center'\n }} py-3\">\n <!-- Logo para o menu expandido -->\n <img\n *ngIf=\"expandMenu && logoMenuExpand\"\n alt=\"Card\"\n [src]=\"logoMenuExpand\"\n width=\"150\"\n class=\"cursor-pointer\"\n (click)=\"router.navigate(['/keevocenter/home'])\" />\n\n <!-- Logo para o menu minimizado-->\n <img\n *ngIf=\"!expandMenu && logoMenuHide\"\n alt=\"Card\"\n [src]=\"logoMenuExpand\"\n width=\"150\" />\n\n <!-- Toggle menu -->\n <button\n *ngIf=\"showExpandMenu\"\n pButton\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\n (click)=\"toggleMenu()\"\n [pTooltip]=\"expandMenu ? 'Ocultar Menu' : 'Expandir Menu'\"\n [tooltipPosition]=\"'right'\">\n <i class=\"material-symbols-outlined\"> menu </i>\n </button>\n </div>\n\n @if(showTrocaEmpresa){\n <div\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}}\">\n <div\n class=\"flex flex-column cursor-pointer\"\n *ngIf=\"expandMenu && selectedEmpresa\"\n (click)=\"changeEmpresa($event)\">\n <span\n class=\"text-sm font-semibold mr-2\"\n [pTooltip]=\"this.selectedEmpresa.razaosocial\"\n [tooltipPosition]=\"'right'\">\n {{nameEmpresa(this.selectedEmpresa.razaosocial)}}\n </span>\n <span class=\"text-sm mt-1\">{{this.selectedEmpresa.cpfcnpj |\n cpfCnpj }}</span>\n </div>\n\n <button\n pButton\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\n (click)=\"changeEmpresa($event)\"\n [pTooltip]=\"'Trocar de empresa'\"\n [tooltipPosition]=\"'right'\">\n <i class=\"material-symbols-outlined\">\n sync_alt\n </i>\n </button>\n\n </div>\n <p-divider type=\"solid\"></p-divider>\n }\n\n </div>\n\n <div\n class=\"list-none m-0 card-container {{ expandMenu ? 'mx-1' : '' }}\"\n [style.max-height]=\"heightCard - 220 + 'px'\"\n style=\"overflow-y: auto\">\n <!-- menus -->\n <li *ngFor=\"let menu of menus; let i = index\">\n <!-- menu que n\u00E3o tem filho -->\n <a\n (mouseenter)=\"onMouseEnter(i)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n (click)=\"callRoute(menu.link)\"\n *ngIf=\"\n !menu.indmenupai && (!menu.idmenupai || menu.idmenupai == 0)\n \"\n pRipple\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n [tooltipPosition]=\"'right'\"\n class=\"{{\n verifySelectedPage(menu.link) ? 'bg-green-600' : ''\n }} menu-option flex align-items-center no-underline {{\n !expandMenu ? 'justify-content-center' : ''\n }} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\">\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color {{\n verifySelectedPage(menu.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"menu.icone\">\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium {{\n verifySelectedPage(menu.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"expandMenu\">{{ menu.descricaomenu }}</span>\n </a>\n <!-- menu com filho -->\n <div *ngIf=\"menu.indmenupai\">\n <a\n (mouseenter)=\"onMouseEnter(i)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n pRipple\n pStyleClass=\"@next\"\n enterClass=\"hidden\"\n enterActiveClass=\"slidedown\"\n leaveToClass=\"hidden\"\n leaveActiveClass=\"slideup\"\n class=\"menu-option flex align-items-center {{\n !expandMenu\n ? 'justify-content-center'\n : 'justify-content-between'\n }} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\n [tooltipPosition]=\"'right'\"\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n (click)=\"!expandMenu ? (expandMenu = !expandMenu) : ''\">\n <div class=\"flex flex-row align-items-center\">\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color\"\n *ngIf=\"menu.icone\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\">\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium\"\n *ngIf=\"expandMenu\">{{ menu.descricaomenu }}</span>\n </div>\n <i\n class=\"pi pi-chevron-down text-blue-900 mr-1 icon-hover-color\"\n *ngIf=\"expandMenu\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"></i>\n </a>\n\n <!-- filhos -->\n <div\n class=\"list-none py-0 pl-3 pr-0 m-0 hidden overflow-y-hidden transition-all transition-duration-400 transition-ease-in-out\">\n <li\n *ngFor=\"\n let filho of returnMenuChild(menu.idmenu);\n let iFilho = index\n \">\n <a\n (mouseenter)=\"onMouseEnterChild(filho.idmenu)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{\n 'hover-color': mouseOverFilhoIndex === filho.idmenu\n }\"\n *ngIf=\"expandMenu\"\n (click)=\"callRoute(filho.link)\"\n pRipple\n class=\"{{\n verifySelectedPage(filho.link) ? 'bg-green-600' : ''\n }} menu-option flex align-items-center no-underline cursor-pointer border-round text-700 hover:bg-green-600 transition-duration-150 transition-colors p-ripple p-2\">\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color\"\n *ngIf=\"filho.icone\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\">\n {{ filho.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 ml-4 {{\n verifySelectedPage(filho.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"expandMenu\">{{ filho.descricaomenu }}</span>\n </a>\n </li>\n </div>\n </div>\n </li>\n </div>\n </div>\n </ng-template>\n </p-sidebar>\n }\n\n <!-- Topbar -->\n <div class=\"w-auto h-screen page-content overflow-y-hidden\" id=\"page-content\"\n style=\"width: 100vw !important;\">\n <div class=\"flex flex-row align-items-center justify-content-between m-3\">\n <!-- Breadcrumbs -->\n <div>\n <p class=\"text-xl font-semibold text-blue-900 breadcrumb-title\">\n {{ breadCrumbItems[breadCrumbItems.length - 1]?.label }}\n </p>\n <p-breadcrumb\n *ngIf=\"widthCard > 400\"\n styleClass=\"border-none p-0 flex align-items-center h-2rem !important;\"\n [model]=\"breadCrumbItems\"\n [style]=\"{ backgroundColor: '#d4d3d3' }\"\n (onItemClick)=\"callRoute($event.item.routerLink, true)\"></p-breadcrumb>\n </div>\n\n <!-- dropdown para sele\u00E7\u00E3o de empresa/licenca -->\n <dropdown-master\n *ngIf=\"showLicencas()\"\n class=\"w-40rem\"\n formControlName=\"idmaster\"\n [formGroup]=\"formGroup\"\n [masters]=\"masters\"\n (onSelectionChange)=\"changeLicense($event)\"\n (onSelectionValue)=\"changeLicense($event)\">\n </dropdown-master>\n\n <!-- Navega\u00E7\u00E3o de sistemas e usu\u00E1rios -->\n <div class=\"w-auto flex flex-row align-items-center gap-2\">\n <p-button\n *ngIf=\"showButtonApps\"\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\n icon=\"pi pi-th-large\"\n [rounded]=\"true\"\n [text]=\"true\"\n (click)=\"sistemasPanel.toggle($event)\"\n [pTooltip]=\"'Sistemas'\"\n [tooltipPosition]=\"'left'\"></p-button>\n\n <p-button\n *ngIf=\"showButtonUser\"\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\n icon=\"pi pi-user\"\n [rounded]=\"true\"\n [text]=\"true\"\n [pTooltip]=\"'Menu do Usu\u00E1rio'\"\n [tooltipPosition]=\"'left'\"\n (click)=\"meusDadosPanel.toggle($event)\"></p-button>\n </div>\n </div>\n\n <!-- Container -->\n <p-card\n styleClass=\"m-3 border-noround overflow-y-auto {{\n !showMenu && 'sm:overflow-y-hidden'\n }} card-container\"\n [style]=\"{ height: heightCard - adjustHeightCard() + 'px' }\">\n <div class=\"{{widthCard < 992 && 'card-container'}} w-full\" [style]=\"{ width: widthCard + 'px' }\">\n <ng-content></ng-content>\n </div>\n </p-card>\n </div>\n\n <!-- Painel de aplicativos -->\n <p-overlayPanel\n #sistemasPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\">\n <ng-template pTemplate=\"container\">\n <p class=\"title-style mt-3\">Sistemas</p>\n <div\n class=\"flex flex-row flex-wrap gap-2 align-items-center justify-content-center mt-5 mb-3\"\n style=\"width: 250px; height: 100%\">\n <button\n *ngFor=\"let aplicativo of apps\"\n pButton\n pRipple\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\n [pTooltip]=\"aplicativo?.descricaoaplicativo\"\n [tooltipPosition]=\"'left'\"\n (click)=\"selectApp(aplicativo.idaplicativo)\">\n {{ aplicativo.nomeaplicativo.charAt(0).toUpperCase() }}\n </button>\n </div>\n </ng-template>\n </p-overlayPanel>\n\n <!-- Painel do usu\u00E1rio -->\n <p-overlayPanel\n #meusDadosPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\">\n <ng-template pTemplate=\"container\">\n <p class=\"title-style mt-3\">\n Ol\u00E1, {{ userName ? userName.split(\" \")[0] : \"Usu\u00E1rio\" }}!\n </p>\n <div class=\"mt-5 mb-3\"></div>\n\n <p-button\n icon=\"pi pi-lock\"\n label=\"Acessar Keepass\"\n (onClick)=\"accessKeePass($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\">\n </p-button>\n\n <p-button\n icon=\"pi pi-sign-out\"\n label=\"Sair\"\n (onClick)=\"logout($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\">\n </p-button>\n </ng-template>\n </p-overlayPanel>\n</div>\n", styles: [".material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:1em;display:inline-block;width:1em;height:1em;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}::ng-deep .p-button:focus{box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none}::ng-deep .p-overlaypanel .p-overlaypanel-content{padding:0}::ng-deep .hover-btn-cor-padrao.p-button:enabled:hover{background:#0c3e66;border-color:#002542}.p-button.p-button-icon-only.p-button-rounded{background:#0c3e66;border-color:#002542}::ng-deep .remove-focus:focus{border:none}::ng-deep .p-sidebar .p-sidebar-content{padding:0}::ng-deep .sidebar-header-sistema.p-sidebar .p-sidebar-header{padding-top:.5rem;padding-right:0;padding-bottom:0;padding-left:0;display:block}.btn-sistema{display:flex;align-items:center;justify-content:center;background-color:#0c3e66;font-size:20px}::ng-deep .p-sidebar .p-sidebar-header{padding:0rem!important}::ng-deep body{margin:0!important}::ng-deep .p-breadcrumb ul li.p-breadcrumb-chevron{position:relative;top:3px;color:#0c3e66!important}.page-content{background:linear-gradient(to bottom,#d4d3d3 16%,#fff 19%)}*{margin:0}p .item-menu{color:#0c3e66;font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important}span{font-size:.9rem!important}.breadcrumb-title{font-size:1rem!important;font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important}::ng-deep .home-style{background-color:#f5f5f5;overflow:hidden}::ng-deep .page-style{overflow:auto!important}::ng-deep .card-container{overflow-x:hidden}::ng-deep .card-container::-webkit-scrollbar{width:6px}::ng-deep .card-container::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .card-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .card-container:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .card-container::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}.title-style{position:relative;top:10px;margin-left:20px;font-size:25px;color:#002542;border-bottom:2px solid green;font-weight:600;display:inline}::ng-deep p-sidebar .p-sidebar-content{overflow-y:hidden}::ng-deep p-dialog .p-dialog-content{overflow-y:unset}.icon-menu{color:#002542;display:flex;justify-content:center;align-items:center}::ng-deep .padding-style{padding:15px!important}::ng-deep .menu-option{padding:15px 5px!important}::ng-deep .p-breadcrumb .p-breadcrumb-list .p-menuitem-text{color:#183462!important;opacity:.95;font-weight:500;font-size:.8rem!important}::ng-deep .p-breadcrumb .p-breadcrumb-list .p-menuitem-text:hover{opacity:.7}.pl-3{padding-left:0rem!important}::ng-deep svg.p-icon{width:.7rem;height:1rem}.hover-color .text-base,.hover-color .icon-hover-color{color:#fff!important}::ng-deep .p-card .p-card-body{padding:0rem!important}::ng-deep .p-card .p-card-content{padding:0rem!important}::ng-deep .p-sidebar-left{z-index:auto!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5$7.Breadcrumb, selector: "p-breadcrumb", inputs: ["model", "style", "styleClass", "home", "homeAriaLabel"], outputs: ["onItemClick"] }, { kind: "directive", type: i6.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i1$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i8.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: i10.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "component", type: i10$1.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i2.Ripple, selector: "[pRipple]" }, { kind: "component", type: i12.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "directive", type: i13$1.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterClass", "enterFromClass", "enterActiveClass", "enterToClass", "leaveClass", "leaveFromClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape"] }, { kind: "directive", type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: DropdownMasterComponent, selector: "dropdown-master", inputs: ["formControlName", "masters"] }, { kind: "pipe", type: CpfCnpjPipe, name: "cpfCnpj" }] }); }
|
|
4675
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvLayoutComponent, selector: "kv-layout", inputs: { apps: "apps", breadCrumbItems: "breadCrumbItems", masters: "masters", menus: "menus", expandMenu: "expandMenu", logoMenuExpand: "logoMenuExpand", logoMenuHide: "logoMenuHide", selectedApp: "selectedApp", selectedEmpresa: "selectedEmpresa", selectedMaster: "selectedMaster", showButtonApps: "showButtonApps", showButtonUser: "showButtonUser", showExpandMenu: "showExpandMenu", showDropdownLicenca: "showDropdownLicenca", showMenu: "showMenu", showTrocaEmpresa: "showTrocaEmpresa", userName: "userName" }, outputs: { accessKeePassEmit: "accessKeePassEmit", changeEmpresaEmit: "changeEmpresaEmit", changeLicenseEmit: "changeLicenseEmit", expandMenuEmit: "expandMenuEmit", logoutEmit: "logoutEmit", selectAppEmit: "selectAppEmit", navigateToDefaultRouteEmit: "navigateToDefaultRouteEmit" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, viewQueries: [{ propertyName: "meusDadosPanel", first: true, predicate: ["meusDadosPanel"], descendants: true }, { propertyName: "sidebarRef", first: true, predicate: ["sidebarRef"], descendants: true }, { propertyName: "sistemasPanel", first: true, predicate: ["sistemasPanel"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"flex flex-row overflow-y-hidden w- full-container\">\n @if (showMenu) {\n <!-- <div [style]=\"{ minWidth: expandMenu ? '300px' : '60px' }\"></div> -->\n } @if(showMenu) {\n <p-sidebar\n #sidebarRef\n [visible]=\"true\"\n [showCloseIcon]=\"false\"\n [modal]=\"false\"\n [style]=\"{ width: expandMenu ? '300px' : '60px' }\"\n [@sidebarWidthTrigger]=\"getSidebarState()\"\n class=\"sidebar-animation\"\n >\n <ng-template pTemplate=\"headless\">\n <div class=\"flex flex-column mx-1\">\n <div\n class=\"flex flex-column gap-2 justify-content-between flex-shrink-0 mx-2\"\n >\n <div\n class=\"flex {{expandMenu ? 'flex-row' : 'flex-column'}} align-items-center {{\n expandMenu ? 'justify-content-between' : 'justify-content-center'\n }} py-3\"\n >\n <!-- Logo para o menu expandido -->\n <img\n *ngIf=\"expandMenu && logoMenuExpand\"\n alt=\"Card\"\n [src]=\"logoMenuExpand\"\n width=\"150\"\n class=\"cursor-pointer\"\n (click)=\"navigateToDefaultRoute()\"\n />\n\n <!-- Logo para o menu minimizado-->\n <img\n *ngIf=\"!expandMenu && logoMenuHide\"\n alt=\"Card\"\n [src]=\"logoMenuHide\"\n width=\"50\"\n class=\"mb-2\"\n (click)=\"navigateToDefaultRoute()\"\n />\n\n <!-- Toggle menu -->\n <button\n *ngIf=\"showExpandMenu\"\n pButton\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\n (click)=\"toggleMenu()\"\n [pTooltip]=\"expandMenu ? 'Ocultar Menu' : 'Expandir Menu'\"\n [tooltipPosition]=\"'right'\"\n >\n <i class=\"material-symbols-outlined\"> menu </i>\n </button>\n </div>\n\n @if(showTrocaEmpresa){\n <div\n class=\"flex flex-row align-items-center {{\n expandMenu ? 'justify-content-between' : 'justify-content-center'\n }}\"\n >\n <div\n class=\"flex flex-column cursor-pointer\"\n *ngIf=\"expandMenu && selectedEmpresa\"\n (click)=\"changeEmpresa($event)\"\n >\n <span\n class=\"text-sm font-semibold mr-2\"\n [pTooltip]=\"this.selectedEmpresa.razaosocial\"\n [tooltipPosition]=\"'right'\"\n >\n {{ nameEmpresa(this.selectedEmpresa.razaosocial) }}\n </span>\n <span class=\"text-sm mt-1\">{{\n this.selectedEmpresa.cpfcnpj | cpfCnpj\n }}</span>\n </div>\n\n <button\n pButton\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\n (click)=\"changeEmpresa($event)\"\n [pTooltip]=\"'Trocar de empresa'\"\n [tooltipPosition]=\"'right'\"\n >\n <i class=\"material-symbols-outlined\"> sync_alt </i>\n </button>\n </div>\n <p-divider type=\"solid\"></p-divider>\n }\n </div>\n\n <div\n class=\"list-none m-0 card-container {{ expandMenu ? 'mx-1' : '' }}\"\n [style.max-height]=\"heightCard - 220 + 'px'\"\n style=\"overflow-y: auto\"\n >\n <!-- menus -->\n <li *ngFor=\"let menu of menus; let i = index\">\n <!-- menu que n\u00E3o tem filho -->\n <a\n (mouseenter)=\"onMouseEnter(i)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n (click)=\"callRoute(menu.link)\"\n *ngIf=\"\n !menu.indmenupai && (!menu.idmenupai || menu.idmenupai == 0)\n \"\n pRipple\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n [tooltipPosition]=\"'right'\"\n class=\"{{\n verifySelectedPage(menu.link) ? 'bg-green-600' : ''\n }} menu-option flex align-items-center no-underline {{\n !expandMenu ? 'justify-content-center' : ''\n }} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\n >\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color {{\n verifySelectedPage(menu.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"menu.icone\"\n >\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium {{\n verifySelectedPage(menu.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"expandMenu\"\n >{{ menu.descricaomenu }}</span\n >\n </a>\n <!-- menu com filho -->\n <div *ngIf=\"menu.indmenupai\">\n <a\n (mouseenter)=\"onMouseEnter(i)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n pRipple\n pStyleClass=\"@next\"\n enterClass=\"hidden\"\n enterActiveClass=\"slidedown\"\n leaveToClass=\"hidden\"\n leaveActiveClass=\"slideup\"\n class=\"menu-option flex align-items-center {{\n !expandMenu\n ? 'justify-content-center'\n : 'justify-content-between'\n }} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\n [tooltipPosition]=\"'right'\"\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n (click)=\"!expandMenu ? (expandMenu = !expandMenu) : ''\"\n >\n <div class=\"flex flex-row align-items-center\">\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color\"\n *ngIf=\"menu.icone\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n >\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium\"\n *ngIf=\"expandMenu\"\n >{{ menu.descricaomenu }}</span\n >\n </div>\n <i\n class=\"pi pi-chevron-down text-blue-900 mr-1 icon-hover-color\"\n *ngIf=\"expandMenu\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n ></i>\n </a>\n\n <!-- filhos -->\n <div\n class=\"list-none py-0 pl-3 pr-0 m-0 hidden overflow-y-hidden transition-all transition-duration-400 transition-ease-in-out\"\n >\n <li\n *ngFor=\"\n let filho of returnMenuChild(menu.idmenu);\n let iFilho = index\n \"\n >\n <a\n (mouseenter)=\"onMouseEnterChild(filho.idmenu)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{\n 'hover-color': mouseOverFilhoIndex === filho.idmenu\n }\"\n *ngIf=\"expandMenu\"\n (click)=\"callRoute(filho.link)\"\n pRipple\n class=\"{{\n verifySelectedPage(filho.link) ? 'bg-green-600' : ''\n }} menu-option flex align-items-center no-underline cursor-pointer border-round text-700 hover:bg-green-600 transition-duration-150 transition-colors p-ripple p-2\"\n >\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color\"\n *ngIf=\"filho.icone\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n >\n {{ filho.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 ml-4 {{\n verifySelectedPage(filho.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"expandMenu\"\n >{{ filho.descricaomenu }}</span\n >\n </a>\n </li>\n </div>\n </div>\n </li>\n </div>\n </div>\n </ng-template>\n </p-sidebar>\n }\n\n <!-- Topbar -->\n <div\n class=\"w-auto h-screen page-content overflow-y-hidden\"\n id=\"page-content\"\n style=\"width: 100vw !important\"\n >\n <div class=\"flex flex-row align-items-center justify-content-between m-3\">\n\n @if(!showMenu) {\n <!-- Logo home -->\n <div>\n <img [src]=\"logoMenuExpand\" width=\"150\" />\n </div>\n } \n \n @else {\n <!-- Breadcrumbs -->\n <div>\n <p class=\"text-xl font-semibold text-blue-900 breadcrumb-title\">\n {{ breadCrumbItems[breadCrumbItems.length - 1]?.label }}\n </p>\n <p-breadcrumb\n *ngIf=\"widthCard > 400\"\n styleClass=\"border-none p-0 flex align-items-center h-2rem !important;\"\n [model]=\"breadCrumbItems\"\n [style]=\"{ backgroundColor: '#d4d3d3' }\"\n (onItemClick)=\"callRoute($event.item.routerLink, true)\"\n ></p-breadcrumb>\n </div>\n }\n\n <!-- dropdown para sele\u00E7\u00E3o de empresa/licenca -->\n <dropdown-master\n *ngIf=\"showLicencas()\"\n class=\"w-40rem\"\n formControlName=\"idmaster\"\n [formGroup]=\"formGroup\"\n [masters]=\"masters\"\n (onSelectionChange)=\"changeLicense($event)\"\n (onSelectionValue)=\"changeLicense($event)\"\n >\n </dropdown-master>\n\n <!-- Navega\u00E7\u00E3o de sistemas e usu\u00E1rios -->\n <div class=\"w-auto flex flex-row align-items-center gap-2\">\n <p-button\n *ngIf=\"showButtonApps\"\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\n icon=\"pi pi-th-large\"\n [rounded]=\"true\"\n [text]=\"true\"\n (click)=\"sistemasPanel.toggle($event)\"\n [pTooltip]=\"'Sistemas'\"\n [tooltipPosition]=\"'left'\"\n ></p-button>\n\n <p-button\n *ngIf=\"showButtonUser\"\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\n icon=\"pi pi-user\"\n [rounded]=\"true\"\n [text]=\"true\"\n [pTooltip]=\"'Menu do Usu\u00E1rio'\"\n [tooltipPosition]=\"'left'\"\n (click)=\"meusDadosPanel.toggle($event)\"\n ></p-button>\n </div>\n </div>\n\n <!-- Container -->\n <p-card\n styleClass=\"m-3 border-noround overflow-y-auto {{\n !showMenu && 'sm:overflow-y-hidden'\n }} card-container\"\n [style]=\"{ height: heightCard - adjustHeightCard() + 'px' }\"\n >\n <div\n class=\"{{ widthCard < 992 && 'card-container' }} w-full\"\n [style]=\"{ width: widthCard + 'px' }\"\n >\n <ng-content></ng-content>\n </div>\n </p-card>\n </div>\n\n <!-- Painel de aplicativos -->\n <p-overlayPanel\n #sistemasPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\"\n >\n <ng-template pTemplate=\"container\">\n <p class=\"title-style mt-3\">Sistemas</p>\n <div\n class=\"flex flex-row flex-wrap gap-2 align-items-center justify-content-center mt-5 mb-3\"\n style=\"width: 250px; height: 100%\"\n >\n <button\n *ngFor=\"let aplicativo of apps\"\n pButton\n pRipple\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\n [pTooltip]=\"aplicativo?.descricaoaplicativo\"\n [tooltipPosition]=\"'left'\"\n (click)=\"selectApp(aplicativo.idaplicativo)\"\n >\n {{ aplicativo.nomeaplicativo.charAt(0).toUpperCase() }}\n </button>\n </div>\n </ng-template>\n </p-overlayPanel>\n\n <!-- Painel do usu\u00E1rio -->\n <p-overlayPanel\n #meusDadosPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\"\n >\n <ng-template pTemplate=\"container\">\n <p class=\"title-style mt-3\">\n Ol\u00E1, {{ userName ? userName.split(\" \")[0] : \"Usu\u00E1rio\" }}!\n </p>\n <div class=\"mt-5 mb-3\"></div>\n\n <p-button\n icon=\"pi pi-lock\"\n label=\"Acessar Keepass\"\n (onClick)=\"accessKeePass($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\"\n >\n </p-button>\n\n <p-button\n icon=\"pi pi-sign-out\"\n label=\"Sair\"\n (onClick)=\"logout($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\"\n >\n </p-button>\n </ng-template>\n </p-overlayPanel>\n</div>\n", styles: [".material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:1em;display:inline-block;width:1em;height:1em;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}::ng-deep .p-button:focus{box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none}::ng-deep .p-overlaypanel .p-overlaypanel-content{padding:0}::ng-deep .hover-btn-cor-padrao.p-button:enabled:hover{background:#0c3e66;border-color:#002542}.p-button.p-button-icon-only.p-button-rounded{background:#0c3e66;border-color:#002542}::ng-deep .remove-focus:focus{border:none}::ng-deep .p-sidebar .p-sidebar-content{padding:0}::ng-deep .sidebar-header-sistema.p-sidebar .p-sidebar-header{padding-top:.5rem;padding-right:0;padding-bottom:0;padding-left:0;display:block}.btn-sistema{display:flex;align-items:center;justify-content:center;background-color:#0c3e66;font-size:20px}::ng-deep .p-sidebar .p-sidebar-header{padding:0rem!important}::ng-deep body{margin:0!important}::ng-deep .p-breadcrumb ul li.p-breadcrumb-chevron{position:relative;top:3px;color:#0c3e66!important}.page-content{background:linear-gradient(to bottom,#d4d3d3 16%,#fff 19%)}*{margin:0}p .item-menu{color:#0c3e66;font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important}span{font-size:.9rem!important}.breadcrumb-title{font-size:1rem!important;font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important}::ng-deep .home-style{background-color:#f5f5f5;overflow:hidden}::ng-deep .page-style{overflow:auto!important}::ng-deep .card-container{overflow-x:hidden}::ng-deep .card-container::-webkit-scrollbar{width:6px}::ng-deep .card-container::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .card-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .card-container:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .card-container::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}.title-style{position:relative;top:10px;margin-left:20px;font-size:25px;color:#002542;border-bottom:2px solid green;font-weight:600;display:inline}::ng-deep p-sidebar .p-sidebar-content{overflow-y:hidden}::ng-deep p-dialog .p-dialog-content{overflow-y:unset}.icon-menu{color:#002542;display:flex;justify-content:center;align-items:center}::ng-deep .padding-style{padding:15px!important}::ng-deep .menu-option{padding:15px 5px!important}::ng-deep .p-breadcrumb .p-breadcrumb-list .p-menuitem-text{color:#183462!important;opacity:.95;font-weight:500;font-size:.8rem!important}::ng-deep .p-breadcrumb .p-breadcrumb-list .p-menuitem-text:hover{opacity:.7}.pl-3{padding-left:0rem!important}::ng-deep svg.p-icon{width:.7rem;height:1rem}.hover-color .text-base,.hover-color .icon-hover-color{color:#fff!important}::ng-deep .p-card .p-card-body{padding:0rem!important}::ng-deep .p-card .p-card-content{padding:0rem!important}::ng-deep .p-sidebar-left{z-index:auto!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5$7.Breadcrumb, selector: "p-breadcrumb", inputs: ["model", "style", "styleClass", "home", "homeAriaLabel"], outputs: ["onItemClick"] }, { kind: "directive", type: i6.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i1$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i8.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: i10.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "component", type: i10$1.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i2.Ripple, selector: "[pRipple]" }, { kind: "component", type: i12.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "directive", type: i13$1.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterClass", "enterFromClass", "enterActiveClass", "enterToClass", "leaveClass", "leaveFromClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape"] }, { kind: "directive", type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: DropdownMasterComponent, selector: "dropdown-master", inputs: ["formControlName", "masters"] }, { kind: "pipe", type: CpfCnpjPipe, name: "cpfCnpj" }], animations: [
|
|
4676
|
+
trigger('sidebarWidthTrigger', [
|
|
4677
|
+
state('collapsed', style({
|
|
4678
|
+
width: '60px'
|
|
4679
|
+
})),
|
|
4680
|
+
state('expanded', style({
|
|
4681
|
+
width: '359px'
|
|
4682
|
+
})),
|
|
4683
|
+
transition('collapsed <=> expanded', animate('300ms ease-out'))
|
|
4684
|
+
])
|
|
4685
|
+
] }); }
|
|
4669
4686
|
}
|
|
4670
4687
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvLayoutComponent, decorators: [{
|
|
4671
4688
|
type: Component,
|
|
4672
|
-
args: [{ selector: 'kv-layout', template: "<div class=\"flex flex-row overflow-y-hidden w- full-container\">\n\n @if (showMenu) {\n <div [style]=\"{ minWidth: expandMenu ? '300px' : '60px' }\"></div>\n }\n\n @if(showMenu) {\n <p-sidebar\n #sidebarRef\n [visible]=\"true\"\n [showCloseIcon]=\"false\"\n [modal]=\"false\"\n [style]=\"{ width: expandMenu ? '300px' : '60px' }\">\n <ng-template pTemplate=\"headless\">\n <div class=\"flex flex-column mx-1\">\n <div\n class=\"flex flex-column gap-2 justify-content-between flex-shrink-0 mx-2\">\n <div\n class=\"flex flex-row align-items-center {{\n expandMenu ? 'justify-content-between' : 'justify-content-center'\n }} py-3\">\n <!-- Logo para o menu expandido -->\n <img\n *ngIf=\"expandMenu && logoMenuExpand\"\n alt=\"Card\"\n [src]=\"logoMenuExpand\"\n width=\"150\"\n class=\"cursor-pointer\"\n (click)=\"router.navigate(['/keevocenter/home'])\" />\n\n <!-- Logo para o menu minimizado-->\n <img\n *ngIf=\"!expandMenu && logoMenuHide\"\n alt=\"Card\"\n [src]=\"logoMenuExpand\"\n width=\"150\" />\n\n <!-- Toggle menu -->\n <button\n *ngIf=\"showExpandMenu\"\n pButton\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\n (click)=\"toggleMenu()\"\n [pTooltip]=\"expandMenu ? 'Ocultar Menu' : 'Expandir Menu'\"\n [tooltipPosition]=\"'right'\">\n <i class=\"material-symbols-outlined\"> menu </i>\n </button>\n </div>\n\n @if(showTrocaEmpresa){\n <div\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}}\">\n <div\n class=\"flex flex-column cursor-pointer\"\n *ngIf=\"expandMenu && selectedEmpresa\"\n (click)=\"changeEmpresa($event)\">\n <span\n class=\"text-sm font-semibold mr-2\"\n [pTooltip]=\"this.selectedEmpresa.razaosocial\"\n [tooltipPosition]=\"'right'\">\n {{nameEmpresa(this.selectedEmpresa.razaosocial)}}\n </span>\n <span class=\"text-sm mt-1\">{{this.selectedEmpresa.cpfcnpj |\n cpfCnpj }}</span>\n </div>\n\n <button\n pButton\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\n (click)=\"changeEmpresa($event)\"\n [pTooltip]=\"'Trocar de empresa'\"\n [tooltipPosition]=\"'right'\">\n <i class=\"material-symbols-outlined\">\n sync_alt\n </i>\n </button>\n\n </div>\n <p-divider type=\"solid\"></p-divider>\n }\n\n </div>\n\n <div\n class=\"list-none m-0 card-container {{ expandMenu ? 'mx-1' : '' }}\"\n [style.max-height]=\"heightCard - 220 + 'px'\"\n style=\"overflow-y: auto\">\n <!-- menus -->\n <li *ngFor=\"let menu of menus; let i = index\">\n <!-- menu que n\u00E3o tem filho -->\n <a\n (mouseenter)=\"onMouseEnter(i)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n (click)=\"callRoute(menu.link)\"\n *ngIf=\"\n !menu.indmenupai && (!menu.idmenupai || menu.idmenupai == 0)\n \"\n pRipple\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n [tooltipPosition]=\"'right'\"\n class=\"{{\n verifySelectedPage(menu.link) ? 'bg-green-600' : ''\n }} menu-option flex align-items-center no-underline {{\n !expandMenu ? 'justify-content-center' : ''\n }} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\">\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color {{\n verifySelectedPage(menu.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"menu.icone\">\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium {{\n verifySelectedPage(menu.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"expandMenu\">{{ menu.descricaomenu }}</span>\n </a>\n <!-- menu com filho -->\n <div *ngIf=\"menu.indmenupai\">\n <a\n (mouseenter)=\"onMouseEnter(i)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n pRipple\n pStyleClass=\"@next\"\n enterClass=\"hidden\"\n enterActiveClass=\"slidedown\"\n leaveToClass=\"hidden\"\n leaveActiveClass=\"slideup\"\n class=\"menu-option flex align-items-center {{\n !expandMenu\n ? 'justify-content-center'\n : 'justify-content-between'\n }} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\n [tooltipPosition]=\"'right'\"\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n (click)=\"!expandMenu ? (expandMenu = !expandMenu) : ''\">\n <div class=\"flex flex-row align-items-center\">\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color\"\n *ngIf=\"menu.icone\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\">\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium\"\n *ngIf=\"expandMenu\">{{ menu.descricaomenu }}</span>\n </div>\n <i\n class=\"pi pi-chevron-down text-blue-900 mr-1 icon-hover-color\"\n *ngIf=\"expandMenu\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"></i>\n </a>\n\n <!-- filhos -->\n <div\n class=\"list-none py-0 pl-3 pr-0 m-0 hidden overflow-y-hidden transition-all transition-duration-400 transition-ease-in-out\">\n <li\n *ngFor=\"\n let filho of returnMenuChild(menu.idmenu);\n let iFilho = index\n \">\n <a\n (mouseenter)=\"onMouseEnterChild(filho.idmenu)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{\n 'hover-color': mouseOverFilhoIndex === filho.idmenu\n }\"\n *ngIf=\"expandMenu\"\n (click)=\"callRoute(filho.link)\"\n pRipple\n class=\"{{\n verifySelectedPage(filho.link) ? 'bg-green-600' : ''\n }} menu-option flex align-items-center no-underline cursor-pointer border-round text-700 hover:bg-green-600 transition-duration-150 transition-colors p-ripple p-2\">\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color\"\n *ngIf=\"filho.icone\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\">\n {{ filho.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 ml-4 {{\n verifySelectedPage(filho.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"expandMenu\">{{ filho.descricaomenu }}</span>\n </a>\n </li>\n </div>\n </div>\n </li>\n </div>\n </div>\n </ng-template>\n </p-sidebar>\n }\n\n <!-- Topbar -->\n <div class=\"w-auto h-screen page-content overflow-y-hidden\" id=\"page-content\"\n style=\"width: 100vw !important;\">\n <div class=\"flex flex-row align-items-center justify-content-between m-3\">\n <!-- Breadcrumbs -->\n <div>\n <p class=\"text-xl font-semibold text-blue-900 breadcrumb-title\">\n {{ breadCrumbItems[breadCrumbItems.length - 1]?.label }}\n </p>\n <p-breadcrumb\n *ngIf=\"widthCard > 400\"\n styleClass=\"border-none p-0 flex align-items-center h-2rem !important;\"\n [model]=\"breadCrumbItems\"\n [style]=\"{ backgroundColor: '#d4d3d3' }\"\n (onItemClick)=\"callRoute($event.item.routerLink, true)\"></p-breadcrumb>\n </div>\n\n <!-- dropdown para sele\u00E7\u00E3o de empresa/licenca -->\n <dropdown-master\n *ngIf=\"showLicencas()\"\n class=\"w-40rem\"\n formControlName=\"idmaster\"\n [formGroup]=\"formGroup\"\n [masters]=\"masters\"\n (onSelectionChange)=\"changeLicense($event)\"\n (onSelectionValue)=\"changeLicense($event)\">\n </dropdown-master>\n\n <!-- Navega\u00E7\u00E3o de sistemas e usu\u00E1rios -->\n <div class=\"w-auto flex flex-row align-items-center gap-2\">\n <p-button\n *ngIf=\"showButtonApps\"\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\n icon=\"pi pi-th-large\"\n [rounded]=\"true\"\n [text]=\"true\"\n (click)=\"sistemasPanel.toggle($event)\"\n [pTooltip]=\"'Sistemas'\"\n [tooltipPosition]=\"'left'\"></p-button>\n\n <p-button\n *ngIf=\"showButtonUser\"\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\n icon=\"pi pi-user\"\n [rounded]=\"true\"\n [text]=\"true\"\n [pTooltip]=\"'Menu do Usu\u00E1rio'\"\n [tooltipPosition]=\"'left'\"\n (click)=\"meusDadosPanel.toggle($event)\"></p-button>\n </div>\n </div>\n\n <!-- Container -->\n <p-card\n styleClass=\"m-3 border-noround overflow-y-auto {{\n !showMenu && 'sm:overflow-y-hidden'\n }} card-container\"\n [style]=\"{ height: heightCard - adjustHeightCard() + 'px' }\">\n <div class=\"{{widthCard < 992 && 'card-container'}} w-full\" [style]=\"{ width: widthCard + 'px' }\">\n <ng-content></ng-content>\n </div>\n </p-card>\n </div>\n\n <!-- Painel de aplicativos -->\n <p-overlayPanel\n #sistemasPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\">\n <ng-template pTemplate=\"container\">\n <p class=\"title-style mt-3\">Sistemas</p>\n <div\n class=\"flex flex-row flex-wrap gap-2 align-items-center justify-content-center mt-5 mb-3\"\n style=\"width: 250px; height: 100%\">\n <button\n *ngFor=\"let aplicativo of apps\"\n pButton\n pRipple\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\n [pTooltip]=\"aplicativo?.descricaoaplicativo\"\n [tooltipPosition]=\"'left'\"\n (click)=\"selectApp(aplicativo.idaplicativo)\">\n {{ aplicativo.nomeaplicativo.charAt(0).toUpperCase() }}\n </button>\n </div>\n </ng-template>\n </p-overlayPanel>\n\n <!-- Painel do usu\u00E1rio -->\n <p-overlayPanel\n #meusDadosPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\">\n <ng-template pTemplate=\"container\">\n <p class=\"title-style mt-3\">\n Ol\u00E1, {{ userName ? userName.split(\" \")[0] : \"Usu\u00E1rio\" }}!\n </p>\n <div class=\"mt-5 mb-3\"></div>\n\n <p-button\n icon=\"pi pi-lock\"\n label=\"Acessar Keepass\"\n (onClick)=\"accessKeePass($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\">\n </p-button>\n\n <p-button\n icon=\"pi pi-sign-out\"\n label=\"Sair\"\n (onClick)=\"logout($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\">\n </p-button>\n </ng-template>\n </p-overlayPanel>\n</div>\n", styles: [".material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:1em;display:inline-block;width:1em;height:1em;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}::ng-deep .p-button:focus{box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none}::ng-deep .p-overlaypanel .p-overlaypanel-content{padding:0}::ng-deep .hover-btn-cor-padrao.p-button:enabled:hover{background:#0c3e66;border-color:#002542}.p-button.p-button-icon-only.p-button-rounded{background:#0c3e66;border-color:#002542}::ng-deep .remove-focus:focus{border:none}::ng-deep .p-sidebar .p-sidebar-content{padding:0}::ng-deep .sidebar-header-sistema.p-sidebar .p-sidebar-header{padding-top:.5rem;padding-right:0;padding-bottom:0;padding-left:0;display:block}.btn-sistema{display:flex;align-items:center;justify-content:center;background-color:#0c3e66;font-size:20px}::ng-deep .p-sidebar .p-sidebar-header{padding:0rem!important}::ng-deep body{margin:0!important}::ng-deep .p-breadcrumb ul li.p-breadcrumb-chevron{position:relative;top:3px;color:#0c3e66!important}.page-content{background:linear-gradient(to bottom,#d4d3d3 16%,#fff 19%)}*{margin:0}p .item-menu{color:#0c3e66;font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important}span{font-size:.9rem!important}.breadcrumb-title{font-size:1rem!important;font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important}::ng-deep .home-style{background-color:#f5f5f5;overflow:hidden}::ng-deep .page-style{overflow:auto!important}::ng-deep .card-container{overflow-x:hidden}::ng-deep .card-container::-webkit-scrollbar{width:6px}::ng-deep .card-container::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .card-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .card-container:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .card-container::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}.title-style{position:relative;top:10px;margin-left:20px;font-size:25px;color:#002542;border-bottom:2px solid green;font-weight:600;display:inline}::ng-deep p-sidebar .p-sidebar-content{overflow-y:hidden}::ng-deep p-dialog .p-dialog-content{overflow-y:unset}.icon-menu{color:#002542;display:flex;justify-content:center;align-items:center}::ng-deep .padding-style{padding:15px!important}::ng-deep .menu-option{padding:15px 5px!important}::ng-deep .p-breadcrumb .p-breadcrumb-list .p-menuitem-text{color:#183462!important;opacity:.95;font-weight:500;font-size:.8rem!important}::ng-deep .p-breadcrumb .p-breadcrumb-list .p-menuitem-text:hover{opacity:.7}.pl-3{padding-left:0rem!important}::ng-deep svg.p-icon{width:.7rem;height:1rem}.hover-color .text-base,.hover-color .icon-hover-color{color:#fff!important}::ng-deep .p-card .p-card-body{padding:0rem!important}::ng-deep .p-card .p-card-content{padding:0rem!important}::ng-deep .p-sidebar-left{z-index:auto!important}\n"] }]
|
|
4689
|
+
args: [{ selector: 'kv-layout', animations: [
|
|
4690
|
+
trigger('sidebarWidthTrigger', [
|
|
4691
|
+
state('collapsed', style({
|
|
4692
|
+
width: '60px'
|
|
4693
|
+
})),
|
|
4694
|
+
state('expanded', style({
|
|
4695
|
+
width: '359px'
|
|
4696
|
+
})),
|
|
4697
|
+
transition('collapsed <=> expanded', animate('300ms ease-out'))
|
|
4698
|
+
])
|
|
4699
|
+
], template: "<div class=\"flex flex-row overflow-y-hidden w- full-container\">\n @if (showMenu) {\n <!-- <div [style]=\"{ minWidth: expandMenu ? '300px' : '60px' }\"></div> -->\n } @if(showMenu) {\n <p-sidebar\n #sidebarRef\n [visible]=\"true\"\n [showCloseIcon]=\"false\"\n [modal]=\"false\"\n [style]=\"{ width: expandMenu ? '300px' : '60px' }\"\n [@sidebarWidthTrigger]=\"getSidebarState()\"\n class=\"sidebar-animation\"\n >\n <ng-template pTemplate=\"headless\">\n <div class=\"flex flex-column mx-1\">\n <div\n class=\"flex flex-column gap-2 justify-content-between flex-shrink-0 mx-2\"\n >\n <div\n class=\"flex {{expandMenu ? 'flex-row' : 'flex-column'}} align-items-center {{\n expandMenu ? 'justify-content-between' : 'justify-content-center'\n }} py-3\"\n >\n <!-- Logo para o menu expandido -->\n <img\n *ngIf=\"expandMenu && logoMenuExpand\"\n alt=\"Card\"\n [src]=\"logoMenuExpand\"\n width=\"150\"\n class=\"cursor-pointer\"\n (click)=\"navigateToDefaultRoute()\"\n />\n\n <!-- Logo para o menu minimizado-->\n <img\n *ngIf=\"!expandMenu && logoMenuHide\"\n alt=\"Card\"\n [src]=\"logoMenuHide\"\n width=\"50\"\n class=\"mb-2\"\n (click)=\"navigateToDefaultRoute()\"\n />\n\n <!-- Toggle menu -->\n <button\n *ngIf=\"showExpandMenu\"\n pButton\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\n (click)=\"toggleMenu()\"\n [pTooltip]=\"expandMenu ? 'Ocultar Menu' : 'Expandir Menu'\"\n [tooltipPosition]=\"'right'\"\n >\n <i class=\"material-symbols-outlined\"> menu </i>\n </button>\n </div>\n\n @if(showTrocaEmpresa){\n <div\n class=\"flex flex-row align-items-center {{\n expandMenu ? 'justify-content-between' : 'justify-content-center'\n }}\"\n >\n <div\n class=\"flex flex-column cursor-pointer\"\n *ngIf=\"expandMenu && selectedEmpresa\"\n (click)=\"changeEmpresa($event)\"\n >\n <span\n class=\"text-sm font-semibold mr-2\"\n [pTooltip]=\"this.selectedEmpresa.razaosocial\"\n [tooltipPosition]=\"'right'\"\n >\n {{ nameEmpresa(this.selectedEmpresa.razaosocial) }}\n </span>\n <span class=\"text-sm mt-1\">{{\n this.selectedEmpresa.cpfcnpj | cpfCnpj\n }}</span>\n </div>\n\n <button\n pButton\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\n (click)=\"changeEmpresa($event)\"\n [pTooltip]=\"'Trocar de empresa'\"\n [tooltipPosition]=\"'right'\"\n >\n <i class=\"material-symbols-outlined\"> sync_alt </i>\n </button>\n </div>\n <p-divider type=\"solid\"></p-divider>\n }\n </div>\n\n <div\n class=\"list-none m-0 card-container {{ expandMenu ? 'mx-1' : '' }}\"\n [style.max-height]=\"heightCard - 220 + 'px'\"\n style=\"overflow-y: auto\"\n >\n <!-- menus -->\n <li *ngFor=\"let menu of menus; let i = index\">\n <!-- menu que n\u00E3o tem filho -->\n <a\n (mouseenter)=\"onMouseEnter(i)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n (click)=\"callRoute(menu.link)\"\n *ngIf=\"\n !menu.indmenupai && (!menu.idmenupai || menu.idmenupai == 0)\n \"\n pRipple\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n [tooltipPosition]=\"'right'\"\n class=\"{{\n verifySelectedPage(menu.link) ? 'bg-green-600' : ''\n }} menu-option flex align-items-center no-underline {{\n !expandMenu ? 'justify-content-center' : ''\n }} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\n >\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color {{\n verifySelectedPage(menu.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"menu.icone\"\n >\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium {{\n verifySelectedPage(menu.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"expandMenu\"\n >{{ menu.descricaomenu }}</span\n >\n </a>\n <!-- menu com filho -->\n <div *ngIf=\"menu.indmenupai\">\n <a\n (mouseenter)=\"onMouseEnter(i)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n pRipple\n pStyleClass=\"@next\"\n enterClass=\"hidden\"\n enterActiveClass=\"slidedown\"\n leaveToClass=\"hidden\"\n leaveActiveClass=\"slideup\"\n class=\"menu-option flex align-items-center {{\n !expandMenu\n ? 'justify-content-center'\n : 'justify-content-between'\n }} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\n [tooltipPosition]=\"'right'\"\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n (click)=\"!expandMenu ? (expandMenu = !expandMenu) : ''\"\n >\n <div class=\"flex flex-row align-items-center\">\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color\"\n *ngIf=\"menu.icone\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n >\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium\"\n *ngIf=\"expandMenu\"\n >{{ menu.descricaomenu }}</span\n >\n </div>\n <i\n class=\"pi pi-chevron-down text-blue-900 mr-1 icon-hover-color\"\n *ngIf=\"expandMenu\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n ></i>\n </a>\n\n <!-- filhos -->\n <div\n class=\"list-none py-0 pl-3 pr-0 m-0 hidden overflow-y-hidden transition-all transition-duration-400 transition-ease-in-out\"\n >\n <li\n *ngFor=\"\n let filho of returnMenuChild(menu.idmenu);\n let iFilho = index\n \"\n >\n <a\n (mouseenter)=\"onMouseEnterChild(filho.idmenu)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{\n 'hover-color': mouseOverFilhoIndex === filho.idmenu\n }\"\n *ngIf=\"expandMenu\"\n (click)=\"callRoute(filho.link)\"\n pRipple\n class=\"{{\n verifySelectedPage(filho.link) ? 'bg-green-600' : ''\n }} menu-option flex align-items-center no-underline cursor-pointer border-round text-700 hover:bg-green-600 transition-duration-150 transition-colors p-ripple p-2\"\n >\n <i\n class=\"material-symbols-outlined icon-menu {{\n expandMenu ? 'ml-1 mr-2' : ''\n }} icon-hover-color\"\n *ngIf=\"filho.icone\"\n [ngClass]=\"{ 'hover-color': mouseOverIndex === i }\"\n >\n {{ filho.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 ml-4 {{\n verifySelectedPage(filho.link) ? 'text-white' : ''\n }}\"\n *ngIf=\"expandMenu\"\n >{{ filho.descricaomenu }}</span\n >\n </a>\n </li>\n </div>\n </div>\n </li>\n </div>\n </div>\n </ng-template>\n </p-sidebar>\n }\n\n <!-- Topbar -->\n <div\n class=\"w-auto h-screen page-content overflow-y-hidden\"\n id=\"page-content\"\n style=\"width: 100vw !important\"\n >\n <div class=\"flex flex-row align-items-center justify-content-between m-3\">\n\n @if(!showMenu) {\n <!-- Logo home -->\n <div>\n <img [src]=\"logoMenuExpand\" width=\"150\" />\n </div>\n } \n \n @else {\n <!-- Breadcrumbs -->\n <div>\n <p class=\"text-xl font-semibold text-blue-900 breadcrumb-title\">\n {{ breadCrumbItems[breadCrumbItems.length - 1]?.label }}\n </p>\n <p-breadcrumb\n *ngIf=\"widthCard > 400\"\n styleClass=\"border-none p-0 flex align-items-center h-2rem !important;\"\n [model]=\"breadCrumbItems\"\n [style]=\"{ backgroundColor: '#d4d3d3' }\"\n (onItemClick)=\"callRoute($event.item.routerLink, true)\"\n ></p-breadcrumb>\n </div>\n }\n\n <!-- dropdown para sele\u00E7\u00E3o de empresa/licenca -->\n <dropdown-master\n *ngIf=\"showLicencas()\"\n class=\"w-40rem\"\n formControlName=\"idmaster\"\n [formGroup]=\"formGroup\"\n [masters]=\"masters\"\n (onSelectionChange)=\"changeLicense($event)\"\n (onSelectionValue)=\"changeLicense($event)\"\n >\n </dropdown-master>\n\n <!-- Navega\u00E7\u00E3o de sistemas e usu\u00E1rios -->\n <div class=\"w-auto flex flex-row align-items-center gap-2\">\n <p-button\n *ngIf=\"showButtonApps\"\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\n icon=\"pi pi-th-large\"\n [rounded]=\"true\"\n [text]=\"true\"\n (click)=\"sistemasPanel.toggle($event)\"\n [pTooltip]=\"'Sistemas'\"\n [tooltipPosition]=\"'left'\"\n ></p-button>\n\n <p-button\n *ngIf=\"showButtonUser\"\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\n icon=\"pi pi-user\"\n [rounded]=\"true\"\n [text]=\"true\"\n [pTooltip]=\"'Menu do Usu\u00E1rio'\"\n [tooltipPosition]=\"'left'\"\n (click)=\"meusDadosPanel.toggle($event)\"\n ></p-button>\n </div>\n </div>\n\n <!-- Container -->\n <p-card\n styleClass=\"m-3 border-noround overflow-y-auto {{\n !showMenu && 'sm:overflow-y-hidden'\n }} card-container\"\n [style]=\"{ height: heightCard - adjustHeightCard() + 'px' }\"\n >\n <div\n class=\"{{ widthCard < 992 && 'card-container' }} w-full\"\n [style]=\"{ width: widthCard + 'px' }\"\n >\n <ng-content></ng-content>\n </div>\n </p-card>\n </div>\n\n <!-- Painel de aplicativos -->\n <p-overlayPanel\n #sistemasPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\"\n >\n <ng-template pTemplate=\"container\">\n <p class=\"title-style mt-3\">Sistemas</p>\n <div\n class=\"flex flex-row flex-wrap gap-2 align-items-center justify-content-center mt-5 mb-3\"\n style=\"width: 250px; height: 100%\"\n >\n <button\n *ngFor=\"let aplicativo of apps\"\n pButton\n pRipple\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\n [pTooltip]=\"aplicativo?.descricaoaplicativo\"\n [tooltipPosition]=\"'left'\"\n (click)=\"selectApp(aplicativo.idaplicativo)\"\n >\n {{ aplicativo.nomeaplicativo.charAt(0).toUpperCase() }}\n </button>\n </div>\n </ng-template>\n </p-overlayPanel>\n\n <!-- Painel do usu\u00E1rio -->\n <p-overlayPanel\n #meusDadosPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\"\n >\n <ng-template pTemplate=\"container\">\n <p class=\"title-style mt-3\">\n Ol\u00E1, {{ userName ? userName.split(\" \")[0] : \"Usu\u00E1rio\" }}!\n </p>\n <div class=\"mt-5 mb-3\"></div>\n\n <p-button\n icon=\"pi pi-lock\"\n label=\"Acessar Keepass\"\n (onClick)=\"accessKeePass($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\"\n >\n </p-button>\n\n <p-button\n icon=\"pi pi-sign-out\"\n label=\"Sair\"\n (onClick)=\"logout($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\"\n >\n </p-button>\n </ng-template>\n </p-overlayPanel>\n</div>\n", styles: [".material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:1em;display:inline-block;width:1em;height:1em;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}::ng-deep .p-button:focus{box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none}::ng-deep .p-overlaypanel .p-overlaypanel-content{padding:0}::ng-deep .hover-btn-cor-padrao.p-button:enabled:hover{background:#0c3e66;border-color:#002542}.p-button.p-button-icon-only.p-button-rounded{background:#0c3e66;border-color:#002542}::ng-deep .remove-focus:focus{border:none}::ng-deep .p-sidebar .p-sidebar-content{padding:0}::ng-deep .sidebar-header-sistema.p-sidebar .p-sidebar-header{padding-top:.5rem;padding-right:0;padding-bottom:0;padding-left:0;display:block}.btn-sistema{display:flex;align-items:center;justify-content:center;background-color:#0c3e66;font-size:20px}::ng-deep .p-sidebar .p-sidebar-header{padding:0rem!important}::ng-deep body{margin:0!important}::ng-deep .p-breadcrumb ul li.p-breadcrumb-chevron{position:relative;top:3px;color:#0c3e66!important}.page-content{background:linear-gradient(to bottom,#d4d3d3 16%,#fff 19%)}*{margin:0}p .item-menu{color:#0c3e66;font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important}span{font-size:.9rem!important}.breadcrumb-title{font-size:1rem!important;font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important}::ng-deep .home-style{background-color:#f5f5f5;overflow:hidden}::ng-deep .page-style{overflow:auto!important}::ng-deep .card-container{overflow-x:hidden}::ng-deep .card-container::-webkit-scrollbar{width:6px}::ng-deep .card-container::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .card-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .card-container:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .card-container::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}.title-style{position:relative;top:10px;margin-left:20px;font-size:25px;color:#002542;border-bottom:2px solid green;font-weight:600;display:inline}::ng-deep p-sidebar .p-sidebar-content{overflow-y:hidden}::ng-deep p-dialog .p-dialog-content{overflow-y:unset}.icon-menu{color:#002542;display:flex;justify-content:center;align-items:center}::ng-deep .padding-style{padding:15px!important}::ng-deep .menu-option{padding:15px 5px!important}::ng-deep .p-breadcrumb .p-breadcrumb-list .p-menuitem-text{color:#183462!important;opacity:.95;font-weight:500;font-size:.8rem!important}::ng-deep .p-breadcrumb .p-breadcrumb-list .p-menuitem-text:hover{opacity:.7}.pl-3{padding-left:0rem!important}::ng-deep svg.p-icon{width:.7rem;height:1rem}.hover-color .text-base,.hover-color .icon-hover-color{color:#fff!important}::ng-deep .p-card .p-card-body{padding:0rem!important}::ng-deep .p-card .p-card-content{padding:0rem!important}::ng-deep .p-sidebar-left{z-index:auto!important}\n"] }]
|
|
4673
4700
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i2$1.FormBuilder }, { type: i3$1.Router }], propDecorators: { apps: [{
|
|
4674
4701
|
type: Input
|
|
4675
4702
|
}], breadCrumbItems: [{
|
|
@@ -4716,6 +4743,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
4716
4743
|
type: Output
|
|
4717
4744
|
}], selectAppEmit: [{
|
|
4718
4745
|
type: Output
|
|
4746
|
+
}], navigateToDefaultRouteEmit: [{
|
|
4747
|
+
type: Output
|
|
4719
4748
|
}], meusDadosPanel: [{
|
|
4720
4749
|
type: ViewChild,
|
|
4721
4750
|
args: ['meusDadosPanel']
|
|
@@ -6104,60 +6133,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
6104
6133
|
}]
|
|
6105
6134
|
}] });
|
|
6106
6135
|
|
|
6107
|
-
class
|
|
6136
|
+
class WokspaceLogoComponent {
|
|
6108
6137
|
constructor() {
|
|
6109
|
-
/**
|
|
6110
|
-
* Nome do usuário logado
|
|
6111
|
-
*/
|
|
6112
6138
|
this.nomeUsuario = 'Nome do Usuário Logado';
|
|
6113
|
-
|
|
6114
|
-
|
|
6115
|
-
|
|
6116
|
-
|
|
6117
|
-
|
|
6118
|
-
|
|
6119
|
-
|
|
6120
|
-
|
|
6121
|
-
|
|
6122
|
-
|
|
6123
|
-
|
|
6124
|
-
|
|
6125
|
-
|
|
6126
|
-
|
|
6127
|
-
|
|
6128
|
-
|
|
6129
|
-
|
|
6130
|
-
|
|
6131
|
-
|
|
6132
|
-
this.
|
|
6133
|
-
|
|
6134
|
-
this.
|
|
6135
|
-
this.
|
|
6136
|
-
|
|
6137
|
-
|
|
6138
|
-
this.
|
|
6139
|
-
}
|
|
6140
|
-
|
|
6141
|
-
this.
|
|
6142
|
-
}
|
|
6143
|
-
|
|
6144
|
-
this.
|
|
6145
|
-
|
|
6146
|
-
columnConfigTableMaster() {
|
|
6147
|
-
this.dataSourceMaster = this.masters;
|
|
6148
|
-
this.tableConfigMaster = {
|
|
6149
|
-
lazy: false,
|
|
6139
|
+
}
|
|
6140
|
+
ngOnInit() {
|
|
6141
|
+
}
|
|
6142
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WokspaceLogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6143
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: WokspaceLogoComponent, selector: "kv-workspace-logo", inputs: { imgLogoKeevoCenter: "imgLogoKeevoCenter", nomeUsuario: "nomeUsuario", masterSelecionada: "masterSelecionada" }, ngImport: i0, template: "<div class=\"field col-12 flex justify-content-center mb-1\">\n <img [src]=\"imgLogoKeevoCenter\" style=\"width: 200px\" />\n</div>\n\n<div class=\"col-12 align-items-center z-5\">\n <div class=\"col-9\">\n Ol\u00E1, <b>{{ nomeUsuario }}.</b> Bem-vindo(a)!\n </div>\n\n @if(!masterSelecionada){\n <b class=\"field col-9 flex\">\n Escolha qual workspace voc\u00EA deseja acessar:\n </b>\n }\n @else {\n <b class=\"field col-9 flex\">\n Escolha qual empresa voc\u00EA deseja acessar:\n </b>\n }\n</div>", styles: [""] }); }
|
|
6144
|
+
}
|
|
6145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WokspaceLogoComponent, decorators: [{
|
|
6146
|
+
type: Component,
|
|
6147
|
+
args: [{ selector: 'kv-workspace-logo', template: "<div class=\"field col-12 flex justify-content-center mb-1\">\n <img [src]=\"imgLogoKeevoCenter\" style=\"width: 200px\" />\n</div>\n\n<div class=\"col-12 align-items-center z-5\">\n <div class=\"col-9\">\n Ol\u00E1, <b>{{ nomeUsuario }}.</b> Bem-vindo(a)!\n </div>\n\n @if(!masterSelecionada){\n <b class=\"field col-9 flex\">\n Escolha qual workspace voc\u00EA deseja acessar:\n </b>\n }\n @else {\n <b class=\"field col-9 flex\">\n Escolha qual empresa voc\u00EA deseja acessar:\n </b>\n }\n</div>" }]
|
|
6148
|
+
}], ctorParameters: () => [], propDecorators: { imgLogoKeevoCenter: [{
|
|
6149
|
+
type: Input
|
|
6150
|
+
}], nomeUsuario: [{
|
|
6151
|
+
type: Input
|
|
6152
|
+
}], masterSelecionada: [{
|
|
6153
|
+
type: Input
|
|
6154
|
+
}] } });
|
|
6155
|
+
|
|
6156
|
+
class WorkspaceEmpresaComponent {
|
|
6157
|
+
constructor() {
|
|
6158
|
+
this.empresas = [];
|
|
6159
|
+
this.totalEmpresas = 0;
|
|
6160
|
+
this.onEmpresaSelecionada = new EventEmitter();
|
|
6161
|
+
this.onPaginate = new EventEmitter();
|
|
6162
|
+
}
|
|
6163
|
+
ngOnInit() {
|
|
6164
|
+
this.configTable();
|
|
6165
|
+
}
|
|
6166
|
+
activeItem(e) {
|
|
6167
|
+
this.empresaSelecionada = e;
|
|
6168
|
+
}
|
|
6169
|
+
configTable() {
|
|
6170
|
+
this.tableConfig = {
|
|
6171
|
+
lazy: true,
|
|
6150
6172
|
columns: [
|
|
6151
|
-
{ position: 0, field: '
|
|
6152
|
-
{ position: 1, field: '
|
|
6173
|
+
{ position: 0, field: 'codigopessoa', header: 'Código', width: '', centralize: false, sortable: false },
|
|
6174
|
+
{ position: 1, field: 'cpfcnpj', header: 'CPF/CNPJ', width: '', centralize: false, sortable: false, pipe: 'cpfcnpj' },
|
|
6175
|
+
{ position: 2, field: 'razaosocial', header: 'Razão social', width: '50%', centralize: false, sortable: false },
|
|
6153
6176
|
],
|
|
6154
6177
|
actions: [
|
|
6155
6178
|
{
|
|
6156
6179
|
label: 'Acessar',
|
|
6157
6180
|
icon: 'login',
|
|
6158
|
-
tooltip: 'Acessar
|
|
6181
|
+
tooltip: 'Acessar Empresa',
|
|
6159
6182
|
command: () => {
|
|
6160
|
-
this.
|
|
6183
|
+
this.selecionarEmpresa(this.empresaSelecionada);
|
|
6161
6184
|
},
|
|
6162
6185
|
disabled: () => {
|
|
6163
6186
|
return false;
|
|
@@ -6165,27 +6188,66 @@ class WorkspaceComponent {
|
|
|
6165
6188
|
},
|
|
6166
6189
|
],
|
|
6167
6190
|
actionsLote: [],
|
|
6168
|
-
enableCation:
|
|
6169
|
-
enableFilter:
|
|
6191
|
+
enableCation: true,
|
|
6192
|
+
enableFilter: true,
|
|
6170
6193
|
enableSelect: false,
|
|
6171
6194
|
};
|
|
6172
6195
|
}
|
|
6173
|
-
|
|
6174
|
-
this.
|
|
6175
|
-
this.
|
|
6196
|
+
doubleClick(e) {
|
|
6197
|
+
this.empresaSelecionada = e.rowData;
|
|
6198
|
+
this.selecionarEmpresa(this.empresaSelecionada);
|
|
6199
|
+
}
|
|
6200
|
+
paginate(event) {
|
|
6201
|
+
this.onPaginate.emit(event);
|
|
6202
|
+
}
|
|
6203
|
+
selecionarEmpresa(empresa) {
|
|
6204
|
+
this.empresaSelecionada = empresa;
|
|
6205
|
+
this.onEmpresaSelecionada.emit(this.empresaSelecionada);
|
|
6206
|
+
}
|
|
6207
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WorkspaceEmpresaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6208
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: WorkspaceEmpresaComponent, selector: "kv-workspace-empresa", inputs: { empresas: "empresas", empresaSelecionada: "empresaSelecionada", totalEmpresas: "totalEmpresas" }, outputs: { onEmpresaSelecionada: "onEmpresaSelecionada", onPaginate: "onPaginate" }, ngImport: i0, template: "<kv-table\n [config]=\"tableConfig\"\n [dataSource]=\"empresas\"\n [isTableScrollable]=\"true\"\n [paginator]=\"true\"\n [rows]=\"5\"\n [rowsPerPageOptions]=\"[5]\"\n [scrollHeight]=\"'300px'\"\n [tableSize]=\"5\"\n [totalRecords]=\"totalEmpresas\"\n (doubleClickEvent)=\"doubleClick($event)\"\n (onActiveItem)=\"activeItem($event)\"\n (onPaginate)=\"paginate($event)\">\n</kv-table>", styles: [""], dependencies: [{ kind: "component", type: KvTableComponent, selector: "kv-table", inputs: ["templates", "config", "defaultSortField", "dataSource", "selectedItems", "totalRecords", "paginator", "rowsPerPageOptions", "rows", "tableSize", "filterColumnsBtn", "filtrosAvancados", "scrollHeight", "isTableScrollable", "tableCaptalized", "rowTrackBy", "responsiveLayout", "disabledHeaderCheckbox", "applyStyle", "pageLinksOptions", "showFirstLastIcon"], outputs: ["onActiveItem", "onActiveItemLote", "onPaginate", "onSelectionChange", "doubleClickEvent", "filterField", "onSwitchTableChange"] }] }); }
|
|
6209
|
+
}
|
|
6210
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WorkspaceEmpresaComponent, decorators: [{
|
|
6211
|
+
type: Component,
|
|
6212
|
+
args: [{ selector: 'kv-workspace-empresa', template: "<kv-table\n [config]=\"tableConfig\"\n [dataSource]=\"empresas\"\n [isTableScrollable]=\"true\"\n [paginator]=\"true\"\n [rows]=\"5\"\n [rowsPerPageOptions]=\"[5]\"\n [scrollHeight]=\"'300px'\"\n [tableSize]=\"5\"\n [totalRecords]=\"totalEmpresas\"\n (doubleClickEvent)=\"doubleClick($event)\"\n (onActiveItem)=\"activeItem($event)\"\n (onPaginate)=\"paginate($event)\">\n</kv-table>" }]
|
|
6213
|
+
}], ctorParameters: () => [], propDecorators: { empresas: [{
|
|
6214
|
+
type: Input
|
|
6215
|
+
}], empresaSelecionada: [{
|
|
6216
|
+
type: Input
|
|
6217
|
+
}], totalEmpresas: [{
|
|
6218
|
+
type: Input
|
|
6219
|
+
}], onEmpresaSelecionada: [{
|
|
6220
|
+
type: Output
|
|
6221
|
+
}], onPaginate: [{
|
|
6222
|
+
type: Output
|
|
6223
|
+
}] } });
|
|
6224
|
+
|
|
6225
|
+
class WorkspaceMasterComponent {
|
|
6226
|
+
constructor() {
|
|
6227
|
+
this.dataSource = [];
|
|
6228
|
+
this.onMasterSelecionada = new EventEmitter();
|
|
6229
|
+
}
|
|
6230
|
+
ngOnInit() {
|
|
6231
|
+
this.configTable();
|
|
6232
|
+
}
|
|
6233
|
+
activeItem(e) {
|
|
6234
|
+
this.masterSelecionada = e;
|
|
6235
|
+
}
|
|
6236
|
+
configTable() {
|
|
6237
|
+
this.dataSource = this.masters;
|
|
6238
|
+
this.tableConfig = {
|
|
6176
6239
|
lazy: false,
|
|
6177
6240
|
columns: [
|
|
6178
|
-
{ position: 0, field: '
|
|
6179
|
-
{ position: 1, field: '
|
|
6180
|
-
{ position: 2, field: 'razaosocial', header: 'Razão social', width: '50%', centralize: false, sortable: false },
|
|
6241
|
+
{ position: 0, field: 'idmaster', header: 'Licença', width: '', centralize: false, sortable: false },
|
|
6242
|
+
{ position: 1, field: 'nome', header: '', width: '80%', centralize: false, sortable: false, },
|
|
6181
6243
|
],
|
|
6182
6244
|
actions: [
|
|
6183
6245
|
{
|
|
6184
6246
|
label: 'Acessar',
|
|
6185
6247
|
icon: 'login',
|
|
6186
|
-
tooltip: 'Acessar
|
|
6248
|
+
tooltip: 'Acessar Workspace',
|
|
6187
6249
|
command: () => {
|
|
6188
|
-
this.
|
|
6250
|
+
this.selecionarMaster(this.masterSelecionada);
|
|
6189
6251
|
},
|
|
6190
6252
|
disabled: () => {
|
|
6191
6253
|
return false;
|
|
@@ -6193,82 +6255,94 @@ class WorkspaceComponent {
|
|
|
6193
6255
|
},
|
|
6194
6256
|
],
|
|
6195
6257
|
actionsLote: [],
|
|
6196
|
-
enableCation:
|
|
6197
|
-
enableFilter:
|
|
6258
|
+
enableCation: false,
|
|
6259
|
+
enableFilter: false,
|
|
6198
6260
|
enableSelect: false,
|
|
6199
6261
|
};
|
|
6200
6262
|
}
|
|
6201
|
-
|
|
6202
|
-
this.
|
|
6203
|
-
this.
|
|
6263
|
+
doubleClick(e) {
|
|
6264
|
+
this.masterSelecionada = e.rowData;
|
|
6265
|
+
this.selecionarMaster(this.masterSelecionada);
|
|
6204
6266
|
}
|
|
6205
|
-
|
|
6206
|
-
this.
|
|
6207
|
-
this.
|
|
6267
|
+
selecionarMaster(master) {
|
|
6268
|
+
this.masterSelecionada = master;
|
|
6269
|
+
this.onMasterSelecionada.emit(this.masterSelecionada);
|
|
6208
6270
|
}
|
|
6209
|
-
|
|
6210
|
-
|
|
6271
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WorkspaceMasterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6272
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: WorkspaceMasterComponent, selector: "kv-workspace-master", inputs: { masters: "masters", masterSelecionada: "masterSelecionada" }, outputs: { onMasterSelecionada: "onMasterSelecionada" }, ngImport: i0, template: "<kv-table\n [tableSize]=\"5\"\n [rows]=\"5\"\n [config]=\"tableConfig\"\n [paginator]=\"false\"\n [dataSource]=\"dataSource\"\n [rowsPerPageOptions]=\"[5, 10, 25, 50, 100, 200]\"\n (doubleClickEvent)=\"doubleClick($event)\"\n (onActiveItem)=\"activeItem($event)\"\n [isTableScrollable]=\"true\"\n [scrollHeight]=\"'300px'\">\n</kv-table>", styles: [""], dependencies: [{ kind: "component", type: KvTableComponent, selector: "kv-table", inputs: ["templates", "config", "defaultSortField", "dataSource", "selectedItems", "totalRecords", "paginator", "rowsPerPageOptions", "rows", "tableSize", "filterColumnsBtn", "filtrosAvancados", "scrollHeight", "isTableScrollable", "tableCaptalized", "rowTrackBy", "responsiveLayout", "disabledHeaderCheckbox", "applyStyle", "pageLinksOptions", "showFirstLastIcon"], outputs: ["onActiveItem", "onActiveItemLote", "onPaginate", "onSelectionChange", "doubleClickEvent", "filterField", "onSwitchTableChange"] }] }); }
|
|
6273
|
+
}
|
|
6274
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WorkspaceMasterComponent, decorators: [{
|
|
6275
|
+
type: Component,
|
|
6276
|
+
args: [{ selector: 'kv-workspace-master', template: "<kv-table\n [tableSize]=\"5\"\n [rows]=\"5\"\n [config]=\"tableConfig\"\n [paginator]=\"false\"\n [dataSource]=\"dataSource\"\n [rowsPerPageOptions]=\"[5, 10, 25, 50, 100, 200]\"\n (doubleClickEvent)=\"doubleClick($event)\"\n (onActiveItem)=\"activeItem($event)\"\n [isTableScrollable]=\"true\"\n [scrollHeight]=\"'300px'\">\n</kv-table>" }]
|
|
6277
|
+
}], ctorParameters: () => [], propDecorators: { masters: [{
|
|
6278
|
+
type: Input
|
|
6279
|
+
}], masterSelecionada: [{
|
|
6280
|
+
type: Input
|
|
6281
|
+
}], onMasterSelecionada: [{
|
|
6282
|
+
type: Output
|
|
6283
|
+
}] } });
|
|
6284
|
+
|
|
6285
|
+
class WorkspaceComponent {
|
|
6286
|
+
constructor() {
|
|
6287
|
+
this.nomeUsuario = 'Nome do Usuário Logado';
|
|
6288
|
+
this.somenteMaster = true;
|
|
6289
|
+
this.visivel = true;
|
|
6290
|
+
this.totalEmpresas = 0;
|
|
6291
|
+
this.onGetMasterSelecionada = new EventEmitter();
|
|
6292
|
+
this.onGetEmpresaSelecionada = new EventEmitter();
|
|
6293
|
+
this.onPaginate = new EventEmitter();
|
|
6211
6294
|
}
|
|
6212
6295
|
ngOnInit() {
|
|
6213
6296
|
this.imgPersonagens = ImagensService.getPersonagensWorkSpace();
|
|
6214
6297
|
this.imgLogoKeevo = ImagensService.getLogoKeevo();
|
|
6215
6298
|
this.imgLogoKeevoCenter = ImagensService.getLogoKeevoCenter();
|
|
6216
6299
|
this.styleBackground = 'background-image: url(' + ImagensService.getBackgroundWorkSpace() + ');';
|
|
6217
|
-
|
|
6218
|
-
|
|
6300
|
+
}
|
|
6301
|
+
paginate(event) {
|
|
6302
|
+
this.onPaginate.emit(event);
|
|
6219
6303
|
}
|
|
6220
6304
|
selecionarEmpresa(empresa) {
|
|
6221
6305
|
this.onGetEmpresaSelecionada.emit(empresa);
|
|
6222
|
-
this.empresaSelecionada = empresa;
|
|
6223
|
-
this.visivel = false;
|
|
6224
|
-
}
|
|
6225
|
-
selecionarMaster(master) {
|
|
6226
|
-
this.onGetMasterSelecionada.emit(master);
|
|
6227
|
-
this.masterSelecionada = master;
|
|
6228
|
-
if (this.somenteMaster)
|
|
6229
|
-
this.visivel = false;
|
|
6230
|
-
else {
|
|
6231
|
-
this.empresas = master.empresas;
|
|
6232
|
-
this.showPaginatorEmpresa = (this.empresas.length > 5);
|
|
6233
|
-
this.columnConfigTableEmpresa();
|
|
6234
|
-
this.verificaEmpresaUnica();
|
|
6235
|
-
}
|
|
6236
|
-
}
|
|
6237
|
-
verificaEmpresaUnica() {
|
|
6238
|
-
if (this.empresas && this.empresas.length == 1)
|
|
6239
|
-
this.selecionarEmpresa(this.empresas[0]);
|
|
6240
6306
|
}
|
|
6241
|
-
|
|
6242
|
-
|
|
6243
|
-
this.selecionarMaster(this.masters[0]);
|
|
6244
|
-
}
|
|
6245
|
-
voltar() {
|
|
6246
|
-
this.empresaSelecionada = undefined;
|
|
6247
|
-
this.masterSelecionada = undefined;
|
|
6307
|
+
selecionarMaster(event) {
|
|
6308
|
+
this.onGetMasterSelecionada.emit(event);
|
|
6248
6309
|
}
|
|
6249
6310
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WorkspaceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6250
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
6311
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: WorkspaceComponent, selector: "kv-workspace", inputs: { nomeUsuario: "nomeUsuario", somenteMaster: "somenteMaster", visivel: "visivel", empresas: "empresas", empresaSelecionada: "empresaSelecionada", totalEmpresas: "totalEmpresas", masters: "masters", masterSelecionada: "masterSelecionada" }, outputs: { onGetMasterSelecionada: "onGetMasterSelecionada", onGetEmpresaSelecionada: "onGetEmpresaSelecionada", onPaginate: "onPaginate" }, ngImport: i0, template: "@if(visivel){\n<div [style]=\"styleBackground\" class=\"h-screen flex justify-content-center align-items-center login-container flex-column bg-cover\">\n <div id=\"card-container\" class=\"flex flex-column justify-content-around card-login formgrid p-fluid bg-white border-round p-2\">\n\n <kv-workspace-logo\n [imgLogoKeevoCenter]=\"imgLogoKeevoCenter\"\n [masterSelecionada]=\"masterSelecionada\"\n [nomeUsuario]=\"nomeUsuario\">\n </kv-workspace-logo>\n\n @if(!masterSelecionada){\n <div class=\"col-12 z-5\">\n <kv-workspace-master\n [masters]=\"masters\"\n [masterSelecionada]=\"masterSelecionada\"\n (onMasterSelecionada)=\"selecionarMaster($event)\">\n </kv-workspace-master>\n </div>\n }\n\n @if(!somenteMaster && masterSelecionada){\n <kv-workspace-empresa\n [empresas]=\"empresas\"\n [totalEmpresas]=\"totalEmpresas\"\n (onEmpresaSelecionada)=\"selecionarEmpresa($event)\"\n (onPaginate)=\"paginate($event)\">\n </kv-workspace-empresa>\n }\n\n </div>\n</div>\n}", styles: [".card-login{width:80%;max-width:800px}\n"], dependencies: [{ kind: "component", type: WorkspaceEmpresaComponent, selector: "kv-workspace-empresa", inputs: ["empresas", "empresaSelecionada", "totalEmpresas"], outputs: ["onEmpresaSelecionada", "onPaginate"] }, { kind: "component", type: WokspaceLogoComponent, selector: "kv-workspace-logo", inputs: ["imgLogoKeevoCenter", "nomeUsuario", "masterSelecionada"] }, { kind: "component", type: WorkspaceMasterComponent, selector: "kv-workspace-master", inputs: ["masters", "masterSelecionada"], outputs: ["onMasterSelecionada"] }] }); }
|
|
6251
6312
|
}
|
|
6252
6313
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WorkspaceComponent, decorators: [{
|
|
6253
6314
|
type: Component,
|
|
6254
|
-
args: [{ selector: 'kv-workspace', template: "<div
|
|
6315
|
+
args: [{ selector: 'kv-workspace', template: "@if(visivel){\n<div [style]=\"styleBackground\" class=\"h-screen flex justify-content-center align-items-center login-container flex-column bg-cover\">\n <div id=\"card-container\" class=\"flex flex-column justify-content-around card-login formgrid p-fluid bg-white border-round p-2\">\n\n <kv-workspace-logo\n [imgLogoKeevoCenter]=\"imgLogoKeevoCenter\"\n [masterSelecionada]=\"masterSelecionada\"\n [nomeUsuario]=\"nomeUsuario\">\n </kv-workspace-logo>\n\n @if(!masterSelecionada){\n <div class=\"col-12 z-5\">\n <kv-workspace-master\n [masters]=\"masters\"\n [masterSelecionada]=\"masterSelecionada\"\n (onMasterSelecionada)=\"selecionarMaster($event)\">\n </kv-workspace-master>\n </div>\n }\n\n @if(!somenteMaster && masterSelecionada){\n <kv-workspace-empresa\n [empresas]=\"empresas\"\n [totalEmpresas]=\"totalEmpresas\"\n (onEmpresaSelecionada)=\"selecionarEmpresa($event)\"\n (onPaginate)=\"paginate($event)\">\n </kv-workspace-empresa>\n }\n\n </div>\n</div>\n}", styles: [".card-login{width:80%;max-width:800px}\n"] }]
|
|
6255
6316
|
}], ctorParameters: () => [], propDecorators: { nomeUsuario: [{
|
|
6256
6317
|
type: Input
|
|
6318
|
+
}], somenteMaster: [{
|
|
6319
|
+
type: Input
|
|
6320
|
+
}], visivel: [{
|
|
6321
|
+
type: Input
|
|
6322
|
+
}], empresas: [{
|
|
6323
|
+
type: Input
|
|
6324
|
+
}], empresaSelecionada: [{
|
|
6325
|
+
type: Input
|
|
6326
|
+
}], totalEmpresas: [{
|
|
6327
|
+
type: Input
|
|
6257
6328
|
}], masters: [{
|
|
6258
6329
|
type: Input
|
|
6259
6330
|
}], masterSelecionada: [{
|
|
6260
6331
|
type: Input
|
|
6261
|
-
}], somenteMaster: [{
|
|
6262
|
-
type: Input
|
|
6263
6332
|
}], onGetMasterSelecionada: [{
|
|
6264
6333
|
type: Output
|
|
6265
6334
|
}], onGetEmpresaSelecionada: [{
|
|
6266
6335
|
type: Output
|
|
6336
|
+
}], onPaginate: [{
|
|
6337
|
+
type: Output
|
|
6267
6338
|
}] } });
|
|
6268
6339
|
|
|
6269
6340
|
class KvWorkspaceModule {
|
|
6270
6341
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvWorkspaceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6271
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.8", ngImport: i0, type: KvWorkspaceModule, declarations: [WorkspaceComponent
|
|
6342
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.8", ngImport: i0, type: KvWorkspaceModule, declarations: [WorkspaceComponent,
|
|
6343
|
+
WorkspaceEmpresaComponent,
|
|
6344
|
+
WokspaceLogoComponent,
|
|
6345
|
+
WorkspaceMasterComponent], imports: [CommonModule,
|
|
6272
6346
|
PrimeNgModule,
|
|
6273
6347
|
ReactiveFormsModule,
|
|
6274
6348
|
ProgressSpinnerModule,
|
|
@@ -6289,7 +6363,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
6289
6363
|
type: NgModule,
|
|
6290
6364
|
args: [{
|
|
6291
6365
|
declarations: [
|
|
6292
|
-
WorkspaceComponent
|
|
6366
|
+
WorkspaceComponent,
|
|
6367
|
+
WorkspaceEmpresaComponent,
|
|
6368
|
+
WokspaceLogoComponent,
|
|
6369
|
+
WorkspaceMasterComponent
|
|
6293
6370
|
],
|
|
6294
6371
|
exports: [
|
|
6295
6372
|
WorkspaceComponent
|