keevo-components 1.8.70 → 1.8.72

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 (121) hide show
  1. package/README.md +24 -24
  2. package/esm2022/lib/api/base-components/base-component-button.mjs +1 -1
  3. package/esm2022/lib/api/base-components/base-component-chart.mjs +1 -1
  4. package/esm2022/lib/api/base-components/base-component-crud-form.mjs +1 -1
  5. package/esm2022/lib/api/base-components/base-component-crud-list.mjs +1 -1
  6. package/esm2022/lib/api/base-components/base-component-crud.mjs +1 -1
  7. package/esm2022/lib/api/base-components/base-component-dropdown-external.mjs +1 -1
  8. package/esm2022/lib/api/base-components/base-component-dropdown.mjs +1 -1
  9. package/esm2022/lib/api/base-components/base-component-input.mjs +1 -1
  10. package/esm2022/lib/api/base-components/base-component-multi-select.mjs +1 -1
  11. package/esm2022/lib/api/base-components/base-component.mjs +1 -1
  12. package/esm2022/lib/api/components/chart/chart.config.mjs +1 -1
  13. package/esm2022/lib/api/components/chart/chart.model.mjs +1 -1
  14. package/esm2022/lib/api/components/chart/orchart.config.mjs +1 -1
  15. package/esm2022/lib/api/components/chart/orchart.item.mjs +1 -1
  16. package/esm2022/lib/api/components/dropdown/filtro.combo.mjs +1 -1
  17. package/esm2022/lib/api/components/table/action-item.mjs +1 -1
  18. package/esm2022/lib/api/components/table/kv-menuitem.mjs +1 -1
  19. package/esm2022/lib/api/components/table/table-dropdown-control.mjs +1 -1
  20. package/esm2022/lib/api/components/table/table.config.column.mjs +1 -1
  21. package/esm2022/lib/api/components/table/table.config.mjs +1 -1
  22. package/esm2022/lib/api/components/table/table.paginate.mjs +1 -1
  23. package/esm2022/lib/api/components/table/tabledit.config.mjs +1 -1
  24. package/esm2022/lib/api/components/table/tableedit.config.column.mjs +1 -1
  25. package/esm2022/lib/api/directives/template/template.directive.mjs +1 -1
  26. package/esm2022/lib/api/helpers/component-providers.mjs +1 -1
  27. package/esm2022/lib/api/helpers/keevo-validators.mjs +14 -5
  28. package/esm2022/lib/api/helpers/translate-primeng.mjs +1 -1
  29. package/esm2022/lib/api/models/aplicativo-model.mjs +12 -0
  30. package/esm2022/lib/api/models/master-combo-model.mjs +2 -0
  31. package/esm2022/lib/api/models/menu-model.mjs +2 -0
  32. package/esm2022/lib/api/modules/primeng.module.mjs +1 -1
  33. package/esm2022/lib/api/pipes/cpfcnpj.pipe.mjs +1 -1
  34. package/esm2022/lib/api/pipes/mask.pipe.mjs +1 -1
  35. package/esm2022/lib/api/pipes/pipes.module.mjs +1 -1
  36. package/esm2022/lib/api/pipes/telefone.pipe.mjs +1 -1
  37. package/esm2022/lib/api/services/base.api.service.mjs +1 -1
  38. package/esm2022/lib/api/services/breadcrumbs.service.mjs +1 -1
  39. package/esm2022/lib/api/services/component.service.mjs +1 -1
  40. package/esm2022/lib/api/services/docs.service.mjs +129 -0
  41. package/esm2022/lib/api/services/form.service.mjs +1 -1
  42. package/esm2022/lib/api/services/imagens.service.mjs +1 -1
  43. package/esm2022/lib/api/services/notification.service.mjs +1 -1
  44. package/esm2022/lib/api/services/object.service.mjs +1 -1
  45. package/esm2022/lib/components/keevo-components.module.mjs +12 -5
  46. package/esm2022/lib/components/kv-avatar/kv-avatar.component.mjs +3 -3
  47. package/esm2022/lib/components/kv-avatar/kv-avatar.module.mjs +1 -1
  48. package/esm2022/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.mjs +3 -3
  49. package/esm2022/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.mjs +3 -3
  50. package/esm2022/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.mjs +3 -3
  51. package/esm2022/lib/components/kv-buttons/kv-button-success/kv-button-success.component.mjs +3 -3
  52. package/esm2022/lib/components/kv-buttons/kv-button.module.mjs +1 -1
  53. package/esm2022/lib/components/kv-carousel/kv-carousel.component.mjs +3 -3
  54. package/esm2022/lib/components/kv-carousel/kv-carousel.module.mjs +1 -1
  55. package/esm2022/lib/components/kv-chart/kv-chart.component.mjs +3 -3
  56. package/esm2022/lib/components/kv-chart/kv-chart.module.mjs +1 -1
  57. package/esm2022/lib/components/kv-error/kv-error.component.mjs +3 -3
  58. package/esm2022/lib/components/kv-error/kv-error.module.mjs +1 -1
  59. package/esm2022/lib/components/kv-inputs/kv-check/kv-check.component.mjs +3 -3
  60. package/esm2022/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.mjs +3 -3
  61. package/esm2022/lib/components/kv-inputs/kv-editor/kv-editor.component.mjs +3 -3
  62. package/esm2022/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.mjs +3 -3
  63. package/esm2022/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.mjs +3 -3
  64. package/esm2022/lib/components/kv-inputs/kv-input-number/kv-input-number.component.mjs +3 -3
  65. package/esm2022/lib/components/kv-inputs/kv-input-password/kv-input-password.component.mjs +3 -3
  66. package/esm2022/lib/components/kv-inputs/kv-input-text/kv-input-text.component.mjs +3 -3
  67. package/esm2022/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.mjs +3 -3
  68. package/esm2022/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.mjs +3 -3
  69. package/esm2022/lib/components/kv-inputs/kv-input-time/kv-input-time.component.mjs +3 -3
  70. package/esm2022/lib/components/kv-inputs/kv-inputs.module.mjs +1 -1
  71. package/esm2022/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.mjs +3 -3
  72. package/esm2022/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.mjs +3 -3
  73. package/esm2022/lib/components/kv-inputs/kv-select-button/kv-select-button.component.mjs +3 -3
  74. package/esm2022/lib/components/kv-inputs/kv-switch/kv-switch.component.mjs +3 -3
  75. package/esm2022/lib/components/kv-label/kv-label.component.mjs +3 -3
  76. package/esm2022/lib/components/kv-label/kv-label.module.mjs +1 -1
  77. package/esm2022/lib/components/kv-loader/kv-loader.component.mjs +3 -3
  78. package/esm2022/lib/components/kv-loader/kv-loader.module.mjs +1 -1
  79. package/esm2022/lib/components/kv-loader/kv-loader.service.mjs +1 -1
  80. package/esm2022/lib/components/kv-login/kv-login.component.mjs +3 -3
  81. package/esm2022/lib/components/kv-login/kv-login.module.mjs +1 -1
  82. package/esm2022/lib/components/kv-menu/kv-menu.component.mjs +3 -3
  83. package/esm2022/lib/components/kv-menu/kv-menu.module.mjs +1 -1
  84. package/esm2022/lib/components/kv-modal/kv-modal.component.mjs +3 -3
  85. package/esm2022/lib/components/kv-modal/kv-modal.module.mjs +1 -1
  86. package/esm2022/lib/components/kv-orgchart/kv-orgchart.component.mjs +3 -3
  87. package/esm2022/lib/components/kv-orgchart/kv-orgchart.module.mjs +1 -1
  88. package/esm2022/lib/components/kv-page-form/kv-page-form.component.mjs +3 -3
  89. package/esm2022/lib/components/kv-page-form/kv-page-form.module.mjs +1 -1
  90. package/esm2022/lib/components/kv-pick-list/kv-pick-list.component.mjs +3 -3
  91. package/esm2022/lib/components/kv-pick-list/kv-pick-list.module.mjs +1 -1
  92. package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.component.mjs +3 -3
  93. package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.module.mjs +1 -1
  94. package/esm2022/lib/components/kv-stepper/kv-stepper.component.mjs +49 -0
  95. package/esm2022/lib/components/kv-stepper/kv-stepper.module.mjs +32 -0
  96. package/esm2022/lib/components/kv-table/kv-table.component.mjs +3 -3
  97. package/esm2022/lib/components/kv-table/kv-table.module.mjs +1 -1
  98. package/esm2022/lib/components/kv-table-edit/kv-table-edit.component.mjs +17 -15
  99. package/esm2022/lib/components/kv-table-edit/kv-table-edit.module.mjs +1 -1
  100. package/esm2022/lib/components/kv-tree-table/kv-tree-table.component.mjs +3 -3
  101. package/esm2022/lib/components/kv-tree-table/kv-tree-table.module.mjs +1 -1
  102. package/esm2022/lib/components/kv-tree-view/kv-tree-view.component.mjs +3 -3
  103. package/esm2022/lib/components/kv-tree-view/kv-tree-view.module.mjs +1 -1
  104. package/esm2022/lib/components/kv-workspace/kv-workspace.component.mjs +3 -3
  105. package/esm2022/lib/components/kv-workspace/kv-workspace.module.mjs +1 -1
  106. package/esm2022/public-api.mjs +6 -1
  107. package/fesm2022/keevo-components.mjs +308 -95
  108. package/fesm2022/keevo-components.mjs.map +1 -1
  109. package/lib/api/helpers/keevo-validators.d.ts +1 -0
  110. package/lib/api/models/aplicativo-model.d.ts +22 -0
  111. package/lib/api/models/master-combo-model.d.ts +5 -0
  112. package/lib/api/models/menu-model.d.ts +10 -0
  113. package/lib/api/services/docs.service.d.ts +12 -0
  114. package/lib/components/keevo-components.module.d.ts +3 -2
  115. package/lib/components/kv-menu/kv-menu.component.d.ts +3 -1
  116. package/lib/components/kv-stepper/kv-stepper.component.d.ts +21 -0
  117. package/lib/components/kv-stepper/kv-stepper.module.d.ts +10 -0
  118. package/lib/components/kv-table/kv-table.component.d.ts +1 -1
  119. package/lib/components/kv-table-edit/kv-table-edit.component.d.ts +4 -4
  120. package/package.json +2 -2
  121. package/public-api.d.ts +5 -0
@@ -151,11 +151,11 @@ export class KvMenuComponent {
151
151
  return this.router.url.includes(link);
152
152
  }
153
153
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvMenuComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
154
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvMenuComponent, selector: "kv-menu", inputs: { aplicativos: "aplicativos", ultimoAplicativoSelecionado: "ultimoAplicativoSelecionado", breadCrumbItems: "breadCrumbItems", licencas: "licencas", licencaSelecionada: "licencaSelecionada", logoImage: "logoImage", nomeUsuario: "nomeUsuario" }, outputs: { expandMenuEmit: "expandMenuEmit", gerenciarKeePassEvent: "gerenciarKeePassEvent", licencaChange: "licencaChange", sairEvent: "sairEvent", selecionarAplicativoEmit: "selecionarAplicativoEmit", trocarLicencaEmit: "trocarLicencaEmit" }, 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 }], ngImport: i0, template: "<div class=\"flex flex-row overflow-y-hidden w- full-container\">\r\n\r\n <div [style]=\"{minWidth: expandMenu ? '300px' : '60px'}\"></div>\r\n\r\n <p-sidebar\r\n #sidebarRef\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n [modal]=\"false\"\r\n [style]=\"{width: expandMenu ? '300px' : '60px'}\"\r\n >\r\n <ng-template pTemplate=\"headless\">\r\n <div class=\"flex flex-column mx-1\">\r\n <div class=\"flex flex-column gap-2 justify-content-between flex-shrink-0 mx-2\">\r\n <div\r\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}} py-3\"\r\n >\r\n <img\r\n *ngIf=\"expandMenu\"\r\n alt=\"Card\"\r\n [src]=\"logoImage\"\r\n width=\"150\"\r\n />\r\n\r\n <button\r\n pButton\r\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\r\n (click)=\"toggleMenu()\"\r\n [pTooltip]=\"expandMenu ? 'Ocutar Menu' : 'Expandir Menu'\"\r\n [tooltipPosition]=\"'right'\"\r\n >\r\n <i class=\"material-symbols-outlined\">\r\n menu\r\n </i>\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}}\"\r\n >\r\n <div\r\n class=\"flex flex-column cursor-pointer\"\r\n *ngIf=\"expandMenu\"\r\n (click)=\"trocarLicenca()\"\r\n >\r\n <span\r\n class=\"text-sm font-semibold mr-2\"\r\n [pTooltip]=\"this.licencaSelecionada.nome\"\r\n [tooltipPosition]=\"'right'\"\r\n >\r\n {{mascaraNomeLicenca(this.licencaSelecionada.nome)}}\r\n </span>\r\n <span class=\"text-sm mt-1\">{{this.licencaSelecionada.cpfcnpj |\r\n cpfCnpj }}</span>\r\n </div>\r\n\r\n <button\r\n pButton\r\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\r\n (click)=\"trocarLicenca()\"\r\n [pTooltip]=\"'Alterar workspace'\"\r\n [tooltipPosition]=\"'right'\"\r\n >\r\n <i class=\"material-symbols-outlined\">\r\n sync_alt\r\n </i>\r\n </button>\r\n\r\n </div>\r\n <p-divider type=\"solid\"></p-divider>\r\n </div>\r\n\r\n <div\r\n class=\"list-none m-0 card-container {{expandMenu ? 'mx-1' : ''}}\"\r\n [style.max-height]=\"(heigthCard - 220) + 'px'\"\r\n style=\"overflow-y: auto;\"\r\n >\r\n <!-- menus -->\r\n <li *ngFor=\"let menu of menus; let i = index\">\r\n <!-- menu que n\u00E3o tem filho -->\r\n <a\r\n (mouseenter)=\"onMouseEnter(i)\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n (click)=\"callRoute(menu.link)\"\r\n *ngIf=\"!menu.indmenupai && (!menu.idmenupai || menu.idmenupai == 0)\"\r\n pRipple\r\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\r\n [tooltipPosition]=\"'right'\"\r\n class=\"{{verificarPaginaSelecionada(menu.link) ? 'bg-green-600' : ''}} menu-option flex align-items-center no-underline {{!expandMenu ? 'justify-content-center' : ''}} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n\r\n <i\r\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} icon-hover-color {{verificarPaginaSelecionada(menu.link) ? 'text-white' : ''}}\"\r\n *ngIf=\"menu.icone\"\r\n >\r\n {{ menu.icone }}\r\n </i>\r\n <span\r\n class=\"text-base text-blue-900 font-medium {{verificarPaginaSelecionada(menu.link) ? 'text-white' : ''}}\"\r\n *ngIf=\"expandMenu\"\r\n >{{ menu.descricaomenu }}</span>\r\n </a>\r\n <!-- menu com filho -->\r\n <div *ngIf=\"menu.indmenupai\">\r\n <a\r\n (mouseenter)=\"onMouseEnter(i)\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n pRipple\r\n pStyleClass=\"@next\"\r\n enterClass=\"hidden\"\r\n enterActiveClass=\"slidedown\"\r\n leaveToClass=\"hidden\"\r\n leaveActiveClass=\"slideup\"\r\n class=\"menu-option flex align-items-center {{!expandMenu ? 'justify-content-center' : 'justify-content-between'}} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n [tooltipPosition]=\"'right'\"\r\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\r\n (click)=\"!expandMenu ? expandMenu = !expandMenu : ''\"\r\n >\r\n <div class=\"flex flex-row align-items-center\">\r\n\r\n <i\r\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} icon-hover-color\"\r\n *ngIf=\"menu.icone\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n >\r\n {{ menu.icone }}\r\n </i>\r\n <span\r\n class=\"text-base text-blue-900 font-medium\"\r\n *ngIf=\"expandMenu\"\r\n >{{ menu.descricaomenu }}</span>\r\n </div>\r\n <i\r\n class=\"pi pi-chevron-down text-blue-900 mr-1 icon-hover-color\"\r\n *ngIf=\"expandMenu\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n ></i>\r\n </a>\r\n\r\n <!-- filhos -->\r\n <div\r\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\"\r\n >\r\n <li *ngFor=\"\r\n let filho of retornarMenuFilhos(menu.idaplicativo, menu.idmenu); let iFilho = index\r\n \">\r\n <a\r\n (mouseenter)=\"onMouseFilhoEnter(filho.idmenu)\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n [ngClass]=\"{'hover-color': mouseOverFilhoIndex === filho.idmenu}\"\r\n *ngIf=\"expandMenu\"\r\n (click)=\"callRoute(filho.link)\"\r\n pRipple\r\n class=\"{{verificarPaginaSelecionada(filho.link) ? 'bg-green-600' : ''}} 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\"\r\n >\r\n <i\r\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} icon-hover-color\"\r\n *ngIf=\"filho.icone\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n >\r\n {{ filho.icone }}\r\n </i>\r\n <span\r\n class=\"text-base text-blue-900 ml-4 {{verificarPaginaSelecionada(filho.link) ? 'text-white' : ''}}\"\r\n *ngIf=\"expandMenu\"\r\n >{{ filho.descricaomenu }}</span>\r\n </a>\r\n </li>\r\n </div>\r\n </div>\r\n</div>\r\n</div>\r\n</ng-template>\r\n</p-sidebar>\r\n\r\n<div\r\n class=\"w-auto h-screen page-content overflow-y-hidden\"\r\n id=\"page-content\"\r\n>\r\n\r\n <div class=\"flex flex-row align-items-center justify-content-between m-3\">\r\n <div>\r\n <p class=\"text-xl font-semibold text-blue-900 breadcrumb-title\">{{breadCrumbItems[breadCrumbItems.length -\r\n 1]?.label}}</p>\r\n <p-breadcrumb\r\n *ngIf=\"widthCard > 400\"\r\n styleClass=\"border-none p-0 flex align-items-center h-2rem !important;\"\r\n [model]=\"breadCrumbItems\"\r\n [style]=\"{backgroundColor: '#d4d3d3'}\"\r\n (onItemClick)=\"callRoute($event.item.routerLink, true)\"\r\n ></p-breadcrumb>\r\n </div>\r\n\r\n <div class=\"w-auto flex flex-row align-items-center gap-2\">\r\n\r\n <p-button\r\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\r\n icon=\"pi pi-th-large\"\r\n [rounded]=\"true\"\r\n [text]=\"true\"\r\n (click)=\"sistemasPanel.toggle($event)\"\r\n [pTooltip]=\"'Sistemas'\"\r\n [tooltipPosition]=\"'left'\"\r\n ></p-button>\r\n\r\n <p-button\r\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\r\n icon=\"pi pi-user\"\r\n [rounded]=\"true\"\r\n [text]=\"true\"\r\n [pTooltip]=\"'Menu do Usu\u00E1rio'\"\r\n [tooltipPosition]=\"'left'\"\r\n (click)=\"meusDadosPanel.toggle($event)\"\r\n ></p-button>\r\n\r\n </div>\r\n </div>\r\n\r\n <p-card\r\n class=\"card-container\"\r\n styleClass=\"m-3 border-noround overflow-y-auto card-container\"\r\n [style]=\"{height: heigthCard - ajustarHeigthCard() + 'px'}\"\r\n >\r\n <div\r\n class=\"card-container w-full\"\r\n [style]=\"{width: widthCard + 'px'}\"\r\n >\r\n <ng-content></ng-content>\r\n </div>\r\n </p-card>\r\n\r\n</div>\r\n\r\n<p-overlayPanel\r\n #sistemasPanel\r\n [showTransitionOptions]=\"'350ms ease-out'\"\r\n [hideTransitionOptions]=\"'250ms ease-in'\"\r\n>\r\n <ng-template pTemplate=\"container\">\r\n <p class=\"title-style mt-3\">Sistemas</p>\r\n <div\r\n class=\"flex flex-row flex-wrap gap-2 align-items-center justify-content-center mt-5 mb-3\"\r\n style=\"width: 250px; height: 100%;\"\r\n >\r\n <button\r\n *ngFor=\"let aplicativo of aplicativos\"\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\r\n (click)=\"selecionarAplicativo(aplicativo.idaplicativo)\"\r\n [pTooltip]=\"aplicativo?.descricaoaplicativo\"\r\n [tooltipPosition]=\"'left'\"\r\n >\r\n {{ aplicativo.nomeaplicativo.charAt(0).toUpperCase() }}\r\n </button>\r\n </div>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<p-overlayPanel\r\n #meusDadosPanel\r\n [showTransitionOptions]=\"'350ms ease-out'\"\r\n [hideTransitionOptions]=\"'250ms ease-in'\"\r\n>\r\n\r\n <ng-template pTemplate=\"container\">\r\n\r\n <p class=\"title-style mt-3\">Ol\u00E1, {{nomeUsuario ?\r\n nomeUsuario.split(' ')[0] : 'Usu\u00E1rio'}} !</p>\r\n <div class=\"mt-5 mb-3\">\r\n\r\n </div>\r\n\r\n <p-button\r\n icon=\"pi pi-lock\"\r\n label=\"Acessar Keepass\"\r\n (onClick)=\"gerenciarKeePass($event)\"\r\n styleClass=\"border-noround w-full text-blue-900\"\r\n [text]=\"true\"\r\n ></p-button>\r\n <p-button\r\n icon=\"pi pi-sign-out\"\r\n label=\"Sair\"\r\n (onClick)=\"sair($event)\"\r\n styleClass=\"border-noround w-full text-blue-900\"\r\n [text]=\"true\"\r\n ></p-button>\r\n </ng-template>\r\n\r\n</p-overlayPanel>", 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 .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}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4.Breadcrumb, selector: "p-breadcrumb", inputs: ["model", "style", "styleClass", "home", "homeAriaLabel"], outputs: ["onItemClick"] }, { kind: "directive", type: i5.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: i6.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i6.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: i7.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: i8.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "component", type: i9.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i10.Ripple, selector: "[pRipple]" }, { kind: "component", type: i11.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: i12.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterClass", "enterFromClass", "enterActiveClass", "enterToClass", "leaveClass", "leaveFromClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape"] }, { kind: "pipe", type: i13.CpfCnpjPipe, name: "cpfCnpj" }] }); }
154
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvMenuComponent, selector: "kv-menu", inputs: { aplicativos: "aplicativos", ultimoAplicativoSelecionado: "ultimoAplicativoSelecionado", breadCrumbItems: "breadCrumbItems", licencas: "licencas", licencaSelecionada: "licencaSelecionada", logoImage: "logoImage", nomeUsuario: "nomeUsuario" }, outputs: { expandMenuEmit: "expandMenuEmit", gerenciarKeePassEvent: "gerenciarKeePassEvent", licencaChange: "licencaChange", sairEvent: "sairEvent", selecionarAplicativoEmit: "selecionarAplicativoEmit", trocarLicencaEmit: "trocarLicencaEmit" }, 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 }], ngImport: i0, template: "<div class=\"flex flex-row overflow-y-hidden w- full-container\">\n\n <div [style]=\"{minWidth: expandMenu ? '300px' : '60px'}\"></div>\n\n <p-sidebar\n #sidebarRef\n [visible]=\"true\"\n [showCloseIcon]=\"false\"\n [modal]=\"false\"\n [style]=\"{width: expandMenu ? '300px' : '60px'}\"\n >\n <ng-template pTemplate=\"headless\">\n <div class=\"flex flex-column mx-1\">\n <div class=\"flex flex-column gap-2 justify-content-between flex-shrink-0 mx-2\">\n <div\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}} py-3\"\n >\n <img\n *ngIf=\"expandMenu\"\n alt=\"Card\"\n [src]=\"logoImage\"\n width=\"150\"\n />\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)=\"toggleMenu()\"\n [pTooltip]=\"expandMenu ? 'Ocutar Menu' : 'Expandir Menu'\"\n [tooltipPosition]=\"'right'\"\n >\n <i class=\"material-symbols-outlined\">\n menu\n </i>\n </button>\n </div>\n\n <div\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}}\"\n >\n <div\n class=\"flex flex-column cursor-pointer\"\n *ngIf=\"expandMenu\"\n (click)=\"trocarLicenca()\"\n >\n <span\n class=\"text-sm font-semibold mr-2\"\n [pTooltip]=\"this.licencaSelecionada.nome\"\n [tooltipPosition]=\"'right'\"\n >\n {{mascaraNomeLicenca(this.licencaSelecionada.nome)}}\n </span>\n <span class=\"text-sm mt-1\">{{this.licencaSelecionada.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)=\"trocarLicenca()\"\n [pTooltip]=\"'Alterar workspace'\"\n [tooltipPosition]=\"'right'\"\n >\n <i class=\"material-symbols-outlined\">\n sync_alt\n </i>\n </button>\n\n </div>\n <p-divider type=\"solid\"></p-divider>\n </div>\n\n <div\n class=\"list-none m-0 card-container {{expandMenu ? 'mx-1' : ''}}\"\n [style.max-height]=\"(heigthCard - 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=\"!menu.indmenupai && (!menu.idmenupai || menu.idmenupai == 0)\"\n pRipple\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n [tooltipPosition]=\"'right'\"\n class=\"{{verificarPaginaSelecionada(menu.link) ? 'bg-green-600' : ''}} menu-option flex align-items-center no-underline {{!expandMenu ? 'justify-content-center' : ''}} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\n >\n\n <i\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} icon-hover-color {{verificarPaginaSelecionada(menu.link) ? 'text-white' : ''}}\"\n *ngIf=\"menu.icone\"\n >\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium {{verificarPaginaSelecionada(menu.link) ? 'text-white' : ''}}\"\n *ngIf=\"expandMenu\"\n >{{ 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 {{!expandMenu ? 'justify-content-center' : 'justify-content-between'}} 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\n <i\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} 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 </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 *ngFor=\"\n let filho of retornarMenuFilhos(menu.idaplicativo, menu.idmenu); let iFilho = index\n \">\n <a\n (mouseenter)=\"onMouseFilhoEnter(filho.idmenu)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{'hover-color': mouseOverFilhoIndex === filho.idmenu}\"\n *ngIf=\"expandMenu\"\n (click)=\"callRoute(filho.link)\"\n pRipple\n class=\"{{verificarPaginaSelecionada(filho.link) ? 'bg-green-600' : ''}} 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 {{expandMenu ? 'ml-1 mr-2' : ''}} 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 {{verificarPaginaSelecionada(filho.link) ? 'text-white' : ''}}\"\n *ngIf=\"expandMenu\"\n >{{ filho.descricaomenu }}</span>\n </a>\n </li>\n </div>\n </div>\n</div>\n</div>\n</ng-template>\n</p-sidebar>\n\n<div\n class=\"w-auto h-screen page-content overflow-y-hidden\"\n id=\"page-content\"\n>\n\n <div class=\"flex flex-row align-items-center justify-content-between m-3\">\n <div>\n <p class=\"text-xl font-semibold text-blue-900 breadcrumb-title\">{{breadCrumbItems[breadCrumbItems.length -\n 1]?.label}}</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 <div class=\"w-auto flex flex-row align-items-center gap-2\">\n\n <p-button\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 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\n </div>\n </div>\n\n <p-card\n class=\"card-container\"\n styleClass=\"m-3 border-noround overflow-y-auto card-container\"\n [style]=\"{height: heigthCard - ajustarHeigthCard() + 'px'}\"\n >\n <div\n class=\"card-container w-full overflow-y-hidden\"\n [style]=\"{width: widthCard + 'px'}\"\n >\n <ng-content></ng-content>\n </div>\n </p-card>\n\n</div>\n\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 aplicativos\"\n pButton\n pRipple\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\n (click)=\"selecionarAplicativo(aplicativo.idaplicativo)\"\n [pTooltip]=\"aplicativo?.descricaoaplicativo\"\n [tooltipPosition]=\"'left'\"\n >\n {{ aplicativo.nomeaplicativo.charAt(0).toUpperCase() }}\n </button>\n </div>\n </ng-template>\n</p-overlayPanel>\n\n<p-overlayPanel\n #meusDadosPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\"\n>\n\n <ng-template pTemplate=\"container\">\n\n <p class=\"title-style mt-3\">Ol\u00E1, {{nomeUsuario ?\n nomeUsuario.split(' ')[0] : 'Usu\u00E1rio'}} !</p>\n <div class=\"mt-5 mb-3\">\n\n </div>\n\n <p-button\n icon=\"pi pi-lock\"\n label=\"Acessar Keepass\"\n (onClick)=\"gerenciarKeePass($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\"\n ></p-button>\n <p-button\n icon=\"pi pi-sign-out\"\n label=\"Sair\"\n (onClick)=\"sair($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\"\n ></p-button>\n </ng-template>\n\n</p-overlayPanel>", 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 .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}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4.Breadcrumb, selector: "p-breadcrumb", inputs: ["model", "style", "styleClass", "home", "homeAriaLabel"], outputs: ["onItemClick"] }, { kind: "directive", type: i5.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: i6.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i6.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: i7.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: i8.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "component", type: i9.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i10.Ripple, selector: "[pRipple]" }, { kind: "component", type: i11.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: i12.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterClass", "enterFromClass", "enterActiveClass", "enterToClass", "leaveClass", "leaveFromClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape"] }, { kind: "pipe", type: i13.CpfCnpjPipe, name: "cpfCnpj" }] }); }
155
155
  }
