keevo-components 1.8.547 → 1.8.549

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.
Files changed (67) hide show
  1. package/esm2022/lib/api/services/image.cutter.service.mjs +2 -2
  2. package/esm2022/lib/components/keevo-components.module.mjs +3 -3
  3. package/esm2022/lib/components/kv-avatar/kv-avatar.component.mjs +2 -2
  4. package/esm2022/lib/components/kv-button/kv-button.component.mjs +4 -3
  5. package/esm2022/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.mjs +2 -2
  6. package/esm2022/lib/components/kv-card-selection/kv-card-selection.component.mjs +3 -3
  7. package/esm2022/lib/components/kv-chart/kv-chart.component.mjs +2 -2
  8. package/esm2022/lib/components/kv-home-card/kv-home-card.component.mjs +1 -1
  9. package/esm2022/lib/components/kv-inputs/kv-check/kv-check.component.mjs +2 -2
  10. package/esm2022/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.mjs +2 -2
  11. package/esm2022/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.mjs +2 -2
  12. package/esm2022/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.mjs +2 -2
  13. package/esm2022/lib/components/kv-inputs/kv-input-number/kv-input-number.component.mjs +2 -2
  14. package/esm2022/lib/components/kv-inputs/kv-input-password/kv-input-password.component.mjs +2 -2
  15. package/esm2022/lib/components/kv-inputs/kv-input-text/kv-input-text.component.mjs +2 -2
  16. package/esm2022/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.mjs +2 -2
  17. package/esm2022/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.mjs +2 -2
  18. package/esm2022/lib/components/kv-inputs/kv-input-time/kv-input-time.component.mjs +2 -2
  19. package/esm2022/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.mjs +2 -2
  20. package/esm2022/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.mjs +2 -2
  21. package/esm2022/lib/components/kv-inputs/kv-switch/kv-switch.component.mjs +2 -2
  22. package/esm2022/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.mjs +2 -2
  23. package/esm2022/lib/components/kv-layout/dropdown-master/dropdown-master.component.mjs +3 -3
  24. package/esm2022/lib/components/kv-layout/kv-layout.module.mjs +18 -4
  25. package/esm2022/lib/components/kv-layout/layout/kv-layout.component.mjs +126 -51
  26. package/esm2022/lib/components/kv-layout/top-icons/top-icons.component.mjs +15 -0
  27. package/esm2022/lib/components/kv-modal/kv-modal.component.mjs +1 -1
  28. package/esm2022/lib/components/kv-orgchart/kv-orgchart.component.mjs +1 -1
  29. package/esm2022/lib/components/kv-page-form/kv-page-form.component.mjs +1 -1
  30. package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.component.mjs +6 -8
  31. package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.module.mjs +8 -4
  32. package/esm2022/lib/components/kv-pick-list/kv-pick-list.component.mjs +2 -2
  33. package/esm2022/lib/components/kv-stepper/kv-stepper.component.mjs +5 -7
  34. package/esm2022/lib/components/kv-stepper/kv-stepper.module.mjs +11 -4
  35. package/esm2022/lib/components/kv-table/kv-table.component.mjs +1 -1
  36. package/esm2022/lib/components/kv-table-edit/kv-table-edit.component.mjs +1 -1
  37. package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.component.mjs +1 -1
  38. package/esm2022/lib/components/kv-tree-table/kv-tree-table.component.mjs +1 -1
  39. package/esm2022/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.mjs +3 -44
  40. package/esm2022/lib/components/kv-workspace/kv-workspace.module.mjs +8 -4
  41. package/esm2022/lib/components/kv-workspace/master/kv-workspace-master.component.mjs +20 -5
  42. package/esm2022/lib/components/kv-workspace/workspace/kv-workspace.component.mjs +30 -17
  43. package/fesm2022/keevo-components.mjs +274 -175
  44. package/fesm2022/keevo-components.mjs.map +1 -1
  45. package/lib/components/kv-button/kv-button.component.d.ts +2 -1
  46. package/lib/components/kv-layout/kv-layout.module.d.ts +6 -4
  47. package/lib/components/kv-layout/layout/kv-layout.component.d.ts +51 -34
  48. package/lib/components/kv-layout/top-icons/top-icons.component.d.ts +15 -0
  49. package/lib/components/kv-page-stepper/kv-page-stepper.module.d.ts +2 -1
  50. package/lib/components/kv-stepper/kv-stepper.module.d.ts +2 -1
  51. package/lib/components/kv-table/kv-table.component.d.ts +1 -1
  52. package/lib/components/kv-table-expandable/kv-table-expandable.component.d.ts +1 -1
  53. package/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.d.ts +2 -9
  54. package/lib/components/kv-workspace/kv-workspace.module.d.ts +2 -1
  55. package/lib/components/kv-workspace/master/kv-workspace-master.component.d.ts +8 -1
  56. package/lib/components/kv-workspace/workspace/kv-workspace.component.d.ts +13 -5
  57. package/package.json +1 -1
  58. package/src/assets/images/LogoEvo.png +0 -0
  59. package/src/assets/images/LogoPequenaEvo.png +0 -0
  60. package/src/assets/images/background.png +0 -0
  61. package/src/assets/images/keepass-logo.png +0 -0
  62. package/src/assets/images/keepass-logo.svg +74 -0
  63. package/src/assets/images/keevo-logo.png +0 -0
  64. package/src/assets/images/logokeevo_2.png +0 -0
  65. package/src/lib/components/keevo-components-styles.scss +56 -3
  66. package/src/lib/components/kv-button/kv-button.component.scss +145 -0
  67. package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.scss +56 -0
@@ -1,14 +1,15 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
1
+ import { Component, computed, EventEmitter, inject, input, Input, output, Output, signal } from '@angular/core';
2
2
  import { ImagensService } from '../../../api/services/imagens.service';
