ngx-sp-auth 3.2.1 → 3.2.6

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.
@@ -10,7 +10,7 @@ import * as i1$1 from '@angular/router';
10
10
  import { RouterLink, NavigationEnd, RouterOutlet } from '@angular/router';
11
11
  import { BehaviorSubject, take, tap, Subject, Subscription, timer, map as map$1, filter, of, lastValueFrom, from } from 'rxjs';
12
12
  import * as i3 from 'ngx-sp-infra';
13
- import { Utils, FormUtils, InfraModule } from 'ngx-sp-infra';
13
+ import { Utils, FormUtils, InfraModule, LibIconsComponent, ContentContainerComponent } from 'ngx-sp-infra';
14
14
  import * as i3$2 from '@angular/common';
15
15
  import { CommonModule, NgIf } from '@angular/common';
16
16
  import * as i3$1 from '@angular/forms';
@@ -2408,7 +2408,8 @@ class DynamicMenuComponent {
2408
2408
  this.selectedMenuItem = [];
2409
2409
  this.selectedItem = -1;
2410
2410
  }
2411
- ngOnInit() { }
2411
+ ngOnInit() {
2412
+ }
2412
2413
  onClickedOutside(e, ref) {
2413
2414
  ref.classList.remove("opened-sub");
2414
2415
  this.submenuList = [];
@@ -2427,7 +2428,7 @@ class DynamicMenuComponent {
2427
2428
  return `${this.hostServerOutSystems == "" ? this._projectUtilService.getHostName() : this.hostServerOutSystems}/${url}`;
2428
2429
  }
2429
2430
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DynamicMenuComponent, deps: [{ token: i1$1.Router }, { token: ProjectUtilservice }], target: i0.ɵɵFactoryTarget.Component }); }
2430
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DynamicMenuComponent, isStandalone: true, selector: "app-dynamic-menu", inputs: { submenuRef: "submenuRef", recebeParam: "recebeParam", titleSubmenu: "titleSubmenu", submenuList: "submenuList", hostServerOutSystems: "hostServerOutSystems" }, outputs: { selectTemplate: "selectTemplate" }, queries: [{ propertyName: "desiredContent", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div #submenu class=\"header-submenu\">\n <h1 class=\"titulo pb-3 pt-4\">{{ titleSubmenu }}</h1>\n <div class=\"itens-list\">\n <ul style=\"width: 100%\">\n\n <li *ngFor=\"let itemList of submenuList; let i = index\" [id]=\"itemList!.id\"\n class=\"d-flex justify-content-between align-items-center\"\n [class]=\"i == 0 ? 'mt-1' : ''\">\n\n <a *ngIf=\"!itemList.isExternal; else externalMenu\"\n [routerLink]=\"itemList!.route != null ? ['/' + itemList!.route] : null\"\n (click)=\"recebeParam($event, submenuRef)\">\n <span>{{ itemList!.label }}</span>\n </a>\n\n <ng-template #externalMenu>\n <a (click)=\"getExternalUrl(itemList.route)\"\n target=\"_blank\"\n (click)=\"recebeParam($event, submenuRef)\">\n <span>{{ itemList!.label }}</span>\n </a>\n </ng-template>\n\n <!-- <button class=\"star favoritos\" #star (click)=\"changeStar(star, itemList)\"></button> -->\n </li>\n </ul>\n </div>\n</div>\n", styles: ["*{padding:0;margin:0;font-family:Open sans,Arial,Helvetica,sans-serif;color:#fff}ul{list-style:none;padding-left:0;display:inline;white-space:nowrap}::-webkit-scrollbar{width:8px;background:transparent}::-webkit-scrollbar-thumb{background:#bbb;border-radius:16px}.header-submenu{display:flex;flex-direction:column;height:100vh;overflow:overlay}.titulo{font-size:20px;font-weight:700;display:flex;justify-content:center;border-bottom:1px solid #2847a0}ul{display:flex;flex-direction:column;margin:25px 26px 0 24px}ul li{font-size:16px;padding-bottom:18px}ul li span:hover{font-weight:700}a{text-decoration:none}.itens-list{display:flex;align-items:center;overflow:overlay;width:100%;z-index:0}.itens-list .favoritos,.itens-list span{cursor:pointer}.footer-menu{display:flex;flex-direction:column;justify-content:center;padding-bottom:16px}.footer-menu .footer-components{border-top:1px solid #3265ee;padding-top:16px;padding-left:17px;white-space:nowrap}.footer-menu button{position:relative;left:35%;border:none;background-color:transparent}.footer-menu .photo-profile{width:32px;height:32px;border-radius:50%;margin:0 15px 0 0}.footer-components{display:flex;justify-content:center;align-items:center}button{position:relative;border:none;background-color:transparent}.photo-profile{width:32px;height:32px;border-radius:50%;margin:0}.submenu.opened-sub{z-index:1;display:flex;position:absolute;left:100%;height:100vh;justify-content:space-between}.submenu-footer{display:flex;flex-direction:row;justify-content:center;align-content:center;margin-bottom:14px;border-top:1px solid #2847a0}.submenu-footer .subfooter-components{padding-top:16px}.submenu-footer span{font-weight:700;padding-left:10px}.star{width:24px;height:24px;background-repeat:no-repeat}.yellow-star{width:26px;height:24px;background-repeat:no-repeat}\n"], dependencies: [{ kind: "ngmodule", type:
2431
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DynamicMenuComponent, isStandalone: true, selector: "app-dynamic-menu", inputs: { submenuRef: "submenuRef", recebeParam: "recebeParam", titleSubmenu: "titleSubmenu", submenuList: "submenuList", hostServerOutSystems: "hostServerOutSystems" }, outputs: { selectTemplate: "selectTemplate" }, queries: [{ propertyName: "desiredContent", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div #submenu class=\"header-submenu\">\n <h1 class=\"titulo pb-3 pt-4\">{{ titleSubmenu }}</h1>\n <div class=\"itens-list\">\n <ul style=\"width: 100%\">\n\n <li *ngFor=\"let itemList of submenuList; let i = index\" [id]=\"itemList!.id\"\n class=\"d-flex justify-content-between align-items-center\"\n [class]=\"i == 0 ? 'mt-1' : ''\">\n\n <a *ngIf=\"!itemList.isExternal; else externalMenu\"\n [routerLink]=\"itemList!.route != null ? ['/' + itemList!.route] : null\"\n (click)=\"recebeParam($event, submenuRef)\">\n <span>{{ itemList!.label }}</span>\n </a>\n\n <ng-template #externalMenu>\n <a [href]=\"getExternalUrl(itemList.route)\"\n target=\"_blank\"\n (click)=\"recebeParam($event, submenuRef)\">\n <span>{{ itemList!.label }}</span>\n </a>\n </ng-template>\n\n <!-- <button class=\"star favoritos\" #star (click)=\"changeStar(star, itemList)\"></button> -->\n </li>\n </ul>\n </div>\n</div>\n", styles: ["*{padding:0;margin:0;font-family:Open sans,Arial,Helvetica,sans-serif;color:#fff}ul{list-style:none;padding-left:0;display:inline;white-space:nowrap}::-webkit-scrollbar{width:8px;background:transparent}::-webkit-scrollbar-thumb{background:#bbb;border-radius:16px}.header-submenu{display:flex;flex-direction:column;height:100vh;overflow:overlay}.titulo{font-size:20px;font-weight:700;display:flex;justify-content:center;border-bottom:1px solid #2847a0}ul{display:flex;flex-direction:column;margin:25px 26px 0 24px}ul li{font-size:16px;padding-bottom:18px}ul li span:hover{font-weight:700}a{text-decoration:none}.itens-list{display:flex;align-items:center;overflow:overlay;width:100%;z-index:0}.itens-list .favoritos,.itens-list span{cursor:pointer}.footer-menu{display:flex;flex-direction:column;justify-content:center;padding-bottom:16px}.footer-menu .footer-components{border-top:1px solid #3265ee;padding-top:16px;padding-left:17px;white-space:nowrap}.footer-menu button{position:relative;left:35%;border:none;background-color:transparent}.footer-menu .photo-profile{width:32px;height:32px;border-radius:50%;margin:0 15px 0 0}.footer-components{display:flex;justify-content:center;align-items:center}button{position:relative;border:none;background-color:transparent}.photo-profile{width:32px;height:32px;border-radius:50%;margin:0}.submenu.opened-sub{z-index:1;display:flex;position:absolute;left:100%;height:100vh;justify-content:space-between}.submenu-footer{display:flex;flex-direction:row;justify-content:center;align-content:center;margin-bottom:14px;border-top:1px solid #2847a0}.submenu-footer .subfooter-components{padding-top:16px}.submenu-footer span{font-weight:700;padding-left:10px}.star{width:24px;height:24px;background-repeat:no-repeat}.yellow-star{width:26px;height:24px;background-repeat:no-repeat}\n"], dependencies: [{ kind: "ngmodule", type:
2431
2432
  // AuthRoutingModule,
2432
2433
  CommonModule }, { kind: "directive", type: i3$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
2433
2434
  }
@@ -2437,7 +2438,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
2437
2438
  // AuthRoutingModule,
2438
2439
  CommonModule,
2439
2440
  RouterLink
2440
- ], template: "<div #submenu class=\"header-submenu\">\n <h1 class=\"titulo pb-3 pt-4\">{{ titleSubmenu }}</h1>\n <div class=\"itens-list\">\n <ul style=\"width: 100%\">\n\n <li *ngFor=\"let itemList of submenuList; let i = index\" [id]=\"itemList!.id\"\n class=\"d-flex justify-content-between align-items-center\"\n [class]=\"i == 0 ? 'mt-1' : ''\">\n\n <a *ngIf=\"!itemList.isExternal; else externalMenu\"\n [routerLink]=\"itemList!.route != null ? ['/' + itemList!.route] : null\"\n (click)=\"recebeParam($event, submenuRef)\">\n <span>{{ itemList!.label }}</span>\n </a>\n\n <ng-template #externalMenu>\n <a (click)=\"getExternalUrl(itemList.route)\"\n target=\"_blank\"\n (click)=\"recebeParam($event, submenuRef)\">\n <span>{{ itemList!.label }}</span>\n </a>\n </ng-template>\n\n <!-- <button class=\"star favoritos\" #star (click)=\"changeStar(star, itemList)\"></button> -->\n </li>\n </ul>\n </div>\n</div>\n", styles: ["*{padding:0;margin:0;font-family:Open sans,Arial,Helvetica,sans-serif;color:#fff}ul{list-style:none;padding-left:0;display:inline;white-space:nowrap}::-webkit-scrollbar{width:8px;background:transparent}::-webkit-scrollbar-thumb{background:#bbb;border-radius:16px}.header-submenu{display:flex;flex-direction:column;height:100vh;overflow:overlay}.titulo{font-size:20px;font-weight:700;display:flex;justify-content:center;border-bottom:1px solid #2847a0}ul{display:flex;flex-direction:column;margin:25px 26px 0 24px}ul li{font-size:16px;padding-bottom:18px}ul li span:hover{font-weight:700}a{text-decoration:none}.itens-list{display:flex;align-items:center;overflow:overlay;width:100%;z-index:0}.itens-list .favoritos,.itens-list span{cursor:pointer}.footer-menu{display:flex;flex-direction:column;justify-content:center;padding-bottom:16px}.footer-menu .footer-components{border-top:1px solid #3265ee;padding-top:16px;padding-left:17px;white-space:nowrap}.footer-menu button{position:relative;left:35%;border:none;background-color:transparent}.footer-menu .photo-profile{width:32px;height:32px;border-radius:50%;margin:0 15px 0 0}.footer-components{display:flex;justify-content:center;align-items:center}button{position:relative;border:none;background-color:transparent}.photo-profile{width:32px;height:32px;border-radius:50%;margin:0}.submenu.opened-sub{z-index:1;display:flex;position:absolute;left:100%;height:100vh;justify-content:space-between}.submenu-footer{display:flex;flex-direction:row;justify-content:center;align-content:center;margin-bottom:14px;border-top:1px solid #2847a0}.submenu-footer .subfooter-components{padding-top:16px}.submenu-footer span{font-weight:700;padding-left:10px}.star{width:24px;height:24px;background-repeat:no-repeat}.yellow-star{width:26px;height:24px;background-repeat:no-repeat}\n"] }]
2441
+ ], template: "<div #submenu class=\"header-submenu\">\n <h1 class=\"titulo pb-3 pt-4\">{{ titleSubmenu }}</h1>\n <div class=\"itens-list\">\n <ul style=\"width: 100%\">\n\n <li *ngFor=\"let itemList of submenuList; let i = index\" [id]=\"itemList!.id\"\n class=\"d-flex justify-content-between align-items-center\"\n [class]=\"i == 0 ? 'mt-1' : ''\">\n\n <a *ngIf=\"!itemList.isExternal; else externalMenu\"\n [routerLink]=\"itemList!.route != null ? ['/' + itemList!.route] : null\"\n (click)=\"recebeParam($event, submenuRef)\">\n <span>{{ itemList!.label }}</span>\n </a>\n\n <ng-template #externalMenu>\n <a [href]=\"getExternalUrl(itemList.route)\"\n target=\"_blank\"\n (click)=\"recebeParam($event, submenuRef)\">\n <span>{{ itemList!.label }}</span>\n </a>\n </ng-template>\n\n <!-- <button class=\"star favoritos\" #star (click)=\"changeStar(star, itemList)\"></button> -->\n </li>\n </ul>\n </div>\n</div>\n", styles: ["*{padding:0;margin:0;font-family:Open sans,Arial,Helvetica,sans-serif;color:#fff}ul{list-style:none;padding-left:0;display:inline;white-space:nowrap}::-webkit-scrollbar{width:8px;background:transparent}::-webkit-scrollbar-thumb{background:#bbb;border-radius:16px}.header-submenu{display:flex;flex-direction:column;height:100vh;overflow:overlay}.titulo{font-size:20px;font-weight:700;display:flex;justify-content:center;border-bottom:1px solid #2847a0}ul{display:flex;flex-direction:column;margin:25px 26px 0 24px}ul li{font-size:16px;padding-bottom:18px}ul li span:hover{font-weight:700}a{text-decoration:none}.itens-list{display:flex;align-items:center;overflow:overlay;width:100%;z-index:0}.itens-list .favoritos,.itens-list span{cursor:pointer}.footer-menu{display:flex;flex-direction:column;justify-content:center;padding-bottom:16px}.footer-menu .footer-components{border-top:1px solid #3265ee;padding-top:16px;padding-left:17px;white-space:nowrap}.footer-menu button{position:relative;left:35%;border:none;background-color:transparent}.footer-menu .photo-profile{width:32px;height:32px;border-radius:50%;margin:0 15px 0 0}.footer-components{display:flex;justify-content:center;align-items:center}button{position:relative;border:none;background-color:transparent}.photo-profile{width:32px;height:32px;border-radius:50%;margin:0}.submenu.opened-sub{z-index:1;display:flex;position:absolute;left:100%;height:100vh;justify-content:space-between}.submenu-footer{display:flex;flex-direction:row;justify-content:center;align-content:center;margin-bottom:14px;border-top:1px solid #2847a0}.submenu-footer .subfooter-components{padding-top:16px}.submenu-footer span{font-weight:700;padding-left:10px}.star{width:24px;height:24px;background-repeat:no-repeat}.yellow-star{width:26px;height:24px;background-repeat:no-repeat}\n"] }]
2441
2442
  }], ctorParameters: () => [{ type: i1$1.Router }, { type: ProjectUtilservice }], propDecorators: { selectTemplate: [{
2442
2443
  type: Output
2443
2444
  }], submenuRef: [{
@@ -2730,7 +2731,10 @@ class MenuLateralComponent {
2730
2731
  //Atualmente o erro é tratado no back para retornar vazio, feito assim para garantir que não quebre em clientes que ainda não tem essa tabela
2731
2732
  //Feito para implementação do APP9
2732
2733
  this._menuServices.GetHostServerOutSystems().subscribe({
2733
- next: response => this._hostServeUrlOutSystems = response.String
2734
+ next: response => {
2735
+ this._hostServeUrlOutSystems = response.String;
2736
+ },
2737
+ error: error => console.error(error)
2734
2738
  });
2735
2739
  }
2736
2740
  this._customMenuService.menuDynamicOnInit();
@@ -2853,7 +2857,7 @@ class MenuLateralComponent {
2853
2857
  this._authService.logout();
2854
2858
  }
2855
2859
  getExternalUrl(url) {
2856
- return `${this.HostServerOutSystems == "" ? this._projectUtilService.getHostName() : this.HostServerOutSystems}/${url}`;
2860
+ return `${this._hostServeUrlOutSystems == "" ? this._projectUtilService.getHostName() : this._hostServeUrlOutSystems}/${url}`;
2857
2861
  }
2858
2862
  constroiRegrasDynamicMenu(menus) {
2859
2863
  const home = { id: 1, label: "Início", descricao: "Tela inicial", icon: "casa", route: "home", isExternal: false, isSelected: this._router.url.includes("home"), };
@@ -3447,12 +3451,231 @@ const AUTH_ROUTES = [
3447
3451
  { path: 'novaSenha/:param', component: NovaSenhaComponent, data: { title: "Nova Senha" } }
3448
3452
  ];
3449
3453
 
3454
+ class NavSubmenuCards {
3455
+ constructor() {
3456
+ this.titulo = '';
3457
+ this.icon = '';
3458
+ this.descricao = '';
3459
+ this.urlPath = '';
3460
+ this.isExternal = false;
3461
+ }
3462
+ }
3463
+ ;
3464
+ class SubMenuCardComponent {
3465
+ GetExternalUrl(url) {
3466
+ return `${this.hostName == "" ? `https://${window.location.host}` : this.hostName}/${url}`;
3467
+ }
3468
+ ngOnInit() {
3469
+ this.GetHostName();
3470
+ }
3471
+ /**
3472
+ *
3473
+ */
3474
+ constructor(_menuService, _projectUtil) {
3475
+ this._menuService = _menuService;
3476
+ this._projectUtil = _projectUtil;
3477
+ this.hostName = "";
3478
+ this.subMenuCards = [];
3479
+ }
3480
+ GetHostName() {
3481
+ this._menuService.GetHostServerOutSystems().subscribe({
3482
+ next: response => this.hostName = response.String,
3483
+ error: error => this._projectUtil.showHttpError(error)
3484
+ });
3485
+ }
3486
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: SubMenuCardComponent, deps: [{ token: MenuServicesService }, { token: ProjectUtilservice }], target: i0.ɵɵFactoryTarget.Component }); }
3487
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: SubMenuCardComponent, isStandalone: true, selector: "sub-menu-card", inputs: { subMenuCards: "subMenuCards" }, ngImport: i0, template: `
3488
+ <div class="max-card-menu row">
3489
+ @for(card of subMenuCards; track $index) {
3490
+ <a href="{{ card.isExternal ? GetExternalUrl(card.urlPath) : card.urlPath }}" class="card-link col-4" target="_blank">
3491
+ <div class="card">
3492
+ <div class="card-icon">
3493
+ <div class="card-icon2">
3494
+ <lib-icon
3495
+ class="bold"
3496
+ iconName="{{ card.icon ? card.icon : 'engrenagem'}}"
3497
+ iconColor="blue"
3498
+ [iconFill]="true"
3499
+ [iconSize]="35"
3500
+ ></lib-icon>
3501
+ </div>
3502
+ </div>
3503
+ <h3 class="card-title">{{ card.titulo }}</h3>
3504
+ <p class="card-text" title="{{ card.descricao }}">
3505
+ {{ card.descricao }}
3506
+ </p>
3507
+ </div>
3508
+ </a>
3509
+ }
3510
+ </div>
3511
+ `, isInline: true, styles: [".max-card-menu{display:flex;flex-wrap:wrap;justify-content:flex-start}.card-link{text-decoration:none;color:inherit;display:flex;box-sizing:border-box}.card{width:100%;border:none;background-color:#fff;border-radius:12px;box-shadow:0 4px 8px #0000000d;padding:24px;margin-bottom:16px;text-align:center;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;cursor:pointer}.card-icon{display:flex;align-items:center;justify-content:center;background-color:#e6eef6;border-radius:50%;width:72px;height:72px;margin:0 auto 16px}.card-icon2{display:flex;justify-content:center;align-items:center;background-color:#cde;border-radius:50%;width:52px;height:52px}.card-title{font-size:18px;font-weight:600;margin-bottom:12px;color:#333}.card-text{font-size:14px;color:#4f4f4f;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}\n"], dependencies: [{ kind: "component", type: LibIconsComponent, selector: "lib-icon", inputs: ["iconName", "iconColor", "iconSize", "iconFill"] }] }); }
3512
+ }
3513
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: SubMenuCardComponent, decorators: [{
3514
+ type: Component,
3515
+ args: [{ selector: 'sub-menu-card', imports: [LibIconsComponent], template: `
3516
+ <div class="max-card-menu row">
3517
+ @for(card of subMenuCards; track $index) {
3518
+ <a href="{{ card.isExternal ? GetExternalUrl(card.urlPath) : card.urlPath }}" class="card-link col-4" target="_blank">
3519
+ <div class="card">
3520
+ <div class="card-icon">
3521
+ <div class="card-icon2">
3522
+ <lib-icon
3523
+ class="bold"
3524
+ iconName="{{ card.icon ? card.icon : 'engrenagem'}}"
3525
+ iconColor="blue"
3526
+ [iconFill]="true"
3527
+ [iconSize]="35"
3528
+ ></lib-icon>
3529
+ </div>
3530
+ </div>
3531
+ <h3 class="card-title">{{ card.titulo }}</h3>
3532
+ <p class="card-text" title="{{ card.descricao }}">
3533
+ {{ card.descricao }}
3534
+ </p>
3535
+ </div>
3536
+ </a>
3537
+ }
3538
+ </div>
3539
+ `, standalone: true, styles: [".max-card-menu{display:flex;flex-wrap:wrap;justify-content:flex-start}.card-link{text-decoration:none;color:inherit;display:flex;box-sizing:border-box}.card{width:100%;border:none;background-color:#fff;border-radius:12px;box-shadow:0 4px 8px #0000000d;padding:24px;margin-bottom:16px;text-align:center;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;cursor:pointer}.card-icon{display:flex;align-items:center;justify-content:center;background-color:#e6eef6;border-radius:50%;width:72px;height:72px;margin:0 auto 16px}.card-icon2{display:flex;justify-content:center;align-items:center;background-color:#cde;border-radius:50%;width:52px;height:52px}.card-title{font-size:18px;font-weight:600;margin-bottom:12px;color:#333}.card-text{font-size:14px;color:#4f4f4f;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}\n"] }]
3540
+ }], ctorParameters: () => [{ type: MenuServicesService }, { type: ProjectUtilservice }], propDecorators: { subMenuCards: [{
3541
+ type: Input
3542
+ }] } });
3543
+
3544
+ class ListComponent {
3545
+ /**
3546
+ *
3547
+ */
3548
+ constructor() {
3549
+ this.telasItem = [];
3550
+ this.hostName = "";
3551
+ }
3552
+ GetExternalUrl(url) {
3553
+ return `${this.hostName}/${url}`;
3554
+ }
3555
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3556
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: ListComponent, isStandalone: true, selector: "app-list", inputs: { telasItem: "telasItem", hostName: "hostName" }, ngImport: i0, template: "<ul class=\"nav flex-column mt-3\">\n @if(telasItem.length) {\n @for(clickLink of telasItem; track $index) {\n <li class=\"nav-item\">\n <a class=\"nav-link\" [target]=\"clickLink.IsExternal ? '_blank' : '_self'\"\n [href]=\"clickLink.IsExternal ? (GetExternalUrl(clickLink.urlPath))\n : ('/SisproErpCloud/' + clickLink.urlPath)\">{{ clickLink.titulo }}</a>\n </li>\n }\n }\n</ul>\n", styles: ["a{color:#3e5154}\n"] }); }
3557
+ }
3558
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ListComponent, decorators: [{
3559
+ type: Component,
3560
+ args: [{ selector: 'app-list', imports: [], standalone: true, template: "<ul class=\"nav flex-column mt-3\">\n @if(telasItem.length) {\n @for(clickLink of telasItem; track $index) {\n <li class=\"nav-item\">\n <a class=\"nav-link\" [target]=\"clickLink.IsExternal ? '_blank' : '_self'\"\n [href]=\"clickLink.IsExternal ? (GetExternalUrl(clickLink.urlPath))\n : ('/SisproErpCloud/' + clickLink.urlPath)\">{{ clickLink.titulo }}</a>\n </li>\n }\n }\n</ul>\n", styles: ["a{color:#3e5154}\n"] }]
3561
+ }], ctorParameters: () => [], propDecorators: { telasItem: [{
3562
+ type: Input
3563
+ }], hostName: [{
3564
+ type: Input
3565
+ }] } });
3566
+
3567
+ class NavTabsComponent {
3568
+ constructor() {
3569
+ this.subMenus = [];
3570
+ this.hostName = "";
3571
+ this.telasItem = [];
3572
+ this.listaAtiva = '';
3573
+ }
3574
+ ngOnInit() {
3575
+ if (this.subMenus.length != 0) {
3576
+ this.telasItem = this.subMenus[0].telasItem;
3577
+ this.listaAtiva = this.subMenus[0].titulo;
3578
+ }
3579
+ }
3580
+ abaActive(b) {
3581
+ const index = this.subMenus.findIndex(submenu => {
3582
+ return submenu.titulo == b;
3583
+ });
3584
+ this.telasItem = this.subMenus[index].telasItem;
3585
+ this.listaAtiva = this.subMenus[index].titulo;
3586
+ }
3587
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: NavTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3588
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: NavTabsComponent, isStandalone: true, selector: "app-nav-tabs", inputs: { subMenus: "subMenus", hostName: "hostName" }, ngImport: i0, template: "<ul class=\"menu my-3\">\n @for(menu of subMenus; track $index) {\n <li class=\"menu-item\" (click)=\"abaActive(menu.titulo)\" [class.active]=\"menu.titulo === listaAtiva\">\n <a class=\"glb-cursor-pointer\" (click)=\"abaActive(menu.titulo)\" [tabindex]=\"$index\">\n {{ menu.titulo }}\n </a>\n </li>\n }\n</ul>\n@if(telasItem){\n <app-list [telasItem]=\"telasItem\" [hostName]=\"hostName\"></app-list>\n}\n", styles: ["@charset \"UTF-8\";.menu{list-style:none;padding:0;margin:0;display:flex;gap:20px}.menu-item a{text-align:center;position:relative;display:inline-block;padding-bottom:5px;color:#6c757d;text-decoration:none;transition:color .3s ease,border-bottom-color .3s ease;border-bottom:2px solid #fff;width:calc(100% + 15px)}.menu-item a:hover{color:#213b70;border-bottom:2px solid #213B70}.menu-item.active a:after{content:\"\";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:calc(100% + 5px);height:2px;background-color:#213b70}.menu-item.active a{color:#213b70}.menu-item.active a:before{content:\"\";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:0;opacity:1;transition:all .2s ease-in-out}\n"], dependencies: [{ kind: "component", type: ListComponent, selector: "app-list", inputs: ["telasItem", "hostName"] }] }); }
3589
+ }
3590
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: NavTabsComponent, decorators: [{
3591
+ type: Component,
3592
+ args: [{ selector: 'app-nav-tabs', imports: [ListComponent], template: "<ul class=\"menu my-3\">\n @for(menu of subMenus; track $index) {\n <li class=\"menu-item\" (click)=\"abaActive(menu.titulo)\" [class.active]=\"menu.titulo === listaAtiva\">\n <a class=\"glb-cursor-pointer\" (click)=\"abaActive(menu.titulo)\" [tabindex]=\"$index\">\n {{ menu.titulo }}\n </a>\n </li>\n }\n</ul>\n@if(telasItem){\n <app-list [telasItem]=\"telasItem\" [hostName]=\"hostName\"></app-list>\n}\n", styles: ["@charset \"UTF-8\";.menu{list-style:none;padding:0;margin:0;display:flex;gap:20px}.menu-item a{text-align:center;position:relative;display:inline-block;padding-bottom:5px;color:#6c757d;text-decoration:none;transition:color .3s ease,border-bottom-color .3s ease;border-bottom:2px solid #fff;width:calc(100% + 15px)}.menu-item a:hover{color:#213b70;border-bottom:2px solid #213B70}.menu-item.active a:after{content:\"\";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:calc(100% + 5px);height:2px;background-color:#213b70}.menu-item.active a{color:#213b70}.menu-item.active a:before{content:\"\";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:0;opacity:1;transition:all .2s ease-in-out}\n"] }]
3593
+ }], propDecorators: { subMenus: [{
3594
+ type: Input
3595
+ }], hostName: [{
3596
+ type: Input
3597
+ }] } });
3598
+
3599
+ class NavSubMenus {
3600
+ constructor() {
3601
+ this.icon = '';
3602
+ this.titulo = '';
3603
+ this.subMenuItem = [];
3604
+ }
3605
+ }
3606
+ class SubMenuItem {
3607
+ constructor() {
3608
+ this.titulo = '';
3609
+ this.telasItem = [];
3610
+ }
3611
+ }
3612
+ class TelaItem {
3613
+ constructor() {
3614
+ this.titulo = '';
3615
+ this.urlPath = '';
3616
+ this.IsExternal = false;
3617
+ }
3618
+ }
3619
+ class SubMenuComponent {
3620
+ /**
3621
+ *
3622
+ */
3623
+ constructor(_menuService, _projectUtil) {
3624
+ this._menuService = _menuService;
3625
+ this._projectUtil = _projectUtil;
3626
+ this.navSubmenus = [];
3627
+ this.isProduction = true;
3628
+ this.hostname = "https://siscandesv6.sispro.com.br";
3629
+ this.hostNameOutSystems = "";
3630
+ this.activeItem = '';
3631
+ this.listaSubMenus = [];
3632
+ }
3633
+ ngOnInit() {
3634
+ this.GetHostName();
3635
+ if (this.navSubmenus.length > 0 &&
3636
+ this.navSubmenus[0].subMenuItem &&
3637
+ this.navSubmenus[0].subMenuItem.length > 0) {
3638
+ this.activeItem = this.navSubmenus[0].subMenuItem[0].titulo.toString();
3639
+ }
3640
+ this.listaFunction();
3641
+ }
3642
+ listaFunction() {
3643
+ for (let i = 0; i < this.navSubmenus.length; i++) {
3644
+ this.listaSubMenus.push(...this.navSubmenus[i].subMenuItem);
3645
+ }
3646
+ }
3647
+ GetHostName() {
3648
+ this._menuService.GetHostServerOutSystems().subscribe({
3649
+ next: response => {
3650
+ console.log(response.String);
3651
+ this.hostNameOutSystems = response.String;
3652
+ },
3653
+ error: error => this._projectUtil.showHttpError(error)
3654
+ });
3655
+ }
3656
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: SubMenuComponent, deps: [{ token: MenuServicesService }, { token: ProjectUtilservice }], target: i0.ɵɵFactoryTarget.Component }); }
3657
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: SubMenuComponent, isStandalone: true, selector: "app-nav-sub-menu", inputs: { navSubmenus: "navSubmenus", isProduction: "isProduction", hostname: "hostname" }, ngImport: i0, template: "<lib-container>\n <div class=\"px-5\" innerContent1>\n @for(subMenu of navSubmenus; track $index) {\n <div\n [class]=\"\n $first && subMenu.titulo == '' && subMenu.icon == ''\n ? ' mb-2'\n : 'mt-4 mb-2'\n \"\n >\n @if(subMenu.icon != ''){\n <lib-icon\n class=\"bold engrenagem-ajustada\"\n iconName=\"{{ subMenu.icon }}\"\n ></lib-icon>\n } @if(subMenu.titulo != ''){\n <span class=\"fw-bold fs-4 ms-1\">{{ subMenu.titulo }}</span>\n\n }\n <app-nav-tabs [subMenus]=\"navSubmenus[$index].subMenuItem\" [hostName]=\"hostNameOutSystems\"></app-nav-tabs>\n </div>\n @if(!$last){\n <hr />\n } }\n </div>\n</lib-container>\n", styles: [".engrenagem-ajustada{position:relative;top:-4px}\n"], dependencies: [{ kind: "component", type: NavTabsComponent, selector: "app-nav-tabs", inputs: ["subMenus", "hostName"] }, { kind: "component", type: LibIconsComponent, selector: "lib-icon", inputs: ["iconName", "iconColor", "iconSize", "iconFill"] }, { kind: "component", type: ContentContainerComponent, selector: "lib-container", inputs: ["documentation", "tabs", "advancedTabs", "containerTitle", "useBorder", "currentTab"], outputs: ["onChangeTab"] }] }); }
3658
+ }
3659
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: SubMenuComponent, decorators: [{
3660
+ type: Component,
3661
+ args: [{ selector: 'app-nav-sub-menu', imports: [
3662
+ NavTabsComponent,
3663
+ LibIconsComponent,
3664
+ ContentContainerComponent
3665
+ ], standalone: true, template: "<lib-container>\n <div class=\"px-5\" innerContent1>\n @for(subMenu of navSubmenus; track $index) {\n <div\n [class]=\"\n $first && subMenu.titulo == '' && subMenu.icon == ''\n ? ' mb-2'\n : 'mt-4 mb-2'\n \"\n >\n @if(subMenu.icon != ''){\n <lib-icon\n class=\"bold engrenagem-ajustada\"\n iconName=\"{{ subMenu.icon }}\"\n ></lib-icon>\n } @if(subMenu.titulo != ''){\n <span class=\"fw-bold fs-4 ms-1\">{{ subMenu.titulo }}</span>\n\n }\n <app-nav-tabs [subMenus]=\"navSubmenus[$index].subMenuItem\" [hostName]=\"hostNameOutSystems\"></app-nav-tabs>\n </div>\n @if(!$last){\n <hr />\n } }\n </div>\n</lib-container>\n", styles: [".engrenagem-ajustada{position:relative;top:-4px}\n"] }]
3666
+ }], ctorParameters: () => [{ type: MenuServicesService }, { type: ProjectUtilservice }], propDecorators: { navSubmenus: [{
3667
+ type: Input
3668
+ }], isProduction: [{
3669
+ type: Input
3670
+ }], hostname: [{
3671
+ type: Input
3672
+ }] } });
3673
+
3450
3674
  /** Modules */