156
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvMenuComponent, decorators: [{
157
157
  type: Component,
158
- args: [{ selector: 'kv-menu', template: "<div class=\"flex flex-row overflow-y-hidden w- full-container\">\r\n\r\n <div [style]=\"{minWidth: expandMenu ? '300px' : '60px'}\"></div>\r\n\r\n <p-sidebar\r\n #sidebarRef\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n [modal]=\"false\"\r\n [style]=\"{width: expandMenu ? '300px' : '60px'}\"\r\n >\r\n <ng-template pTemplate=\"headless\">\r\n <div class=\"flex flex-column mx-1\">\r\n <div class=\"flex flex-column gap-2 justify-content-between flex-shrink-0 mx-2\">\r\n <div\r\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}} py-3\"\r\n >\r\n <img\r\n *ngIf=\"expandMenu\"\r\n alt=\"Card\"\r\n [src]=\"logoImage\"\r\n width=\"150\"\r\n />\r\n\r\n <button\r\n pButton\r\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\r\n (click)=\"toggleMenu()\"\r\n [pTooltip]=\"expandMenu ? 'Ocutar Menu' : 'Expandir Menu'\"\r\n [tooltipPosition]=\"'right'\"\r\n >\r\n <i class=\"material-symbols-outlined\">\r\n menu\r\n </i>\r\n </button>\r\n </div>\r\n\r\n <div\r\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}}\"\r\n >\r\n <div\r\n class=\"flex flex-column cursor-pointer\"\r\n *ngIf=\"expandMenu\"\r\n (click)=\"trocarLicenca()\"\r\n >\r\n <span\r\n class=\"text-sm font-semibold mr-2\"\r\n [pTooltip]=\"this.licencaSelecionada.nome\"\r\n [tooltipPosition]=\"'right'\"\r\n >\r\n {{mascaraNomeLicenca(this.licencaSelecionada.nome)}}\r\n </span>\r\n <span class=\"text-sm mt-1\">{{this.licencaSelecionada.cpfcnpj |\r\n cpfCnpj }}</span>\r\n </div>\r\n\r\n <button\r\n pButton\r\n class=\"p-button-rounded p-button-text padding-style h-2rem w-2rem hover:bg-green-600 hover:text-white icon-menu\"\r\n (click)=\"trocarLicenca()\"\r\n [pTooltip]=\"'Alterar workspace'\"\r\n [tooltipPosition]=\"'right'\"\r\n >\r\n <i class=\"material-symbols-outlined\">\r\n sync_alt\r\n </i>\r\n </button>\r\n\r\n </div>\r\n <p-divider type=\"solid\"></p-divider>\r\n </div>\r\n\r\n <div\r\n class=\"list-none m-0 card-container {{expandMenu ? 'mx-1' : ''}}\"\r\n [style.max-height]=\"(heigthCard - 220) + 'px'\"\r\n style=\"overflow-y: auto;\"\r\n >\r\n <!-- menus -->\r\n <li *ngFor=\"let menu of menus; let i = index\">\r\n <!-- menu que n\u00E3o tem filho -->\r\n <a\r\n (mouseenter)=\"onMouseEnter(i)\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n (click)=\"callRoute(menu.link)\"\r\n *ngIf=\"!menu.indmenupai && (!menu.idmenupai || menu.idmenupai == 0)\"\r\n pRipple\r\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\r\n [tooltipPosition]=\"'right'\"\r\n class=\"{{verificarPaginaSelecionada(menu.link) ? 'bg-green-600' : ''}} menu-option flex align-items-center no-underline {{!expandMenu ? 'justify-content-center' : ''}} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n\r\n <i\r\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} icon-hover-color {{verificarPaginaSelecionada(menu.link) ? 'text-white' : ''}}\"\r\n *ngIf=\"menu.icone\"\r\n >\r\n {{ menu.icone }}\r\n </i>\r\n <span\r\n class=\"text-base text-blue-900 font-medium {{verificarPaginaSelecionada(menu.link) ? 'text-white' : ''}}\"\r\n *ngIf=\"expandMenu\"\r\n >{{ menu.descricaomenu }}</span>\r\n </a>\r\n <!-- menu com filho -->\r\n <div *ngIf=\"menu.indmenupai\">\r\n <a\r\n (mouseenter)=\"onMouseEnter(i)\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n pRipple\r\n pStyleClass=\"@next\"\r\n enterClass=\"hidden\"\r\n enterActiveClass=\"slidedown\"\r\n leaveToClass=\"hidden\"\r\n leaveActiveClass=\"slideup\"\r\n class=\"menu-option flex align-items-center {{!expandMenu ? 'justify-content-center' : 'justify-content-between'}} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n [tooltipPosition]=\"'right'\"\r\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\r\n (click)=\"!expandMenu ? expandMenu = !expandMenu : ''\"\r\n >\r\n <div class=\"flex flex-row align-items-center\">\r\n\r\n <i\r\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} icon-hover-color\"\r\n *ngIf=\"menu.icone\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n >\r\n {{ menu.icone }}\r\n </i>\r\n <span\r\n class=\"text-base text-blue-900 font-medium\"\r\n *ngIf=\"expandMenu\"\r\n >{{ menu.descricaomenu }}</span>\r\n </div>\r\n <i\r\n class=\"pi pi-chevron-down text-blue-900 mr-1 icon-hover-color\"\r\n *ngIf=\"expandMenu\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n ></i>\r\n </a>\r\n\r\n <!-- filhos -->\r\n <div\r\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\"\r\n >\r\n <li *ngFor=\"\r\n let filho of retornarMenuFilhos(menu.idaplicativo, menu.idmenu); let iFilho = index\r\n \">\r\n <a\r\n (mouseenter)=\"onMouseFilhoEnter(filho.idmenu)\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n [ngClass]=\"{'hover-color': mouseOverFilhoIndex === filho.idmenu}\"\r\n *ngIf=\"expandMenu\"\r\n (click)=\"callRoute(filho.link)\"\r\n pRipple\r\n class=\"{{verificarPaginaSelecionada(filho.link) ? 'bg-green-600' : ''}} 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\"\r\n >\r\n <i\r\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} icon-hover-color\"\r\n *ngIf=\"filho.icone\"\r\n [ngClass]=\"{'hover-color': mouseOverIndex === i}\"\r\n >\r\n {{ filho.icone }}\r\n </i>\r\n <span\r\n class=\"text-base text-blue-900 ml-4 {{verificarPaginaSelecionada(filho.link) ? 'text-white' : ''}}\"\r\n *ngIf=\"expandMenu\"\r\n >{{ filho.descricaomenu }}</span>\r\n </a>\r\n </li>\r\n </div>\r\n </div>\r\n</div>\r\n</div>\r\n</ng-template>\r\n</p-sidebar>\r\n\r\n<div\r\n class=\"w-auto h-screen page-content overflow-y-hidden\"\r\n id=\"page-content\"\r\n>\r\n\r\n <div class=\"flex flex-row align-items-center justify-content-between m-3\">\r\n <div>\r\n <p class=\"text-xl font-semibold text-blue-900 breadcrumb-title\">{{breadCrumbItems[breadCrumbItems.length -\r\n 1]?.label}}</p>\r\n <p-breadcrumb\r\n *ngIf=\"widthCard > 400\"\r\n styleClass=\"border-none p-0 flex align-items-center h-2rem !important;\"\r\n [model]=\"breadCrumbItems\"\r\n [style]=\"{backgroundColor: '#d4d3d3'}\"\r\n (onItemClick)=\"callRoute($event.item.routerLink, true)\"\r\n ></p-breadcrumb>\r\n </div>\r\n\r\n <div class=\"w-auto flex flex-row align-items-center gap-2\">\r\n\r\n <p-button\r\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\r\n icon=\"pi pi-th-large\"\r\n [rounded]=\"true\"\r\n [text]=\"true\"\r\n (click)=\"sistemasPanel.toggle($event)\"\r\n [pTooltip]=\"'Sistemas'\"\r\n [tooltipPosition]=\"'left'\"\r\n ></p-button>\r\n\r\n <p-button\r\n styleClass=\"w-2rem h-2rem text-blue-900 hover:bg-green-600 hover:text-white\"\r\n icon=\"pi pi-user\"\r\n [rounded]=\"true\"\r\n [text]=\"true\"\r\n [pTooltip]=\"'Menu do Usu\u00E1rio'\"\r\n [tooltipPosition]=\"'left'\"\r\n (click)=\"meusDadosPanel.toggle($event)\"\r\n ></p-button>\r\n\r\n </div>\r\n </div>\r\n\r\n <p-card\r\n class=\"card-container\"\r\n styleClass=\"m-3 border-noround overflow-y-auto card-container\"\r\n [style]=\"{height: heigthCard - ajustarHeigthCard() + 'px'}\"\r\n >\r\n <div\r\n class=\"card-container w-full\"\r\n [style]=\"{width: widthCard + 'px'}\"\r\n >\r\n <ng-content></ng-content>\r\n </div>\r\n </p-card>\r\n\r\n</div>\r\n\r\n<p-overlayPanel\r\n #sistemasPanel\r\n [showTransitionOptions]=\"'350ms ease-out'\"\r\n [hideTransitionOptions]=\"'250ms ease-in'\"\r\n>\r\n <ng-template pTemplate=\"container\">\r\n <p class=\"title-style mt-3\">Sistemas</p>\r\n <div\r\n class=\"flex flex-row flex-wrap gap-2 align-items-center justify-content-center mt-5 mb-3\"\r\n style=\"width: 250px; height: 100%;\"\r\n >\r\n <button\r\n *ngFor=\"let aplicativo of aplicativos\"\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\r\n (click)=\"selecionarAplicativo(aplicativo.idaplicativo)\"\r\n [pTooltip]=\"aplicativo?.descricaoaplicativo\"\r\n [tooltipPosition]=\"'left'\"\r\n >\r\n {{ aplicativo.nomeaplicativo.charAt(0).toUpperCase() }}\r\n </button>\r\n </div>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<p-overlayPanel\r\n #meusDadosPanel\r\n [showTransitionOptions]=\"'350ms ease-out'\"\r\n [hideTransitionOptions]=\"'250ms ease-in'\"\r\n>\r\n\r\n <ng-template pTemplate=\"container\">\r\n\r\n <p class=\"title-style mt-3\">Ol\u00E1, {{nomeUsuario ?\r\n nomeUsuario.split(' ')[0] : 'Usu\u00E1rio'}} !</p>\r\n <div class=\"mt-5 mb-3\">\r\n\r\n </div>\r\n\r\n <p-button\r\n icon=\"pi pi-lock\"\r\n label=\"Acessar Keepass\"\r\n (onClick)=\"gerenciarKeePass($event)\"\r\n styleClass=\"border-noround w-full text-blue-900\"\r\n [text]=\"true\"\r\n ></p-button>\r\n <p-button\r\n icon=\"pi pi-sign-out\"\r\n label=\"Sair\"\r\n (onClick)=\"sair($event)\"\r\n styleClass=\"border-noround w-full text-blue-900\"\r\n [text]=\"true\"\r\n ></p-button>\r\n </ng-template>\r\n\r\n</p-overlayPanel>", 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 .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}\n"] }]
158
+ args: [{ selector: 'kv-menu', template: "<div class=\"flex flex-row overflow-y-hidden w- full-container\">\n\n <div [style]=\"{minWidth: expandMenu ? '300px' : '60px'}\"></div>\n\n <p-sidebar\n #sidebarRef\n [visible]=\"true\"\n [showCloseIcon]=\"false\"\n [modal]=\"false\"\n [style]=\"{width: expandMenu ? '300px' : '60px'}\"\n >\n <ng-template pTemplate=\"headless\">\n <div class=\"flex flex-column mx-1\">\n <div class=\"flex flex-column gap-2 justify-content-between flex-shrink-0 mx-2\">\n <div\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}} py-3\"\n >\n <img\n *ngIf=\"expandMenu\"\n alt=\"Card\"\n [src]=\"logoImage\"\n width=\"150\"\n />\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)=\"toggleMenu()\"\n [pTooltip]=\"expandMenu ? 'Ocutar Menu' : 'Expandir Menu'\"\n [tooltipPosition]=\"'right'\"\n >\n <i class=\"material-symbols-outlined\">\n menu\n </i>\n </button>\n </div>\n\n <div\n class=\"flex flex-row align-items-center {{expandMenu ? 'justify-content-between' : 'justify-content-center'}}\"\n >\n <div\n class=\"flex flex-column cursor-pointer\"\n *ngIf=\"expandMenu\"\n (click)=\"trocarLicenca()\"\n >\n <span\n class=\"text-sm font-semibold mr-2\"\n [pTooltip]=\"this.licencaSelecionada.nome\"\n [tooltipPosition]=\"'right'\"\n >\n {{mascaraNomeLicenca(this.licencaSelecionada.nome)}}\n </span>\n <span class=\"text-sm mt-1\">{{this.licencaSelecionada.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)=\"trocarLicenca()\"\n [pTooltip]=\"'Alterar workspace'\"\n [tooltipPosition]=\"'right'\"\n >\n <i class=\"material-symbols-outlined\">\n sync_alt\n </i>\n </button>\n\n </div>\n <p-divider type=\"solid\"></p-divider>\n </div>\n\n <div\n class=\"list-none m-0 card-container {{expandMenu ? 'mx-1' : ''}}\"\n [style.max-height]=\"(heigthCard - 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=\"!menu.indmenupai && (!menu.idmenupai || menu.idmenupai == 0)\"\n pRipple\n [pTooltip]=\"!expandMenu ? menu.descricaomenu : ''\"\n [tooltipPosition]=\"'right'\"\n class=\"{{verificarPaginaSelecionada(menu.link) ? 'bg-green-600' : ''}} menu-option flex align-items-center no-underline {{!expandMenu ? 'justify-content-center' : ''}} cursor-pointer border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\n >\n\n <i\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} icon-hover-color {{verificarPaginaSelecionada(menu.link) ? 'text-white' : ''}}\"\n *ngIf=\"menu.icone\"\n >\n {{ menu.icone }}\n </i>\n <span\n class=\"text-base text-blue-900 font-medium {{verificarPaginaSelecionada(menu.link) ? 'text-white' : ''}}\"\n *ngIf=\"expandMenu\"\n >{{ 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 {{!expandMenu ? 'justify-content-center' : 'justify-content-between'}} 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\n <i\n class=\"material-symbols-outlined icon-menu {{expandMenu ? 'ml-1 mr-2' : ''}} 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 </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 *ngFor=\"\n let filho of retornarMenuFilhos(menu.idaplicativo, menu.idmenu); let iFilho = index\n \">\n <a\n (mouseenter)=\"onMouseFilhoEnter(filho.idmenu)\"\n (mouseleave)=\"onMouseLeave()\"\n [ngClass]=\"{'hover-color': mouseOverFilhoIndex === filho.idmenu}\"\n *ngIf=\"expandMenu\"\n (click)=\"callRoute(filho.link)\"\n pRipple\n class=\"{{verificarPaginaSelecionada(filho.link) ? 'bg-green-600' : ''}} 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 {{expandMenu ? 'ml-1 mr-2' : ''}} 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 {{verificarPaginaSelecionada(filho.link) ? 'text-white' : ''}}\"\n *ngIf=\"expandMenu\"\n >{{ filho.descricaomenu }}</span>\n </a>\n </li>\n </div>\n </div>\n</div>\n</div>\n</ng-template>\n</p-sidebar>\n\n<div\n class=\"w-auto h-screen page-content overflow-y-hidden\"\n id=\"page-content\"\n>\n\n <div class=\"flex flex-row align-items-center justify-content-between m-3\">\n <div>\n <p class=\"text-xl font-semibold text-blue-900 breadcrumb-title\">{{breadCrumbItems[breadCrumbItems.length -\n 1]?.label}}</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 <div class=\"w-auto flex flex-row align-items-center gap-2\">\n\n <p-button\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 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\n </div>\n </div>\n\n <p-card\n class=\"card-container\"\n styleClass=\"m-3 border-noround overflow-y-auto card-container\"\n [style]=\"{height: heigthCard - ajustarHeigthCard() + 'px'}\"\n >\n <div\n class=\"card-container w-full overflow-y-hidden\"\n [style]=\"{width: widthCard + 'px'}\"\n >\n <ng-content></ng-content>\n </div>\n </p-card>\n\n</div>\n\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 aplicativos\"\n pButton\n pRipple\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\n (click)=\"selecionarAplicativo(aplicativo.idaplicativo)\"\n [pTooltip]=\"aplicativo?.descricaoaplicativo\"\n [tooltipPosition]=\"'left'\"\n >\n {{ aplicativo.nomeaplicativo.charAt(0).toUpperCase() }}\n </button>\n </div>\n </ng-template>\n</p-overlayPanel>\n\n<p-overlayPanel\n #meusDadosPanel\n [showTransitionOptions]=\"'350ms ease-out'\"\n [hideTransitionOptions]=\"'250ms ease-in'\"\n>\n\n <ng-template pTemplate=\"container\">\n\n <p class=\"title-style mt-3\">Ol\u00E1, {{nomeUsuario ?\n nomeUsuario.split(' ')[0] : 'Usu\u00E1rio'}} !</p>\n <div class=\"mt-5 mb-3\">\n\n </div>\n\n <p-button\n icon=\"pi pi-lock\"\n label=\"Acessar Keepass\"\n (onClick)=\"gerenciarKeePass($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\"\n ></p-button>\n <p-button\n icon=\"pi pi-sign-out\"\n label=\"Sair\"\n (onClick)=\"sair($event)\"\n styleClass=\"border-noround w-full text-blue-900\"\n [text]=\"true\"\n ></p-button>\n </ng-template>\n\n</p-overlayPanel>", 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 .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}\n"] }]
159
159
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.Router }, { type: i1.ActivatedRoute }], propDecorators: { aplicativos: [{
160
160
  type: Input
161
161
  }], ultimoAplicativoSelecionado: [{
@@ -195,4 +195,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
195
195
  type: HostListener,
196
196
  args: ['window:resize', ['$event']]
197
197
  }] } });
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9rdi1tZW51L2t2LW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbWVudS9rdi1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBZ0J2QixNQUFNLE9BQU8sZUFBZTtJQStCMUIsWUFDVSxHQUFzQixFQUNwQixNQUFjLEVBQ2hCLEtBQXFCO1FBRnJCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3BCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDaEIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFoQ3RCLGdCQUFXLEdBQXNCLEVBQUUsQ0FBQztRQUdwQyxvQkFBZSxHQUE0QyxFQUFFLENBQUM7UUFDOUQsYUFBUSxHQUF1QixFQUFFLENBQUM7UUFLakMsbUJBQWMsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMzRCwwQkFBcUIsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM5RCxrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3RELGNBQVMsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNsRCw2QkFBd0IsR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNwRSxzQkFBaUIsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQU14RSxVQUFLLEdBQWdCLEVBQUUsQ0FBQztRQUV4QixlQUFVLEdBQVksSUFBSSxDQUFDO1FB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QUFTO3VCQUFDLGdCQUFnQjtnQkFDRixVQUFVO3NCQUFsQyxTQUFTO3VCQUFDLFlBQVk7Z0JBQ0ssYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQW1IbkIsY0FBYztzQkFEcEIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHtcclxuICBBY3RpdmF0ZWRSb3V0ZSxcclxuICBSb3V0ZXJcclxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICBBcGxpY2F0aXZvTW9kZWwsXHJcbiAgTWFzdGVyQ29tYm9Nb2RlbCxcclxuICBNZW51TW9kZWxcclxufSBmcm9tICdrZWV2by1hcGktc2VydmljZXMta2Vldm9jZW50ZXInO1xyXG5cclxuaW1wb3J0IHsgT3ZlcmxheVBhbmVsIH0gZnJvbSAncHJpbWVuZy9vdmVybGF5cGFuZWwnO1xyXG5pbXBvcnQgeyBTaWRlYmFyIH0gZnJvbSAncHJpbWVuZy9zaWRlYmFyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtbWVudScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2t2LW1lbnUuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2TWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGFwbGljYXRpdm9zOiBBcGxpY2F0aXZvTW9kZWxbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHVsdGltb0FwbGljYXRpdm9TZWxlY2lvbmFkbyE6IG51bWJlcjtcclxuXHJcbiAgQElucHV0KCkgYnJlYWRDcnVtYkl0ZW1zOiB7IGxhYmVsOiBzdHJpbmcsIHJvdXRlckxpbms6IHN0cmluZyB9W10gPSBbXTtcclxuICBASW5wdXQoKSBsaWNlbmNhczogTWFzdGVyQ29tYm9Nb2RlbFtdID0gW107XHJcbiAgQElucHV0KCkgbGljZW5jYVNlbGVjaW9uYWRhITogTWFzdGVyQ29tYm9Nb2RlbDtcclxuICBASW5wdXQoKSBsb2dvSW1hZ2UhOiBhbnk7XHJcbiAgQElucHV0KCkgbm9tZVVzdWFyaW8hOiBzdHJpbmc7XHJcblxyXG4gIEBPdXRwdXQoKSBleHBhbmRNZW51RW1pdDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBnZXJlbmNpYXJLZWVQYXNzRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBsaWNlbmNhQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgc2FpckV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgc2VsZWNpb25hckFwbGljYXRpdm9FbWl0OiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgdHJvY2FyTGljZW5jYUVtaXQ6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTsgIFxyXG5cclxuICBAVmlld0NoaWxkKCdtZXVzRGFkb3NQYW5lbCcpIG1ldXNEYWRvc1BhbmVsITogT3ZlcmxheVBhbmVsO1xyXG4gIEBWaWV3Q2hpbGQoJ3NpZGViYXJSZWYnKSBzaWRlYmFyUmVmITogU2lkZWJhcjtcclxuICBAVmlld0NoaWxkKCdzaXN0ZW1hc1BhbmVsJykgc2lzdGVtYXNQYW5lbCE6IE92ZXJsYXlQYW5lbDtcclxuXHJcbiAgbWVudXM6IE1lbnVNb2RlbFtdID0gW107XHJcblxyXG4gIGV4cGFuZE1lbnU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGhlaWd0aENhcmQhOiBudW1iZXI7XHJcbiAgbW91c2VPdmVyRmlsaG9JbmRleDogYW55O1xyXG4gIG1vdXNlT3ZlckluZGV4OiBhbnk7XHJcbiAgdmlzaWJsZURpYWxvZ0xpY2VuY2E6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB3aWR0aENhcmQhOiBudW1iZXI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUpIHsgfVxyXG5cclxuICBwdWJsaWMgYWp1c3RhckhlaWd0aENhcmQoKTogbnVtYmVyIHtcclxuICAgIGlmICh0aGlzLndpZHRoQ2FyZCA+IDQwMCkge1xyXG4gICAgICBpZiAodGhpcy5icmVhZENydW1iSXRlbXMubGVuZ3RoID4gMCkgcmV0dXJuIDEwNVxyXG4gICAgICBlbHNlIHJldHVybiA4NVxyXG4gICAgfSBlbHNlIHJldHVybiA4M1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNhbGxSb3V0ZShlOiBhbnksIGV4cGFuZD86IGJvb2xlYW4pIHtcclxuICAgIGlmICghZXhwYW5kKVxyXG4gICAgICAhdGhpcy5leHBhbmRNZW51ID8gdGhpcy5leHBhbmRNZW51ID0gIXRoaXMuZXhwYW5kTWVudSA6ICcnO1xyXG5cclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoZSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29uZmlndXJhckxpY2VuY2FzKCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuZGVmaW5pck1lbnVzUG9yU2lzdGVtYSh0aGlzLnVsdGltb0FwbGljYXRpdm9TZWxlY2lvbmFkbyB8fCB0aGlzLmFwbGljYXRpdm9zWzBdPy5pZGFwbGljYXRpdm8pO1xyXG4gICAgfSwgMSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGRlZmluaXJNZW51c1BvclNpc3RlbWEoaWRhcGxpY2F0aXZvOiBudW1iZXIpIHtcclxuICAgIHRoaXMubWVudXMgPSB0aGlzLmFwbGljYXRpdm9zLmZpbmQoKHgpID0+IHguaWRhcGxpY2F0aXZvID09IGlkYXBsaWNhdGl2byk/Lm1lbnVzIHx8IFtdO1xyXG5cclxuICAgIGlmICh0aGlzLnJvdXRlci51cmwgJiYgdGhpcy5tZW51cyAmJiB0aGlzLm1lbnVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgaWYgKHRoaXMucm91dGVyLnVybCA9PT0gJy8nKSB7XHJcbiAgICAgICAgdGhpcy5uYXZpZ2F0ZVRvRmlyc3RNZW51KClcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICBjb25zdCBtZW51U2VsZWNpb25hZG8gPSB0aGlzLm1lbnVzLmZpbmQoKG1lbnU6IGFueSkgPT4gbWVudS5saW5rICYmIG1lbnUubGluay5pbmNsdWRlcyh0aGlzLnJvdXRlci51cmwuc2xpY2UoMSkpKTtcclxuICAgICAgICBpZiAobWVudVNlbGVjaW9uYWRvKSB7XHJcbiAgICAgICAgICB0aGlzLm5hdmlnYXRlVG9NZW51KG1lbnVTZWxlY2lvbmFkbyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zaXN0ZW1hc1BhbmVsLmhpZGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZXhwYW5kTWVudUV2ZW50KCkge1xyXG4gICAgdGhpcy5leHBhbmRNZW51RW1pdC5lbWl0KHRoaXMuZXhwYW5kTWVudSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2VyZW5jaWFyS2VlUGFzcyhldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnNpc3RlbWFzUGFuZWwuaGlkZSgpO1xyXG4gICAgdGhpcy5nZXJlbmNpYXJLZWVQYXNzRXZlbnQuZW1pdChldmVudClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBtYXNjYXJhTm9tZUxpY2VuY2Eobm9tZUxpY2VuY2E6IGFueSk6IHN0cmluZyB7XHJcbiAgICBpZiAobm9tZUxpY2VuY2EpIHtcclxuICAgICAgaWYgKG5vbWVMaWNlbmNhLmxlbmd0aCA+IDIzKVxyXG4gICAgICAgIHJldHVybiBub21lTGljZW5jYS5zdWJzdHJpbmcoMCwgMjMpICsgJy4uLic7XHJcbiAgICAgIGVsc2UgcmV0dXJuIG5vbWVMaWNlbmNhO1xyXG4gICAgfSBlbHNlIHJldHVybiAnJztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbmF2aWdhdGVUb0ZpcnN0TWVudSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZpcnN0TWVudSA9IHRoaXMubWVudXNbMF07XHJcbiAgICBpZiAoZmlyc3RNZW51LmluZG1lbnVwYWkpIHtcclxuICAgICAgY29uc3QgZmlsaG9zID0gdGhpcy5yZXRvcm5hck1lbnVGaWxob3MoZmlyc3RNZW51LmlkYXBsaWNhdGl2bywgZmlyc3RNZW51LmlkbWVudSk7XHJcbiAgICAgIGlmIChmaWxob3MpIHtcclxuICAgICAgICB0aGlzLmNhbGxSb3V0ZShmaWxob3NbMF0ubGluaywgdHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2FsbFJvdXRlKGZpcnN0TWVudS5saW5rLCB0cnVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbmF2aWdhdGVUb01lbnUobWVudTogYW55KTogdm9pZCB7XHJcbiAgICBpZiAobWVudS5tZW51cGFpKSB7XHJcbiAgICAgIGNvbnN0IGZpbGhvcyA9IHRoaXMucmV0b3JuYXJNZW51RmlsaG9zKG1lbnUuaWRzaXN0ZW1hLCBtZW51LmlkbWVudSk7XHJcbiAgICAgIGlmIChmaWxob3MpIHtcclxuICAgICAgICB0aGlzLmNhbGxSb3V0ZShmaWxob3NbMF0ubGluaywgdHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2FsbFJvdXRlKG1lbnUubGluaywgdHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbmZpZ3VyYXJMaWNlbmNhcygpO1xyXG4gICAgdGhpcy5oZWlndGhDYXJkID0gTnVtYmVyKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYWdlLWNvbnRlbnQnKT8ub2Zmc2V0SGVpZ2h0KTtcclxuICAgIHRoaXMud2lkdGhDYXJkID0gTnVtYmVyKHdpbmRvdy5pbm5lcldpZHRoKSAtICh0aGlzLmV4cGFuZE1lbnUgPyAzMzMgOiA5Myk7XHJcbiAgICB0aGlzLmV4cGFuZE1lbnVFdmVudCgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Nb3VzZUVudGVyKGluZGV4OiBudW1iZXIpIHtcclxuICAgIHRoaXMubW91c2VPdmVySW5kZXggPSBpbmRleDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk1vdXNlRmlsaG9FbnRlcihpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLm1vdXNlT3ZlckZpbGhvSW5kZXggPSBpbmRleDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk1vdXNlTGVhdmUoKSB7XHJcbiAgICB0aGlzLm1vdXNlT3ZlckluZGV4ID0gbnVsbDtcclxuICAgIHRoaXMubW91c2VPdmVyRmlsaG9JbmRleCA9IG51bGw7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgb25XaW5kb3dSZXNpemUoKSB7XHJcbiAgICB0aGlzLmhlaWd0aENhcmQgPSBOdW1iZXIoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhZ2UtY29udGVudCcpPy5vZmZzZXRIZWlnaHQpO1xyXG4gICAgdGhpcy53aWR0aENhcmQgPSBOdW1iZXIod2luZG93LmlubmVyV2lkdGgpIC0gKHRoaXMuZXhwYW5kTWVudSA/IDMzMyA6IDkzKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZXRvcm5hck1lbnVGaWxob3MoaWRhcGxpY2F0aXZvOiBudW1iZXIsIGlkbWVudTogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGxpY2F0aXZvc1xyXG4gICAgICAuZmluZCgoeCkgPT4geC5pZGFwbGljYXRpdm8gPT0gaWRhcGxpY2F0aXZvKT8ubWVudXNcclxuICAgICAgLmZpbHRlcigoeCkgPT4geC5pZG1lbnVwYWkgPT0gaWRtZW51KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzYWlyKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuc2lzdGVtYXNQYW5lbC5oaWRlKCk7XHJcbiAgICB0aGlzLnNhaXJFdmVudC5lbWl0KGV2ZW50KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlbGVjaW9uYXJBcGxpY2F0aXZvKGlkYXBsaWNhdGl2bzogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnNlbGVjaW9uYXJBcGxpY2F0aXZvRW1pdC5lbWl0KGlkYXBsaWNhdGl2byk7XHJcbiAgICB0aGlzLmRlZmluaXJNZW51c1BvclNpc3RlbWEoaWRhcGxpY2F0aXZvKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVNZW51KCkge1xyXG4gICAgdGhpcy5leHBhbmRNZW51ID0gIXRoaXMuZXhwYW5kTWVudTtcclxuICAgIHRoaXMuZXhwYW5kTWVudUV2ZW50KClcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0cm9jYXJMaWNlbmNhKCkge1xyXG4gICAgdGhpcy50cm9jYXJMaWNlbmNhRW1pdC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdmVyaWZpY2FyUGFnaW5hU2VsZWNpb25hZGEobGluazogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIudXJsLmluY2x1ZGVzKGxpbmspO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBvdmVyZmxvdy15LWhpZGRlbiB3LSBmdWxsLWNvbnRhaW5lclwiPlxyXG5cclxuICA8ZGl2IFtzdHlsZV09XCJ7bWluV2lkdGg6IGV4cGFuZE1lbnUgPyAnMzAwcHgnIDogJzYwcHgnfVwiPjwvZGl2PlxyXG5cclxuICA8cC1zaWRlYmFyXHJcbiAgICAjc2lkZWJhclJlZlxyXG4gICAgW3Zpc2libGVdPVwidHJ1ZVwiXHJcbiAgICBbc2hvd0Nsb3NlSWNvbl09XCJmYWxzZVwiXHJcbiAgICBbbW9kYWxdPVwiZmFsc2VcIlxyXG4gICAgW3N0eWxlXT1cInt3aWR0aDogZXhwYW5kTWVudSA/ICczMDBweCcgOiAnNjBweCd9XCJcclxuICA+XHJcbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGxlc3NcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gbXgtMVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGdhcC0yIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGZsZXgtc2hyaW5rLTAgbXgtMlwiPlxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIHt7ZXhwYW5kTWVudSA/ICdqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbicgOiAnanVzdGlmeS1jb250ZW50LWNlbnRlcid9fSBweS0zXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICpuZ0lmPVwiZXhwYW5kTWVudVwiXHJcbiAgICAgICAgICAgICAgYWx0PVwiQ2FyZFwiXHJcbiAgICAgICAgICAgICAgW3NyY109XCJsb2dvSW1hZ2VcIlxyXG4gICAgICAgICAgICAgIHdpZHRoPVwiMTUwXCJcclxuICAgICAgICAgICAgLz5cclxuXHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICBwQnV0dG9uXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXRleHQgcGFkZGluZy1zdHlsZSBoLTJyZW0gdy0ycmVtIGhvdmVyOmJnLWdyZWVuLTYwMCBob3Zlcjp0ZXh0LXdoaXRlIGljb24tbWVudVwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZU1lbnUoKVwiXHJcbiAgICAgICAgICAgICAgW3BUb29sdGlwXT1cImV4cGFuZE1lbnUgPyAnT2N1dGFyIE1lbnUnIDogJ0V4cGFuZGlyIE1lbnUnXCJcclxuICAgICAgICAgICAgICBbdG9vbHRpcFBvc2l0aW9uXT1cIidyaWdodCdcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+XHJcbiAgICAgICAgICAgICAgICBtZW51XHJcbiAgICAgICAgICAgICAgPC9pPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlciB7e2V4cGFuZE1lbnUgPyAnanVzdGlmeS1jb250ZW50LWJldHdlZW4nIDogJ2p1c3RpZnktY29udGVudC1jZW50ZXInfX1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAqbmdJZj1cImV4cGFuZE1lbnVcIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJ0cm9jYXJMaWNlbmNhKClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC1zbSBmb250LXNlbWlib2xkIG1yLTJcIlxyXG4gICAgICAgICAgICAgICAgW3BUb29sdGlwXT1cInRoaXMubGljZW5jYVNlbGVjaW9uYWRhLm5vbWVcIlxyXG4gICAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCIncmlnaHQnXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICB7e21hc2NhcmFOb21lTGljZW5jYSh0aGlzLmxpY2VuY2FTZWxlY2lvbmFkYS5ub21lKX19XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zbSBtdC0xXCI+e3t0aGlzLmxpY2VuY2FTZWxlY2lvbmFkYS5jcGZjbnBqIHxcclxuICAgICAgICAgICAgICAgIGNwZkNucGogfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgIHBCdXR0b25cclxuICAgICAgICAgICAgICBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tdGV4dCBwYWRkaW5nLXN0eWxlIGgtMnJlbSB3LTJyZW0gaG92ZXI6YmctZ3JlZW4tNjAwIGhvdmVyOnRleHQtd2hpdGUgaWNvbi1tZW51XCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwidHJvY2FyTGljZW5jYSgpXCJcclxuICAgICAgICAgICAgICBbcFRvb2x0aXBdPVwiJ0FsdGVyYXIgd29ya3NwYWNlJ1wiXHJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCIncmlnaHQnXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZFwiPlxyXG4gICAgICAgICAgICAgICAgc3luY19hbHRcclxuICAgICAgICAgICAgICA8L2k+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPHAtZGl2aWRlciB0eXBlPVwic29saWRcIj48L3AtZGl2aWRlcj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJsaXN0LW5vbmUgbS0wICBjYXJkLWNvbnRhaW5lciB7e2V4cGFuZE1lbnUgPyAnbXgtMScgOiAnJ319XCJcclxuICAgICAgICAgIFtzdHlsZS5tYXgtaGVpZ2h0XT1cIihoZWlndGhDYXJkIC0gMjIwKSArICdweCdcIlxyXG4gICAgICAgICAgc3R5bGU9XCJvdmVyZmxvdy15OiBhdXRvO1wiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPCEtLSBtZW51cyAtLT5cclxuICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgbWVudSBvZiBtZW51czsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICA8IS0tIG1lbnUgcXVlIG7Do28gdGVtIGZpbGhvIC0tPlxyXG4gICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgIChtb3VzZWVudGVyKT1cIm9uTW91c2VFbnRlcihpKVwiXHJcbiAgICAgICAgICAgICAgKG1vdXNlbGVhdmUpPVwib25Nb3VzZUxlYXZlKClcIlxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaG92ZXItY29sb3InOiBtb3VzZU92ZXJJbmRleCA9PT0gaX1cIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJjYWxsUm91dGUobWVudS5saW5rKVwiXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCIhbWVudS5pbmRtZW51cGFpICYmICghbWVudS5pZG1lbnVwYWkgfHwgbWVudS5pZG1lbnVwYWkgPT0gMClcIlxyXG4gICAgICAgICAgICAgIHBSaXBwbGVcclxuICAgICAgICAgICAgICBbcFRvb2x0aXBdPVwiIWV4cGFuZE1lbnUgPyBtZW51LmRlc2NyaWNhb21lbnUgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCIncmlnaHQnXCJcclxuICAgICAgICAgICAgICBjbGFzcz1cInt7dmVyaWZpY2FyUGFnaW5hU2VsZWNpb25hZGEobWVudS5saW5rKSA/ICdiZy1ncmVlbi02MDAnIDogJyd9fSBtZW51LW9wdGlvbiBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBuby11bmRlcmxpbmUge3shZXhwYW5kTWVudSA/ICdqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJyA6ICcnfX0gY3Vyc29yLXBvaW50ZXIgYm9yZGVyLXJvdW5kIHRleHQtNzAwIGhvdmVyOmJnLWdyZWVuLTYwMCBob3Zlcjp0ZXh0LXdoaXRlIHRyYW5zaXRpb24tZHVyYXRpb24tMTUwIHRyYW5zaXRpb24tY29sb3JzIHAtcmlwcGxlXCJcclxuICAgICAgICAgICAgPlxyXG5cclxuICAgICAgICAgICAgICA8aVxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGljb24tbWVudSB7e2V4cGFuZE1lbnUgPyAnbWwtMSBtci0yJyA6ICcnfX0gIGljb24taG92ZXItY29sb3Ige3t2ZXJpZmljYXJQYWdpbmFTZWxlY2lvbmFkYShtZW51LmxpbmspID8gJ3RleHQtd2hpdGUnIDogJyd9fVwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUuaWNvbmVcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIHt7IG1lbnUuaWNvbmUgfX1cclxuICAgICAgICAgICAgICA8L2k+XHJcbiAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC1iYXNlIHRleHQtYmx1ZS05MDAgZm9udC1tZWRpdW0ge3t2ZXJpZmljYXJQYWdpbmFTZWxlY2lvbmFkYShtZW51LmxpbmspID8gJ3RleHQtd2hpdGUnIDogJyd9fVwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImV4cGFuZE1lbnVcIlxyXG4gICAgICAgICAgICAgID57eyBtZW51LmRlc2NyaWNhb21lbnUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgPCEtLSBtZW51IGNvbSBmaWxobyAtLT5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm1lbnUuaW5kbWVudXBhaVwiPlxyXG4gICAgICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgICAobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoaSlcIlxyXG4gICAgICAgICAgICAgICAgKG1vdXNlbGVhdmUpPVwib25Nb3VzZUxlYXZlKClcIlxyXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydob3Zlci1jb2xvcic6IG1vdXNlT3ZlckluZGV4ID09PSBpfVwiXHJcbiAgICAgICAgICAgICAgICBwUmlwcGxlXHJcbiAgICAgICAgICAgICAgICBwU3R5bGVDbGFzcz1cIkBuZXh0XCJcclxuICAgICAgICAgICAgICAgIGVudGVyQ2xhc3M9XCJoaWRkZW5cIlxyXG4gICAgICAgICAgICAgICAgZW50ZXJBY3RpdmVDbGFzcz1cInNsaWRlZG93blwiXHJcbiAgICAgICAgICAgICAgICBsZWF2ZVRvQ2xhc3M9XCJoaWRkZW5cIlxyXG4gICAgICAgICAgICAgICAgbGVhdmVBY3RpdmVDbGFzcz1cInNsaWRldXBcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51LW9wdGlvbiBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciB7eyFleHBhbmRNZW51ID8gJ2p1c3RpZnktY29udGVudC1jZW50ZXInIDogJ2p1c3RpZnktY29udGVudC1iZXR3ZWVuJ319IGN1cnNvci1wb2ludGVyIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSB0cmFuc2l0aW9uLWR1cmF0aW9uLTE1MCB0cmFuc2l0aW9uLWNvbG9ycyBwLXJpcHBsZVwiXHJcbiAgICAgICAgICAgICAgICBbdG9vbHRpcFBvc2l0aW9uXT1cIidyaWdodCdcIlxyXG4gICAgICAgICAgICAgICAgW3BUb29sdGlwXT1cIiFleHBhbmRNZW51ID8gbWVudS5kZXNjcmljYW9tZW51IDogJydcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIiFleHBhbmRNZW51ID8gZXhwYW5kTWVudSA9ICFleHBhbmRNZW51IDogJydcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgPGlcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgaWNvbi1tZW51IHt7ZXhwYW5kTWVudSA/ICdtbC0xIG1yLTInIDogJyd9fSBpY29uLWhvdmVyLWNvbG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUuaWNvbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaG92ZXItY29sb3InOiBtb3VzZU92ZXJJbmRleCA9PT0gaX1cIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgbWVudS5pY29uZSB9fVxyXG4gICAgICAgICAgICAgICAgICA8L2k+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LWJhc2UgdGV4dC1ibHVlLTkwMCBmb250LW1lZGl1bVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJleHBhbmRNZW51XCJcclxuICAgICAgICAgICAgICAgICAgPnt7IG1lbnUuZGVzY3JpY2FvbWVudSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGlcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwaSBwaS1jaGV2cm9uLWRvd24gdGV4dC1ibHVlLTkwMCBtci0xIGljb24taG92ZXItY29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImV4cGFuZE1lbnVcIlxyXG4gICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2hvdmVyLWNvbG9yJzogbW91c2VPdmVySW5kZXggPT09IGl9XCJcclxuICAgICAgICAgICAgICAgID48L2k+XHJcbiAgICAgICAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICAgICAgICA8IS0tIGZpbGhvcyAtLT5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImxpc3Qtbm9uZSBweS0wIHBsLTMgcHItMCBtLTAgaGlkZGVuIG92ZXJmbG93LXktaGlkZGVuIHRyYW5zaXRpb24tYWxsIHRyYW5zaXRpb24tZHVyYXRpb24tNDAwIHRyYW5zaXRpb24tZWFzZS1pbi1vdXRcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgIDxsaSAqbmdGb3I9XCJcclxuICAgICAgICAgICAgICBsZXQgZmlsaG8gb2YgcmV0b3JuYXJNZW51RmlsaG9zKG1lbnUuaWRhcGxpY2F0aXZvLCBtZW51LmlkbWVudSk7ICBsZXQgaUZpbGhvID0gaW5kZXhcclxuICAgICAgICAgICAgXCI+XHJcbiAgICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgKG1vdXNlZW50ZXIpPVwib25Nb3VzZUZpbGhvRW50ZXIoZmlsaG8uaWRtZW51KVwiXHJcbiAgICAgICAgICAgICAgKG1vdXNlbGVhdmUpPVwib25Nb3VzZUxlYXZlKClcIlxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaG92ZXItY29sb3InOiBtb3VzZU92ZXJGaWxob0luZGV4ID09PSBmaWxoby5pZG1lbnV9XCJcclxuICAgICAgICAgICAgICAqbmdJZj1cImV4cGFuZE1lbnVcIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJjYWxsUm91dGUoZmlsaG8ubGluaylcIlxyXG4gICAgICAgICAgICAgIHBSaXBwbGVcclxuICAgICAgICAgICAgICBjbGFzcz1cInt7dmVyaWZpY2FyUGFnaW5hU2VsZWNpb25hZGEoZmlsaG8ubGluaykgPyAnYmctZ3JlZW4tNjAwJyA6ICcnfX0gbWVudS1vcHRpb24gZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbm8tdW5kZXJsaW5lIGN1cnNvci1wb2ludGVyIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgdHJhbnNpdGlvbi1kdXJhdGlvbi0xNTAgdHJhbnNpdGlvbi1jb2xvcnMgcC1yaXBwbGUgcC0yXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxpXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgaWNvbi1tZW51IHt7ZXhwYW5kTWVudSA/ICdtbC0xIG1yLTInIDogJyd9fSBpY29uLWhvdmVyLWNvbG9yXCJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZmlsaG8uaWNvbmVcIlxyXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydob3Zlci1jb2xvcic6IG1vdXNlT3ZlckluZGV4ID09PSBpfVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAge3sgZmlsaG8uaWNvbmUgfX1cclxuICAgICAgICAgICAgICA8L2k+XHJcbiAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC1iYXNlIHRleHQtYmx1ZS05MDAgbWwtNCB7e3ZlcmlmaWNhclBhZ2luYVNlbGVjaW9uYWRhKGZpbGhvLmxpbmspID8gJ3RleHQtd2hpdGUnIDogJyd9fVwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImV4cGFuZE1lbnVcIlxyXG4gICAgICAgICAgICAgID57eyBmaWxoby5kZXNjcmljYW9tZW51IH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG48L3Atc2lkZWJhcj5cclxuXHJcbjxkaXZcclxuICBjbGFzcz1cInctYXV0byBoLXNjcmVlbiBwYWdlLWNvbnRlbnQgb3ZlcmZsb3cteS1oaWRkZW5cIlxyXG4gIGlkPVwicGFnZS1jb250ZW50XCJcclxuPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gbS0zXCI+XHJcbiAgICA8ZGl2PlxyXG4gICAgICA8cCBjbGFzcz1cInRleHQteGwgZm9udC1zZW1pYm9sZCB0ZXh0LWJsdWUtOTAwIGJyZWFkY3J1bWItdGl0bGVcIj57e2JyZWFkQ3J1bWJJdGVtc1ticmVhZENydW1iSXRlbXMubGVuZ3RoIC1cclxuICAgICAgICAxXT8ubGFiZWx9fTwvcD5cclxuICAgICAgPHAtYnJlYWRjcnVtYlxyXG4gICAgICAgICpuZ0lmPVwid2lkdGhDYXJkID4gNDAwXCJcclxuICAgICAgICBzdHlsZUNsYXNzPVwiYm9yZGVyLW5vbmUgcC0wIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIGgtMnJlbSAhaW1wb3J0YW50O1wiXHJcbiAgICAgICAgW21vZGVsXT1cImJyZWFkQ3J1bWJJdGVtc1wiXHJcbiAgICAgICAgW3N0eWxlXT1cIntiYWNrZ3JvdW5kQ29sb3I6ICcjZDRkM2QzJ31cIlxyXG4gICAgICAgIChvbkl0ZW1DbGljayk9XCJjYWxsUm91dGUoJGV2ZW50Lml0ZW0ucm91dGVyTGluaywgdHJ1ZSlcIlxyXG4gICAgICA+PC9wLWJyZWFkY3J1bWI+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwidy1hdXRvIGZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCI+XHJcblxyXG4gICAgICA8cC1idXR0b25cclxuICAgICAgICBzdHlsZUNsYXNzPVwidy0ycmVtIGgtMnJlbSB0ZXh0LWJsdWUtOTAwIGhvdmVyOmJnLWdyZWVuLTYwMCBob3Zlcjp0ZXh0LXdoaXRlXCJcclxuICAgICAgICBpY29uPVwicGkgcGktdGgtbGFyZ2VcIlxyXG4gICAgICAgIFtyb3VuZGVkXT1cInRydWVcIlxyXG4gICAgICAgIFt0ZXh0XT1cInRydWVcIlxyXG4gICAgICAgIChjbGljayk9XCJzaXN0ZW1hc1BhbmVsLnRvZ2dsZSgkZXZlbnQpXCJcclxuICAgICAgICBbcFRvb2x0aXBdPVwiJ1Npc3RlbWFzJ1wiXHJcbiAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCInbGVmdCdcIlxyXG4gICAgICA+PC9wLWJ1dHRvbj5cclxuXHJcbiAgICAgIDxwLWJ1dHRvblxyXG4gICAgICAgIHN0eWxlQ2xhc3M9XCJ3LTJyZW0gaC0ycmVtIHRleHQtYmx1ZS05MDAgaG92ZXI6YmctZ3JlZW4tNjAwIGhvdmVyOnRleHQtd2hpdGVcIlxyXG4gICAgICAgIGljb249XCJwaSBwaS11c2VyXCJcclxuICAgICAgICBbcm91bmRlZF09XCJ0cnVlXCJcclxuICAgICAgICBbdGV4dF09XCJ0cnVlXCJcclxuICAgICAgICBbcFRvb2x0aXBdPVwiJ01lbnUgZG8gVXN1w6FyaW8nXCJcclxuICAgICAgICBbdG9vbHRpcFBvc2l0aW9uXT1cIidsZWZ0J1wiXHJcbiAgICAgICAgKGNsaWNrKT1cIm1ldXNEYWRvc1BhbmVsLnRvZ2dsZSgkZXZlbnQpXCJcclxuICAgICAgPjwvcC1idXR0b24+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxwLWNhcmRcclxuICAgIGNsYXNzPVwiY2FyZC1jb250YWluZXJcIlxyXG4gICAgc3R5bGVDbGFzcz1cIm0tMyBib3JkZXItbm9yb3VuZCBvdmVyZmxvdy15LWF1dG8gY2FyZC1jb250YWluZXJcIlxyXG4gICAgW3N0eWxlXT1cIntoZWlnaHQ6IGhlaWd0aENhcmQgLSBhanVzdGFySGVpZ3RoQ2FyZCgpICsgJ3B4J31cIlxyXG4gID5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJjYXJkLWNvbnRhaW5lciB3LWZ1bGxcIlxyXG4gICAgICBbc3R5bGVdPVwie3dpZHRoOiB3aWR0aENhcmQgKyAncHgnfVwiXHJcbiAgICA+XHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gIDwvcC1jYXJkPlxyXG5cclxuPC9kaXY+XHJcblxyXG48cC1vdmVybGF5UGFuZWxcclxuICAjc2lzdGVtYXNQYW5lbFxyXG4gIFtzaG93VHJhbnNpdGlvbk9wdGlvbnNdPVwiJzM1MG1zIGVhc2Utb3V0J1wiXHJcbiAgW2hpZGVUcmFuc2l0aW9uT3B0aW9uc109XCInMjUwbXMgZWFzZS1pbidcIlxyXG4+XHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImNvbnRhaW5lclwiPlxyXG4gICAgPHAgY2xhc3M9XCJ0aXRsZS1zdHlsZSBtdC0zXCI+U2lzdGVtYXM8L3A+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBmbGV4LXdyYXAgZ2FwLTIgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgbXQtNSBtYi0zXCJcclxuICAgICAgc3R5bGU9XCJ3aWR0aDogMjUwcHg7IGhlaWdodDogMTAwJTtcIlxyXG4gICAgPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IGFwbGljYXRpdm8gb2YgYXBsaWNhdGl2b3NcIlxyXG4gICAgICAgIHBCdXR0b25cclxuICAgICAgICBwUmlwcGxlXHJcbiAgICAgICAgY2xhc3M9XCJidG4tc2lzdGVtYS0yIGJ0bi1zaXN0ZW1hIGhvdmVyLWJ0bi1jb3ItcGFkcmFvIHJlbW92ZS1mb2N1cyBoLTRyZW0gdy00cmVtXCJcclxuICAgICAgICAoY2xpY2spPVwic2VsZWNpb25hckFwbGljYXRpdm8oYXBsaWNhdGl2by5pZGFwbGljYXRpdm8pXCJcclxuICAgICAgICBbcFRvb2x0aXBdPVwiYXBsaWNhdGl2bz8uZGVzY3JpY2FvYXBsaWNhdGl2b1wiXHJcbiAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCInbGVmdCdcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgYXBsaWNhdGl2by5ub21lYXBsaWNhdGl2by5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvcC1vdmVybGF5UGFuZWw+XHJcblxyXG48cC1vdmVybGF5UGFuZWxcclxuICAjbWV1c0RhZG9zUGFuZWxcclxuICBbc2hvd1RyYW5zaXRpb25PcHRpb25zXT1cIiczNTBtcyBlYXNlLW91dCdcIlxyXG4gIFtoaWRlVHJhbnNpdGlvbk9wdGlvbnNdPVwiJzI1MG1zIGVhc2UtaW4nXCJcclxuPlxyXG5cclxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY29udGFpbmVyXCI+XHJcblxyXG4gICAgPHAgY2xhc3M9XCJ0aXRsZS1zdHlsZSBtdC0zXCI+T2zDoSwge3tub21lVXN1YXJpbyA/XHJcbiAgICAgIG5vbWVVc3VhcmlvLnNwbGl0KCcgJylbMF0gOiAnVXN1w6FyaW8nfX0gITwvcD5cclxuICAgIDxkaXYgY2xhc3M9XCJtdC01IG1iLTNcIj5cclxuXHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8cC1idXR0b25cclxuICAgICAgaWNvbj1cInBpIHBpLWxvY2tcIlxyXG4gICAgICBsYWJlbD1cIkFjZXNzYXIgS2VlcGFzc1wiXHJcbiAgICAgIChvbkNsaWNrKT1cImdlcmVuY2lhcktlZVBhc3MoJGV2ZW50KVwiXHJcbiAgICAgIHN0eWxlQ2xhc3M9XCJib3JkZXItbm9yb3VuZCB3LWZ1bGwgdGV4dC1ibHVlLTkwMFwiXHJcbiAgICAgIFt0ZXh0XT1cInRydWVcIlxyXG4gICAgPjwvcC1idXR0b24+XHJcbiAgICA8cC1idXR0b25cclxuICAgICAgaWNvbj1cInBpIHBpLXNpZ24tb3V0XCJcclxuICAgICAgbGFiZWw9XCJTYWlyXCJcclxuICAgICAgKG9uQ2xpY2spPVwic2FpcigkZXZlbnQpXCJcclxuICAgICAgc3R5bGVDbGFzcz1cImJvcmRlci1ub3JvdW5kIHctZnVsbCB0ZXh0LWJsdWUtOTAwXCJcclxuICAgICAgW3RleHRdPVwidHJ1ZVwiXHJcbiAgICA+PC9wLWJ1dHRvbj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuPC9wLW92ZXJsYXlQYW5lbD4iXX0=
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9rdi1tZW51L2t2LW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbWVudS9rdi1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBYXZCLE1BQU0sT0FBTyxlQUFlO0lBK0IxQixZQUNVLEdBQXNCLEVBQ3BCLE1BQWMsRUFDaEIsS0FBcUI7UUFGckIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDcEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNoQixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQWhDdEIsZ0JBQVcsR0FBc0IsRUFBRSxDQUFDO1FBR3BDLG9CQUFlLEdBQTRDLEVBQUUsQ0FBQztRQUM5RCxhQUFRLEdBQXVCLEVBQUUsQ0FBQztRQUtqQyxtQkFBYyxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzNELDBCQUFxQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzlELGtCQUFhLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDdEQsY0FBUyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2xELDZCQUF3QixHQUF5QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BFLHNCQUFpQixHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBTXhFLFVBQUssR0FBZ0IsRUFBRSxDQUFDO1FBRXhCLGVBQVUsR0FBWSxJQUFJLENBQUM7UUFJ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QVM7dUJBQUMsZ0JBQWdCO2dCQUNGLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFDSyxhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWU7Z0JBbUhuQixjQUFjO3NCQURwQixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHtcbiAgQWN0aXZhdGVkUm91dGUsXG4gIFJvdXRlclxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE92ZXJsYXlQYW5lbCB9IGZyb20gJ3ByaW1lbmcvb3ZlcmxheXBhbmVsJztcbmltcG9ydCB7IFNpZGViYXIgfSBmcm9tICdwcmltZW5nL3NpZGViYXInO1xuaW1wb3J0IHsgQXBsaWNhdGl2b01vZGVsIH0gZnJvbSAnLi4vLi4vYXBpL21vZGVscy9hcGxpY2F0aXZvLW1vZGVsJztcbmltcG9ydCB7IE1hc3RlckNvbWJvTW9kZWwgfSBmcm9tICcuLi8uLi9hcGkvbW9kZWxzL21hc3Rlci1jb21iby1tb2RlbCc7XG5pbXBvcnQgeyBNZW51TW9kZWwgfSBmcm9tICcuLi8uLi9hcGkvbW9kZWxzL21lbnUtbW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrdi1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9rdi1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEt2TWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgYXBsaWNhdGl2b3M6IEFwbGljYXRpdm9Nb2RlbFtdID0gW107XG4gIEBJbnB1dCgpIHVsdGltb0FwbGljYXRpdm9TZWxlY2lvbmFkbyE6IG51bWJlcjtcblxuICBASW5wdXQoKSBicmVhZENydW1iSXRlbXM6IHsgbGFiZWw6IHN0cmluZywgcm91dGVyTGluazogc3RyaW5nIH1bXSA9IFtdO1xuICBASW5wdXQoKSBsaWNlbmNhczogTWFzdGVyQ29tYm9Nb2RlbFtdID0gW107XG4gIEBJbnB1dCgpIGxpY2VuY2FTZWxlY2lvbmFkYSE6IE1hc3RlckNvbWJvTW9kZWw7XG4gIEBJbnB1dCgpIGxvZ29JbWFnZSE6IGFueTtcbiAgQElucHV0KCkgbm9tZVVzdWFyaW8hOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIGV4cGFuZE1lbnVFbWl0OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBnZXJlbmNpYXJLZWVQYXNzRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgbGljZW5jYUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBzYWlyRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgc2VsZWNpb25hckFwbGljYXRpdm9FbWl0OiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHRyb2NhckxpY2VuY2FFbWl0OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7ICBcblxuICBAVmlld0NoaWxkKCdtZXVzRGFkb3NQYW5lbCcpIG1ldXNEYWRvc1BhbmVsITogT3ZlcmxheVBhbmVsO1xuICBAVmlld0NoaWxkKCdzaWRlYmFyUmVmJykgc2lkZWJhclJlZiE6IFNpZGViYXI7XG4gIEBWaWV3Q2hpbGQoJ3Npc3RlbWFzUGFuZWwnKSBzaXN0ZW1hc1BhbmVsITogT3ZlcmxheVBhbmVsO1xuXG4gIG1lbnVzOiBNZW51TW9kZWxbXSA9IFtdO1xuXG4gIGV4cGFuZE1lbnU6IGJvb2xlYW4gPSB0cnVlO1xuICBoZWlndGhDYXJkITogbnVtYmVyO1xuICBtb3VzZU92ZXJGaWxob0luZGV4OiBhbnk7XG4gIG1vdXNlT3ZlckluZGV4OiBhbnk7XG4gIHZpc2libGVEaWFsb2dMaWNlbmNhOiBib29sZWFuID0gZmFsc2U7XG4gIHdpZHRoQ2FyZCE6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7IH1cblxuICBwdWJsaWMgYWp1c3RhckhlaWd0aENhcmQoKTogbnVtYmVyIHtcbiAgICBpZiAodGhpcy53aWR0aENhcmQgPiA0MDApIHtcbiAgICAgIGlmICh0aGlzLmJyZWFkQ3J1bWJJdGVtcy5sZW5ndGggPiAwKSByZXR1cm4gMTA1XG4gICAgICBlbHNlIHJldHVybiA4NVxuICAgIH0gZWxzZSByZXR1cm4gODNcbiAgfVxuXG4gIHB1YmxpYyBjYWxsUm91dGUoZTogYW55LCBleHBhbmQ/OiBib29sZWFuKSB7XG4gICAgaWYgKCFleHBhbmQpXG4gICAgICAhdGhpcy5leHBhbmRNZW51ID8gdGhpcy5leHBhbmRNZW51ID0gIXRoaXMuZXhwYW5kTWVudSA6ICcnO1xuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChlKVxuICB9XG5cbiAgcHJpdmF0ZSBjb25maWd1cmFyTGljZW5jYXMoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmRlZmluaXJNZW51c1BvclNpc3RlbWEodGhpcy51bHRpbW9BcGxpY2F0aXZvU2VsZWNpb25hZG8gfHwgdGhpcy5hcGxpY2F0aXZvc1swXT8uaWRhcGxpY2F0aXZvKTtcbiAgICB9LCAxKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVmaW5pck1lbnVzUG9yU2lzdGVtYShpZGFwbGljYXRpdm86IG51bWJlcikge1xuICAgIHRoaXMubWVudXMgPSB0aGlzLmFwbGljYXRpdm9zLmZpbmQoKHgpID0+IHguaWRhcGxpY2F0aXZvID09IGlkYXBsaWNhdGl2byk/Lm1lbnVzIHx8IFtdO1xuXG4gICAgaWYgKHRoaXMucm91dGVyLnVybCAmJiB0aGlzLm1lbnVzICYmIHRoaXMubWVudXMubGVuZ3RoID4gMCkge1xuICAgICAgaWYgKHRoaXMucm91dGVyLnVybCA9PT0gJy8nKSB7XG4gICAgICAgIHRoaXMubmF2aWdhdGVUb0ZpcnN0TWVudSgpXG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgbWVudVNlbGVjaW9uYWRvID0gdGhpcy5tZW51cy5maW5kKChtZW51OiBhbnkpID0+IG1lbnUubGluayAmJiBtZW51LmxpbmsuaW5jbHVkZXModGhpcy5yb3V0ZXIudXJsLnNsaWNlKDEpKSk7XG4gICAgICAgIGlmIChtZW51U2VsZWNpb25hZG8pIHtcbiAgICAgICAgICB0aGlzLm5hdmlnYXRlVG9NZW51KG1lbnVTZWxlY2lvbmFkbyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnNpc3RlbWFzUGFuZWwuaGlkZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBleHBhbmRNZW51RXZlbnQoKSB7XG4gICAgdGhpcy5leHBhbmRNZW51RW1pdC5lbWl0KHRoaXMuZXhwYW5kTWVudSk7XG4gIH1cblxuICBwdWJsaWMgZ2VyZW5jaWFyS2VlUGFzcyhldmVudDogYW55KSB7XG4gICAgdGhpcy5zaXN0ZW1hc1BhbmVsLmhpZGUoKTtcbiAgICB0aGlzLmdlcmVuY2lhcktlZVBhc3NFdmVudC5lbWl0KGV2ZW50KVxuICB9XG5cbiAgcHVibGljIG1hc2NhcmFOb21lTGljZW5jYShub21lTGljZW5jYTogYW55KTogc3RyaW5nIHtcbiAgICBpZiAobm9tZUxpY2VuY2EpIHtcbiAgICAgIGlmIChub21lTGljZW5jYS5sZW5ndGggPiAyMylcbiAgICAgICAgcmV0dXJuIG5vbWVMaWNlbmNhLnN1YnN0cmluZygwLCAyMykgKyAnLi4uJztcbiAgICAgIGVsc2UgcmV0dXJuIG5vbWVMaWNlbmNhO1xuICAgIH0gZWxzZSByZXR1cm4gJyc7XG4gIH1cblxuICBwcml2YXRlIG5hdmlnYXRlVG9GaXJzdE1lbnUoKTogdm9pZCB7XG4gICAgY29uc3QgZmlyc3RNZW51ID0gdGhpcy5tZW51c1swXTtcbiAgICBpZiAoZmlyc3RNZW51LmluZG1lbnVwYWkpIHtcbiAgICAgIGNvbnN0IGZpbGhvcyA9IHRoaXMucmV0b3JuYXJNZW51RmlsaG9zKGZpcnN0TWVudS5pZGFwbGljYXRpdm8sIGZpcnN0TWVudS5pZG1lbnUpO1xuICAgICAgaWYgKGZpbGhvcykge1xuICAgICAgICB0aGlzLmNhbGxSb3V0ZShmaWxob3NbMF0ubGluaywgdHJ1ZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2FsbFJvdXRlKGZpcnN0TWVudS5saW5rLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG5hdmlnYXRlVG9NZW51KG1lbnU6IGFueSk6IHZvaWQge1xuICAgIGlmIChtZW51Lm1lbnVwYWkpIHtcbiAgICAgIGNvbnN0IGZpbGhvcyA9IHRoaXMucmV0b3JuYXJNZW51RmlsaG9zKG1lbnUuaWRzaXN0ZW1hLCBtZW51LmlkbWVudSk7XG4gICAgICBpZiAoZmlsaG9zKSB7XG4gICAgICAgIHRoaXMuY2FsbFJvdXRlKGZpbGhvc1swXS5saW5rLCB0cnVlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jYWxsUm91dGUobWVudS5saW5rLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb25maWd1cmFyTGljZW5jYXMoKTtcbiAgICB0aGlzLmhlaWd0aENhcmQgPSBOdW1iZXIoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhZ2UtY29udGVudCcpPy5vZmZzZXRIZWlnaHQpO1xuICAgIHRoaXMud2lkdGhDYXJkID0gTnVtYmVyKHdpbmRvdy5pbm5lcldpZHRoKSAtICh0aGlzLmV4cGFuZE1lbnUgPyAzMzMgOiA5Myk7XG4gICAgdGhpcy5leHBhbmRNZW51RXZlbnQoKVxuICB9XG5cbiAgcHVibGljIG9uTW91c2VFbnRlcihpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5tb3VzZU92ZXJJbmRleCA9IGluZGV4O1xuICB9XG5cbiAgcHVibGljIG9uTW91c2VGaWxob0VudGVyKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLm1vdXNlT3ZlckZpbGhvSW5kZXggPSBpbmRleDtcbiAgfVxuXG4gIHB1YmxpYyBvbk1vdXNlTGVhdmUoKSB7XG4gICAgdGhpcy5tb3VzZU92ZXJJbmRleCA9IG51bGw7XG4gICAgdGhpcy5tb3VzZU92ZXJGaWxob0luZGV4ID0gbnVsbDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25XaW5kb3dSZXNpemUoKSB7XG4gICAgdGhpcy5oZWlndGhDYXJkID0gTnVtYmVyKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYWdlLWNvbnRlbnQnKT8ub2Zmc2V0SGVpZ2h0KTtcbiAgICB0aGlzLndpZHRoQ2FyZCA9IE51bWJlcih3aW5kb3cuaW5uZXJXaWR0aCkgLSAodGhpcy5leHBhbmRNZW51ID8gMzMzIDogOTMpO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyByZXRvcm5hck1lbnVGaWxob3MoaWRhcGxpY2F0aXZvOiBudW1iZXIsIGlkbWVudTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMuYXBsaWNhdGl2b3NcbiAgICAgIC5maW5kKCh4KSA9PiB4LmlkYXBsaWNhdGl2byA9PSBpZGFwbGljYXRpdm8pPy5tZW51c1xuICAgICAgLmZpbHRlcigoeCkgPT4geC5pZG1lbnVwYWkgPT0gaWRtZW51KTtcbiAgfVxuXG4gIHB1YmxpYyBzYWlyKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnNpc3RlbWFzUGFuZWwuaGlkZSgpO1xuICAgIHRoaXMuc2FpckV2ZW50LmVtaXQoZXZlbnQpXG4gIH1cblxuICBwdWJsaWMgc2VsZWNpb25hckFwbGljYXRpdm8oaWRhcGxpY2F0aXZvOiBudW1iZXIpIHtcbiAgICB0aGlzLnNlbGVjaW9uYXJBcGxpY2F0aXZvRW1pdC5lbWl0KGlkYXBsaWNhdGl2byk7XG4gICAgdGhpcy5kZWZpbmlyTWVudXNQb3JTaXN0ZW1hKGlkYXBsaWNhdGl2byk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlTWVudSgpIHtcbiAgICB0aGlzLmV4cGFuZE1lbnUgPSAhdGhpcy5leHBhbmRNZW51O1xuICAgIHRoaXMuZXhwYW5kTWVudUV2ZW50KClcbiAgfVxuXG4gIHB1YmxpYyB0cm9jYXJMaWNlbmNhKCkge1xuICAgIHRoaXMudHJvY2FyTGljZW5jYUVtaXQuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIHZlcmlmaWNhclBhZ2luYVNlbGVjaW9uYWRhKGxpbms6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlci51cmwuaW5jbHVkZXMobGluayk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IG92ZXJmbG93LXktaGlkZGVuIHctIGZ1bGwtY29udGFpbmVyXCI+XG5cbiAgPGRpdiBbc3R5bGVdPVwie21pbldpZHRoOiBleHBhbmRNZW51ID8gJzMwMHB4JyA6ICc2MHB4J31cIj48L2Rpdj5cblxuICA8cC1zaWRlYmFyXG4gICAgI3NpZGViYXJSZWZcbiAgICBbdmlzaWJsZV09XCJ0cnVlXCJcbiAgICBbc2hvd0Nsb3NlSWNvbl09XCJmYWxzZVwiXG4gICAgW21vZGFsXT1cImZhbHNlXCJcbiAgICBbc3R5bGVdPVwie3dpZHRoOiBleHBhbmRNZW51ID8gJzMwMHB4JyA6ICc2MHB4J31cIlxuICA+XG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRsZXNzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBteC0xXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGdhcC0yIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGZsZXgtc2hyaW5rLTAgbXgtMlwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBhbGlnbi1pdGVtcy1jZW50ZXIge3tleHBhbmRNZW51ID8gJ2p1c3RpZnktY29udGVudC1iZXR3ZWVuJyA6ICdqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJ319IHB5LTNcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgKm5nSWY9XCJleHBhbmRNZW51XCJcbiAgICAgICAgICAgICAgYWx0PVwiQ2FyZFwiXG4gICAgICAgICAgICAgIFtzcmNdPVwibG9nb0ltYWdlXCJcbiAgICAgICAgICAgICAgd2lkdGg9XCIxNTBcIlxuICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBwQnV0dG9uXG4gICAgICAgICAgICAgIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi10ZXh0IHBhZGRpbmctc3R5bGUgaC0ycmVtIHctMnJlbSBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSBpY29uLW1lbnVcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlTWVudSgpXCJcbiAgICAgICAgICAgICAgW3BUb29sdGlwXT1cImV4cGFuZE1lbnUgPyAnT2N1dGFyIE1lbnUnIDogJ0V4cGFuZGlyIE1lbnUnXCJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCIncmlnaHQnXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+XG4gICAgICAgICAgICAgICAgbWVudVxuICAgICAgICAgICAgICA8L2k+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBhbGlnbi1pdGVtcy1jZW50ZXIge3tleHBhbmRNZW51ID8gJ2p1c3RpZnktY29udGVudC1iZXR3ZWVuJyA6ICdqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJ319XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgICpuZ0lmPVwiZXhwYW5kTWVudVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJ0cm9jYXJMaWNlbmNhKClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC1zbSBmb250LXNlbWlib2xkIG1yLTJcIlxuICAgICAgICAgICAgICAgIFtwVG9vbHRpcF09XCJ0aGlzLmxpY2VuY2FTZWxlY2lvbmFkYS5ub21lXCJcbiAgICAgICAgICAgICAgICBbdG9vbHRpcFBvc2l0aW9uXT1cIidyaWdodCdcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3ttYXNjYXJhTm9tZUxpY2VuY2EodGhpcy5saWNlbmNhU2VsZWNpb25hZGEubm9tZSl9fVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zbSBtdC0xXCI+e3t0aGlzLmxpY2VuY2FTZWxlY2lvbmFkYS5jcGZjbnBqIHxcbiAgICAgICAgICAgICAgICBjcGZDbnBqIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgcEJ1dHRvblxuICAgICAgICAgICAgICBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tdGV4dCBwYWRkaW5nLXN0eWxlIGgtMnJlbSB3LTJyZW0gaG92ZXI6YmctZ3JlZW4tNjAwIGhvdmVyOnRleHQtd2hpdGUgaWNvbi1tZW51XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInRyb2NhckxpY2VuY2EoKVwiXG4gICAgICAgICAgICAgIFtwVG9vbHRpcF09XCInQWx0ZXJhciB3b3Jrc3BhY2UnXCJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCIncmlnaHQnXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+XG4gICAgICAgICAgICAgICAgc3luY19hbHRcbiAgICAgICAgICAgICAgPC9pPlxuICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8cC1kaXZpZGVyIHR5cGU9XCJzb2xpZFwiPjwvcC1kaXZpZGVyPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJsaXN0LW5vbmUgbS0wICBjYXJkLWNvbnRhaW5lciB7e2V4cGFuZE1lbnUgPyAnbXgtMScgOiAnJ319XCJcbiAgICAgICAgICBbc3R5bGUubWF4LWhlaWdodF09XCIoaGVpZ3RoQ2FyZCAtIDIyMCkgKyAncHgnXCJcbiAgICAgICAgICBzdHlsZT1cIm92ZXJmbG93LXk6IGF1dG87XCJcbiAgICAgICAgPlxuICAgICAgICAgIDwhLS0gbWVudXMgLS0+XG4gICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBtZW51IG9mIG1lbnVzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICA8IS0tIG1lbnUgcXVlIG7Do28gdGVtIGZpbGhvIC0tPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgKG1vdXNlZW50ZXIpPVwib25Nb3VzZUVudGVyKGkpXCJcbiAgICAgICAgICAgICAgKG1vdXNlbGVhdmUpPVwib25Nb3VzZUxlYXZlKClcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2hvdmVyLWNvbG9yJzogbW91c2VPdmVySW5kZXggPT09IGl9XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNhbGxSb3V0ZShtZW51LmxpbmspXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCIhbWVudS5pbmRtZW51cGFpICYmICghbWVudS5pZG1lbnVwYWkgfHwgbWVudS5pZG1lbnVwYWkgPT0gMClcIlxuICAgICAgICAgICAgICBwUmlwcGxlXG4gICAgICAgICAgICAgIFtwVG9vbHRpcF09XCIhZXhwYW5kTWVudSA/IG1lbnUuZGVzY3JpY2FvbWVudSA6ICcnXCJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCIncmlnaHQnXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJ7e3ZlcmlmaWNhclBhZ2luYVNlbGVjaW9uYWRhKG1lbnUubGluaykgPyAnYmctZ3JlZW4tNjAwJyA6ICcnfX0gbWVudS1vcHRpb24gZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbm8tdW5kZXJsaW5lIHt7IWV4cGFuZE1lbnUgPyAnanVzdGlmeS1jb250ZW50LWNlbnRlcicgOiAnJ319IGN1cnNvci1wb2ludGVyIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSB0cmFuc2l0aW9uLWR1cmF0aW9uLTE1MCB0cmFuc2l0aW9uLWNvbG9ycyBwLXJpcHBsZVwiXG4gICAgICAgICAgICA+XG5cbiAgICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgaWNvbi1tZW51IHt7ZXhwYW5kTWVudSA/ICdtbC0xIG1yLTInIDogJyd9fSAgaWNvbi1ob3Zlci1jb2xvciB7e3ZlcmlmaWNhclBhZ2luYVNlbGVjaW9uYWRhKG1lbnUubGluaykgPyAndGV4dC13aGl0ZScgOiAnJ319XCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUuaWNvbmVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgbWVudS5pY29uZSB9fVxuICAgICAgICAgICAgICA8L2k+XG4gICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LWJhc2UgdGV4dC1ibHVlLTkwMCBmb250LW1lZGl1bSB7e3ZlcmlmaWNhclBhZ2luYVNlbGVjaW9uYWRhKG1lbnUubGluaykgPyAndGV4dC13aGl0ZScgOiAnJ319XCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImV4cGFuZE1lbnVcIlxuICAgICAgICAgICAgICA+e3sgbWVudS5kZXNjcmljYW9tZW51IH19PC9zcGFuPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPCEtLSBtZW51IGNvbSBmaWxobyAtLT5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJtZW51LmluZG1lbnVwYWlcIj5cbiAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoaSlcIlxuICAgICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cIm9uTW91c2VMZWF2ZSgpXCJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2hvdmVyLWNvbG9yJzogbW91c2VPdmVySW5kZXggPT09IGl9XCJcbiAgICAgICAgICAgICAgICBwUmlwcGxlXG4gICAgICAgICAgICAgICAgcFN0eWxlQ2xhc3M9XCJAbmV4dFwiXG4gICAgICAgICAgICAgICAgZW50ZXJDbGFzcz1cImhpZGRlblwiXG4gICAgICAgICAgICAgICAgZW50ZXJBY3RpdmVDbGFzcz1cInNsaWRlZG93blwiXG4gICAgICAgICAgICAgICAgbGVhdmVUb0NsYXNzPVwiaGlkZGVuXCJcbiAgICAgICAgICAgICAgICBsZWF2ZUFjdGl2ZUNsYXNzPVwic2xpZGV1cFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51LW9wdGlvbiBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciB7eyFleHBhbmRNZW51ID8gJ2p1c3RpZnktY29udGVudC1jZW50ZXInIDogJ2p1c3RpZnktY29udGVudC1iZXR3ZWVuJ319IGN1cnNvci1wb2ludGVyIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSB0cmFuc2l0aW9uLWR1cmF0aW9uLTE1MCB0cmFuc2l0aW9uLWNvbG9ycyBwLXJpcHBsZVwiXG4gICAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCIncmlnaHQnXCJcbiAgICAgICAgICAgICAgICBbcFRvb2x0aXBdPVwiIWV4cGFuZE1lbnUgPyBtZW51LmRlc2NyaWNhb21lbnUgOiAnJ1wiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIiFleHBhbmRNZW51ID8gZXhwYW5kTWVudSA9ICFleHBhbmRNZW51IDogJydcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG5cbiAgICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBpY29uLW1lbnUge3tleHBhbmRNZW51ID8gJ21sLTEgbXItMicgOiAnJ319IGljb24taG92ZXItY29sb3JcIlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUuaWNvbmVcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2hvdmVyLWNvbG9yJzogbW91c2VPdmVySW5kZXggPT09IGl9XCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgbWVudS5pY29uZSB9fVxuICAgICAgICAgICAgICAgICAgPC9pPlxuICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LWJhc2UgdGV4dC1ibHVlLTkwMCBmb250LW1lZGl1bVwiXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZXhwYW5kTWVudVwiXG4gICAgICAgICAgICAgICAgICA+e3sgbWVudS5kZXNjcmljYW9tZW51IH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInBpIHBpLWNoZXZyb24tZG93biB0ZXh0LWJsdWUtOTAwIG1yLTEgaWNvbi1ob3Zlci1jb2xvclwiXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImV4cGFuZE1lbnVcIlxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydob3Zlci1jb2xvcic6IG1vdXNlT3ZlckluZGV4ID09PSBpfVwiXG4gICAgICAgICAgICAgICAgPjwvaT5cbiAgICAgICAgICAgICAgPC9hPlxuXG4gICAgICAgICAgICAgIDwhLS0gZmlsaG9zIC0tPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJsaXN0LW5vbmUgcHktMCBwbC0zIHByLTAgbS0wIGhpZGRlbiBvdmVyZmxvdy15LWhpZGRlbiB0cmFuc2l0aW9uLWFsbCB0cmFuc2l0aW9uLWR1cmF0aW9uLTQwMCB0cmFuc2l0aW9uLWVhc2UtaW4tb3V0XCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgIDxsaSAqbmdGb3I9XCJcbiAgICAgICAgICAgICAgbGV0IGZpbGhvIG9mIHJldG9ybmFyTWVudUZpbGhvcyhtZW51LmlkYXBsaWNhdGl2bywgbWVudS5pZG1lbnUpOyAgbGV0IGlGaWxobyA9IGluZGV4XG4gICAgICAgICAgICBcIj5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgIChtb3VzZWVudGVyKT1cIm9uTW91c2VGaWxob0VudGVyKGZpbGhvLmlkbWVudSlcIlxuICAgICAgICAgICAgICAobW91c2VsZWF2ZSk9XCJvbk1vdXNlTGVhdmUoKVwiXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaG92ZXItY29sb3InOiBtb3VzZU92ZXJGaWxob0luZGV4ID09PSBmaWxoby5pZG1lbnV9XCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJleHBhbmRNZW51XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNhbGxSb3V0ZShmaWxoby5saW5rKVwiXG4gICAgICAgICAgICAgIHBSaXBwbGVcbiAgICAgICAgICAgICAgY2xhc3M9XCJ7e3ZlcmlmaWNhclBhZ2luYVNlbGVjaW9uYWRhKGZpbGhvLmxpbmspID8gJ2JnLWdyZWVuLTYwMCcgOiAnJ319IG1lbnUtb3B0aW9uIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIG5vLXVuZGVybGluZSBjdXJzb3ItcG9pbnRlciBib3JkZXItcm91bmQgdGV4dC03MDAgaG92ZXI6YmctZ3JlZW4tNjAwIHRyYW5zaXRpb24tZHVyYXRpb24tMTUwIHRyYW5zaXRpb24tY29sb3JzIHAtcmlwcGxlIHAtMlwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGljb24tbWVudSB7e2V4cGFuZE1lbnUgPyAnbWwtMSBtci0yJyA6ICcnfX0gaWNvbi1ob3Zlci1jb2xvclwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJmaWxoby5pY29uZVwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydob3Zlci1jb2xvcic6IG1vdXNlT3ZlckluZGV4ID09PSBpfVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBmaWxoby5pY29uZSB9fVxuICAgICAgICAgICAgICA8L2k+XG4gICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LWJhc2UgdGV4dC1ibHVlLTkwMCBtbC00IHt7dmVyaWZpY2FyUGFnaW5hU2VsZWNpb25hZGEoZmlsaG8ubGluaykgPyAndGV4dC13aGl0ZScgOiAnJ319XCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImV4cGFuZE1lbnVcIlxuICAgICAgICAgICAgICA+e3sgZmlsaG8uZGVzY3JpY2FvbWVudSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuPC9kaXY+XG48L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG48L3Atc2lkZWJhcj5cblxuPGRpdlxuICBjbGFzcz1cInctYXV0byBoLXNjcmVlbiBwYWdlLWNvbnRlbnQgb3ZlcmZsb3cteS1oaWRkZW5cIlxuICBpZD1cInBhZ2UtY29udGVudFwiXG4+XG5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIG0tM1wiPlxuICAgIDxkaXY+XG4gICAgICA8cCBjbGFzcz1cInRleHQteGwgZm9udC1zZW1pYm9sZCB0ZXh0LWJsdWUtOTAwIGJyZWFkY3J1bWItdGl0bGVcIj57e2JyZWFkQ3J1bWJJdGVtc1ticmVhZENydW1iSXRlbXMubGVuZ3RoIC1cbiAgICAgICAgMV0/LmxhYmVsfX08L3A+XG4gICAgICA8cC1icmVhZGNydW1iXG4gICAgICAgICpuZ0lmPVwid2lkdGhDYXJkID4gNDAwXCJcbiAgICAgICAgc3R5bGVDbGFzcz1cImJvcmRlci1ub25lIHAtMCBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBoLTJyZW0gIWltcG9ydGFudDtcIlxuICAgICAgICBbbW9kZWxdPVwiYnJlYWRDcnVtYkl0ZW1zXCJcbiAgICAgICAgW3N0eWxlXT1cIntiYWNrZ3JvdW5kQ29sb3I6ICcjZDRkM2QzJ31cIlxuICAgICAgICAob25JdGVtQ2xpY2spPVwiY2FsbFJvdXRlKCRldmVudC5pdGVtLnJvdXRlckxpbmssIHRydWUpXCJcbiAgICAgID48L3AtYnJlYWRjcnVtYj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJ3LWF1dG8gZmxleCBmbGV4LXJvdyBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIj5cblxuICAgICAgPHAtYnV0dG9uXG4gICAgICAgIHN0eWxlQ2xhc3M9XCJ3LTJyZW0gaC0ycmVtIHRleHQtYmx1ZS05MDAgaG92ZXI6YmctZ3JlZW4tNjAwIGhvdmVyOnRleHQtd2hpdGVcIlxuICAgICAgICBpY29uPVwicGkgcGktdGgtbGFyZ2VcIlxuICAgICAgICBbcm91bmRlZF09XCJ0cnVlXCJcbiAgICAgICAgW3RleHRdPVwidHJ1ZVwiXG4gICAgICAgIChjbGljayk9XCJzaXN0ZW1hc1BhbmVsLnRvZ2dsZSgkZXZlbnQpXCJcbiAgICAgICAgW3BUb29sdGlwXT1cIidTaXN0ZW1hcydcIlxuICAgICAgICBbdG9vbHRpcFBvc2l0aW9uXT1cIidsZWZ0J1wiXG4gICAgICA+PC9wLWJ1dHRvbj5cblxuICAgICAgPHAtYnV0dG9uXG4gICAgICAgIHN0eWxlQ2xhc3M9XCJ3LTJyZW0gaC0ycmVtIHRleHQtYmx1ZS05MDAgaG92ZXI6YmctZ3JlZW4tNjAwIGhvdmVyOnRleHQtd2hpdGVcIlxuICAgICAgICBpY29uPVwicGkgcGktdXNlclwiXG4gICAgICAgIFtyb3VuZGVkXT1cInRydWVcIlxuICAgICAgICBbdGV4dF09XCJ0cnVlXCJcbiAgICAgICAgW3BUb29sdGlwXT1cIidNZW51IGRvIFVzdcOhcmlvJ1wiXG4gICAgICAgIFt0b29sdGlwUG9zaXRpb25dPVwiJ2xlZnQnXCJcbiAgICAgICAgKGNsaWNrKT1cIm1ldXNEYWRvc1BhbmVsLnRvZ2dsZSgkZXZlbnQpXCJcbiAgICAgID48L3AtYnV0dG9uPlxuXG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxwLWNhcmRcbiAgICBjbGFzcz1cImNhcmQtY29udGFpbmVyXCJcbiAgICBzdHlsZUNsYXNzPVwibS0zIGJvcmRlci1ub3JvdW5kIG92ZXJmbG93LXktYXV0byBjYXJkLWNvbnRhaW5lclwiXG4gICAgW3N0eWxlXT1cIntoZWlnaHQ6IGhlaWd0aENhcmQgLSBhanVzdGFySGVpZ3RoQ2FyZCgpICsgJ3B4J31cIlxuICA+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJjYXJkLWNvbnRhaW5lciB3LWZ1bGwgb3ZlcmZsb3cteS1oaWRkZW5cIlxuICAgICAgW3N0eWxlXT1cInt3aWR0aDogd2lkdGhDYXJkICsgJ3B4J31cIlxuICAgID5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9wLWNhcmQ+XG5cbjwvZGl2PlxuXG48cC1vdmVybGF5UGFuZWxcbiAgI3Npc3RlbWFzUGFuZWxcbiAgW3Nob3dUcmFuc2l0aW9uT3B0aW9uc109XCInMzUwbXMgZWFzZS1vdXQnXCJcbiAgW2hpZGVUcmFuc2l0aW9uT3B0aW9uc109XCInMjUwbXMgZWFzZS1pbidcIlxuPlxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY29udGFpbmVyXCI+XG4gICAgPHAgY2xhc3M9XCJ0aXRsZS1zdHlsZSBtdC0zXCI+U2lzdGVtYXM8L3A+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBnYXAtMiBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBtdC01IG1iLTNcIlxuICAgICAgc3R5bGU9XCJ3aWR0aDogMjUwcHg7IGhlaWdodDogMTAwJTtcIlxuICAgID5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nRm9yPVwibGV0IGFwbGljYXRpdm8gb2YgYXBsaWNhdGl2b3NcIlxuICAgICAgICBwQnV0dG9uXG4gICAgICAgIHBSaXBwbGVcbiAgICAgICAgY2xhc3M9XCJidG4tc2lzdGVtYS0yIGJ0bi1zaXN0ZW1hIGhvdmVyLWJ0bi1jb3ItcGFkcmFvIHJlbW92ZS1mb2N1cyBoLTRyZW0gdy00cmVtXCJcbiAgICAgICAgKGNsaWNrKT1cInNlbGVjaW9uYXJBcGxpY2F0aXZvKGFwbGljYXRpdm8uaWRhcGxpY2F0aXZvKVwiXG4gICAgICAgIFtwVG9vbHRpcF09XCJhcGxpY2F0aXZvPy5kZXNjcmljYW9hcGxpY2F0aXZvXCJcbiAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCInbGVmdCdcIlxuICAgICAgPlxuICAgICAgICB7eyBhcGxpY2F0aXZvLm5vbWVhcGxpY2F0aXZvLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvcC1vdmVybGF5UGFuZWw+XG5cbjxwLW92ZXJsYXlQYW5lbFxuICAjbWV1c0RhZG9zUGFuZWxcbiAgW3Nob3dUcmFuc2l0aW9uT3B0aW9uc109XCInMzUwbXMgZWFzZS1vdXQnXCJcbiAgW2hpZGVUcmFuc2l0aW9uT3B0aW9uc109XCInMjUwbXMgZWFzZS1pbidcIlxuPlxuXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250YWluZXJcIj5cblxuICAgIDxwIGNsYXNzPVwidGl0bGUtc3R5bGUgbXQtM1wiPk9sw6EsIHt7bm9tZVVzdWFyaW8gP1xuICAgICAgbm9tZVVzdWFyaW8uc3BsaXQoJyAnKVswXSA6ICdVc3XDoXJpbyd9fSAhPC9wPlxuICAgIDxkaXYgY2xhc3M9XCJtdC01IG1iLTNcIj5cblxuICAgIDwvZGl2PlxuXG4gICAgPHAtYnV0dG9uXG4gICAgICBpY29uPVwicGkgcGktbG9ja1wiXG4gICAgICBsYWJlbD1cIkFjZXNzYXIgS2VlcGFzc1wiXG4gICAgICAob25DbGljayk9XCJnZXJlbmNpYXJLZWVQYXNzKCRldmVudClcIlxuICAgICAgc3R5bGVDbGFzcz1cImJvcmRlci1ub3JvdW5kIHctZnVsbCB0ZXh0LWJsdWUtOTAwXCJcbiAgICAgIFt0ZXh0XT1cInRydWVcIlxuICAgID48L3AtYnV0dG9uPlxuICAgIDxwLWJ1dHRvblxuICAgICAgaWNvbj1cInBpIHBpLXNpZ24tb3V0XCJcbiAgICAgIGxhYmVsPVwiU2FpclwiXG4gICAgICAob25DbGljayk9XCJzYWlyKCRldmVudClcIlxuICAgICAgc3R5bGVDbGFzcz1cImJvcmRlci1ub3JvdW5kIHctZnVsbCB0ZXh0LWJsdWUtOTAwXCJcbiAgICAgIFt0ZXh0XT1cInRydWVcIlxuICAgID48L3AtYnV0dG9uPlxuICA8L25nLXRlbXBsYXRlPlxuXG48L3Atb3ZlcmxheVBhbmVsPiJdfQ==
@@ -44,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
44
44
  ]