3
+ import { FormBuilder } from '@angular/forms';
3
4
  import * as i0 from "@angular/core";
4
- import * as i1 from "../../kv-button/kv-button.component";
5
- import * as i2 from "../empresa/kv-workspace-empresa.component";
6
- import * as i3 from "../logo/kv-workspace-logo.component";
7
- import * as i4 from "../master/kv-workspace-master.component";
5
+ import * as i1 from "@angular/forms";
6
+ import * as i2 from "../../kv-button/kv-button.component";
7
+ import * as i3 from "../../kv-inputs/kv-input-text/kv-input-text.component";
8
+ import * as i4 from "../empresa/kv-workspace-empresa.component";
9
+ import * as i5 from "../master/kv-workspace-master.component";
8
10
  export class WorkspaceComponent {
9
11
  constructor() {
10
12
  this.backgroundImg = 'https://work-assets.keevo.com.br/img/background-keevocenter-login.jpg';
11
- this.nomeUsuario = 'Nome do Usuário Logado';
12
13
  this.somenteMaster = true;
13
14
  this.visivel = true;
14
15
  this.showBtnVoltar = false;
@@ -17,10 +18,27 @@ export class WorkspaceComponent {
17
18
  this.onGetEmpresaSelecionada = new EventEmitter();
18
19
  this.onPaginate = new EventEmitter();
19
20
  this.onBtnVoltarClick = new EventEmitter();
21
+ this.fb = inject(FormBuilder);
22
+ this.masters = input([]);
23
+ this.empresas = input([]);
24
+ this.nomeUsuario = input('Nome do Usuário Logado');
25
+ this.widthScreen = signal(window.innerWidth);
26
+ this.logoKeevoCenter = input('');
27
+ this.onFilter = output();
28
+ this.searchInput = signal('');
29
+ this.minWidthCard = computed(() => {
30
+ return this.widthScreen() >= 992 ? '45rem' : '100%';
31
+ });
20
32
  }
21
33
  ngOnInit() {
22
34
  this.imgPersonagens = ImagensService.getPersonagensWorkSpace();
23
35
  this.imgLogoKeevo = ImagensService.getLogoKeevo();
36
+ this.workspaceForm = this.fb.group({
37
+ search: ['']
38
+ });
39
+ window.addEventListener('resize', () => {
40
+ this.widthScreen.set(window.innerWidth);
41
+ });
24
42
  }
25
43
  paginate(event) {
26
44
  this.onPaginate.emit(event);
@@ -34,32 +52,27 @@ export class WorkspaceComponent {
34
52
  selecionarMaster(event) {
35
53
  this.onGetMasterSelecionada.emit(event);
36
54
  }
55
+ filter() {
56
+ this.onFilter.emit(this.workspaceForm.value.search);
57
+ }
37
58
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WorkspaceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
38
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: WorkspaceComponent, selector: "kv-workspace", inputs: { backgroundImg: "backgroundImg", logoKeevoCenter: "logoKeevoCenter", nomeUsuario: "nomeUsuario", somenteMaster: "somenteMaster", visivel: "visivel", showBtnVoltar: "showBtnVoltar", empresas: "empresas", empresaSelecionada: "empresaSelecionada", totalEmpresas: "totalEmpresas", masters: "masters", masterSelecionada: "masterSelecionada" }, outputs: { onGetMasterSelecionada: "onGetMasterSelecionada", onGetEmpresaSelecionada: "onGetEmpresaSelecionada", onPaginate: "onPaginate", onBtnVoltarClick: "onBtnVoltarClick" }, ngImport: i0, template: "@if(visivel){\r\n<div \r\n class=\"flex justify-content-center align-items-center flex-column h-screen \"\r\n id=\"kvworkspace-container\"\r\n [style.background-image]=\"'url(' + backgroundImg + ')'\"\r\n>\r\n <div id=\"card-workspace\" class=\"flex flex-column justify-content-around formgrid p-fluid bg-white border-round p-2\">\r\n\r\n <kv-workspace-logo\r\n [logoKeevoCenter]=\"logoKeevoCenter\"\r\n [masterSelecionada]=\"masterSelecionada\"\r\n [nomeUsuario]=\"nomeUsuario\">\r\n </kv-workspace-logo>\r\n\r\n @if(!masterSelecionada){\r\n <div class=\"col-12 z-5\">\r\n <kv-workspace-master\r\n [masters]=\"masters\"\r\n [masterSelecionada]=\"masterSelecionada\"\r\n (onMasterSelecionada)=\"selecionarMaster($event)\">\r\n </kv-workspace-master>\r\n </div>\r\n }\r\n\r\n @if(!somenteMaster && masterSelecionada){\r\n <kv-workspace-empresa\r\n [empresas]=\"empresas\"\r\n [totalEmpresas]=\"totalEmpresas\"\r\n (onEmpresaSelecionada)=\"selecionarEmpresa($event)\"\r\n (onPaginate)=\"paginate($event)\">\r\n </kv-workspace-empresa>\r\n }\r\n <!-- <kv-button\r\n class=\"col-2\" \r\n severity=\"secondary\" label=\"Voltar\" /> -->\r\n @if(showBtnVoltar && masterSelecionada) {\r\n <div class=\"flex\">\r\n <div class=\"col\">\r\n </div>\r\n <kv-button\r\n class=\"col-2\" \r\n severity=\"tertiary\" label=\"Voltar\" \r\n (onClick)=\"OnBtnVoltarClick()\"\r\n />\r\n </div>\r\n }\r\n\r\n </div>\r\n</div>\r\n}", styles: ["#card-workspace{width:80%;max-width:800px;box-shadow:#00000059 0 5px 15px}:host{overflow:hidden}#kvworkspace-container{font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important;background:no-repeat center;background-size:cover;padding:20px}\n"], dependencies: [{ kind: "component", type: i1.KvButtonComponent, selector: "kv-button", inputs: ["fullWidth", "type", "loading", "severity", "size", "icon", "label", "disabled"], outputs: ["onClick"] }, { kind: "component", type: i2.WorkspaceEmpresaComponent, selector: "kv-workspace-empresa", inputs: ["empresas", "empresaSelecionada", "totalEmpresas"], outputs: ["onEmpresaSelecionada", "onPaginate"] }, { kind: "component", type: i3.WokspaceLogoComponent, selector: "kv-workspace-logo", inputs: ["logoKeevoCenter", "nomeUsuario", "masterSelecionada"] }, { kind: "component", type: i4.WorkspaceMasterComponent, selector: "kv-workspace-master", inputs: ["masters", "masterSelecionada"], outputs: ["onMasterSelecionada"] }] }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: WorkspaceComponent, selector: "kv-workspace", inputs: { backgroundImg: { classPropertyName: "backgroundImg", publicName: "backgroundImg", isSignal: false, isRequired: false, transformFunction: null }, somenteMaster: { classPropertyName: "somenteMaster", publicName: "somenteMaster", isSignal: false, isRequired: false, transformFunction: null }, visivel: { classPropertyName: "visivel", publicName: "visivel", isSignal: false, isRequired: false, transformFunction: null }, showBtnVoltar: { classPropertyName: "showBtnVoltar", publicName: "showBtnVoltar", isSignal: false, isRequired: false, transformFunction: null }, empresaSelecionada: { classPropertyName: "empresaSelecionada", publicName: "empresaSelecionada", isSignal: false, isRequired: false, transformFunction: null }, totalEmpresas: { classPropertyName: "totalEmpresas", publicName: "totalEmpresas", isSignal: false, isRequired: false, transformFunction: null }, masterSelecionada: { classPropertyName: "masterSelecionada", publicName: "masterSelecionada", isSignal: false, isRequired: false, transformFunction: null }, masters: { classPropertyName: "masters", publicName: "masters", isSignal: true, isRequired: false, transformFunction: null }, empresas: { classPropertyName: "empresas", publicName: "empresas", isSignal: true, isRequired: false, transformFunction: null }, nomeUsuario: { classPropertyName: "nomeUsuario", publicName: "nomeUsuario", isSignal: true, isRequired: false, transformFunction: null }, logoKeevoCenter: { classPropertyName: "logoKeevoCenter", publicName: "logoKeevoCenter", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onGetMasterSelecionada: "onGetMasterSelecionada", onGetEmpresaSelecionada: "onGetEmpresaSelecionada", onPaginate: "onPaginate", onBtnVoltarClick: "onBtnVoltarClick", onFilter: "onFilter" }, ngImport: i0, template: "@if(visivel) {\r\n<div class=\"flex align-items-center justify-content-center\">\r\n <div\r\n class=\"bg-white h-auto border-round-lg lg:p-4 p-2 flex flex-column gap-2 overflow-hidden\"\r\n [style.max-width.rem]=\"'45'\"\r\n [style.min-width]=\"minWidthCard()\"\r\n >\r\n <div class=\"px-2 flex flex-column align-items-center gap-2\">\r\n <img [src]=\"logoKeevoCenter()\" style=\"height: 4rem\" class=\"py-2\" />\r\n <span class=\"text-sm\">\r\n Ol\u00E1, <b>{{ nomeUsuario() }}</b\r\n >. Bem vindo (a)! Escolha a\r\n <b>{{ !somenteMaster && masterSelecionada ? \"Empresa\" : \"Licen\u00E7a\" }}</b>\r\n que deseja acessar:\r\n </span>\r\n </div>\r\n\r\n <div\r\n class=\"col-12 grid formgrid p-fluid m-0 px-2 pt-2 pb-0\"\r\n [formGroup]=\"workspaceForm\"\r\n >\r\n <kv-input-text\r\n placeholder=\"Buscar {{\r\n !somenteMaster && masterSelecionada ? 'empresa' : 'licen\u00E7a'\r\n }}\"\r\n class=\"col-12 m-0 p-0\"\r\n (onInput)=\"filter()\"\r\n formControlName=\"search\"\r\n ></kv-input-text>\r\n </div>\r\n\r\n @if(!masterSelecionada){\r\n <kv-workspace-master\r\n [masters]=\"masters()\"\r\n [masterSelecionada]=\"masterSelecionada\"\r\n (onMasterSelecionada)=\"selecionarMaster($event)\"\r\n >\r\n </kv-workspace-master>\r\n } @if(!somenteMaster && masterSelecionada){\r\n <kv-workspace-empresa\r\n [empresas]=\"empresas()\"\r\n [totalEmpresas]=\"totalEmpresas\"\r\n (onEmpresaSelecionada)=\"selecionarEmpresa($event)\"\r\n (onPaginate)=\"paginate($event)\"\r\n >\r\n </kv-workspace-empresa>\r\n } \r\n @if(showBtnVoltar && masterSelecionada) {\r\n <div class=\"flex text-left mt-2\">\r\n <kv-button\r\n icon=\"chevron_left\"\r\n iconPosition=\"left\"\r\n label=\"Voltar\"\r\n type=\"text\"\r\n severity=\"secondary\"\r\n class=\"ml-2\"\r\n (onClick)=\"OnBtnVoltarClick()\"\r\n />\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n}\r\n", styles: [":host{overflow:hidden}.cards-container{overflow-x:hidden;transition:all .2s}.cards-container::-webkit-scrollbar{width:6px}.cards-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}.cards-container:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:rgba(var(--kv-secondary-color),.75)}.cards-container::-webkit-scrollbar-track{border-left:2px solid white;background-color:rgba(var(--kv-secondary-color),.15)}.voltar-box{display:flex;flex-direction:row;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;transition:all .2s}.voltar-box:hover{opacity:.8}.voltar-box:active{opacity:.9}.link{color:rgba(var(--kv-secondary-color),.9);text-decoration:none;cursor:pointer}.link:active{color:rgba(var(--kv-secondary-color),1)}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.KvButtonComponent, selector: "kv-button", inputs: ["fullWidth", "type", "loading", "severity", "size", "icon", "iconPosition", "label", "disabled"], outputs: ["onClick"] }, { kind: "component", type: i3.KvInputTextComponent, selector: "kv-input-text", inputs: ["textCaptalized"] }, { kind: "component", type: i4.WorkspaceEmpresaComponent, selector: "kv-workspace-empresa", inputs: ["empresas", "empresaSelecionada", "totalEmpresas"], outputs: ["onEmpresaSelecionada", "onPaginate"] }, { kind: "component", type: i5.WorkspaceMasterComponent, selector: "kv-workspace-master", inputs: ["masters", "masterSelecionada", "emptyText"], outputs: ["onMasterSelecionada"] }] }); }
39
60
  }
40
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: WorkspaceComponent, decorators: [{
41
62
  type: Component,
42
- args: [{ selector: 'kv-workspace', template: "@if(visivel){\r\n<div \r\n class=\"flex justify-content-center align-items-center flex-column h-screen \"\r\n id=\"kvworkspace-container\"\r\n [style.background-image]=\"'url(' + backgroundImg + ')'\"\r\n>\r\n <div id=\"card-workspace\" class=\"flex flex-column justify-content-around formgrid p-fluid bg-white border-round p-2\">\r\n\r\n <kv-workspace-logo\r\n [logoKeevoCenter]=\"logoKeevoCenter\"\r\n [masterSelecionada]=\"masterSelecionada\"\r\n [nomeUsuario]=\"nomeUsuario\">\r\n </kv-workspace-logo>\r\n\r\n @if(!masterSelecionada){\r\n <div class=\"col-12 z-5\">\r\n <kv-workspace-master\r\n [masters]=\"masters\"\r\n [masterSelecionada]=\"masterSelecionada\"\r\n (onMasterSelecionada)=\"selecionarMaster($event)\">\r\n </kv-workspace-master>\r\n </div>\r\n }\r\n\r\n @if(!somenteMaster && masterSelecionada){\r\n <kv-workspace-empresa\r\n [empresas]=\"empresas\"\r\n [totalEmpresas]=\"totalEmpresas\"\r\n (onEmpresaSelecionada)=\"selecionarEmpresa($event)\"\r\n (onPaginate)=\"paginate($event)\">\r\n </kv-workspace-empresa>\r\n }\r\n <!-- <kv-button\r\n class=\"col-2\" \r\n severity=\"secondary\" label=\"Voltar\" /> -->\r\n @if(showBtnVoltar && masterSelecionada) {\r\n <div class=\"flex\">\r\n <div class=\"col\">\r\n </div>\r\n <kv-button\r\n class=\"col-2\" \r\n severity=\"tertiary\" label=\"Voltar\" \r\n (onClick)=\"OnBtnVoltarClick()\"\r\n />\r\n </div>\r\n }\r\n\r\n </div>\r\n</div>\r\n}", styles: ["#card-workspace{width:80%;max-width:800px;box-shadow:#00000059 0 5px 15px}:host{overflow:hidden}#kvworkspace-container{font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important;background:no-repeat center;background-size:cover;padding:20px}\n"] }]
63
+ args: [{ selector: 'kv-workspace', template: "@if(visivel) {\r\n<div class=\"flex align-items-center justify-content-center\">\r\n <div\r\n class=\"bg-white h-auto border-round-lg lg:p-4 p-2 flex flex-column gap-2 overflow-hidden\"\r\n [style.max-width.rem]=\"'45'\"\r\n [style.min-width]=\"minWidthCard()\"\r\n >\r\n <div class=\"px-2 flex flex-column align-items-center gap-2\">\r\n <img [src]=\"logoKeevoCenter()\" style=\"height: 4rem\" class=\"py-2\" />\r\n <span class=\"text-sm\">\r\n Ol\u00E1, <b>{{ nomeUsuario() }}</b\r\n >. Bem vindo (a)! Escolha a\r\n <b>{{ !somenteMaster && masterSelecionada ? \"Empresa\" : \"Licen\u00E7a\" }}</b>\r\n que deseja acessar:\r\n </span>\r\n </div>\r\n\r\n <div\r\n class=\"col-12 grid formgrid p-fluid m-0 px-2 pt-2 pb-0\"\r\n [formGroup]=\"workspaceForm\"\r\n >\r\n <kv-input-text\r\n placeholder=\"Buscar {{\r\n !somenteMaster && masterSelecionada ? 'empresa' : 'licen\u00E7a'\r\n }}\"\r\n class=\"col-12 m-0 p-0\"\r\n (onInput)=\"filter()\"\r\n formControlName=\"search\"\r\n ></kv-input-text>\r\n </div>\r\n\r\n @if(!masterSelecionada){\r\n <kv-workspace-master\r\n [masters]=\"masters()\"\r\n [masterSelecionada]=\"masterSelecionada\"\r\n (onMasterSelecionada)=\"selecionarMaster($event)\"\r\n >\r\n </kv-workspace-master>\r\n } @if(!somenteMaster && masterSelecionada){\r\n <kv-workspace-empresa\r\n [empresas]=\"empresas()\"\r\n [totalEmpresas]=\"totalEmpresas\"\r\n (onEmpresaSelecionada)=\"selecionarEmpresa($event)\"\r\n (onPaginate)=\"paginate($event)\"\r\n >\r\n </kv-workspace-empresa>\r\n } \r\n @if(showBtnVoltar && masterSelecionada) {\r\n <div class=\"flex text-left mt-2\">\r\n <kv-button\r\n icon=\"chevron_left\"\r\n iconPosition=\"left\"\r\n label=\"Voltar\"\r\n type=\"text\"\r\n severity=\"secondary\"\r\n class=\"ml-2\"\r\n (onClick)=\"OnBtnVoltarClick()\"\r\n />\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n}\r\n", styles: [":host{overflow:hidden}.cards-container{overflow-x:hidden;transition:all .2s}.cards-container::-webkit-scrollbar{width:6px}.cards-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}.cards-container:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:rgba(var(--kv-secondary-color),.75)}.cards-container::-webkit-scrollbar-track{border-left:2px solid white;background-color:rgba(var(--kv-secondary-color),.15)}.voltar-box{display:flex;flex-direction:row;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;transition:all .2s}.voltar-box:hover{opacity:.8}.voltar-box:active{opacity:.9}.link{color:rgba(var(--kv-secondary-color),.9);text-decoration:none;cursor:pointer}.link:active{color:rgba(var(--kv-secondary-color),1)}\n"] }]
43
64
  }], ctorParameters: () => [], propDecorators: { backgroundImg: [{
44
65
  type: Input
45
- }], logoKeevoCenter: [{
46
- type: Input
47
- }], nomeUsuario: [{
48
- type: Input
49
66
  }], somenteMaster: [{
50
67
  type: Input
51
68
  }], visivel: [{
52
69
  type: Input
53
70
  }], showBtnVoltar: [{
54
71
  type: Input
55
- }], empresas: [{
56
- type: Input
57
72
  }], empresaSelecionada: [{
58
73
  type: Input
59
74
  }], totalEmpresas: [{
60
75
  type: Input
61
- }], masters: [{
62
- type: Input
63
76
  }], masterSelecionada: [{
64
77
  type: Input
65
78
  }], onGetMasterSelecionada: [{
@@ -71,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
71
84
  }], onBtnVoltarClick: [{
72
85
  type: Output
73
86
  }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytd29ya3NwYWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LXdvcmtzcGFjZS93b3Jrc3BhY2Uva3Ytd29ya3NwYWNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LXdvcmtzcGFjZS93b3Jrc3BhY2Uva3Ytd29ya3NwYWNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7QUFPdkUsTUFBTSxPQUFPLGtCQUFrQjtJQXVCN0I7UUFuQlMsa0JBQWEsR0FBVyx1RUFBdUUsQ0FBQztRQUVoRyxnQkFBVyxHQUFXLHdCQUF3QixDQUFDO1FBQy9DLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFDeEIsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFJL0Isa0JBQWEsR0FBVyxDQUFDLENBQUM7UUFLekIsMkJBQXNCLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNqRCw0QkFBdUIsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ2xELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3JDLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFckMsQ0FBQztJQUVqQixRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUMvRCxJQUFJLENBQUMsWUFBWSxHQUFHLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwRCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVU7UUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGdCQUFnQjtRQUNmLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsT0FBWTtRQUM1QixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFVO1FBQ3pCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUMsQ0FBQzs4R0E1Q1Usa0JBQWtCO2tHQUFsQixrQkFBa0IsbWtCQ2QvQiw2aERBaURDOzsyRkRuQ1ksa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGNBQWM7d0RBUWYsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUksc0JBQXNCO3NCQUEvQixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEltYWdlbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vYXBpL3NlcnZpY2VzL2ltYWdlbnMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LXdvcmtzcGFjZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LXdvcmtzcGFjZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va3Ytd29ya3NwYWNlLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXb3Jrc3BhY2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBpbWdMb2dvS2Vldm8gITogc3RyaW5nO1xyXG4gIGltZ1BlcnNvbmFnZW5zITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGJhY2tncm91bmRJbWc6IHN0cmluZyA9ICdodHRwczovL3dvcmstYXNzZXRzLmtlZXZvLmNvbS5ici9pbWcvYmFja2dyb3VuZC1rZWV2b2NlbnRlci1sb2dpbi5qcGcnO1xyXG4gIEBJbnB1dCgpIGxvZ29LZWV2b0NlbnRlciAhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbm9tZVVzdWFyaW86IHN0cmluZyA9ICdOb21lIGRvIFVzdcOhcmlvIExvZ2Fkbyc7XHJcbiAgQElucHV0KCkgc29tZW50ZU1hc3RlcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgdmlzaXZlbDogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2hvd0J0blZvbHRhcjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSBlbXByZXNhcyE6IGFueVtdO1xyXG4gIEBJbnB1dCgpIGVtcHJlc2FTZWxlY2lvbmFkYSE6IGFueVxyXG4gIEBJbnB1dCgpIHRvdGFsRW1wcmVzYXM6IG51bWJlciA9IDA7XHJcblxyXG4gIEBJbnB1dCgpIG1hc3RlcnMhOiBhbnlbXTtcclxuICBASW5wdXQoKSBtYXN0ZXJTZWxlY2lvbmFkYSE6IGFueTtcclxuXHJcbiAgQE91dHB1dCgpIG9uR2V0TWFzdGVyU2VsZWNpb25hZGEgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgb25HZXRFbXByZXNhU2VsZWNpb25hZGEgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgb25QYWdpbmF0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBvbkJ0blZvbHRhckNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbWdQZXJzb25hZ2VucyA9IEltYWdlbnNTZXJ2aWNlLmdldFBlcnNvbmFnZW5zV29ya1NwYWNlKCk7XHJcbiAgICB0aGlzLmltZ0xvZ29LZWV2byA9IEltYWdlbnNTZXJ2aWNlLmdldExvZ29LZWV2bygpO1xyXG4gIH1cclxuXHJcbiAgcGFnaW5hdGUoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5vblBhZ2luYXRlLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgT25CdG5Wb2x0YXJDbGljaygpIHtcclxuICAgdGhpcy5vbkJ0blZvbHRhckNsaWNrLmVtaXQoKTsgXHJcbiAgfVxyXG5cclxuICBzZWxlY2lvbmFyRW1wcmVzYShlbXByZXNhOiBhbnkpIHtcclxuICAgIHRoaXMub25HZXRFbXByZXNhU2VsZWNpb25hZGEuZW1pdChlbXByZXNhKTtcclxuICB9XHJcblxyXG4gIHNlbGVjaW9uYXJNYXN0ZXIoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5vbkdldE1hc3RlclNlbGVjaW9uYWRhLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxufVxyXG4iLCJAaWYodmlzaXZlbCl7XHJcbjxkaXYgXHJcbiAgY2xhc3M9XCJmbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uIGgtc2NyZWVuIFwiXHJcbiAgaWQ9XCJrdndvcmtzcGFjZS1jb250YWluZXJcIlxyXG4gIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cIid1cmwoJyArIGJhY2tncm91bmRJbWcgKyAnKSdcIlxyXG4+XHJcbiAgPGRpdiBpZD1cImNhcmQtd29ya3NwYWNlXCIgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGp1c3RpZnktY29udGVudC1hcm91bmQgZm9ybWdyaWQgcC1mbHVpZCAgYmctd2hpdGUgYm9yZGVyLXJvdW5kIHAtMlwiPlxyXG5cclxuICAgIDxrdi13b3Jrc3BhY2UtbG9nb1xyXG4gICAgICBbbG9nb0tlZXZvQ2VudGVyXT1cImxvZ29LZWV2b0NlbnRlclwiXHJcbiAgICAgIFttYXN0ZXJTZWxlY2lvbmFkYV09XCJtYXN0ZXJTZWxlY2lvbmFkYVwiXHJcbiAgICAgIFtub21lVXN1YXJpb109XCJub21lVXN1YXJpb1wiPlxyXG4gICAgPC9rdi13b3Jrc3BhY2UtbG9nbz5cclxuXHJcbiAgICBAaWYoIW1hc3RlclNlbGVjaW9uYWRhKXtcclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgei01XCI+XHJcbiAgICAgIDxrdi13b3Jrc3BhY2UtbWFzdGVyXHJcbiAgICAgICAgW21hc3RlcnNdPVwibWFzdGVyc1wiXHJcbiAgICAgICAgW21hc3RlclNlbGVjaW9uYWRhXT1cIm1hc3RlclNlbGVjaW9uYWRhXCJcclxuICAgICAgICAob25NYXN0ZXJTZWxlY2lvbmFkYSk9XCJzZWxlY2lvbmFyTWFzdGVyKCRldmVudClcIj5cclxuICAgICAgPC9rdi13b3Jrc3BhY2UtbWFzdGVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICB9XHJcblxyXG4gICAgQGlmKCFzb21lbnRlTWFzdGVyICYmIG1hc3RlclNlbGVjaW9uYWRhKXtcclxuICAgIDxrdi13b3Jrc3BhY2UtZW1wcmVzYVxyXG4gICAgICBbZW1wcmVzYXNdPVwiZW1wcmVzYXNcIlxyXG4gICAgICBbdG90YWxFbXByZXNhc109XCJ0b3RhbEVtcHJlc2FzXCJcclxuICAgICAgKG9uRW1wcmVzYVNlbGVjaW9uYWRhKT1cInNlbGVjaW9uYXJFbXByZXNhKCRldmVudClcIlxyXG4gICAgICAob25QYWdpbmF0ZSk9XCJwYWdpbmF0ZSgkZXZlbnQpXCI+XHJcbiAgICA8L2t2LXdvcmtzcGFjZS1lbXByZXNhPlxyXG4gICAgfVxyXG4gICAgPCEtLSA8a3YtYnV0dG9uXHJcbiAgICBjbGFzcz1cImNvbC0yXCIgXHJcbiAgICBzZXZlcml0eT1cInNlY29uZGFyeVwiIGxhYmVsPVwiVm9sdGFyXCIgLz4gLS0+XHJcbiAgICBAaWYoc2hvd0J0blZvbHRhciAmJiBtYXN0ZXJTZWxlY2lvbmFkYSkge1xyXG4gICAgPGRpdiBjbGFzcz1cImZsZXhcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGt2LWJ1dHRvblxyXG4gICAgICBjbGFzcz1cImNvbC0yXCIgXHJcbiAgICAgIHNldmVyaXR5PVwidGVydGlhcnlcIiBsYWJlbD1cIlZvbHRhclwiIFxyXG4gICAgICAob25DbGljayk9XCJPbkJ0blZvbHRhckNsaWNrKClcIlxyXG4gICAgICAvPlxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbn0iXX0=
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytd29ya3NwYWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LXdvcmtzcGFjZS93b3Jrc3BhY2Uva3Ytd29ya3NwYWNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LXdvcmtzcGFjZS93b3Jrc3BhY2Uva3Ytd29ya3NwYWNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsUUFBUSxFQUVSLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLEtBQUssRUFFTCxNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBYSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBT3hELE1BQU0sT0FBTyxrQkFBa0I7SUFtQzdCO1FBL0JTLGtCQUFhLEdBQVcsdUVBQXVFLENBQUM7UUFDaEcsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFDOUIsWUFBTyxHQUFZLElBQUksQ0FBQztRQUN4QixrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUcvQixrQkFBYSxHQUFXLENBQUMsQ0FBQztRQUl6QiwyQkFBc0IsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ2pELDRCQUF1QixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDbEQsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDckMscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVyRCxPQUFFLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3pCLFlBQU8sR0FBRyxLQUFLLENBQVEsRUFBRSxDQUFDLENBQUM7UUFDM0IsYUFBUSxHQUFHLEtBQUssQ0FBUSxFQUFFLENBQUMsQ0FBQztRQUM1QixnQkFBVyxHQUFHLEtBQUssQ0FBUyx3QkFBd0IsQ0FBQyxDQUFDO1FBR3RELGdCQUFXLEdBQUcsTUFBTSxDQUFTLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoRCxvQkFBZSxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNwQyxhQUFRLEdBQUcsTUFBTSxFQUFPLENBQUM7UUFFekIsZ0JBQVcsR0FBRyxNQUFNLENBQVMsRUFBRSxDQUFDLENBQUM7UUFFakMsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzNCLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDdEQsQ0FBQyxDQUFDLENBQUM7SUFFYSxDQUFDO0lBRWpCLFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQy9ELElBQUksQ0FBQyxZQUFZLEdBQUcsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRWxELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDakMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO1NBQ2IsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELGlCQUFpQixDQUFDLE9BQVk7UUFDNUIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBVTtRQUN6QixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDckQsQ0FBQzs4R0FwRVUsa0JBQWtCO2tHQUFsQixrQkFBa0Isd3lEQ3JCL0Isc2pFQStEQTs7MkZEMUNhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxjQUFjO3dEQVFmLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUksc0JBQXNCO3NCQUEvQixNQUFNO2dCQUNHLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIGNvbXB1dGVkLFxyXG4gIGVmZmVjdCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgaW5qZWN0LFxyXG4gIGlucHV0LFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBvdXRwdXQsXHJcbiAgT3V0cHV0LFxyXG4gIHNpZ25hbFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJbWFnZW5zU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2FwaS9zZXJ2aWNlcy9pbWFnZW5zLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi13b3Jrc3BhY2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi13b3Jrc3BhY2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2t2LXdvcmtzcGFjZS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgV29ya3NwYWNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgaW1nTG9nb0tlZXZvICE6IHN0cmluZztcclxuICBpbWdQZXJzb25hZ2VucyE6IHN0cmluZztcclxuICBASW5wdXQoKSBiYWNrZ3JvdW5kSW1nOiBzdHJpbmcgPSAnaHR0cHM6Ly93b3JrLWFzc2V0cy5rZWV2by5jb20uYnIvaW1nL2JhY2tncm91bmQta2Vldm9jZW50ZXItbG9naW4uanBnJztcclxuICBASW5wdXQoKSBzb21lbnRlTWFzdGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSB2aXNpdmVsOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93QnRuVm9sdGFyOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIGVtcHJlc2FTZWxlY2lvbmFkYSE6IGFueVxyXG4gIEBJbnB1dCgpIHRvdGFsRW1wcmVzYXM6IG51bWJlciA9IDA7XHJcblxyXG4gIEBJbnB1dCgpIG1hc3RlclNlbGVjaW9uYWRhITogYW55O1xyXG5cclxuICBAT3V0cHV0KCkgb25HZXRNYXN0ZXJTZWxlY2lvbmFkYSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBvbkdldEVtcHJlc2FTZWxlY2lvbmFkYSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBvblBhZ2luYXRlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIG9uQnRuVm9sdGFyQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgZmIgPSBpbmplY3QoRm9ybUJ1aWxkZXIpO1xyXG4gIG1hc3RlcnMgPSBpbnB1dDxhbnlbXT4oW10pO1xyXG4gIGVtcHJlc2FzID0gaW5wdXQ8YW55W10+KFtdKTtcclxuICBub21lVXN1YXJpbyA9IGlucHV0PHN0cmluZz4oJ05vbWUgZG8gVXN1w6FyaW8gTG9nYWRvJyk7XHJcbiAgd29ya3NwYWNlRm9ybSE6IEZvcm1Hcm91cDtcclxuXHJcbiAgd2lkdGhTY3JlZW4gPSBzaWduYWw8bnVtYmVyPih3aW5kb3cuaW5uZXJXaWR0aCk7XHJcbiAgbG9nb0tlZXZvQ2VudGVyID0gaW5wdXQ8c3RyaW5nPignJyk7XHJcbiAgb25GaWx0ZXIgPSBvdXRwdXQ8YW55PigpO1xyXG5cclxuICBzZWFyY2hJbnB1dCA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcclxuXHJcbiAgbWluV2lkdGhDYXJkID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMud2lkdGhTY3JlZW4oKSA+PSA5OTIgPyAnNDVyZW0nIDogJzEwMCUnO1xyXG4gIH0pO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaW1nUGVyc29uYWdlbnMgPSBJbWFnZW5zU2VydmljZS5nZXRQZXJzb25hZ2Vuc1dvcmtTcGFjZSgpO1xyXG4gICAgdGhpcy5pbWdMb2dvS2Vldm8gPSBJbWFnZW5zU2VydmljZS5nZXRMb2dvS2Vldm8oKTtcclxuXHJcbiAgICB0aGlzLndvcmtzcGFjZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgc2VhcmNoOiBbJyddXHJcbiAgICB9KTtcclxuXHJcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgKCkgPT4ge1xyXG4gICAgICB0aGlzLndpZHRoU2NyZWVuLnNldCh3aW5kb3cuaW5uZXJXaWR0aCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHBhZ2luYXRlKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMub25QYWdpbmF0ZS5lbWl0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIE9uQnRuVm9sdGFyQ2xpY2soKSB7XHJcbiAgICB0aGlzLm9uQnRuVm9sdGFyQ2xpY2suZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWNpb25hckVtcHJlc2EoZW1wcmVzYTogYW55KSB7XHJcbiAgICB0aGlzLm9uR2V0RW1wcmVzYVNlbGVjaW9uYWRhLmVtaXQoZW1wcmVzYSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY2lvbmFyTWFzdGVyKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMub25HZXRNYXN0ZXJTZWxlY2lvbmFkYS5lbWl0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIGZpbHRlcigpIHtcclxuICAgIHRoaXMub25GaWx0ZXIuZW1pdCh0aGlzLndvcmtzcGFjZUZvcm0udmFsdWUuc2VhcmNoKVxyXG4gIH1cclxufVxyXG4iLCJAaWYodmlzaXZlbCkge1xyXG48ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwiYmctd2hpdGUgaC1hdXRvIGJvcmRlci1yb3VuZC1sZyBsZzpwLTQgcC0yIGZsZXggZmxleC1jb2x1bW4gZ2FwLTIgb3ZlcmZsb3ctaGlkZGVuXCJcclxuICAgIFtzdHlsZS5tYXgtd2lkdGgucmVtXT1cIic0NSdcIlxyXG4gICAgW3N0eWxlLm1pbi13aWR0aF09XCJtaW5XaWR0aENhcmQoKVwiXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cInB4LTIgZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIj5cclxuICAgICAgPGltZyBbc3JjXT1cImxvZ29LZWV2b0NlbnRlcigpXCIgc3R5bGU9XCJoZWlnaHQ6IDRyZW1cIiBjbGFzcz1cInB5LTJcIiAvPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInRleHQtc21cIj5cclxuICAgICAgICBPbMOhLCA8Yj57eyBub21lVXN1YXJpbygpIH19PC9iXHJcbiAgICAgICAgPi4gQmVtIHZpbmRvIChhKSEgRXNjb2xoYSBhXHJcbiAgICAgICAgPGI+e3sgIXNvbWVudGVNYXN0ZXIgJiYgbWFzdGVyU2VsZWNpb25hZGEgPyBcIkVtcHJlc2FcIiA6IFwiTGljZW7Dp2FcIiB9fTwvYj5cclxuICAgICAgICBxdWUgZGVzZWphIGFjZXNzYXI6XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJjb2wtMTIgZ3JpZCBmb3JtZ3JpZCBwLWZsdWlkIG0tMCBweC0yIHB0LTIgcGItMFwiXHJcbiAgICAgIFtmb3JtR3JvdXBdPVwid29ya3NwYWNlRm9ybVwiXHJcbiAgICA+XHJcbiAgICAgIDxrdi1pbnB1dC10ZXh0XHJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJCdXNjYXIge3tcclxuICAgICAgICAgICFzb21lbnRlTWFzdGVyICYmIG1hc3RlclNlbGVjaW9uYWRhID8gJ2VtcHJlc2EnIDogJ2xpY2Vuw6dhJ1xyXG4gICAgICAgIH19XCJcclxuICAgICAgICBjbGFzcz1cImNvbC0xMiBtLTAgcC0wXCJcclxuICAgICAgICAob25JbnB1dCk9XCJmaWx0ZXIoKVwiXHJcbiAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic2VhcmNoXCJcclxuICAgICAgPjwva3YtaW5wdXQtdGV4dD5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIEBpZighbWFzdGVyU2VsZWNpb25hZGEpe1xyXG4gICAgPGt2LXdvcmtzcGFjZS1tYXN0ZXJcclxuICAgICAgW21hc3RlcnNdPVwibWFzdGVycygpXCJcclxuICAgICAgW21hc3RlclNlbGVjaW9uYWRhXT1cIm1hc3RlclNlbGVjaW9uYWRhXCJcclxuICAgICAgKG9uTWFzdGVyU2VsZWNpb25hZGEpPVwic2VsZWNpb25hck1hc3RlcigkZXZlbnQpXCJcclxuICAgID5cclxuICAgIDwva3Ytd29ya3NwYWNlLW1hc3Rlcj5cclxuICAgIH0gQGlmKCFzb21lbnRlTWFzdGVyICYmIG1hc3RlclNlbGVjaW9uYWRhKXtcclxuICAgIDxrdi13b3Jrc3BhY2UtZW1wcmVzYVxyXG4gICAgICBbZW1wcmVzYXNdPVwiZW1wcmVzYXMoKVwiXHJcbiAgICAgIFt0b3RhbEVtcHJlc2FzXT1cInRvdGFsRW1wcmVzYXNcIlxyXG4gICAgICAob25FbXByZXNhU2VsZWNpb25hZGEpPVwic2VsZWNpb25hckVtcHJlc2EoJGV2ZW50KVwiXHJcbiAgICAgIChvblBhZ2luYXRlKT1cInBhZ2luYXRlKCRldmVudClcIlxyXG4gICAgPlxyXG4gICAgPC9rdi13b3Jrc3BhY2UtZW1wcmVzYT5cclxuICAgIH0gXHJcbiAgICBAaWYoc2hvd0J0blZvbHRhciAmJiBtYXN0ZXJTZWxlY2lvbmFkYSkge1xyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggdGV4dC1sZWZ0IG10LTJcIj5cclxuICAgICAgPGt2LWJ1dHRvblxyXG4gICAgICAgIGljb249XCJjaGV2cm9uX2xlZnRcIlxyXG4gICAgICAgIGljb25Qb3NpdGlvbj1cImxlZnRcIlxyXG4gICAgICAgIGxhYmVsPVwiVm9sdGFyXCJcclxuICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgc2V2ZXJpdHk9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgIGNsYXNzPVwibWwtMlwiXHJcbiAgICAgICAgKG9uQ2xpY2spPVwiT25CdG5Wb2x0YXJDbGljaygpXCJcclxuICAgICAgLz5cclxuICAgIDwvZGl2PlxyXG4gICAgfVxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxufVxyXG4iXX0=