3451
- //???f
3452
3675
 
3453
3676
  /**
3454
3677
  * Generated bundle index. Do not edit.
3455
3678
  */
3456
3679
 
3457
- export { AUTH_ROUTES, AuthAplicInterceptor, AuthGuard, AuthInfraInterceptor, AuthModule, AuthService, AuthStorageService, DynamicMenuComponent, ExternaLoginlGuard, IMenu, InfraUsuarioImg, LIB_CUSTOM_ENVIRONMENT_SERVICE, LIB_CUSTOM_LOGIN_SERVICE, LIB_CUSTOM_MENU_SERVICE, LIB_CUSTOM_STORAGE_SERVICE, LIB_MENU_CONFIG, LibCustomEnvironmentService, LibCustomLoginService, LibCustomMenuService, LibCustomStorageService, LibMenuConfigService, LoginComponent, LoginGuard, LoginOSComponent, LoginOSGuard, LoginProgress, MenuLateralComponent, MenuServicesService, NavSubmenuSearchItem, NotifSubmenuComponent, NovaSenhaComponent, PrimaryDropdownComponent, RetInfraUsuarioImg, RetMenuItemStructure, RetMenuLateral, RetMenuPromise, RetNavSubMenu, RetSubmenuWithCards, SecondaryDropdownComponent, SelecaoEstabelecimentosModalComponent, SituacaoLogin };
3680
+ export { AUTH_ROUTES, AuthAplicInterceptor, AuthGuard, AuthInfraInterceptor, AuthModule, AuthService, AuthStorageService, DynamicMenuComponent, ExternaLoginlGuard, IMenu, InfraUsuarioImg, LIB_CUSTOM_ENVIRONMENT_SERVICE, LIB_CUSTOM_LOGIN_SERVICE, LIB_CUSTOM_MENU_SERVICE, LIB_CUSTOM_STORAGE_SERVICE, LIB_MENU_CONFIG, LibCustomEnvironmentService, LibCustomLoginService, LibCustomMenuService, LibCustomStorageService, LibMenuConfigService, ListComponent, LoginComponent, LoginGuard, LoginOSComponent, LoginOSGuard, LoginProgress, MenuLateralComponent, MenuServicesService, NavSubMenus, NavSubmenuCards, NavSubmenuSearchItem, NavTabsComponent, NotifSubmenuComponent, NovaSenhaComponent, PrimaryDropdownComponent, RetInfraUsuarioImg, RetMenuItemStructure, RetMenuLateral, RetMenuPromise, RetNavSubMenu, RetSubmenuWithCards, SecondaryDropdownComponent, SelecaoEstabelecimentosModalComponent, SituacaoLogin, SubMenuCardComponent, SubMenuComponent, SubMenuItem, TelaItem };
3458
3681
  //# sourceMappingURL=ngx-sp-auth.mjs.map