45
45
  }]
46
46
  }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbWVudS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9rdi1tZW51L2t2LW1lbnUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQ0gsV0FBVyxFQUNYLG1CQUFtQixFQUN0QixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFtQmpFLE1BQU0sT0FBTyxZQUFZOzhHQUFaLFlBQVk7K0dBQVosWUFBWSxpQkFmakIsZUFBZSxhQU1mLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLGNBQWM7WUFDZCxXQUFXO1lBQ1gsYUFBYTtZQUNiLG1CQUFtQixhQVRuQixlQUFlOytHQVlWLFlBQVksWUFUakIsWUFBWTtZQUNaLFdBQVc7WUFDWCxlQUFlO1lBQ2YsY0FBYztZQUNkLFdBQVc7WUFDWCxhQUFhO1lBQ2IsbUJBQW1COzsyRkFHZCxZQUFZO2tCQWpCeEIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YsZUFBZTtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLGVBQWU7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixtQkFBbUI7cUJBQ3RCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7XHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgS3ZCdXR0b25zTW9kdWxlIH0gZnJvbSAnLi4va3YtYnV0dG9ucy9rdi1idXR0b24ubW9kdWxlJztcclxuaW1wb3J0IHsgS3ZJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi9rdi1pbnB1dHMva3YtaW5wdXRzLm1vZHVsZSc7XHJcbmltcG9ydCB7IEt2TWVudUNvbXBvbmVudCB9IGZyb20gJy4va3YtbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQaXBlc01vZHVsZSB9IGZyb20gXCIuLi8uLi9hcGkvcGlwZXMvcGlwZXMubW9kdWxlXCI7XHJcbmltcG9ydCB7IFByaW1lTmdNb2R1bGUgfSBmcm9tICcuLi8uLi9hcGkvbW9kdWxlcy9wcmltZW5nLm1vZHVsZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgS3ZNZW51Q29tcG9uZW50XHJcbiAgICBdLFxyXG4gICAgZXhwb3J0czogW1xyXG4gICAgICAgIEt2TWVudUNvbXBvbmVudFxyXG4gICAgXSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGUsXHJcbiAgICAgICAgS3ZCdXR0b25zTW9kdWxlLFxyXG4gICAgICAgIEt2SW5wdXRzTW9kdWxlLFxyXG4gICAgICAgIFBpcGVzTW9kdWxlLFxyXG4gICAgICAgIFByaW1lTmdNb2R1bGUsXHJcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEt2TWVudU1vZHVsZSB7IH1cclxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbWVudS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9rdi1tZW51L2t2LW1lbnUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQ0gsV0FBVyxFQUNYLG1CQUFtQixFQUN0QixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFtQmpFLE1BQU0sT0FBTyxZQUFZOzhHQUFaLFlBQVk7K0dBQVosWUFBWSxpQkFmakIsZUFBZSxhQU1mLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLGNBQWM7WUFDZCxXQUFXO1lBQ1gsYUFBYTtZQUNiLG1CQUFtQixhQVRuQixlQUFlOytHQVlWLFlBQVksWUFUakIsWUFBWTtZQUNaLFdBQVc7WUFDWCxlQUFlO1lBQ2YsY0FBYztZQUNkLFdBQVc7WUFDWCxhQUFhO1lBQ2IsbUJBQW1COzsyRkFHZCxZQUFZO2tCQWpCeEIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YsZUFBZTtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLGVBQWU7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixtQkFBbUI7cUJBQ3RCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgS3ZCdXR0b25zTW9kdWxlIH0gZnJvbSAnLi4va3YtYnV0dG9ucy9rdi1idXR0b24ubW9kdWxlJztcbmltcG9ydCB7IEt2SW5wdXRzTW9kdWxlIH0gZnJvbSAnLi4va3YtaW5wdXRzL2t2LWlucHV0cy5tb2R1bGUnO1xuaW1wb3J0IHsgS3ZNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9rdi1tZW51LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQaXBlc01vZHVsZSB9IGZyb20gXCIuLi8uLi9hcGkvcGlwZXMvcGlwZXMubW9kdWxlXCI7XG5pbXBvcnQgeyBQcmltZU5nTW9kdWxlIH0gZnJvbSAnLi4vLi4vYXBpL21vZHVsZXMvcHJpbWVuZy5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBLdk1lbnVDb21wb25lbnRcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgS3ZNZW51Q29tcG9uZW50XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEt2QnV0dG9uc01vZHVsZSxcbiAgICAgICAgS3ZJbnB1dHNNb2R1bGUsXG4gICAgICAgIFBpcGVzTW9kdWxlLFxuICAgICAgICBQcmltZU5nTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgS3ZNZW51TW9kdWxlIHsgfVxuIl19
@@ -51,11 +51,11 @@ export class KvModalComponent {
51
51
  }
52
52
  }
53
53
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvModalComponent, deps: [{ token: i1.DynamicDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
54
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvModalComponent, selector: "kv-modal", inputs: { actions: "actions", actionsPosition: "actionsPosition" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, ngImport: i0, template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\r\n<div class=\"col-12 mb-4\" id=\"content-modal\">\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\r\n\r\n<div class=\"bg-white flex flex-row flex-wrap gap-2 p-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\r\n <kv-button-personalize\r\n *ngFor=\" let action of actions\"\r\n [ngClass]=\"action.visible==false?'hidden':''\"\r\n color=\"{{action.color}}\"\r\n colorHover=\"{{action.colorHover}}\"\r\n textColor=\"{{action.textColor}}\"\r\n icon=\"{{action.icon}}\"\r\n label=\"{{action.label}}\"\r\n [disabled]=\"action.disabled || false\"\r\n (onClick)=\"clickExecute(action)\"\r\n />\r\n</div>", styles: ["::ng-deep .p-dialog .p-dialog-header{background:#002542!important;color:#fff!important}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999;margin-right:1.5rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.KvButtonPersonalizeComponent, selector: "kv-button-personalize", inputs: ["colorHover", "textColor"] }] }); }
54
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvModalComponent, selector: "kv-modal", inputs: { actions: "actions", actionsPosition: "actionsPosition" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, ngImport: i0, template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\n<div class=\"col-12 mb-4\" id=\"content-modal\">\n <ng-content></ng-content>\n</div>\n\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\n\n<div class=\"bg-white flex flex-row flex-wrap gap-2 p-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\n <kv-button-personalize\n *ngFor=\" let action of actions\"\n [ngClass]=\"action.visible==false?'hidden':''\"\n color=\"{{action.color}}\"\n colorHover=\"{{action.colorHover}}\"\n textColor=\"{{action.textColor}}\"\n icon=\"{{action.icon}}\"\n label=\"{{action.label}}\"\n [disabled]=\"action.disabled || false\"\n (onClick)=\"clickExecute(action)\"\n />\n</div>", styles: ["::ng-deep .p-dialog .p-dialog-header{background:#002542!important;color:#fff!important}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999;margin-right:1.5rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.KvButtonPersonalizeComponent, selector: "kv-button-personalize", inputs: ["colorHover", "textColor"] }] }); }
55
55
  }
56
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvModalComponent, decorators: [{
57
57
  type: Component,
58
- args: [{ selector: 'kv-modal', template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\r\n<div class=\"col-12 mb-4\" id=\"content-modal\">\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\r\n\r\n<div class=\"bg-white flex flex-row flex-wrap gap-2 p-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\r\n <kv-button-personalize\r\n *ngFor=\" let action of actions\"\r\n [ngClass]=\"action.visible==false?'hidden':''\"\r\n color=\"{{action.color}}\"\r\n colorHover=\"{{action.colorHover}}\"\r\n textColor=\"{{action.textColor}}\"\r\n icon=\"{{action.icon}}\"\r\n label=\"{{action.label}}\"\r\n [disabled]=\"action.disabled || false\"\r\n (onClick)=\"clickExecute(action)\"\r\n />\r\n</div>", styles: ["::ng-deep .p-dialog .p-dialog-header{background:#002542!important;color:#fff!important}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999;margin-right:1.5rem}\n"] }]
58
+ args: [{ selector: 'kv-modal', template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\n<div class=\"col-12 mb-4\" id=\"content-modal\">\n <ng-content></ng-content>\n</div>\n\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\n\n<div class=\"bg-white flex flex-row flex-wrap gap-2 p-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\n <kv-button-personalize\n *ngFor=\" let action of actions\"\n [ngClass]=\"action.visible==false?'hidden':''\"\n color=\"{{action.color}}\"\n colorHover=\"{{action.colorHover}}\"\n textColor=\"{{action.textColor}}\"\n icon=\"{{action.icon}}\"\n label=\"{{action.label}}\"\n [disabled]=\"action.disabled || false\"\n (onClick)=\"clickExecute(action)\"\n />\n</div>", styles: ["::ng-deep .p-dialog .p-dialog-header{background:#002542!important;color:#fff!important}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999;margin-right:1.5rem}\n"] }]
59
59
  }], ctorParameters: () => [{ type: i1.DynamicDialogRef }], propDecorators: { onWindowResize: [{
60
60
  type: HostListener,
61
61
  args: ['window:resize', ['$event']]
@@ -64,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
64
64
  }], actionsPosition: [{
65
65
  type: Input
66
66
  }] } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDOzs7OztBQVd2QixNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQXNCLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBWXhEOztXQUVHO1FBQ00sWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0Isb0JBQWUsR0FBVyxPQUFPLENBQUM7UUFFM0Msb0JBQWUsR0FBVyx1QkFBdUIsQ0FBQztJQWxCVSxDQUFDO0lBRTdELFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUdELGNBQWM7UUFDWixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDeEIsQ0FBQztJQVVELGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLGVBQWUsR0FBRyxxQkFBcUIsQ0FBQTtRQUM5QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxlQUFlLEdBQUcsd0JBQXdCLENBQUE7UUFDakQsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGVBQWUsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsZUFBZSxHQUFHLHVCQUF1QixDQUFBO1FBQ2hELENBQUM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksa0JBQWtCLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsRUFBRSxZQUFZLENBQUM7UUFFaEYsSUFBSSxNQUFNLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV0RCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBRVgsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO2dCQUN2QixNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxHQUFHLGtCQUFrQixHQUFHLEVBQUUsSUFBSSxDQUFDO1lBQzdELENBQUM7aUJBQ0ksQ0FBQztnQkFDSixNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUM7WUFDckMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQWtCO1FBQzdCLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRW5CLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUVqQixJQUFJLE1BQU0sQ0FBQyxlQUFlLElBQUksS0FBSztnQkFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckUsQ0FBQztJQUNILENBQUM7OEdBekRVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHdMQ2Y3Qix3eEJBbUJNOzsyRkRKTyxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsVUFBVTtxRkFjcEIsY0FBYztzQkFEYixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRaEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5wdXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5cclxuaW1wb3J0IHsgQWN0aW9uSXRlbSB9IGZyb20gJy4uLy4uLy4uL3B1YmxpYy1hcGknO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi1tb2RhbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LW1vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9rdi1tb2RhbC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdk1vZGFsQ29tcG9uZW50IHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGR5bmFtaWNEaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0TWFyZ2luQm90dG9tKCk7XHJcbiAgICB0aGlzLmRlZlBvc2l0aW9uQnV0dG9ucygpO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgb25XaW5kb3dSZXNpemUoKSB7XHJcbiAgICB0aGlzLnNldE1hcmdpbkJvdHRvbSgpXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBw6fDtWVzIGRvIERpYWxvZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFjdGlvbnM6IEFjdGlvbkl0ZW1bXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGFjdGlvbnNQb3NpdGlvbjogc3RyaW5nID0gJ3JpZ2h0JztcclxuXHJcbiAganVzdGlmeV9jb250ZW50OiBzdHJpbmcgPSAnanVzdGlmeS1jb250ZW50LXN0YXJ0JztcclxuXHJcbiAgZGVmUG9zaXRpb25CdXR0b25zKCkge1xyXG4gICAgaWYgKHRoaXMuYWN0aW9uc1Bvc2l0aW9uID09PSAncmlnaHQnKSB7XHJcbiAgICAgIHRoaXMuanVzdGlmeV9jb250ZW50ID0gJ2p1c3RpZnktY29udGVudC1lbmQnXHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5hY3Rpb25zUG9zaXRpb24gPT09ICdjZW50ZXInKSB7XHJcbiAgICAgIHRoaXMuanVzdGlmeV9jb250ZW50ID0gJ2p1c3RpZnktY29udGVudC1jZW50ZXInXHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5hY3Rpb25zUG9zaXRpb24gPT09ICdsZWZ0Jykge1xyXG4gICAgICB0aGlzLmp1c3RpZnlfY29udGVudCA9ICdqdXN0aWZ5LWNvbnRlbnQtc3RhcnQnXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRNYXJnaW5Cb3R0b20oKSB7XHJcbiAgICBsZXQgYWN0aW9uc0ZpZWxkSGVpZ2h0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2FjdGlvbnMtZmllbGQnKT8ub2Zmc2V0SGVpZ2h0O1xyXG5cclxuICAgIGxldCBkaXZCb3ggPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY29udGVudC1tb2RhbCcpO1xyXG4gICAgXHJcbiAgICBpZiAoZGl2Qm94KSB7XHJcbiAgICAgIFxyXG4gICAgICBpZiAoYWN0aW9uc0ZpZWxkSGVpZ2h0KSB7XHJcbiAgICAgICAgZGl2Qm94LnN0eWxlLm1hcmdpbkJvdHRvbSA9IGAke2FjdGlvbnNGaWVsZEhlaWdodCArIDMwfXB4YDtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICBkaXZCb3guc3R5bGUubWFyZ2luQm90dG9tID0gYDUwcHhgO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbGlja0V4ZWN1dGUoYWN0aW9uOiBBY3Rpb25JdGVtKSB7XHJcbiAgICBpZiAoYWN0aW9uLmNvbW1hbmQpIHtcclxuXHJcbiAgICAgIGFjdGlvbi5jb21tYW5kKCk7XHJcblxyXG4gICAgICBpZiAoYWN0aW9uLmNsb3NlQWZ0ZXJDbGljayAhPSBmYWxzZSkgdGhpcy5keW5hbWljRGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiPCEtLSBSRU5ERVJJWkHDh8ODTyBETyBNT0RBTCAtLT5cclxuPGRpdiBjbGFzcz1cImNvbC0xMiBtYi00XCIgaWQ9XCJjb250ZW50LW1vZGFsXCI+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvZGl2PlxyXG5cclxuPCEtLSBSRU5ERVJJWkHDh8ODTyBET1MgQk9Uw5VFUyAtLT5cclxuXHJcbjxkaXYgY2xhc3M9XCJiZy13aGl0ZSBmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBnYXAtMiBwLTIgbW9kYWwtYmFycmEtYWNvZXMge3tqdXN0aWZ5X2NvbnRlbnR9fVwiICpuZ0lmPVwiYWN0aW9uc1wiIGlkPVwiYWN0aW9ucy1maWVsZFwiPlxyXG4gICAgPGt2LWJ1dHRvbi1wZXJzb25hbGl6ZVxyXG4gICAgICAgICpuZ0Zvcj1cIiBsZXQgYWN0aW9uIG9mIGFjdGlvbnNcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cImFjdGlvbi52aXNpYmxlPT1mYWxzZT8naGlkZGVuJzonJ1wiXHJcbiAgICAgICAgY29sb3I9XCJ7e2FjdGlvbi5jb2xvcn19XCJcclxuICAgICAgICBjb2xvckhvdmVyPVwie3thY3Rpb24uY29sb3JIb3Zlcn19XCJcclxuICAgICAgICB0ZXh0Q29sb3I9XCJ7e2FjdGlvbi50ZXh0Q29sb3J9fVwiXHJcbiAgICAgICAgaWNvbj1cInt7YWN0aW9uLmljb259fVwiXHJcbiAgICAgICAgbGFiZWw9XCJ7e2FjdGlvbi5sYWJlbH19XCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiYWN0aW9uLmRpc2FibGVkIHx8IGZhbHNlXCJcclxuICAgICAgICAob25DbGljayk9XCJjbGlja0V4ZWN1dGUoYWN0aW9uKVwiXHJcbiAgICAvPlxyXG48L2Rpdj4iXX0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDOzs7OztBQVd2QixNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQXNCLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBWXhEOztXQUVHO1FBQ00sWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0Isb0JBQWUsR0FBVyxPQUFPLENBQUM7UUFFM0Msb0JBQWUsR0FBVyx1QkFBdUIsQ0FBQztJQWxCVSxDQUFDO0lBRTdELFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUdELGNBQWM7UUFDWixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDeEIsQ0FBQztJQVVELGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLGVBQWUsR0FBRyxxQkFBcUIsQ0FBQTtRQUM5QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxlQUFlLEdBQUcsd0JBQXdCLENBQUE7UUFDakQsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGVBQWUsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsZUFBZSxHQUFHLHVCQUF1QixDQUFBO1FBQ2hELENBQUM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksa0JBQWtCLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsRUFBRSxZQUFZLENBQUM7UUFFaEYsSUFBSSxNQUFNLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV0RCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBRVgsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO2dCQUN2QixNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxHQUFHLGtCQUFrQixHQUFHLEVBQUUsSUFBSSxDQUFDO1lBQzdELENBQUM7aUJBQ0ksQ0FBQztnQkFDSixNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUM7WUFDckMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQWtCO1FBQzdCLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRW5CLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUVqQixJQUFJLE1BQU0sQ0FBQyxlQUFlLElBQUksS0FBSztnQkFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckUsQ0FBQztJQUNILENBQUM7OEdBekRVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHdMQ2Y3QixrdkJBbUJNOzsyRkRKTyxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsVUFBVTtxRkFjcEIsY0FBYztzQkFEYixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRaEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xuXG5pbXBvcnQgeyBBY3Rpb25JdGVtIH0gZnJvbSAnLi4vLi4vLi4vcHVibGljLWFwaSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2t2LW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4va3YtbW9kYWwuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBLdk1vZGFsQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZHluYW1pY0RpYWxvZ1JlZjogRHluYW1pY0RpYWxvZ1JlZikgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRNYXJnaW5Cb3R0b20oKTtcbiAgICB0aGlzLmRlZlBvc2l0aW9uQnV0dG9ucygpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG4gIG9uV2luZG93UmVzaXplKCkge1xuICAgIHRoaXMuc2V0TWFyZ2luQm90dG9tKClcbiAgfVxuXG4gIC8qKlxuICAgKiBBw6fDtWVzIGRvIERpYWxvZ1xuICAgKi9cbiAgQElucHV0KCkgYWN0aW9uczogQWN0aW9uSXRlbVtdID0gW107XG4gIEBJbnB1dCgpIGFjdGlvbnNQb3NpdGlvbjogc3RyaW5nID0gJ3JpZ2h0JztcblxuICBqdXN0aWZ5X2NvbnRlbnQ6IHN0cmluZyA9ICdqdXN0aWZ5LWNvbnRlbnQtc3RhcnQnO1xuXG4gIGRlZlBvc2l0aW9uQnV0dG9ucygpIHtcbiAgICBpZiAodGhpcy5hY3Rpb25zUG9zaXRpb24gPT09ICdyaWdodCcpIHtcbiAgICAgIHRoaXMuanVzdGlmeV9jb250ZW50ID0gJ2p1c3RpZnktY29udGVudC1lbmQnXG4gICAgfVxuICAgIGlmICh0aGlzLmFjdGlvbnNQb3NpdGlvbiA9PT0gJ2NlbnRlcicpIHtcbiAgICAgIHRoaXMuanVzdGlmeV9jb250ZW50ID0gJ2p1c3RpZnktY29udGVudC1jZW50ZXInXG4gICAgfVxuICAgIGlmICh0aGlzLmFjdGlvbnNQb3NpdGlvbiA9PT0gJ2xlZnQnKSB7XG4gICAgICB0aGlzLmp1c3RpZnlfY29udGVudCA9ICdqdXN0aWZ5LWNvbnRlbnQtc3RhcnQnXG4gICAgfVxuICB9XG5cbiAgc2V0TWFyZ2luQm90dG9tKCkge1xuICAgIGxldCBhY3Rpb25zRmllbGRIZWlnaHQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYWN0aW9ucy1maWVsZCcpPy5vZmZzZXRIZWlnaHQ7XG5cbiAgICBsZXQgZGl2Qm94ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnRlbnQtbW9kYWwnKTtcbiAgICBcbiAgICBpZiAoZGl2Qm94KSB7XG4gICAgICBcbiAgICAgIGlmIChhY3Rpb25zRmllbGRIZWlnaHQpIHtcbiAgICAgICAgZGl2Qm94LnN0eWxlLm1hcmdpbkJvdHRvbSA9IGAke2FjdGlvbnNGaWVsZEhlaWdodCArIDMwfXB4YDtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICBkaXZCb3guc3R5bGUubWFyZ2luQm90dG9tID0gYDUwcHhgO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNsaWNrRXhlY3V0ZShhY3Rpb246IEFjdGlvbkl0ZW0pIHtcbiAgICBpZiAoYWN0aW9uLmNvbW1hbmQpIHtcblxuICAgICAgYWN0aW9uLmNvbW1hbmQoKTtcblxuICAgICAgaWYgKGFjdGlvbi5jbG9zZUFmdGVyQ2xpY2sgIT0gZmFsc2UpIHRoaXMuZHluYW1pY0RpYWxvZ1JlZi5jbG9zZSgpO1xuICAgIH1cbiAgfVxufSIsIjwhLS0gUkVOREVSSVpBw4fDg08gRE8gTU9EQUwgLS0+XG48ZGl2IGNsYXNzPVwiY29sLTEyIG1iLTRcIiBpZD1cImNvbnRlbnQtbW9kYWxcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPCEtLSBSRU5ERVJJWkHDh8ODTyBET1MgQk9Uw5VFUyAtLT5cblxuPGRpdiBjbGFzcz1cImJnLXdoaXRlIGZsZXggZmxleC1yb3cgZmxleC13cmFwIGdhcC0yIHAtMiBtb2RhbC1iYXJyYS1hY29lcyB7e2p1c3RpZnlfY29udGVudH19XCIgKm5nSWY9XCJhY3Rpb25zXCIgaWQ9XCJhY3Rpb25zLWZpZWxkXCI+XG4gICAgPGt2LWJ1dHRvbi1wZXJzb25hbGl6ZVxuICAgICAgICAqbmdGb3I9XCIgbGV0IGFjdGlvbiBvZiBhY3Rpb25zXCJcbiAgICAgICAgW25nQ2xhc3NdPVwiYWN0aW9uLnZpc2libGU9PWZhbHNlPydoaWRkZW4nOicnXCJcbiAgICAgICAgY29sb3I9XCJ7e2FjdGlvbi5jb2xvcn19XCJcbiAgICAgICAgY29sb3JIb3Zlcj1cInt7YWN0aW9uLmNvbG9ySG92ZXJ9fVwiXG4gICAgICAgIHRleHRDb2xvcj1cInt7YWN0aW9uLnRleHRDb2xvcn19XCJcbiAgICAgICAgaWNvbj1cInt7YWN0aW9uLmljb259fVwiXG4gICAgICAgIGxhYmVsPVwie3thY3Rpb24ubGFiZWx9fVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJhY3Rpb24uZGlzYWJsZWQgfHwgZmFsc2VcIlxuICAgICAgICAob25DbGljayk9XCJjbGlja0V4ZWN1dGUoYWN0aW9uKVwiXG4gICAgLz5cbjwvZGl2PiJdfQ==
@@ -28,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
28
28
  ]
29
29
  }]
30
30
  }] });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBaUJyRSxNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsaUJBWHRCLGdCQUFnQixhQUdoQixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWUsYUFHZixnQkFBZ0I7K0dBR1AsYUFBYSxZQVJ0QixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7OzJGQU1OLGFBQWE7a0JBYnpCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGdCQUFnQjtxQkFDakI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3FCQUNqQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEt2TW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2t2LW1vZGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEt2QnV0dG9uc01vZHVsZSwgUHJpbWVOZ01vZHVsZSB9IGZyb20gJy4uLy4uLy4uL3B1YmxpYy1hcGknO1xyXG5cclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgS3ZNb2RhbENvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUHJpbWVOZ01vZHVsZSxcclxuICAgIEt2QnV0dG9uc01vZHVsZSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIEt2TW9kYWxDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdk1vZGFsTW9kdWxlIHsgfVxyXG4iXX0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBaUJyRSxNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsaUJBWHRCLGdCQUFnQixhQUdoQixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWUsYUFHZixnQkFBZ0I7K0dBR1AsYUFBYSxZQVJ0QixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7OzJGQU1OLGFBQWE7a0JBYnpCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGdCQUFnQjtxQkFDakI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3FCQUNqQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgS3ZNb2RhbENvbXBvbmVudCB9IGZyb20gJy4va3YtbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IEt2QnV0dG9uc01vZHVsZSwgUHJpbWVOZ01vZHVsZSB9IGZyb20gJy4uLy4uLy4uL3B1YmxpYy1hcGknO1xuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgS3ZNb2RhbENvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFByaW1lTmdNb2R1bGUsXG4gICAgS3ZCdXR0b25zTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgS3ZNb2RhbENvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEt2TW9kYWxNb2R1bGUgeyB9XG4iXX0=
@@ -74,11 +74,11 @@ export class KvOrgchartComponent {
74
74
  this.chart.compact(this.compact).render();
75
75
  }
76
76
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvOrgchartComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
77
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvOrgchartComponent, selector: "kv-orgchart", inputs: { dataSource: "dataSource", config: "config", template: "template", nodeTemplate: "nodeTemplate", generateTemplate: "generateTemplate", templateFuncion: "templateFuncion", corDeFundo: "corDeFundo" }, viewQueries: [{ propertyName: "chartContainer", first: true, predicate: ["chartContainer"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #chartContainer id=\"chartContainer\" [ngClass]=\"{'backGround': true}\">\r\n\r\n\r\n <div class=\"div-botoes w-full flex gap-1\" >\r\n\r\n\r\n <span *ngIf=\"!mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Expandir menu\">menu</span>\r\n\r\n\r\n\r\n <span *ngIf=\"mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Recolher menu\">menu_open</span>\r\n\r\n <div *ngIf=\"mostraMenu\">\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.zoomIn()\" pTooltip=\"Zoom +\">zoom_in</span>\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.zoomOut()\" pTooltip=\"Zoom -\">zoom_out</span>\r\n\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.collapseAll()\" pTooltip=\"Expandir\">expand_less</span>\r\n\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.expandAll()\" pTooltip=\"Recolher\">expand_more</span>\r\n\r\n\r\n <!-- <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"compactSwap()\" pTooltip=\"Compactar\">cached</span> -->\r\n\r\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\r\n (click)=\"chart.fit().render()\" pTooltip=\"Centralizar\">\r\n filter_center_focus\r\n </span>\r\n\r\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\r\n (click)=\"chart.fullscreen('#chartContainer')\" pTooltip=\"Tela cheia\" >\r\n fullscreen\r\n </span>\r\n\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n\r\n</div>\r\n\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\r\n/>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0\"\r\n/>\r\n", styles: ["#chartContainer{height:100%;overflow:hidden}:host ::ng-deep #chartContainer svg.svg-chart-container{height:100%!important;position:relative;width:100%;top:-56px;z-index:0;background-color:#fff}.div-botoes{z-index:1;width:100%;position:relative}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
77
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvOrgchartComponent, selector: "kv-orgchart", inputs: { dataSource: "dataSource", config: "config", template: "template", nodeTemplate: "nodeTemplate", generateTemplate: "generateTemplate", templateFuncion: "templateFuncion", corDeFundo: "corDeFundo" }, viewQueries: [{ propertyName: "chartContainer", first: true, predicate: ["chartContainer"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #chartContainer id=\"chartContainer\" [ngClass]=\"{'backGround': true}\">\n\n\n <div class=\"div-botoes w-full flex gap-1\" >\n\n\n <span *ngIf=\"!mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Expandir menu\">menu</span>\n\n\n\n <span *ngIf=\"mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Recolher menu\">menu_open</span>\n\n <div *ngIf=\"mostraMenu\">\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"chart.zoomIn()\" pTooltip=\"Zoom +\">zoom_in</span>\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"chart.zoomOut()\" pTooltip=\"Zoom -\">zoom_out</span>\n\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"chart.collapseAll()\" pTooltip=\"Expandir\">expand_less</span>\n\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"chart.expandAll()\" pTooltip=\"Recolher\">expand_more</span>\n\n\n <!-- <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"compactSwap()\" pTooltip=\"Compactar\">cached</span> -->\n\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\n (click)=\"chart.fit().render()\" pTooltip=\"Centralizar\">\n filter_center_focus\n </span>\n\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\n (click)=\"chart.fullscreen('#chartContainer')\" pTooltip=\"Tela cheia\" >\n fullscreen\n </span>\n\n </div>\n\n\n </div>\n\n\n</div>\n\n\n<link\n rel=\"stylesheet\"\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\n/>\n\n<link\n rel=\"stylesheet\"\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0\"\n/>\n", styles: ["#chartContainer{height:100%;overflow:hidden}:host ::ng-deep #chartContainer svg.svg-chart-container{height:100%!important;position:relative;width:100%;top:-56px;z-index:0;background-color:#fff}.div-botoes{z-index:1;width:100%;position:relative}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
78
78
  }
79
79
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvOrgchartComponent, decorators: [{
80
80
  type: Component,
81
- args: [{ selector: 'kv-orgchart', template: "<div #chartContainer id=\"chartContainer\" [ngClass]=\"{'backGround': true}\">\r\n\r\n\r\n <div class=\"div-botoes w-full flex gap-1\" >\r\n\r\n\r\n <span *ngIf=\"!mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Expandir menu\">menu</span>\r\n\r\n\r\n\r\n <span *ngIf=\"mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Recolher menu\">menu_open</span>\r\n\r\n <div *ngIf=\"mostraMenu\">\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.zoomIn()\" pTooltip=\"Zoom +\">zoom_in</span>\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.zoomOut()\" pTooltip=\"Zoom -\">zoom_out</span>\r\n\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.collapseAll()\" pTooltip=\"Expandir\">expand_less</span>\r\n\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.expandAll()\" pTooltip=\"Recolher\">expand_more</span>\r\n\r\n\r\n <!-- <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"compactSwap()\" pTooltip=\"Compactar\">cached</span> -->\r\n\r\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\r\n (click)=\"chart.fit().render()\" pTooltip=\"Centralizar\">\r\n filter_center_focus\r\n </span>\r\n\r\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\r\n (click)=\"chart.fullscreen('#chartContainer')\" pTooltip=\"Tela cheia\" >\r\n fullscreen\r\n </span>\r\n\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n\r\n</div>\r\n\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\r\n/>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0\"\r\n/>\r\n", styles: ["#chartContainer{height:100%;overflow:hidden}:host ::ng-deep #chartContainer svg.svg-chart-container{height:100%!important;position:relative;width:100%;top:-56px;z-index:0;background-color:#fff}.div-botoes{z-index:1;width:100%;position:relative}\n"] }]
81
+ args: [{ selector: 'kv-orgchart', template: "<div #chartContainer id=\"chartContainer\" [ngClass]=\"{'backGround': true}\">\n\n\n <div class=\"div-botoes w-full flex gap-1\" >\n\n\n <span *ngIf=\"!mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Expandir menu\">menu</span>\n\n\n\n <span *ngIf=\"mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Recolher menu\">menu_open</span>\n\n <div *ngIf=\"mostraMenu\">\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"chart.zoomIn()\" pTooltip=\"Zoom +\">zoom_in</span>\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"chart.zoomOut()\" pTooltip=\"Zoom -\">zoom_out</span>\n\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"chart.collapseAll()\" pTooltip=\"Expandir\">expand_less</span>\n\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"chart.expandAll()\" pTooltip=\"Recolher\">expand_more</span>\n\n\n <!-- <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\n (click)=\"compactSwap()\" pTooltip=\"Compactar\">cached</span> -->\n\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\n (click)=\"chart.fit().render()\" pTooltip=\"Centralizar\">\n filter_center_focus\n </span>\n\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\n (click)=\"chart.fullscreen('#chartContainer')\" pTooltip=\"Tela cheia\" >\n fullscreen\n </span>\n\n </div>\n\n\n </div>\n\n\n</div>\n\n\n<link\n rel=\"stylesheet\"\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\n/>\n\n<link\n rel=\"stylesheet\"\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0\"\n/>\n", styles: ["#chartContainer{height:100%;overflow:hidden}:host ::ng-deep #chartContainer svg.svg-chart-container{height:100%!important;position:relative;width:100%;top:-56px;z-index:0;background-color:#fff}.div-botoes{z-index:1;width:100%;position:relative}\n"] }]
82
82
  }], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { chartContainer: [{
83
83
  type: ViewChild,
84
84
  args: ['chartContainer']
@@ -97,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
97
97
  }], corDeFundo: [{
98
98
  type: Input
99
99
  }] } });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytb3JnY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBSUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7Ozs7QUFVekIsTUFBTSxPQUFPLG1CQUFtQjtJQWlCOUIsWUFBb0IsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQVI5QixxQkFBZ0IsR0FBYSxDQUFDLElBQVMsRUFBRSxJQUFTLEVBQUUsS0FBWSxFQUFFLEtBQWEsRUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQy9GLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBRWpDLGVBQVUsR0FBVyxLQUFLLENBQUM7UUFFcEMsWUFBTyxHQUFZLElBQUksQ0FBQztRQUN4QixlQUFVLEdBQVksS0FBSyxDQUFDO0lBRWUsQ0FBQztJQUU1QyxRQUFRO0lBQ1IsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUM5QixDQUFDO1FBQ0QsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxD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LENBQUMsTUFBTSxFQUFFLENBQUM7SUFDNUMsQ0FBQzs4R0F2RlUsbUJBQW1CO2tHQUFuQixtQkFBbUIsMFlDckJoQywwc0VBMERBOzsyRkRyQ2EsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGFBQWE7OEVBS00sY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBR2xCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IE9yZ0NoYXJ0IH0gZnJvbSAnZDMtb3JnLWNoYXJ0JztcclxuaW1wb3J0ICogYXMgZDMgZnJvbSAnZDMnO1xyXG5cclxuaW1wb3J0IE9yZ0NoYXJ0Q29uZmlnIGZyb20gJy4uLy4uL2FwaS9jb21wb25lbnRzL2NoYXJ0L29yY2hhcnQuY29uZmlnJztcclxuaW1wb3J0IE9yZ0NoYXJ0SXRlbSBmcm9tICcuLi8uLi9hcGkvY29tcG9uZW50cy9jaGFydC9vcmNoYXJ0Lml0ZW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi1vcmdjaGFydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LW9yZ2NoYXJ0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9rdi1vcmdjaGFydC5jb21wb25lbnQuc2NzcycsXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2T3JnY2hhcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBWaWV3Q2hpbGQoJ2NoYXJ0Q29udGFpbmVyJykgY2hhcnRDb250YWluZXIhOiBFbGVtZW50UmVmO1xyXG4gIGNoYXJ0ITogYW55O1xyXG5cclxuICBASW5wdXQoKSBkYXRhU291cmNlITogT3JnQ2hhcnRJdGVtW107XHJcbiAgQElucHV0KCkgY29uZmlnITogT3JnQ2hhcnRDb25maWc7XHJcbiAgQElucHV0KCkgdGVtcGxhdGUhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbm9kZVRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQElucHV0KCkgZ2VuZXJhdGVUZW1wbGF0ZTogRnVuY3Rpb24gPSAoZGF0YTogYW55LCBub2RlOiBhbnksIG5vZGVzOiBhbnlbXSwgaW5kZXg6IG51bWJlcik6IHN0cmluZyA9PiAnJztcclxuICBASW5wdXQoKSB0ZW1wbGF0ZUZ1bmNpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgY29yRGVGdW5kbzogc3RyaW5nID0gJ3JlZCc7XHJcblxyXG4gIGNvbXBhY3Q6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIG1vc3RyYU1lbnU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBpZiAoIXRoaXMuY2hhcnQpIHtcclxuICAgICAgdGhpcy5jaGFydCA9IG5ldyBPcmdDaGFydCgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy51cGRhdGVDaGFydCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoKSB7XHJcbiAgICB0aGlzLnVwZGF0ZUNoYXJ0KCk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVDaGFydCgpIHtcclxuICAgIGlmICghdGhpcy5kYXRhU291cmNlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICghdGhpcy5jaGFydCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY2hhcnRDb250YWluZXIgPSB0aGlzLmNoYXJ0Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLmNoYXJ0XHJcbiAgICAgIC5jb250YWluZXIoY2hhcnRDb250YWluZXIpXHJcbiAgICAgIC5kYXRhKHRoaXMuZGF0YVNvdXJjZSlcclxuICAgICAgLm5vZGVXaWR0aCgoKSA9PiB0aGlzLmNvbmZpZy5jYXJkV2lkaHQpXHJcbiAgICAgIC5ub2RlSGVpZ2h0KCgpID0+IHRoaXMuY29uZmlnLmNhcmRIZWlnaHQpXHJcbiAgICAgIC5ub2RlVXBkYXRlKGZ1bmN0aW9uIChkOiBhbnkpIHtcclxuICAgICAgfSlcclxuICAgICAgLmxpbmtVcGRhdGUoKG5vZGU6IGFueSwgaW5kZXg6IGFueSwgbm9kZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGQzLnNlbGVjdChub2Rlc1tpbmRleF0pXHJcbiAgICAgICAgICAuYXR0cignc3Ryb2tlLXdpZHRoJywgdGhpcy5jb25maWcuY29uZWN0aW9uV2lkdGggfHwgJzJweCcpXHJcbiAgICAgICAgICAuc3R5bGUoJ3N0cm9rZScsIHRoaXMuY29uZmlnLmNvbm5lY3Rpb25Db2xvciB8fCAnI2Q2ZDZkNicpLnN0eWxlKCdiYWNrZ3JvdW5kQ29sb3InLCAncmVkJylcclxuICAgICAgfSlcclxuICAgICAgLm5vZGVDb250ZW50KChkOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoIXRoaXMudGVtcGxhdGVGdW5jaW9uKSB7XHJcbiAgICAgICAgICBpZiAoZC5kYXRhLnRlbXBsYXRlKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGpzVGVtcGxhdGUgPSB0aGlzLnN0cmluZ1RvVGVtcGxhdGVMaXRlcmFsKGQuZGF0YS50ZW1wbGF0ZSk7XHJcbiAgICAgICAgICAgIHZhciB0ZW1wbGF0ZUNvbnZlcnRlciA9IG5ldyBGdW5jdGlvbignZGF0YScsICdyZXR1cm4nICsganNUZW1wbGF0ZSk7XHJcbiAgICAgICAgICAgIHZhciB4ID0gdGVtcGxhdGVDb252ZXJ0ZXIoZC5kYXRhLmRhdGEpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QganNUZW1wbGF0ZSA9IHRoaXMuc3RyaW5nVG9UZW1wbGF0ZUxpdGVyYWwodGhpcy5jb25maWcudGVtcGxhdGVJdGVtKTtcclxuICAgICAgICAgICAgdmFyIHRlbXBsYXRlQ29udmVydGVyID0gbmV3IEZ1bmN0aW9uKCdkYXRhJywgJ3JldHVybicgKyBqc1RlbXBsYXRlKTtcclxuICAgICAgICAgICAgdmFyIHggPSB0ZW1wbGF0ZUNvbnZlcnRlcihkLmRhdGEuZGF0YSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHZhciB4ID0gdGhpcy5nZW5lcmF0ZVRlbXBsYXRlKGQpXHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4geDtcclxuICAgICAgfSlcclxuICAgICAgLmRlZmF1bHRGb250KCdSb2JvdG8nKVxyXG4gICAgICAucmVuZGVyKClcclxuICB9XHJcblxyXG4gIHN0cmluZ1RvVGVtcGxhdGVMaXRlcmFsKHN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGNvbnZlcnRlZFRlbXBsYXRlID0gc3RyaW5nLnJlcGxhY2UoXHJcbiAgICAgIC9cXHtcXHsoW159XSopXFx9XFx9L2csXHJcbiAgICAgICckeyQxfSdcclxuICAgICk7XHJcblxyXG4gICAgcmV0dXJuICdgJyArIGNvbnZlcnRlZFRlbXBsYXRlICsgJ2AnO1xyXG4gIH1cclxuXHJcbiAgY29tcGFjdFN3YXAoKSB7XHJcbiAgICB0aGlzLmNvbXBhY3QgPSAhdGhpcy5jb21wYWN0O1xyXG4gICAgdGhpcy5jaGFydC5jb21wYWN0KHRoaXMuY29tcGFjdCkucmVuZGVyKCk7XHJcbiAgfVxyXG59IiwiPGRpdiAjY2hhcnRDb250YWluZXIgaWQ9XCJjaGFydENvbnRhaW5lclwiIFtuZ0NsYXNzXT1cInsnYmFja0dyb3VuZCc6IHRydWV9XCI+XHJcblxyXG5cclxuICA8ZGl2IGNsYXNzPVwiZGl2LWJvdG9lcyB3LWZ1bGwgZmxleCBnYXAtMVwiID5cclxuXHJcblxyXG4gICAgPHNwYW4gKm5nSWY9XCIhbW9zdHJhTWVudVwiIGNsYXNzPVwic3VyZmFjZS0zMDAgc2hhZG93LTQgcC0xIG0tMiBib3JkZXItY2lyY2xlIG1hdGVyaWFsLWljb25zIGN1cnNvci1wb2ludGVyXCJcclxuICAgIChjbGljayk9XCJtb3N0cmFNZW51ID0gIW1vc3RyYU1lbnVcIiBwVG9vbHRpcD1cIkV4cGFuZGlyIG1lbnVcIj5tZW51PC9zcGFuPlxyXG5cclxuXHJcblxyXG4gICAgPHNwYW4gKm5nSWY9XCJtb3N0cmFNZW51XCIgY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgKGNsaWNrKT1cIm1vc3RyYU1lbnUgPSAhbW9zdHJhTWVudVwiIHBUb29sdGlwPVwiUmVjb2xoZXIgbWVudVwiPm1lbnVfb3Blbjwvc3Bhbj5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwibW9zdHJhTWVudVwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgIChjbGljayk9XCJjaGFydC56b29tSW4oKVwiIHBUb29sdGlwPVwiWm9vbSArXCI+em9vbV9pbjwvc3Bhbj5cclxuICAgIDxzcGFuIGNsYXNzPVwic3VyZmFjZS0zMDAgc2hhZG93LTQgcC0xIG0tMiBib3JkZXItY2lyY2xlIG1hdGVyaWFsLWljb25zIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgKGNsaWNrKT1cImNoYXJ0Lnpvb21PdXQoKVwiIHBUb29sdGlwPVwiWm9vbSAtXCI+em9vbV9vdXQ8L3NwYW4+XHJcblxyXG4gICAgPHNwYW4gY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAoY2xpY2spPVwiY2hhcnQuY29sbGFwc2VBbGwoKVwiIHBUb29sdGlwPVwiRXhwYW5kaXJcIj5leHBhbmRfbGVzczwvc3Bhbj5cclxuXHJcbiAgICA8c3BhbiBjbGFzcz1cInN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgIChjbGljayk9XCJjaGFydC5leHBhbmRBbGwoKVwiIHBUb29sdGlwPVwiUmVjb2xoZXJcIj5leHBhbmRfbW9yZTwvc3Bhbj5cclxuXHJcblxyXG4gICAgPCEtLSA8c3BhbiBjbGFzcz1cInN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgIChjbGljayk9XCJjb21wYWN0U3dhcCgpXCIgcFRvb2x0aXA9XCJDb21wYWN0YXJcIj5jYWNoZWQ8L3NwYW4+IC0tPlxyXG5cclxuICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgc3VyZmFjZS0zMDAgc2hhZG93LTQgcC0xIG0tMiBib3JkZXItY2lyY2xlIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgKGNsaWNrKT1cImNoYXJ0LmZpdCgpLnJlbmRlcigpXCIgcFRvb2x0aXA9XCJDZW50cmFsaXphclwiPlxyXG4gICAgICBmaWx0ZXJfY2VudGVyX2ZvY3VzXHJcbiAgICA8L3NwYW4+XHJcblxyXG4gICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAoY2xpY2spPVwiY2hhcnQuZnVsbHNjcmVlbignI2NoYXJ0Q29udGFpbmVyJylcIiBwVG9vbHRpcD1cIlRlbGEgY2hlaWFcIiA+XHJcbiAgICAgIGZ1bGxzY3JlZW5cclxuICAgIDwvc3Bhbj5cclxuXHJcbiAgICA8L2Rpdj5cclxuXHJcblxyXG4gIDwvZGl2PlxyXG5cclxuXHJcbjwvZGl2PlxyXG5cclxuXHJcbjxsaW5rXHJcbiAgcmVsPVwic3R5bGVzaGVldFwiXHJcbiAgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vaWNvbj9mYW1pbHk9TWF0ZXJpYWwrSWNvbnNcIlxyXG4vPlxyXG5cclxuPGxpbmtcclxuICByZWw9XCJzdHlsZXNoZWV0XCJcclxuICBocmVmPVwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1NYXRlcmlhbCtTeW1ib2xzK091dGxpbmVkOm9wc3osd2dodCxGSUxMLEdSQURANDgsNDAwLDAsMFwiXHJcbi8+XHJcbiJdfQ==
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytb3JnY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBSUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7Ozs7QUFVekIsTUFBTSxPQUFPLG1CQUFtQjtJQWlCOUIsWUFBb0IsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQVI5QixxQkFBZ0IsR0FBYSxDQUFDLElBQVMsRUFBRSxJQUFTLEVBQUUsS0FBWSxFQUFFLEtBQWEsRUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQy9GLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBRWpDLGVBQVUsR0FBVyxLQUFLLENBQUM7UUFFcEMsWUFBTyxHQUFZLElBQUksQ0FBQztRQUN4QixlQUFVLEdBQVksS0FBSyxDQUFDO0lBRWUsQ0FBQztJQUU1QyxRQUFRO0lBQ1IsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUM5QixDQUFDO1FBQ0QsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxD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LENBQUMsTUFBTSxFQUFFLENBQUM7SUFDNUMsQ0FBQzs4R0F2RlUsbUJBQW1CO2tHQUFuQixtQkFBbUIsMFlDckJoQyxzbEVBMERBOzsyRkRyQ2EsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGFBQWE7OEVBS00sY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBR2xCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPcmdDaGFydCB9IGZyb20gJ2QzLW9yZy1jaGFydCc7XG5pbXBvcnQgKiBhcyBkMyBmcm9tICdkMyc7XG5cbmltcG9ydCBPcmdDaGFydENvbmZpZyBmcm9tICcuLi8uLi9hcGkvY29tcG9uZW50cy9jaGFydC9vcmNoYXJ0LmNvbmZpZyc7XG5pbXBvcnQgT3JnQ2hhcnRJdGVtIGZyb20gJy4uLy4uL2FwaS9jb21wb25lbnRzL2NoYXJ0L29yY2hhcnQuaXRlbSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2t2LW9yZ2NoYXJ0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LW9yZ2NoYXJ0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4va3Ytb3JnY2hhcnQuY29tcG9uZW50LnNjc3MnLF0sXG59KVxuZXhwb3J0IGNsYXNzIEt2T3JnY2hhcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKCdjaGFydENvbnRhaW5lcicpIGNoYXJ0Q29udGFpbmVyITogRWxlbWVudFJlZjtcbiAgY2hhcnQhOiBhbnk7XG5cbiAgQElucHV0KCkgZGF0YVNvdXJjZSE6IE9yZ0NoYXJ0SXRlbVtdO1xuICBASW5wdXQoKSBjb25maWchOiBPcmdDaGFydENvbmZpZztcbiAgQElucHV0KCkgdGVtcGxhdGUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIG5vZGVUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQElucHV0KCkgZ2VuZXJhdGVUZW1wbGF0ZTogRnVuY3Rpb24gPSAoZGF0YTogYW55LCBub2RlOiBhbnksIG5vZGVzOiBhbnlbXSwgaW5kZXg6IG51bWJlcik6IHN0cmluZyA9PiAnJztcbiAgQElucHV0KCkgdGVtcGxhdGVGdW5jaW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgY29yRGVGdW5kbzogc3RyaW5nID0gJ3JlZCc7XG5cbiAgY29tcGFjdDogYm9vbGVhbiA9IHRydWU7XG4gIG1vc3RyYU1lbnU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICghdGhpcy5jaGFydCkge1xuICAgICAgdGhpcy5jaGFydCA9IG5ldyBPcmdDaGFydCgpO1xuICAgIH1cbiAgICB0aGlzLnVwZGF0ZUNoYXJ0KCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLnVwZGF0ZUNoYXJ0KCk7XG4gIH1cblxuICB1cGRhdGVDaGFydCgpIHtcbiAgICBpZiAoIXRoaXMuZGF0YVNvdXJjZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuY2hhcnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBjaGFydENvbnRhaW5lciA9IHRoaXMuY2hhcnRDb250YWluZXIubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLmNoYXJ0XG4gICAgICAuY29udGFpbmVyKGNoYXJ0Q29udGFpbmVyKVxuICAgICAgLmRhdGEodGhpcy5kYXRhU291cmNlKVxuICAgICAgLm5vZGVXaWR0aCgoKSA9PiB0aGlzLmNvbmZpZy5jYXJkV2lkaHQpXG4gICAgICAubm9kZUhlaWdodCgoKSA9PiB0aGlzLmNvbmZpZy5jYXJkSGVpZ2h0KVxuICAgICAgLm5vZGVVcGRhdGUoZnVuY3Rpb24gKGQ6IGFueSkge1xuICAgICAgfSlcbiAgICAgIC5saW5rVXBkYXRlKChub2RlOiBhbnksIGluZGV4OiBhbnksIG5vZGVzOiBhbnkpID0+IHtcbiAgICAgICAgZDMuc2VsZWN0KG5vZGVzW2luZGV4XSlcbiAgICAgICAgICAuYXR0cignc3Ryb2tlLXdpZHRoJywgdGhpcy5jb25maWcuY29uZWN0aW9uV2lkdGggfHwgJzJweCcpXG4gICAgICAgICAgLnN0eWxlKCdzdHJva2UnLCB0aGlzLmNvbmZpZy5jb25uZWN0aW9uQ29sb3IgfHwgJyNkNmQ2ZDYnKS5zdHlsZSgnYmFja2dyb3VuZENvbG9yJywgJ3JlZCcpXG4gICAgICB9KVxuICAgICAgLm5vZGVDb250ZW50KChkOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnRlbXBsYXRlRnVuY2lvbikge1xuICAgICAgICAgIGlmIChkLmRhdGEudGVtcGxhdGUpIHtcbiAgICAgICAgICAgIGNvbnN0IGpzVGVtcGxhdGUgPSB0aGlzLnN0cmluZ1RvVGVtcGxhdGVMaXRlcmFsKGQuZGF0YS50ZW1wbGF0ZSk7XG4gICAgICAgICAgICB2YXIgdGVtcGxhdGVDb252ZXJ0ZXIgPSBuZXcgRnVuY3Rpb24oJ2RhdGEnLCAncmV0dXJuJyArIGpzVGVtcGxhdGUpO1xuICAgICAgICAgICAgdmFyIHggPSB0ZW1wbGF0ZUNvbnZlcnRlcihkLmRhdGEuZGF0YSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGpzVGVtcGxhdGUgPSB0aGlzLnN0cmluZ1RvVGVtcGxhdGVMaXRlcmFsKHRoaXMuY29uZmlnLnRlbXBsYXRlSXRlbSk7XG4gICAgICAgICAgICB2YXIgdGVtcGxhdGVDb252ZXJ0ZXIgPSBuZXcgRnVuY3Rpb24oJ2RhdGEnLCAncmV0dXJuJyArIGpzVGVtcGxhdGUpO1xuICAgICAgICAgICAgdmFyIHggPSB0ZW1wbGF0ZUNvbnZlcnRlcihkLmRhdGEuZGF0YSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHZhciB4ID0gdGhpcy5nZW5lcmF0ZVRlbXBsYXRlKGQpXG5cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geDtcbiAgICAgIH0pXG4gICAgICAuZGVmYXVsdEZvbnQoJ1JvYm90bycpXG4gICAgICAucmVuZGVyKClcbiAgfVxuXG4gIHN0cmluZ1RvVGVtcGxhdGVMaXRlcmFsKHN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb252ZXJ0ZWRUZW1wbGF0ZSA9IHN0cmluZy5yZXBsYWNlKFxuICAgICAgL1xce1xceyhbXn1dKilcXH1cXH0vZyxcbiAgICAgICckeyQxfSdcbiAgICApO1xuXG4gICAgcmV0dXJuICdgJyArIGNvbnZlcnRlZFRlbXBsYXRlICsgJ2AnO1xuICB9XG5cbiAgY29tcGFjdFN3YXAoKSB7XG4gICAgdGhpcy5jb21wYWN0ID0gIXRoaXMuY29tcGFjdDtcbiAgICB0aGlzLmNoYXJ0LmNvbXBhY3QodGhpcy5jb21wYWN0KS5yZW5kZXIoKTtcbiAgfVxufSIsIjxkaXYgI2NoYXJ0Q29udGFpbmVyIGlkPVwiY2hhcnRDb250YWluZXJcIiBbbmdDbGFzc109XCJ7J2JhY2tHcm91bmQnOiB0cnVlfVwiPlxuXG5cbiAgPGRpdiBjbGFzcz1cImRpdi1ib3RvZXMgdy1mdWxsIGZsZXggZ2FwLTFcIiA+XG5cblxuICAgIDxzcGFuICpuZ0lmPVwiIW1vc3RyYU1lbnVcIiBjbGFzcz1cInN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlclwiXG4gICAgKGNsaWNrKT1cIm1vc3RyYU1lbnUgPSAhbW9zdHJhTWVudVwiIHBUb29sdGlwPVwiRXhwYW5kaXIgbWVudVwiPm1lbnU8L3NwYW4+XG5cblxuXG4gICAgPHNwYW4gKm5nSWY9XCJtb3N0cmFNZW51XCIgY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxuICAgIChjbGljayk9XCJtb3N0cmFNZW51ID0gIW1vc3RyYU1lbnVcIiBwVG9vbHRpcD1cIlJlY29saGVyIG1lbnVcIj5tZW51X29wZW48L3NwYW4+XG5cbiAgICA8ZGl2ICpuZ0lmPVwibW9zdHJhTWVudVwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgKGNsaWNrKT1cImNoYXJ0Lnpvb21JbigpXCIgcFRvb2x0aXA9XCJab29tICtcIj56b29tX2luPC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwic3VyZmFjZS0zMDAgc2hhZG93LTQgcC0xIG0tMiBib3JkZXItY2lyY2xlIG1hdGVyaWFsLWljb25zIGN1cnNvci1wb2ludGVyXCJcbiAgICAgIChjbGljayk9XCJjaGFydC56b29tT3V0KClcIiBwVG9vbHRpcD1cIlpvb20gLVwiPnpvb21fb3V0PC9zcGFuPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgKGNsaWNrKT1cImNoYXJ0LmNvbGxhcHNlQWxsKClcIiBwVG9vbHRpcD1cIkV4cGFuZGlyXCI+ZXhwYW5kX2xlc3M8L3NwYW4+XG5cbiAgICA8c3BhbiBjbGFzcz1cInN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAoY2xpY2spPVwiY2hhcnQuZXhwYW5kQWxsKClcIiBwVG9vbHRpcD1cIlJlY29saGVyXCI+ZXhwYW5kX21vcmU8L3NwYW4+XG5cblxuICAgIDwhLS0gPHNwYW4gY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgKGNsaWNrKT1cImNvbXBhY3RTd2FwKClcIiBwVG9vbHRpcD1cIkNvbXBhY3RhclwiPmNhY2hlZDwvc3Bhbj4gLS0+XG5cbiAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIHN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAoY2xpY2spPVwiY2hhcnQuZml0KCkucmVuZGVyKClcIiBwVG9vbHRpcD1cIkNlbnRyYWxpemFyXCI+XG4gICAgICBmaWx0ZXJfY2VudGVyX2ZvY3VzXG4gICAgPC9zcGFuPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgKGNsaWNrKT1cImNoYXJ0LmZ1bGxzY3JlZW4oJyNjaGFydENvbnRhaW5lcicpXCIgcFRvb2x0aXA9XCJUZWxhIGNoZWlhXCIgPlxuICAgICAgZnVsbHNjcmVlblxuICAgIDwvc3Bhbj5cblxuICAgIDwvZGl2PlxuXG5cbiAgPC9kaXY+XG5cblxuPC9kaXY+XG5cblxuPGxpbmtcbiAgcmVsPVwic3R5bGVzaGVldFwiXG4gIGhyZWY9XCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2ljb24/ZmFtaWx5PU1hdGVyaWFsK0ljb25zXCJcbi8+XG5cbjxsaW5rXG4gIHJlbD1cInN0eWxlc2hlZXRcIlxuICBocmVmPVwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1NYXRlcmlhbCtTeW1ib2xzK091dGxpbmVkOm9wc3osd2dodCxGSUxMLEdSQURANDgsNDAwLDAsMFwiXG4vPlxuIl19
@@ -21,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
21
21
  exports: [KvOrgchartComponent]
22
22
  }]
23
23
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytb3JnY2hhcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFVcEQsTUFBTSxPQUFPLGdCQUFnQjs4R0FBaEIsZ0JBQWdCOytHQUFoQixnQkFBZ0IsaUJBSFosbUJBQW1CLGFBSGhDLFlBQVk7WUFDWixhQUFhLGFBR0wsbUJBQW1COytHQUVsQixnQkFBZ0IsWUFOekIsWUFBWTtZQUNaLGFBQWE7OzJGQUtKLGdCQUFnQjtrQkFSNUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3FCQUNkO29CQUNELFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBLdk9yZ2NoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9rdi1vcmdjaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcmltZU5nTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vcHVibGljLWFwaSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFByaW1lTmdNb2R1bGVcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW0t2T3JnY2hhcnRDb21wb25lbnRdLFxyXG4gIGV4cG9ydHM6IFtLdk9yZ2NoYXJ0Q29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZPcmdjaGFydE1vZHVsZSB7IH1cclxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytb3JnY2hhcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFVcEQsTUFBTSxPQUFPLGdCQUFnQjs4R0FBaEIsZ0JBQWdCOytHQUFoQixnQkFBZ0IsaUJBSFosbUJBQW1CLGFBSGhDLFlBQVk7WUFDWixhQUFhLGFBR0wsbUJBQW1COytHQUVsQixnQkFBZ0IsWUFOekIsWUFBWTtZQUNaLGFBQWE7OzJGQUtKLGdCQUFnQjtrQkFSNUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3FCQUNkO29CQUNELFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEt2T3JnY2hhcnRDb21wb25lbnQgfSBmcm9tICcuL2t2LW9yZ2NoYXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcmltZU5nTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vcHVibGljLWFwaSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUHJpbWVOZ01vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtLdk9yZ2NoYXJ0Q29tcG9uZW50XSxcbiAgZXhwb3J0czogW0t2T3JnY2hhcnRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEt2T3JnY2hhcnRNb2R1bGUgeyB9XG4iXX0=