@inovamobil/ic-databar-lib 2.1.1 → 2.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/inovamobil-ic-databar-lib.umd.js +1 -1
- package/bundles/inovamobil-ic-databar-lib.umd.js.map +1 -1
- package/bundles/inovamobil-ic-databar-lib.umd.min.js +1 -1
- package/bundles/inovamobil-ic-databar-lib.umd.min.js.map +1 -1
- package/esm2015/components/dialogs/error-dialog/error-dialog.component.js +1 -1
- package/esm2015/components/dialogs/error-dialog/error-dialog.module.js +1 -1
- package/esm2015/components/dialogs/error-dialog/service/error-dialog.service.js +1 -1
- package/esm2015/inovamobil-ic-databar-lib.js +1 -1
- package/esm2015/lib/constants/ic-databar.constants.js +1 -1
- package/esm2015/lib/contrato/DataBarConfigBotoesService.js +1 -1
- package/esm2015/lib/contrato/IDataBarBind.js +1 -1
- package/esm2015/lib/contrato/IDataBarBindOnClickService.js +1 -1
- package/esm2015/lib/contrato/IDataBarReverterService.js +1 -1
- package/esm2015/lib/contrato/IDataBarService.js +1 -1
- package/esm2015/lib/contrato/IDataEntidadePaginada.js +1 -1
- package/esm2015/lib/contrato/IDatabarStatusService.js +1 -1
- package/esm2015/lib/contrato/OnInitDataBar.js +1 -1
- package/esm2015/lib/enum/eeventoclick.js +1 -1
- package/esm2015/lib/enum/estatus.js +1 -1
- package/esm2015/lib/ic-data-bar.component.js +2 -2
- package/esm2015/lib/ic-data-bar.module.js +1 -1
- package/esm2015/lib/services/ic-databar-event-click.service.js +1 -1
- package/esm2015/lib/services/ic-databar-reverter.service.js +1 -1
- package/esm2015/lib/services/ic-databar.service.js +1 -1
- package/esm2015/public-api.js +1 -1
- package/fesm2015/inovamobil-ic-databar-lib.js +1 -1
- package/fesm2015/inovamobil-ic-databar-lib.js.map +1 -1
- package/inovamobil-ic-databar-lib.metadata.json +1 -1
- package/package.json +1 -1
|
@@ -408,7 +408,7 @@ export class DataBarComponent {
|
|
|
408
408
|
DataBarComponent.decorators = [
|
|
409
409
|
{ type: Component, args: [{
|
|
410
410
|
selector: 'ic-data-bar',
|
|
411
|
-
template: "<div\r\n fxFlex=\"1 0 auto\"\r\n fxFlexLayout=\"space-around center\"\r\n fxLayout=\"column\"\r\n>\r\n <!-- DESKTOP -->\r\n <mat-toolbar class=\"px-0 mat-elevation-z4\">\r\n <div\r\n fxFlex=\"1 0 auto\"\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"space-around center\"\r\n >\r\n <!-- BOT\u00C3O EXIBIR DRAWER -->\r\n <mat-drawer-container\r\n fxFlex.sm\r\n fxHide.gt-sm\r\n >\r\n <button\r\n (click)=\"drawer.toggle()\"\r\n id=\"btn_exibir_databar_mobile\"\r\n mat-button\r\n type=\"button\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n </button>\r\n </mat-drawer-container>\r\n <!-- /BOT\u00C3O EXIBIR DRAWER -->\r\n\r\n <!-- A\u00C7\u00D5ES -->\r\n <div\r\n fxFlex.sm\r\n fxHide\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"space-around center\"\r\n fxShow.gt-sm\r\n >\r\n <!-- MODO_TABELA -->\r\n <button\r\n *ngIf=\"servicoConfiguracaoBotoes?.exibirBotaoModoTabela()\"\r\n (click)=\"onClickModoTabela()\"\r\n [disabled]=\"desabilitarBotaoModoTabela\"\r\n color=\"primary\"\r\n id=\"btn_modo_tabela\"\r\n mat-button\r\n matTooltip=\"Alterar exibi\u00E7\u00E3o para tabela\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n </button>\r\n <!-- MODO_TABELA -->\r\n\r\n <!-- BTN_NOVA_PESQUISA -->\r\n <button\r\n (click)=\"onClickNovaPesquisa()\"\r\n [disabled]=\"servicoConfiguracaoBotoes?.desabilitarBotaoNovaPesquisa()\"\r\n color=\"primary\"\r\n id=\"btn_nova_pesquisa\"\r\n mat-button\r\n matTooltip=\"Nova Pesquisa\"\r\n >\r\n <mat-icon>insert_drive_file</mat-icon>\r\n </button>\r\n <!-- BTN_NOVA_PESQUISA -->\r\n\r\n <!-- BTN_REVERTER -->\r\n <button\r\n (click)=\"onClickReverter()\"\r\n [disabled]=\"desabilitarBotaoReverter\"\r\n color=\"primary\"\r\n id=\"btn_reverter\"\r\n mat-button\r\n matTooltip=\"Reverter\"\r\n >\r\n <mat-icon>restore</mat-icon>\r\n </button>\r\n <!-- BTN_REVERTER -->\r\n\r\n <!-- BTN_PESQUISAR -->\r\n <button\r\n (click)=\"pesquisar()\"\r\n [disabled]=\"desabilitarBotaoPesquisar\"\r\n color=\"primary\"\r\n id=\"btn_pesquisar\"\r\n mat-button\r\n matTooltip=\"Pesquisar\"\r\n >\r\n <mat-icon>search</mat-icon>\r\n </button>\r\n <!-- BTN_PESQUISAR -->\r\n\r\n <!-- BTN_ADICIONAR -->\r\n <button\r\n (click)=\"inserir()\"\r\n [disabled]=\"desabilitarBotaoAdicionar\"\r\n color=\"primary\"\r\n id=\"btn_adicionar\"\r\n mat-button\r\n matTooltip=\"Adicionar\"\r\n >\r\n <mat-icon>add_circle</mat-icon>\r\n </button>\r\n <!-- BTN_ADICIONAR -->\r\n\r\n <!-- BTN_EDITAR -->\r\n <button\r\n (click)=\"editar()\"\r\n [disabled]=\"desabilitarBotaoEditar\"\r\n color=\"primary\"\r\n id=\"btn_editar\"\r\n mat-button\r\n matTooltip=\"Editar\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <!-- BTN_EDITAR -->\r\n\r\n <!-- BTN_REMOVER -->\r\n <button\r\n (click)=\"remover()\"\r\n [disabled]=\"desabilitarBotaoRemover\"\r\n color=\"primary\"\r\n id=\"btn_remover\"\r\n mat-button\r\n matTooltip=\"Remover\"\r\n >\r\n <mat-icon>delete_forever</mat-icon>\r\n </button>\r\n <!-- BTN_REMOVER -->\r\n\r\n <!-- BTN_SALVAR -->\r\n <button\r\n (click)=\"salvar()\"\r\n [disabled]=\"desabilitarBotaoSalvar\"\r\n color=\"primary\"\r\n id=\"btn_salvar\"\r\n mat-button\r\n matTooltip=\"Salvar\"\r\n >\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <!-- BTN_SALVAR -->\r\n </div>\r\n <!-- /A\u00C7\u00D5ES -->\r\n\r\n <!-- STATUS -->\r\n <div fxLayout=\"row\"\r\n fxLayoutAlign=\"center center\">\r\n\r\n <!-- PROGRESS -->\r\n <mat-spinner *ngIf=\"emProgresso\"\r\n [diameter]=\"20\"></mat-spinner>\r\n <!-- PROGRESS -->\r\n\r\n <button\r\n color=\"primary\"\r\n fxHide.lt-sm\r\n id=\"btn_status\"\r\n mat-button\r\n matTooltip=\"A\u00E7\u00E3o no momento\"\r\n >\r\n {{ status }}\r\n </button>\r\n </div>\r\n <!-- STATUS -->\r\n\r\n <!-- PAGINA\u00C7\u00C3O -->\r\n <div\r\n fxFlex.sm\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"center center\"\r\n >\r\n <!-- BTN_PRIMEIRO -->\r\n <button\r\n (click)=\"primeiro()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoRetroceder || servicoConfiguracaoBotoes?.desabilitarBotaoPrimeiro()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n fxFlex.sm\r\n fxHide.lt-sm\r\n id=\"btn_primeiro\"\r\n mat-button\r\n matTooltip=\"Primeiro item\"\r\n >\r\n <mat-icon>first_page</mat-icon>\r\n </button>\r\n <!-- BTN_PRIMEIRO -->\r\n\r\n <!-- BTN_ANTERIOR -->\r\n <button\r\n (click)=\"anterior()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoRetroceder || servicoConfiguracaoBotoes?.desabilitarBotaoAnterior()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_anterior\"\r\n mat-button\r\n matTooltip=\"Anterior\">\r\n <mat-icon>navigate_before</mat-icon>\r\n </button>\r\n <!-- BTN_ANTERIOR -->\r\n\r\n <div\r\n class=\"px-0 px-sm-12 contador-paginas\"\r\n id=\"contador_paginacao\"\r\n matTooltip=\"P\u00E1gina Atual\"\r\n >\r\n {{ entidadePaginada?.posicao }} de {{ entidadePaginada?.total }}\r\n </div>\r\n\r\n <!-- BTN_PROXIMO -->\r\n <button\r\n (click)=\"proximo()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoAvancar || servicoConfiguracaoBotoes?.desabilitarBotaoProximo()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_proximo\"\r\n mat-button\r\n matTooltip=\"Pr\u00F3ximo\">\r\n <mat-icon>navigate_next</mat-icon>\r\n </button>\r\n <!-- BTN_PROXIMO -->\r\n\r\n <!-- BTN_ULTIMO -->\r\n <button\r\n (click)=\"ultimo()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoAvancar || servicoConfiguracaoBotoes?.desabilitarBotaoUltimo()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_ultimo\"\r\n fxFlex.sm\r\n fxHide.lt-sm\r\n mat-button\r\n matTooltip=\"\u00DAltimo\">\r\n <mat-icon>last_page</mat-icon>\r\n </button>\r\n <!-- BTN_ULTIMO -->\r\n </div>\r\n <!-- /PAGINA\u00C7\u00C3O -->\r\n </div>\r\n </mat-toolbar>\r\n <!-- /DESKTOP -->\r\n\r\n <!-- MOBILE -->\r\n <mat-drawer\r\n #drawer\r\n fxFlex\r\n fxLayoutAlign=\"column\"\r\n mode=\"over\"\r\n >\r\n\r\n <!-- FECHAR SIDENAV -->\r\n <button\r\n (click)=\"drawer.toggle()\"\r\n class=\"btn-fechar-drawer\"\r\n id=\"btn_fechar_databar_mobile\"\r\n mat-icon-button\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <!-- /FECHAR SIDENAV -->\r\n\r\n <!-- STATUS -->\r\n <div class=\"pr-12\"\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"space-between center\">\r\n\r\n <div fxFlex=\"100\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\r\n <h4 class=\"pl-12\">A\u00E7\u00F5es</h4>\r\n <p class=\"texto-status\" id=\"status_mobile\">{{ status }}</p>\r\n </div>\r\n\r\n </div>\r\n <!-- /STATUS -->\r\n\r\n <!-- OPCOES -->\r\n <div\r\n class=\"px-12 overflow\"\r\n fxLayout=\"column\"\r\n fxLayoutAlign=\"start start\"\r\n >\r\n <mat-list>\r\n <!-- BTN_PRIMEIRO -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"primeiro()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoRetroceder || servicoConfiguracaoBotoes?.desabilitarBotaoPrimeiro()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_primeiro_mobile\"\r\n matTooltip=\"Primeiro item\"\r\n >\r\n <mat-icon>first_page</mat-icon>\r\n Primeiro item\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_PRIMEIRO -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_ULTIMO -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"ultimo()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoAvancar || servicoConfiguracaoBotoes?.desabilitarBotaoUltimo()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_ultimo_mobile\"\r\n mat-button\r\n matTooltip=\"\u00DAltimo\">\r\n <mat-icon>last_page</mat-icon>\r\n \u00DAltimo item\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_ULTIMO -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- MODO_TABELA -->\r\n <mat-list-item>\r\n <button\r\n *ngIf=\"servicoConfiguracaoBotoes?.exibirBotaoModoTabela()\"\r\n (click)=\"onClickModoTabela()\"\r\n [disabled]=\"desabilitarBotaoModoTabela\"\r\n color=\"primary\"\r\n id=\"btn_modo_tabela_mobile\"\r\n mat-button\r\n matTooltip=\"Alterar exibi\u00E7\u00E3o para tabela\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n Modo tabela\r\n </button>\r\n </mat-list-item>\r\n <!-- MODO_TABELA -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_NOVA_PESQUISA -->\r\n <mat-list-item>\r\n <button (click)=\"onClickNovaPesquisa()\"\r\n [disabled]=\"servicoConfiguracaoBotoes?.desabilitarBotaoNovaPesquisa()\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_nova_pesquisa_mobile\"\r\n matTooltip=\"Nova Pesquisa\">\r\n <mat-icon>restore_page</mat-icon>\r\n Nova Pesquisa\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_NOVA_PESQUISA -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_PESQUISAR -->\r\n <mat-list-item>\r\n <button (click)=\"pesquisar()\"\r\n [disabled]=\"desabilitarBotaoPesquisar\"\r\n color=\"primary\"\r\n id=\"btn_pesquisar_mobile\"\r\n mat-button\r\n matTooltip=\"Pesquisar\">\r\n <mat-icon>search</mat-icon>\r\n Pesquisar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_PESQUISAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_ADICIONAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"inserir()\"\r\n [disabled]=\"desabilitarBotaoAdicionar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_adicionar_mobile\"\r\n matTooltip=\"Adicionar\"\r\n >\r\n <mat-icon>add_circle</mat-icon>\r\n Incluir\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_ADICIONAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_EDITAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"editar()\"\r\n [disabled]=\"desabilitarBotaoEditar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_editar_mobile\"\r\n matTooltip=\"Editar\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n Editar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_EDITAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_REMOVER -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"remover()\"\r\n [disabled]=\"desabilitarBotaoRemover\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_remover_mobile\"\r\n matTooltip=\"Remover\"\r\n >\r\n <mat-icon>delete_forever</mat-icon>\r\n Remover\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_REMOVER -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_SALVAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"salvar()\"\r\n [disabled]=\"desabilitarBotaoSalvar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_salvar_mobile\"\r\n matTooltip=\"Salvar\"\r\n >\r\n <mat-icon>save</mat-icon>\r\n Salvar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_SALVAR -->\r\n\r\n <mat-divider></mat-divider>\r\n </mat-list>\r\n </div>\r\n <!-- /OPCOES -->\r\n </mat-drawer>\r\n <!-- /MOBILE -->\r\n</div>\r\n",
|
|
411
|
+
template: "<div fxFlex=\"1 0 auto\" fxFlexLayout=\"space-around center\" fxLayout=\"column\">\r\n <!-- DESKTOP -->\r\n <mat-toolbar class=\"px-0 mat-elevation-z4\">\r\n <div fxFlex=\"1 0 auto\" fxLayout=\"row\" fxLayoutAlign=\"space-around center\">\r\n <!-- BOT\u00C3O EXIBIR DRAWER -->\r\n <mat-drawer-container fxFlex.sm fxHide.gt-sm>\r\n <button\r\n (click)=\"drawer.toggle()\"\r\n id=\"btn_exibir_databar_mobile\"\r\n mat-button\r\n type=\"button\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n </button>\r\n </mat-drawer-container>\r\n <!-- /BOT\u00C3O EXIBIR DRAWER -->\r\n\r\n <!-- A\u00C7\u00D5ES -->\r\n <div\r\n fxFlex.sm\r\n fxHide\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"space-around center\"\r\n fxShow.gt-sm\r\n >\r\n <!-- BTN_NOVA_PESQUISA -->\r\n <button\r\n (click)=\"onClickNovaPesquisa()\"\r\n [disabled]=\"servicoConfiguracaoBotoes?.desabilitarBotaoNovaPesquisa()\"\r\n color=\"primary\"\r\n id=\"btn_nova_pesquisa\"\r\n mat-button\r\n matTooltip=\"Nova Pesquisa\"\r\n >\r\n <mat-icon>insert_drive_file</mat-icon>\r\n </button>\r\n <!-- BTN_NOVA_PESQUISA -->\r\n\r\n <!-- BTN_REVERTER -->\r\n <button\r\n (click)=\"onClickReverter()\"\r\n [disabled]=\"desabilitarBotaoReverter\"\r\n color=\"primary\"\r\n id=\"btn_reverter\"\r\n mat-button\r\n matTooltip=\"Reverter\"\r\n >\r\n <mat-icon>restore</mat-icon>\r\n </button>\r\n <!-- BTN_REVERTER -->\r\n\r\n <!-- BTN_PESQUISAR -->\r\n <button\r\n (click)=\"pesquisar()\"\r\n [disabled]=\"desabilitarBotaoPesquisar\"\r\n color=\"primary\"\r\n id=\"btn_pesquisar\"\r\n mat-button\r\n matTooltip=\"Pesquisar\"\r\n >\r\n <mat-icon>search</mat-icon>\r\n </button>\r\n <!-- BTN_PESQUISAR -->\r\n\r\n <!-- BTN_ADICIONAR -->\r\n <button\r\n (click)=\"inserir()\"\r\n [disabled]=\"desabilitarBotaoAdicionar\"\r\n color=\"primary\"\r\n id=\"btn_adicionar\"\r\n mat-button\r\n matTooltip=\"Adicionar\"\r\n >\r\n <mat-icon>add_circle</mat-icon>\r\n </button>\r\n <!-- BTN_ADICIONAR -->\r\n\r\n <!-- BTN_EDITAR -->\r\n <button\r\n (click)=\"editar()\"\r\n [disabled]=\"desabilitarBotaoEditar\"\r\n color=\"primary\"\r\n id=\"btn_editar\"\r\n mat-button\r\n matTooltip=\"Editar\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <!-- BTN_EDITAR -->\r\n\r\n <!-- BTN_REMOVER -->\r\n <button\r\n (click)=\"remover()\"\r\n [disabled]=\"desabilitarBotaoRemover\"\r\n color=\"primary\"\r\n id=\"btn_remover\"\r\n mat-button\r\n matTooltip=\"Remover\"\r\n >\r\n <mat-icon>delete_forever</mat-icon>\r\n </button>\r\n <!-- BTN_REMOVER -->\r\n\r\n <!-- BTN_SALVAR -->\r\n <button\r\n (click)=\"salvar()\"\r\n [disabled]=\"desabilitarBotaoSalvar\"\r\n color=\"primary\"\r\n id=\"btn_salvar\"\r\n mat-button\r\n matTooltip=\"Salvar\"\r\n >\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <!-- BTN_SALVAR -->\r\n </div>\r\n <!-- /A\u00C7\u00D5ES -->\r\n\r\n <!-- STATUS -->\r\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\">\r\n <!-- PROGRESS -->\r\n <mat-spinner *ngIf=\"emProgresso\" [diameter]=\"20\"></mat-spinner>\r\n <!-- PROGRESS -->\r\n\r\n <button\r\n color=\"primary\"\r\n fxHide.lt-sm\r\n id=\"btn_status\"\r\n mat-button\r\n matTooltip=\"A\u00E7\u00E3o no momento\"\r\n >\r\n {{ status }}\r\n </button>\r\n </div>\r\n <!-- STATUS -->\r\n\r\n <!-- PAGINA\u00C7\u00C3O -->\r\n <div fxFlex.sm fxLayout=\"row\" fxLayoutAlign=\"center center\">\r\n <!-- BTN_PRIMEIRO -->\r\n <button\r\n (click)=\"primeiro()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoRetroceder ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoPrimeiro()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n fxFlex.sm\r\n fxHide.lt-sm\r\n id=\"btn_primeiro\"\r\n mat-button\r\n matTooltip=\"Primeiro item\"\r\n >\r\n <mat-icon>first_page</mat-icon>\r\n </button>\r\n <!-- BTN_PRIMEIRO -->\r\n\r\n <!-- BTN_ANTERIOR -->\r\n <button\r\n (click)=\"anterior()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoRetroceder ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoAnterior()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_anterior\"\r\n mat-button\r\n matTooltip=\"Anterior\"\r\n >\r\n <mat-icon>navigate_before</mat-icon>\r\n </button>\r\n <!-- BTN_ANTERIOR -->\r\n\r\n <div\r\n class=\"px-0 px-sm-12 contador-paginas\"\r\n id=\"contador_paginacao\"\r\n matTooltip=\"P\u00E1gina Atual\"\r\n >\r\n {{ entidadePaginada?.posicao }} de {{ entidadePaginada?.total }}\r\n </div>\r\n\r\n <!-- BTN_PROXIMO -->\r\n <button\r\n (click)=\"proximo()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoAvancar ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoProximo()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_proximo\"\r\n mat-button\r\n matTooltip=\"Pr\u00F3ximo\"\r\n >\r\n <mat-icon>navigate_next</mat-icon>\r\n </button>\r\n <!-- BTN_PROXIMO -->\r\n\r\n <!-- BTN_ULTIMO -->\r\n <button\r\n (click)=\"ultimo()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoAvancar ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoUltimo()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_ultimo\"\r\n fxFlex.sm\r\n fxHide.lt-sm\r\n mat-button\r\n matTooltip=\"\u00DAltimo\"\r\n >\r\n <mat-icon>last_page</mat-icon>\r\n </button>\r\n <!-- BTN_ULTIMO -->\r\n </div>\r\n <!-- /PAGINA\u00C7\u00C3O -->\r\n\r\n <div\r\n fxShow.gt-sm\r\n fxHide\r\n fxFlex.sm\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"center center\"\r\n >\r\n <!-- MODO_TABELA -->\r\n <button\r\n *ngIf=\"servicoConfiguracaoBotoes?.exibirBotaoModoTabela()\"\r\n (click)=\"onClickModoTabela()\"\r\n [disabled]=\"desabilitarBotaoModoTabela\"\r\n color=\"primary\"\r\n id=\"btn_modo_tabela\"\r\n mat-button\r\n matTooltip=\"Alterar exibi\u00E7\u00E3o para tabela\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n </button>\r\n <!-- MODO_TABELA -->\r\n </div>\r\n </div>\r\n </mat-toolbar>\r\n <!-- /DESKTOP -->\r\n\r\n <!-- MOBILE -->\r\n <mat-drawer #drawer fxFlex fxLayoutAlign=\"column\" mode=\"over\">\r\n <!-- FECHAR SIDENAV -->\r\n <button\r\n (click)=\"drawer.toggle()\"\r\n class=\"btn-fechar-drawer\"\r\n id=\"btn_fechar_databar_mobile\"\r\n mat-icon-button\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <!-- /FECHAR SIDENAV -->\r\n\r\n <!-- STATUS -->\r\n <div class=\"pr-12\" fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\r\n <div fxFlex=\"100\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\r\n <h4 class=\"pl-12\">A\u00E7\u00F5es</h4>\r\n <p class=\"texto-status\" id=\"status_mobile\">{{ status }}</p>\r\n </div>\r\n </div>\r\n <!-- /STATUS -->\r\n\r\n <!-- OPCOES -->\r\n <div class=\"px-12 overflow\" fxLayout=\"column\" fxLayoutAlign=\"start start\">\r\n <mat-list>\r\n <!-- BTN_PRIMEIRO -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"primeiro()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoRetroceder ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoPrimeiro()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_primeiro_mobile\"\r\n matTooltip=\"Primeiro item\"\r\n >\r\n <mat-icon>first_page</mat-icon>\r\n Primeiro item\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_PRIMEIRO -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_ULTIMO -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"ultimo()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoAvancar ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoUltimo()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_ultimo_mobile\"\r\n mat-button\r\n matTooltip=\"\u00DAltimo\"\r\n >\r\n <mat-icon>last_page</mat-icon>\r\n \u00DAltimo item\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_ULTIMO -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- MODO_TABELA -->\r\n <mat-list-item>\r\n <button\r\n *ngIf=\"servicoConfiguracaoBotoes?.exibirBotaoModoTabela()\"\r\n (click)=\"onClickModoTabela()\"\r\n [disabled]=\"desabilitarBotaoModoTabela\"\r\n color=\"primary\"\r\n id=\"btn_modo_tabela_mobile\"\r\n mat-button\r\n matTooltip=\"Alterar exibi\u00E7\u00E3o para tabela\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n Modo tabela\r\n </button>\r\n </mat-list-item>\r\n <!-- MODO_TABELA -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_NOVA_PESQUISA -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"onClickNovaPesquisa()\"\r\n [disabled]=\"\r\n servicoConfiguracaoBotoes?.desabilitarBotaoNovaPesquisa()\r\n \"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_nova_pesquisa_mobile\"\r\n matTooltip=\"Nova Pesquisa\"\r\n >\r\n <mat-icon>restore_page</mat-icon>\r\n Nova Pesquisa\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_NOVA_PESQUISA -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_PESQUISAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"pesquisar()\"\r\n [disabled]=\"desabilitarBotaoPesquisar\"\r\n color=\"primary\"\r\n id=\"btn_pesquisar_mobile\"\r\n mat-button\r\n matTooltip=\"Pesquisar\"\r\n >\r\n <mat-icon>search</mat-icon>\r\n Pesquisar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_PESQUISAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_ADICIONAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"inserir()\"\r\n [disabled]=\"desabilitarBotaoAdicionar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_adicionar_mobile\"\r\n matTooltip=\"Adicionar\"\r\n >\r\n <mat-icon>add_circle</mat-icon>\r\n Incluir\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_ADICIONAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_EDITAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"editar()\"\r\n [disabled]=\"desabilitarBotaoEditar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_editar_mobile\"\r\n matTooltip=\"Editar\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n Editar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_EDITAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_REMOVER -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"remover()\"\r\n [disabled]=\"desabilitarBotaoRemover\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_remover_mobile\"\r\n matTooltip=\"Remover\"\r\n >\r\n <mat-icon>delete_forever</mat-icon>\r\n Remover\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_REMOVER -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_SALVAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"salvar()\"\r\n [disabled]=\"desabilitarBotaoSalvar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_salvar_mobile\"\r\n matTooltip=\"Salvar\"\r\n >\r\n <mat-icon>save</mat-icon>\r\n Salvar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_SALVAR -->\r\n\r\n <mat-divider></mat-divider>\r\n </mat-list>\r\n </div>\r\n <!-- /OPCOES -->\r\n </mat-drawer>\r\n <!-- /MOBILE -->\r\n</div>\r\n",
|
|
412
412
|
styles: ["::ng-deep .sucesso{background:#4caf50!important;color:#fff!important}::ng-deep .sucesso button{color:#1b5e20!important;font-weight:800!important}.contador-paginas{color:#039be5;font-size:14px}@media (max-width:959px){.contador-paginas{font-size:12px}}.btn-fechar-drawer{position:absolute;right:5px;top:5px}.texto-status{color:#039be5;text-align:center}mat-toolbar{background:#fff!important;width:100%}mat-drawer-container{background:transparent!important}mat-drawer{left:0;min-width:240px}.overflow,mat-drawer,mat-list{overflow-y:auto}:host{display:flex;flex:0 0 auto;z-index:99999}:host .mat-toolbar{background:inherit;border-bottom:1px solid #e6e6e6;color:inherit}:host .mat-toolbar .pagina{font-size:10px;margin:1vm;text-align:center}:host.above{position:relative;z-index:99999999}"]
|
|
413
413
|
},] }
|
|
414
414
|
];
|
|
@@ -430,4 +430,4 @@ DataBarComponent.propDecorators = {
|
|
|
430
430
|
drawer: [{ type: ViewChild, args: ['drawer', { static: false },] }],
|
|
431
431
|
fecharSidenav: [{ type: HostListener, args: ['document:click', ['$event'],] }]
|
|
432
432
|
};
|
|
433
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWMtZGF0YS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L2F3cy9iaWJsaW90ZWNhLWFuZ3VsYXIvcHJvamVjdHMvaWMtZGF0YWJhci1saWIvc3JjLyIsInNvdXJjZXMiOlsibGliL2ljLWRhdGEtYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUVaLFlBQVksRUFDWixVQUFVLEVBQ1YsU0FBUyxHQUVaLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUk5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBRXJHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQVNsRixNQUFNLE9BQU8sZ0JBQWdCO0lBdUJ6QixZQUNZLE9BQWdDLEVBQ2hDLFdBQStCLEVBQy9CLFdBQXVCLEVBQ3ZCLGVBQStCLEVBQy9CLGdCQUFvQztRQUpwQyxZQUFPLEdBQVAsT0FBTyxDQUF5QjtRQUNoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsb0JBQWUsR0FBZixlQUFlLENBQWdCO1FBQy9CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7UUFyQnZDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFNaEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRy9DLFlBQU8sR0FBRyxPQUFPLENBQUM7UUFDbEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7SUFZeEIsQ0FBQztJQXBCSixJQUFhLGVBQWUsQ0FBQyxPQUFtQztRQUM1RCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDO0lBQ3BDLENBQUM7SUFvQkQsUUFBUTtRQUNKLElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVk7WUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUUvRSxJQUFJLElBQUksQ0FBQyxVQUFVO1lBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2RCxDQUFDO0lBR0QsYUFBYSxDQUFDLEtBQUs7UUFDZixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdkQsT0FBTztTQUNWO1FBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxtQkFBbUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLE9BQU8sQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQ2pGLENBQUM7SUFFRCxJQUFJLDBCQUEwQjs7UUFDMUIsT0FBTyxDQUNILElBQUksQ0FBQyxNQUFNLElBQUksT0FBTyxDQUFDLFNBQVM7WUFDaEMsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsUUFBUTtZQUMvQixJQUFJLENBQUMsV0FBVztZQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sV0FDakIsSUFBSSxDQUFDLHlCQUF5QiwwQ0FBRSwwQkFBMEIsR0FBRSxDQUMvRCxDQUFDO0lBQ04sQ0FBQztJQUVELElBQUkseUJBQXlCOztRQUN6QixPQUFPLENBQ0gsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsU0FBUztZQUNoQyxJQUFJLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxRQUFRO1lBQy9CLElBQUksQ0FBQyxNQUFNLElBQUksT0FBTyxDQUFDLGVBQWU7WUFDdEMsSUFBSSxDQUFDLFdBQVc7WUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLFdBQ2pCLElBQUksQ0FBQyx5QkFBeUIsMENBQUUseUJBQXlCLEdBQUUsQ0FDOUQsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLHdCQUF3Qjs7UUFDeEIsT0FBTyxDQUNILElBQUksQ0FBQyxNQUFNLElBQUksT0FBTyxDQUFDLFlBQVk7WUFDbkMsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsWUFBWTtZQUNuQyxJQUFJLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxlQUFlO1lBQ3RDLElBQUksQ0FBQyxXQUFXLFdBQ2hCLElBQUksQ0FBQyx5QkFBeUIsMENBQUUsd0JBQXdCLEdBQUUsQ0FDN0QsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLHlCQUF5Qjs7UUFDekIsT0FBTyxDQUNILElBQUksQ0FBQyxNQUFNLElBQUksT0FBTyxDQUFDLFFBQVE7WUFDL0IsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsU0FBUztZQUNoQyxJQUFJLENBQUMsV0FBVztZQUNoQixJQUFJLENBQUMsUUFBUSxXQUNiLElBQUksQ0FBQyx5QkFBeUIsMENBQUUseUJBQXlCLEdBQUUsQ0FDOUQsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLHNCQUFzQjs7UUFDdEIsT0FBTyxDQUNILElBQUksQ0FBQyxNQUFNLElBQUksT0FBTyxDQUFDLFNBQVM7WUFDaEMsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsWUFBWTtZQUNuQyxJQUFJLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxZQUFZO1lBQ25DLElBQUksQ0FBQyxNQUFNLElBQUksT0FBTyxDQUFDLFdBQVc7WUFDbEMsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsUUFBUTtZQUMvQixJQUFJLENBQUMsV0FBVztZQUNoQixJQUFJLENBQUMsUUFBUSxXQUNiLElBQUksQ0FBQyx5QkFBeUIsMENBQUUsc0JBQXNCLEdBQUUsQ0FDM0QsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLHVCQUF1Qjs7UUFDdkIsT0FBTyxDQUNILFFBQUMsSUFBSSxDQUFDLGdCQUFnQiwwQ0FBRSxRQUFRLENBQUE7WUFDaEMsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsZUFBZTtZQUN0QyxJQUFJLENBQUMsV0FBVyxXQUNoQixJQUFJLENBQUMseUJBQXlCLDBDQUFFLHVCQUF1QixHQUFFLENBQzVELENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxzQkFBc0I7O1FBQ3RCLE9BQU8sQ0FDSCxPQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLE9BQU87WUFDbEIsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ3JFLElBQUksQ0FBQyxXQUFXO1lBQ2hCLElBQUksQ0FBQyxRQUFRLFdBQ2IsSUFBSSxDQUFDLHlCQUF5QiwwQ0FBRSxzQkFBc0IsR0FBRSxDQUMzRCxDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksb0NBQW9DO1FBQ3BDLE9BQU8sQ0FDSCxJQUFJLENBQUMsbUJBQW1CO1lBQ3hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLElBQUksQ0FBQztZQUNsQyxJQUFJLENBQUMsV0FBVyxDQUNuQixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksaUNBQWlDO1FBQ2pDLE9BQU8sQ0FDSCxJQUFJLENBQUMsbUJBQW1CO1lBQ3hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUs7WUFDNUQsSUFBSSxDQUFDLFdBQVcsQ0FDbkIsQ0FBQztJQUNOLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLGdDQUFnQyxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVELGlCQUFpQjtRQUNiLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELFlBQVk7UUFDUixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDakQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFNBQVM7UUFDTCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ25CLE9BQU87U0FDVjtRQUVELElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsT0FBTztRQUNILElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsT0FBTztRQUNILElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsT0FBTztRQUNILElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXBELFFBQVEsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNqQixLQUFLLE9BQU8sQ0FBQyxTQUFTO2dCQUNsQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2hCLE1BQU07WUFFVixLQUFLLE9BQU8sQ0FBQyxRQUFRO2dCQUNqQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2YsTUFBTTtTQUNiO0lBQ0wsQ0FBQztJQUVPLFFBQVE7UUFDWixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXO2FBQ1gsS0FBSyxFQUFFO2FBQ1AsSUFBSSxDQUNELFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDM0QsQ0FBQyxDQUFDLENBQ0w7YUFDQSxTQUFTLENBQ04sQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFekIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUN0Qyw2QkFBNkIsQ0FDaEMsQ0FBQztZQUVGLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBRTlCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRXhDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7WUFFcEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELENBQUMsRUFDRCxHQUFHLEVBQUU7WUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3RDLENBQUMsQ0FDSixDQUFDO0lBQ1YsQ0FBQztJQUVPLE9BQU87UUFDWCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXO2FBQ1gsTUFBTSxFQUFFO2FBQ1IsSUFBSSxDQUNELFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDM0QsQ0FBQyxDQUFDLENBQ0w7YUFDQSxTQUFTLENBQ04sQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNSLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FDdEMsK0JBQStCLENBQ2xDLENBQUM7WUFFRixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUU5QixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXpCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRXhDLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUVoRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3hCLENBQUMsRUFDRCxHQUFHLEVBQUU7WUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FDSixDQUFDO0lBQ1YsQ0FBQztJQUVPLGlCQUFpQjtRQUNyQixJQUFLLElBQUksQ0FBQyxXQUE0QyxDQUFDLFNBQVMsRUFBRTtZQUM5RCxJQUFJLENBQUMsVUFBVSxHQUNYLElBQUksQ0FBQyxXQUNSLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUM3QixRQUFRLE1BQU0sRUFBRTtvQkFDWixLQUFLLE9BQU8sQ0FBQyxRQUFRO3dCQUNqQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7d0JBQ2QsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7d0JBQ3pCLE1BQU07b0JBQ1YsS0FBSyxPQUFPLENBQUMsU0FBUzt3QkFDbEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO3dCQUNmLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO3dCQUN6QixNQUFNO29CQUNWLEtBQUssT0FBTyxDQUFDLFdBQVc7d0JBQ3BCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQzt3QkFDakIsTUFBTTtvQkFDVixLQUFLLE9BQU8sQ0FBQyxZQUFZO3dCQUNyQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7d0JBQ3BCLE1BQU07b0JBQ1YsS0FBSyxPQUFPLENBQUMsU0FBUzt3QkFDbEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO3dCQUNmLE1BQU07b0JBQ1YsS0FBSyxPQUFPLENBQUMsZUFBZTt3QkFDeEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDO3dCQUN0QyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQzt3QkFDekIsTUFBTTtpQkFDYjtZQUNMLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU8sdUJBQXVCO1FBQzNCLElBQUksSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUk7WUFDN0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksd0JBQXdCLEVBQUUsQ0FBQztRQUUzRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqQyxDQUFDO0lBRU8sbUJBQW1CO1FBQ3ZCLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLGtCQUFrQixDQUM3QyxJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxJQUFJLEVBQ1QsSUFBSSxDQUFDLGdCQUFnQixDQUN4QixDQUFDO0lBQ04sQ0FBQztJQUVPLFNBQVM7UUFDYixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyx3QkFBd0IsQ0FDM0UsSUFBSSxDQUFDLElBQUksQ0FDWixDQUFDO1FBQ0YsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUMsY0FBYyxDQUFDO1FBRXJFLElBQUksY0FBYyxJQUFJLE9BQU8sQ0FBQyxlQUFlO1lBQ3pDLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzs7WUFDL0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRW5ELElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFTyx5QkFBeUI7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVPLDJCQUEyQjtRQUMvQixJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxFQUFFO1lBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztTQUN0RTtRQUVELElBQUksSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksRUFBRTtZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLG9EQUFvRCxDQUFDLENBQUM7U0FDekU7SUFDTCxDQUFDO0lBRU8sU0FBUyxDQUFDLE1BQWU7UUFDN0IsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8sWUFBWTtRQUNoQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBTyxDQUFDO1FBQzVDLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFTywwQkFBMEI7UUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWTtZQUFFLE9BQU87UUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN6QyxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtnQkFDekQsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQ3BCO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sYUFBYTtRQUNqQixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTyxZQUFZO1FBQ2hCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU8sYUFBYTtRQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxNQUFvQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQ3pDLElBQUksQ0FBQyxXQUE0QyxFQUNqRCxNQUFNLENBQ1QsQ0FBQztJQUNOLENBQUM7SUFFTywyQkFBMkI7UUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVPLHdCQUF3QjtRQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksR0FBRyx1QkFBdUIsQ0FBQztRQUNwRCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQ2hDLEdBQUcsRUFBRTtZQUNELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztZQUNqQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUN4RSxDQUFDLEVBQ0QsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQzNDLENBQUM7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksR0FBRyxHQUFHLEVBQUU7WUFDN0IsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDO1FBRUYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQ25CLFVBQVUsRUFDViw4Q0FBOEMsQ0FDakQsQ0FBQztJQUNOLENBQUM7SUFFTyxnQ0FBZ0M7UUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMvQixDQUFDLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksR0FBRyxHQUFHLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMvQixDQUFDLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FDbkIsVUFBVSxFQUNWLDREQUE0RCxDQUMvRCxDQUFDO0lBQ04sQ0FBQztJQUVPLFFBQVEsQ0FBQyxJQUFxQjtRQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVwQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLElBQUksSUFBSSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztTQUNuRTtRQUVELE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7UUFFdEQsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLFVBQVU7Z0JBQ1gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7Z0JBQ2xDLE1BQU07WUFDVixLQUFLLFFBQVE7Z0JBQ1QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDO2dCQUM1RCxNQUFNO1lBQ1YsS0FBSyxTQUFTO2dCQUNWLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDaEMsTUFBTTtZQUNWLEtBQUssVUFBVTtnQkFDWCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2hDLE1BQU07WUFDVjtnQkFDSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztnQkFDbEMsTUFBTTtTQUNiO1FBRUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV4QixJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxTQUFTLENBQzdELENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDUixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXpCLElBQUksT0FBTyxJQUFJLElBQUksRUFBRTtnQkFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQ3ZCLFVBQVUsRUFDVixpQ0FBaUMsQ0FDcEMsQ0FBQztnQkFDRixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDckMsT0FBTzthQUNWO1lBRUQsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksRUFBRTtnQkFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztnQkFDakUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ3JDLE9BQU87YUFDVjtZQUVELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRXhDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFO2dCQUNqQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDO2FBQ25DO2lCQUFNO2dCQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDNUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDO2FBQ25EO1lBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRTFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFekIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELENBQUMsRUFDRCxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUN4QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxHQUFHLGVBQWUsQ0FBQztZQUNoRCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxDQUFDLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFTyxZQUFZLENBQUMsU0FBa0I7UUFDbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDbkYsQ0FBQzs7O1lBdmlCSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGFBQWE7Z0JBQ3ZCLHFyaEJBQWdEOzthQUVuRDs7O1lBcEJRLHVCQUF1QjtZQVN2QixrQkFBa0I7WUFuQnZCLFVBQVU7WUFxQkwsY0FBYztZQVZkLGtCQUFrQjs7OzBCQXFCdEIsS0FBSzttQkFJTCxLQUFLOytCQUNMLEtBQUs7dUJBQ0wsS0FBSzt3Q0FDTCxLQUFLOzhCQUNMLEtBQUs7NEJBSUwsTUFBTTtxQkFRTixTQUFTLFNBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs0QkF3QnJDLFlBQVksU0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBJbnB1dCxcclxuICAgIE91dHB1dCxcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIE9uSW5pdCxcclxuICAgIEhvc3RMaXN0ZW5lcixcclxuICAgIEVsZW1lbnRSZWYsXHJcbiAgICBWaWV3Q2hpbGQsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0RHJhd2VyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XHJcblxyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBJY0NvbmZpcm1hRGlhbG9nU2VydmljZSB9IGZyb20gJ0Bpbm92YW1vYmlsL2ljLWNvbmZpcm1hLWRpYWxvZyc7XHJcbmltcG9ydCB7IEljbVNuYWNrQmFyU2VydmljZSB9IGZyb20gJ0Bpbm92YW1vYmlsL2ljbS1zbmFja2Jhcic7XHJcblxyXG5pbXBvcnQgeyBJRGF0YUVudGlkYWRlUGFnaW5hZGEgfSBmcm9tICcuL2NvbnRyYXRvL0lEYXRhRW50aWRhZGVQYWdpbmFkYSc7XHJcbmltcG9ydCB7IElEYXRhQmFyQmluZFNlcnZpY2UgfSBmcm9tICcuL2NvbnRyYXRvL0lEYXRhQmFyU2VydmljZSc7XHJcbmltcG9ydCB7IEVTdGF0dXMgfSBmcm9tICcuL2VudW0vZXN0YXR1cyc7XHJcbmltcG9ydCB7IEVFdmVudG9DbGljayB9IGZyb20gJy4vZW51bS9lZXZlbnRvY2xpY2snO1xyXG5pbXBvcnQgeyBJRGF0YWJhckJpbmRPbkNsaWNrU2VydmljZSB9IGZyb20gJy4vY29udHJhdG8vSURhdGFCYXJCaW5kT25DbGlja1NlcnZpY2UnO1xyXG5pbXBvcnQgeyBJRGF0YWJhckJpbmRTdGF0dXNTZXJ2aWNlIH0gZnJvbSAnLi4vcHVibGljLWFwaSc7XHJcbmltcG9ydCB7IEVycm9yRGlhbG9nU2VydmljZSB9IGZyb20gJy4uL2NvbXBvbmVudHMvZGlhbG9ncy9lcnJvci1kaWFsb2cvc2VydmljZS9lcnJvci1kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7IEFDQU9fUEFHSU5BQ0FPIH0gZnJvbSAnLi9jb25zdGFudHMvaWMtZGF0YWJhci5jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBEYXRhYmFyU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvaWMtZGF0YWJhci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSWNEYXRhYmFyUmV2ZXJ0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9pYy1kYXRhYmFyLXJldmVydGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJRGF0YUJhclJldmVydGVyU2VydmljZSB9IGZyb20gJy4vY29udHJhdG8vSURhdGFCYXJSZXZlcnRlclNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEYXRhQmFyQ29uZmlnQm90b2VzU2VydmljZSB9IGZyb20gJy4vY29udHJhdG8vRGF0YUJhckNvbmZpZ0JvdG9lc1NlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2ljLWRhdGEtYmFyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi92aWV3L2ljLWRhdGEtYmFyLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3ZpZXcvaWMtZGF0YS1iYXIuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGFCYXJDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBzZXJ2aWNvQmluZDpcclxuICAgICAgICB8IElEYXRhQmFyQmluZFNlcnZpY2U8VD5cclxuICAgICAgICB8IElEYXRhYmFyQmluZFN0YXR1c1NlcnZpY2U8VD5cclxuICAgICAgICB8IElEYXRhYmFyQmluZE9uQ2xpY2tTZXJ2aWNlPFQ+O1xyXG4gICAgQElucHV0KCkgZm9ybTogRm9ybUdyb3VwO1xyXG4gICAgQElucHV0KCkgZW50aWRhZGVQYWdpbmFkYTogSURhdGFFbnRpZGFkZVBhZ2luYWRhPFQ+O1xyXG4gICAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIHNlcnZpY29Db25maWd1cmFjYW9Cb3RvZXM6IERhdGFCYXJDb25maWdCb3RvZXNTZXJ2aWNlO1xyXG4gICAgQElucHV0KCkgc2V0IHNlcnZpY29SZXZlcnRlcihzZXJ2aWNvOiBJRGF0YUJhclJldmVydGVyU2VydmljZTxUPikge1xyXG4gICAgICAgIHRoaXMuX3NlcnZpY29SZXZlcnRlciA9IHNlcnZpY287XHJcbiAgICB9XHJcblxyXG4gICAgQE91dHB1dCgpIHN0YXR1c0NoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEVTdGF0dXM+KCk7XHJcblxyXG4gICAgcHVibGljIHN0YXR1czogRVN0YXR1cztcclxuICAgIHB1YmxpYyBFU3RhdHVzID0gRVN0YXR1cztcclxuICAgIHB1YmxpYyBlbVByb2dyZXNzbyA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBfc2Vydmljb1JldmVydGVyOiBJRGF0YUJhclJldmVydGVyU2VydmljZTxUPjtcclxuICAgIHByaXZhdGUgJHNldFN0YXR1czogU3Vic2NyaXB0aW9uO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ2RyYXdlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBkcmF3ZXI6IE1hdERyYXdlcjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9kaWFsb2c6IEljQ29uZmlybWFEaWFsb2dTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX2RpYWxvZ0Vycm86IEVycm9yRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgICAgIHByaXZhdGUgX2RhdGFiYXJTZXJ2aWNlOiBEYXRhYmFyU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9zbmFja0JhclNlcnZpY2U6IEljbVNuYWNrQmFyU2VydmljZVxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudmFsaWRhclByb3BlcnRzT2JyaWdhdG9yaWFzKCk7XHJcbiAgICAgICAgdGhpcy5zZXRQcm9ncmVzc28oZmFsc2UpO1xyXG4gICAgICAgIHRoaXMubm92YVBlc3F1aXNhKCk7XHJcbiAgICAgICAgdGhpcy5fc3VibWV0ZXJGb3JtdWxhcmlvT25FbnRlcigpO1xyXG4gICAgICAgIHRoaXMub2JzZXJ2YXJTZXRTdGF0dXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5zZXJ2aWNvQmluZC5vbkNsaWNrRW50ZXIpIHRoaXMuc2Vydmljb0JpbmQub25DbGlja0VudGVyLnVuc3Vic2NyaWJlKCk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLiRzZXRTdGF0dXMpIHRoaXMuJHNldFN0YXR1cy51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICAgIGZlY2hhclNpZGVuYXYoZXZlbnQpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmRyYXdlci5jbG9zZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBpbnNlcmluZG9PdUVkaXRhbmRvKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gRVN0YXR1cy5pbnNlcmluZG8gfHwgdGhpcy5zdGF0dXMgPT09IEVTdGF0dXMuZWRpdGFuZG87XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRlc2FiaWxpdGFyQm90YW9Nb2RvVGFiZWxhKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzID09IEVTdGF0dXMuaW5zZXJpbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzID09IEVTdGF0dXMuZWRpdGFuZG8gfHxcclxuICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyB8fFxyXG4gICAgICAgICAgICB0aGlzLmZvcm0uaW52YWxpZCB8fFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY29Db25maWd1cmFjYW9Cb3RvZXM/LmRlc2FiaWxpdGFyQm90YW9Nb2RvVGFiZWxhKClcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZXNhYmlsaXRhckJvdGFvUGVzcXVpc2FyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzID09IEVTdGF0dXMuaW5zZXJpbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzID09IEVTdGF0dXMuZWRpdGFuZG8gfHxcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5kYWRvc0NhcnJlZ2Fkb3MgfHxcclxuICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyB8fFxyXG4gICAgICAgICAgICB0aGlzLmZvcm0uaW52YWxpZCB8fFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY29Db25maWd1cmFjYW9Cb3RvZXM/LmRlc2FiaWxpdGFyQm90YW9QZXNxdWlzYXIoKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRlc2FiaWxpdGFyQm90YW9SZXZlcnRlcigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLm5vdmFQZXNxdWlzYSB8fFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmV4ZWN1dGFyQWNhbyB8fFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmRhZG9zQ2FycmVnYWRvcyB8fFxyXG4gICAgICAgICAgICB0aGlzLmVtUHJvZ3Jlc3NvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc2Vydmljb0NvbmZpZ3VyYWNhb0JvdG9lcz8uZGVzYWJpbGl0YXJCb3Rhb1JldmVydGVyKClcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZXNhYmlsaXRhckJvdGFvQWRpY2lvbmFyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzID09IEVTdGF0dXMuZWRpdGFuZG8gfHxcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5pbnNlcmluZG8gfHxcclxuICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyB8fFxyXG4gICAgICAgICAgICB0aGlzLmRpc2FibGVkIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc2Vydmljb0NvbmZpZ3VyYWNhb0JvdG9lcz8uZGVzYWJpbGl0YXJCb3Rhb0FkaWNpb25hcigpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVzYWJpbGl0YXJCb3Rhb0VkaXRhcigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmluc2VyaW5kbyB8fFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLm5vdmFQZXNxdWlzYSB8fFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmV4ZWN1dGFyQWNhbyB8fFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLnBlc3F1aXNhbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzID09IEVTdGF0dXMuZWRpdGFuZG8gfHxcclxuICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyB8fFxyXG4gICAgICAgICAgICB0aGlzLmRpc2FibGVkIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc2Vydmljb0NvbmZpZ3VyYWNhb0JvdG9lcz8uZGVzYWJpbGl0YXJCb3Rhb0VkaXRhcigpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVzYWJpbGl0YXJCb3Rhb1JlbW92ZXIoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgIXRoaXMuZW50aWRhZGVQYWdpbmFkYT8uZW50aWRhZGUgfHxcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgIT0gRVN0YXR1cy5kYWRvc0NhcnJlZ2Fkb3MgfHxcclxuICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyB8fFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY29Db25maWd1cmFjYW9Cb3RvZXM/LmRlc2FiaWxpdGFyQm90YW9SZW1vdmVyKClcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZXNhYmlsaXRhckJvdGFvU2FsdmFyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHRoaXMuZm9ybT8uaW52YWxpZCB8fFxyXG4gICAgICAgICAgICAodGhpcy5zdGF0dXMgIT0gRVN0YXR1cy5pbnNlcmluZG8gJiYgdGhpcy5zdGF0dXMgIT0gRVN0YXR1cy5lZGl0YW5kbykgfHxcclxuICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyB8fFxyXG4gICAgICAgICAgICB0aGlzLmRpc2FibGVkIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc2Vydmljb0NvbmZpZ3VyYWNhb0JvdG9lcz8uZGVzYWJpbGl0YXJCb3Rhb1NhbHZhcigpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVzYWJpbGl0YXJCb3RvZXNQYWdpbmFjYW9SZXRyb2NlZGVyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHRoaXMuaW5zZXJpbmRvT3VFZGl0YW5kbyB8fFxyXG4gICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEucG9zaWNhbyA8PSAxIHx8XHJcbiAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc29cclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZXNhYmlsaXRhckJvdG9lc1BhZ2luYWNhb0F2YW5jYXIoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgdGhpcy5pbnNlcmluZG9PdUVkaXRhbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS5wb3NpY2FvID49IHRoaXMuZW50aWRhZGVQYWdpbmFkYS50b3RhbCB8fFxyXG4gICAgICAgICAgICB0aGlzLmVtUHJvZ3Jlc3NvXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkNsaWNrUmV2ZXJ0ZXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZXhpYmlyRGlhbG9nQ29uZmlybWFjYW9SZXZlcnRlcigpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQ2xpY2tNb2RvVGFiZWxhKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2VtaXRpckV2ZW50b0NsaWNrKEVFdmVudG9DbGljay5vbkNsaWNrTW9kb1RhYmVsYSk7XHJcbiAgICB9XHJcblxyXG4gICAgb25DbGlja05vdmFQZXNxdWlzYSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2sub25DbGlja05vdmFQZXNxdWlzYSk7XHJcbiAgICAgICAgdGhpcy5ub3ZhUGVzcXVpc2EoKTtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2suYWZ0ZXJDbGlja05vdmFQZXNxdWlzYSk7XHJcbiAgICB9XHJcblxyXG4gICAgbm92YVBlc3F1aXNhKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmhhYmlsaXRhckZvcm0odGhpcy5mb3JtKTtcclxuICAgICAgICB0aGlzLmZvcm0ucmVzZXQoeyBlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZSB9KTtcclxuICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEuZW50aWRhZGUgPSB0aGlzLmZvcm0udmFsdWU7XHJcbiAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8gPSAwO1xyXG4gICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS50b3RhbCA9IDA7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5ub3ZhUGVzcXVpc2EpO1xyXG4gICAgfVxyXG5cclxuICAgIHBlc3F1aXNhcigpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5fc2V0RGFkb3NBbnRlcmlvcmVzKCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5wZXNxdWlzYW5kbyk7XHJcbiAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLmVudGlkYWRlID0gW10uY29uY2F0KHRoaXMuX2dldEVudGlkYWRlKCkpO1xyXG4gICAgICAgIHRoaXMuX3BhZ2luYXIoKTtcclxuICAgICAgICB0aGlzLmRyYXdlci5jbG9zZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGluc2VyaXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLm9uQ2xpY2tJbnNlcmlyKTtcclxuICAgICAgICB0aGlzLl9jbGlja0luc2VyaXIoKTtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2suYWZ0ZXJDbGlja0luc2VyaXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGVkaXRhcigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2sub25DbGlja0VkaXRhcik7XHJcbiAgICAgICAgdGhpcy5fY2xpY2tFZGl0YXIoKTtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2suYWZ0ZXJDbGlja0VkaXRhcik7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlcigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2sub25DbGlja1JlbW92ZXIpO1xyXG4gICAgICAgIHRoaXMuX2NsaWNrUmVtb3ZlcigpO1xyXG4gICAgICAgIHRoaXMuX2VtaXRpckV2ZW50b0NsaWNrKEVFdmVudG9DbGljay5hZnRlckNsaWNrUmVtb3Zlcik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJveGltbygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9wYWdpbmFyKCdwcm94aW1vJyk7XHJcbiAgICB9XHJcblxyXG4gICAgYW50ZXJpb3IoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcGFnaW5hcignYW50ZXJpb3InKTtcclxuICAgIH1cclxuXHJcbiAgICB1bHRpbW8oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcGFnaW5hcigndWx0aW1vJyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpbWVpcm8oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcGFnaW5hcigncHJpbWVpcm8nKTtcclxuICAgIH1cclxuXHJcbiAgICBzYWx2YXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLm9uQ2xpY2tTYWx2YXIpO1xyXG5cclxuICAgICAgICBzd2l0Y2ggKHRoaXMuc3RhdHVzKSB7XHJcbiAgICAgICAgICAgIGNhc2UgRVN0YXR1cy5pbnNlcmluZG86XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9pbnNlcmlyKCk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICAgIGNhc2UgRVN0YXR1cy5lZGl0YW5kbzpcclxuICAgICAgICAgICAgICAgIHRoaXMuX2VkaXRhcigpO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2luc2VyaXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5zYWx2YW5kbyk7XHJcbiAgICAgICAgdGhpcy5zZXRQcm9ncmVzc28odHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5zZXJ2aWNvQmluZFxyXG4gICAgICAgICAgICAuY3JpYXIoKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2suYWZ0ZXJDbGlja1NhbHZhcik7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAoc3VjY2VzcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3NvKGZhbHNlKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc25hY2tCYXJTZXJ2aWNlLmFicmlyU25hY2tCYXJTdWNlc3NvKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnUmVnaXN0cm8gc2Fsdm8gY29tIHN1Y2Vzc28hJ1xyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHN1Y2Nlc3MpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLmRhZG9zQ2FycmVnYWRvcyk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZHJhd2VyLmNsb3NlKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmRlc2FiaWxpdGFyRm9ybSh0aGlzLmZvcm0pO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFByb2dyZXNzbyhmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5pbnNlcmluZG8pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2VkaXRhcigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLnNhbHZhbmRvKTtcclxuICAgICAgICB0aGlzLnNldFByb2dyZXNzbyh0cnVlKTtcclxuICAgICAgICB0aGlzLnNlcnZpY29CaW5kXHJcbiAgICAgICAgICAgIC5lZGl0YXIoKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2suYWZ0ZXJDbGlja1NhbHZhcik7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAoc3VjY2VzcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3NuYWNrQmFyU2VydmljZS5hYnJpclNuYWNrQmFyU3VjZXNzbyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ1JlZ2lzdHJvIGVkaXRhZG8gY29tIHN1Y2Vzc28hJ1xyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHN1Y2Nlc3MpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFByb2dyZXNzbyhmYWxzZSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMuZGFkb3NDYXJyZWdhZG9zKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZGF0YWJhclNlcnZpY2UuZGVzYWJpbGl0YXJGb3JtKHRoaXMuZm9ybSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZHJhd2VyLmNsb3NlKCk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3NvKGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLmVkaXRhbmRvKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIG9ic2VydmFyU2V0U3RhdHVzKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICgodGhpcy5zZXJ2aWNvQmluZCBhcyBJRGF0YWJhckJpbmRTdGF0dXNTZXJ2aWNlPFQ+KS5zZXRTdGF0dXMpIHtcclxuICAgICAgICAgICAgdGhpcy4kc2V0U3RhdHVzID0gKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNvQmluZCBhcyBJRGF0YWJhckJpbmRTdGF0dXNTZXJ2aWNlPFQ+XHJcbiAgICAgICAgICAgICkuc2V0U3RhdHVzLnN1YnNjcmliZSgoc3RhdHVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKHN0YXR1cykge1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgRVN0YXR1cy5lZGl0YW5kbzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lZGl0YXIoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIEVTdGF0dXMuaW5zZXJpbmRvOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluc2VyaXIoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIEVTdGF0dXMucGVzcXVpc2FuZG86XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucGVzcXVpc2FyKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgRVN0YXR1cy5ub3ZhUGVzcXVpc2E6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm92YVBlc3F1aXNhKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgRVN0YXR1cy5yZW1vdmVuZG86XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlcigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIEVTdGF0dXMuZGFkb3NDYXJyZWdhZG9zOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YXR1cyA9IEVTdGF0dXMuZGFkb3NDYXJyZWdhZG9zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVtUHJvZ3Jlc3NvID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZXRvcm5hclNlcnZpY29SZXZlcnRlcigpOiBJRGF0YUJhclJldmVydGVyU2VydmljZTxUPiB7XHJcbiAgICAgICAgaWYgKHRoaXMuX3NlcnZpY29SZXZlcnRlciA9PSBudWxsKVxyXG4gICAgICAgICAgICB0aGlzLl9zZXJ2aWNvUmV2ZXJ0ZXIgPSBuZXcgSWNEYXRhYmFyUmV2ZXJ0ZXJTZXJ2aWNlKCk7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLl9zZXJ2aWNvUmV2ZXJ0ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc2V0RGFkb3NBbnRlcmlvcmVzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucmV0b3JuYXJTZXJ2aWNvUmV2ZXJ0ZXIoKS5zZXREYWRvc0FudGVyaW9yZXMoXHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzLFxyXG4gICAgICAgICAgICB0aGlzLmZvcm0sXHJcbiAgICAgICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfcmV2ZXJ0ZXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLm9uQ2xpY2tSZXZlcnRlcik7XHJcbiAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhID0gdGhpcy5yZXRvcm5hclNlcnZpY29SZXZlcnRlcigpLnJlc3RhdXJhckRhZG9zQW50ZXJpb3JlcyhcclxuICAgICAgICAgICAgdGhpcy5mb3JtXHJcbiAgICAgICAgKTtcclxuICAgICAgICBjb25zdCBzdGF0dXNBbnRlcmlvciA9IHRoaXMucmV0b3JuYXJTZXJ2aWNvUmV2ZXJ0ZXIoKS5zdGF0dXNBbnRlcmlvcjtcclxuXHJcbiAgICAgICAgaWYgKHN0YXR1c0FudGVyaW9yID09IEVTdGF0dXMuZGFkb3NDYXJyZWdhZG9zKVxyXG4gICAgICAgICAgICB0aGlzLl9kYXRhYmFyU2VydmljZS5kZXNhYmlsaXRhckZvcm0odGhpcy5mb3JtKTtcclxuICAgICAgICBlbHNlIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmhhYmlsaXRhckZvcm0odGhpcy5mb3JtKTtcclxuXHJcbiAgICAgICAgdGhpcy5zZXRTdGF0dXMoc3RhdHVzQW50ZXJpb3IpO1xyXG4gICAgICAgIHRoaXMuX2VtaXRpckV2ZW50b0NsaWNrKEVFdmVudG9DbGljay5hZnRlckNsaWNrUmV2ZXJ0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Jlc2V0YXJDb250YWRvclBhZ2luYWNhbygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEucG9zaWNhbyA9IDA7XHJcbiAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnRvdGFsID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHZhbGlkYXJQcm9wZXJ0c09icmlnYXRvcmlhcygpOiBhbnkge1xyXG4gICAgICAgIGlmICh0aGlzLnNlcnZpY29CaW5kID09IG51bGwpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCfDiSBvYnJpZ2F0w7NyaW8gdGVyIHVtIHNlcnZpw6dvIGRlIGJpbmQgdmluY3VsYWRvLicpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZW50aWRhZGVQYWdpbmFkYSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignw4kgb2JyaWdhdMOzcmlvIHRlciB1bWEgZW50aWRhZGUgcGFnaW5hZGEgdmluY3VsYWRhLicpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHNldFN0YXR1cyhzdGF0dXM6IEVTdGF0dXMpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXN0YXR1cykge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc3RhdHVzID0gc3RhdHVzO1xyXG4gICAgICAgIHRoaXMuc3RhdHVzQ2hhbmdlZC5lbWl0KHRoaXMuc3RhdHVzKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9nZXRFbnRpZGFkZSgpOiBUIHtcclxuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmZvcm0uZ2V0UmF3VmFsdWUoKSBhcyBUO1xyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc3VibWV0ZXJGb3JtdWxhcmlvT25FbnRlcigpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuc2Vydmljb0JpbmQub25DbGlja0VudGVyKSByZXR1cm47XHJcbiAgICAgICAgdGhpcy5zZXJ2aWNvQmluZC5vbkNsaWNrRW50ZXIuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuc3RhdHVzID09PSBFU3RhdHVzLm5vdmFQZXNxdWlzYSAmJiB0aGlzLmZvcm0udmFsaWQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucGVzcXVpc2FyKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9jbGlja0luc2VyaXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fc2V0RGFkb3NBbnRlcmlvcmVzKCk7XHJcbiAgICAgICAgdGhpcy5fcmVzZXRhckNvbnRhZG9yUGFnaW5hY2FvKCk7XHJcbiAgICAgICAgdGhpcy5fZGF0YWJhclNlcnZpY2UuaGFiaWxpdGFyRm9ybSh0aGlzLmZvcm0pO1xyXG4gICAgICAgIHRoaXMuZm9ybS5yZXNldCh7IGVtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlIH0pO1xyXG4gICAgICAgIHRoaXMuZm9ybS5tYXJrQWxsQXNUb3VjaGVkKCk7XHJcbiAgICAgICAgdGhpcy5kcmF3ZXIuY2xvc2UoKTtcclxuICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLmluc2VyaW5kbyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfY2xpY2tFZGl0YXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fc2V0RGFkb3NBbnRlcmlvcmVzKCk7XHJcbiAgICAgICAgdGhpcy5fZGF0YWJhclNlcnZpY2UuaGFiaWxpdGFyRm9ybSh0aGlzLmZvcm0pO1xyXG5cclxuICAgICAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xyXG4gICAgICAgIHRoaXMuZHJhd2VyLmNsb3NlKCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5lZGl0YW5kbyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfY2xpY2tSZW1vdmVyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMucmVtb3ZlbmRvKTtcclxuICAgICAgICB0aGlzLl9leGliaXJEaWFsb2dDb25maXJtYWNhbygpO1xyXG4gICAgICAgIHRoaXMuZHJhd2VyLmNsb3NlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfZW1pdGlyRXZlbnRvQ2xpY2soZXZlbnRvOiBFRXZlbnRvQ2xpY2spOiB2b2lkIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YWJhclNlcnZpY2UuZW1pdGlyRXZlbnRvQ2xpY2s8VD4oXHJcbiAgICAgICAgICAgIHRoaXMuc2Vydmljb0JpbmQgYXMgSURhdGFiYXJCaW5kT25DbGlja1NlcnZpY2U8VD4sXHJcbiAgICAgICAgICAgIGV2ZW50b1xyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfYWNhb0Nsb3NlRGlhbG9nQ29uZmlybWFjYW8oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nLmVtUHJvZ3Jlc3NvID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nLmNsb3NlRGlhbG9nKCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5kYWRvc0NhcnJlZ2Fkb3MpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2V4aWJpckRpYWxvZ0NvbmZpcm1hY2FvKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2RpYWxvZy5hY2FvTWVuc2FnZW0gPSAnUmVtb3ZlbmRvIHJlZ2lzdHJvLi4uJztcclxuICAgICAgICB0aGlzLl9kaWFsb2cuYWNhb09rID0gKCkgPT5cclxuICAgICAgICAgICAgdGhpcy5zZXJ2aWNvQmluZC5yZW1vdmVyKCkuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2RpYWxvZy5jbG9zZURpYWxvZygpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubm92YVBlc3F1aXNhKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZGlhbG9nLmVtUHJvZ3Jlc3NvID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc25hY2tCYXJTZXJ2aWNlLmFicmlyU25hY2tCYXJTdWNlc3NvKCdSZW1vdmlkbyBjb20gc3VjZXNzbyEnKTtcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAoKSA9PiB0aGlzLl9hY2FvQ2xvc2VEaWFsb2dDb25maXJtYWNhbygpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nLmFjYW9DYW5jZWxhciA9ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fYWNhb0Nsb3NlRGlhbG9nQ29uZmlybWFjYW8oKTtcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLl9kaWFsb2cub3BlbkRpYWxvZyhcclxuICAgICAgICAgICAgJ0F0ZW7Dp8OjbyEnLFxyXG4gICAgICAgICAgICAnVm9jw6ogcmVhbG1lbnRlIGRlc2VqYSBleGNsdWlyIGVzdGUgcmVnaXN0cm8/J1xyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfZXhpYmlyRGlhbG9nQ29uZmlybWFjYW9SZXZlcnRlcigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9kaWFsb2cuYWNhb09rID0gKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9yZXZlcnRlcigpO1xyXG4gICAgICAgICAgICB0aGlzLl9kaWFsb2cuZW1Qcm9ncmVzc28gPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5fZGlhbG9nLmNsb3NlRGlhbG9nKCk7XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5fZGlhbG9nLmFjYW9DYW5jZWxhciA9ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fZGlhbG9nLmNsb3NlRGlhbG9nKCk7XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5fZGlhbG9nLm9wZW5EaWFsb2coXHJcbiAgICAgICAgICAgICdBdGVuw6fDo28hJyxcclxuICAgICAgICAgICAgJ0FzIGFsdGVyYcOnw7VlcyByZWFsaXphZGFzIHNlcsOjbyBwZXJkaWRhcy4gRGVzZWphIGNvbnRpbnVhcj8nXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9wYWdpbmFyKGFjYW8/OiBBQ0FPX1BBR0lOQUNBTyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMucGVzcXVpc2FuZG8pO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5lbnRpZGFkZVBhZ2luYWRhLmVudGlkYWRlID09IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLmVudGlkYWRlID0gW10uY29uY2F0KHRoaXMuX2dldEVudGlkYWRlKCkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgcG9zaWNhb0FudGVyaW9yID0gdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW87XHJcblxyXG4gICAgICAgIHN3aXRjaCAoYWNhbykge1xyXG4gICAgICAgICAgICBjYXNlICdwcmltZWlybyc6XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEucG9zaWNhbyA9IDE7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAndWx0aW1vJzpcclxuICAgICAgICAgICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS5wb3NpY2FvID0gdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnRvdGFsO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ3Byb3hpbW8nOlxyXG4gICAgICAgICAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8rKztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdhbnRlcmlvcic6XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEucG9zaWNhby0tO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEucG9zaWNhbyA9IDA7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3NvKHRydWUpO1xyXG5cclxuICAgICAgICB0aGlzLnNlcnZpY29CaW5kLmxpc3RhclBhZ2luYWNhbyh0aGlzLmVudGlkYWRlUGFnaW5hZGEpLnN1YnNjcmliZShcclxuICAgICAgICAgICAgKHN1Y2Nlc3MpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3NvKGZhbHNlKTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoc3VjY2VzcyA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZGlhbG9nRXJyby5vcGVuRGlhbG9nKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnQXRlbsOnw6NvIScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdOZW5odW0gcmVnaXN0cm8gZm9pIGVuY29udHJhZG8uJ1xyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5ub3ZhUGVzcXVpc2EpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoc3VjY2Vzcy5lbnRpZGFkZSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZGF0YWJhclNlcnZpY2UucmVzZXRGb3JtKHRoaXMuZm9ybSwgdGhpcy5lbnRpZGFkZVBhZ2luYWRhKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLm5vdmFQZXNxdWlzYSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMuZGFkb3NDYXJyZWdhZG9zKTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZW50aWRhZGVQYWdpbmFkYS5lbnRpZGFkZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYSA9IHN1Y2Nlc3M7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS50b3RhbCA9IHN1Y2Nlc3MudG90YWw7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8gPSBzdWNjZXNzLnBvc2ljYW87XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoc3VjY2Vzcy5lbnRpZGFkZVswXSk7XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRQcm9ncmVzc28oZmFsc2UpO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmRlc2FiaWxpdGFyRm9ybSh0aGlzLmZvcm0pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ2Vycm8gcGFnaW5hw6fDo28nLCBlcnJvcik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLmRhZG9zQ2FycmVnYWRvcyk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEucG9zaWNhbyA9IHBvc2ljYW9BbnRlcmlvcjtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3NvKGZhbHNlKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmRlc2FiaWxpdGFyRm9ybSh0aGlzLmZvcm0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHNldFByb2dyZXNzbyhwcm9ncmVzc286IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmVtUHJvZ3Jlc3NvID0gdGhpcy5fZGF0YWJhclNlcnZpY2UuZGVmaW5pclByb2dyZXNzbyh0aGlzLmZvcm0sIHByb2dyZXNzbyk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
433
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWMtZGF0YS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L0FXUy9jb2RlY29taXQvYmlibGlvdGVjYS1hbmd1bGFyL3Byb2plY3RzL2ljLWRhdGFiYXItbGliL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9pYy1kYXRhLWJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFFWixZQUFZLEVBQ1osVUFBVSxFQUNWLFNBQVMsR0FFWixNQUFNLGVBQWUsQ0FBQztBQUt2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFJOUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUduRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUVyRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFTbEYsTUFBTSxPQUFPLGdCQUFnQjtJQXVCekIsWUFDWSxPQUFnQyxFQUNoQyxXQUErQixFQUMvQixXQUF1QixFQUN2QixlQUErQixFQUMvQixnQkFBb0M7UUFKcEMsWUFBTyxHQUFQLE9BQU8sQ0FBeUI7UUFDaEMsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBQy9CLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW9CO1FBckJ2QyxhQUFRLEdBQUcsS0FBSyxD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RU8sWUFBWSxDQUFDLFNBQWtCO1FBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ25GLENBQUM7OztZQXZpQkosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxhQUFhO2dCQUN2QiwycmlCQUFnRDs7YUFFbkQ7OztZQXBCUSx1QkFBdUI7WUFTdkIsa0JBQWtCO1lBbkJ2QixVQUFVO1lBcUJMLGNBQWM7WUFWZCxrQkFBa0I7OzswQkFxQnRCLEtBQUs7bUJBSUwsS0FBSzsrQkFDTCxLQUFLO3VCQUNMLEtBQUs7d0NBQ0wsS0FBSzs4QkFDTCxLQUFLOzRCQUlMLE1BQU07cUJBUU4sU0FBUyxTQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7NEJBd0JyQyxZQUFZLFNBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgSW5wdXQsXHJcbiAgICBPdXRwdXQsXHJcbiAgICBFdmVudEVtaXR0ZXIsXHJcbiAgICBPbkluaXQsXHJcbiAgICBIb3N0TGlzdGVuZXIsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgVmlld0NoaWxkLFxyXG4gICAgT25EZXN0cm95LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdERyYXdlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xyXG5cclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgSWNDb25maXJtYURpYWxvZ1NlcnZpY2UgfSBmcm9tICdAaW5vdmFtb2JpbC9pYy1jb25maXJtYS1kaWFsb2cnO1xyXG5pbXBvcnQgeyBJY21TbmFja0JhclNlcnZpY2UgfSBmcm9tICdAaW5vdmFtb2JpbC9pY20tc25hY2tiYXInO1xyXG5cclxuaW1wb3J0IHsgSURhdGFFbnRpZGFkZVBhZ2luYWRhIH0gZnJvbSAnLi9jb250cmF0by9JRGF0YUVudGlkYWRlUGFnaW5hZGEnO1xyXG5pbXBvcnQgeyBJRGF0YUJhckJpbmRTZXJ2aWNlIH0gZnJvbSAnLi9jb250cmF0by9JRGF0YUJhclNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFU3RhdHVzIH0gZnJvbSAnLi9lbnVtL2VzdGF0dXMnO1xyXG5pbXBvcnQgeyBFRXZlbnRvQ2xpY2sgfSBmcm9tICcuL2VudW0vZWV2ZW50b2NsaWNrJztcclxuaW1wb3J0IHsgSURhdGFiYXJCaW5kT25DbGlja1NlcnZpY2UgfSBmcm9tICcuL2NvbnRyYXRvL0lEYXRhQmFyQmluZE9uQ2xpY2tTZXJ2aWNlJztcclxuaW1wb3J0IHsgSURhdGFiYXJCaW5kU3RhdHVzU2VydmljZSB9IGZyb20gJy4uL3B1YmxpYy1hcGknO1xyXG5pbXBvcnQgeyBFcnJvckRpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi9jb21wb25lbnRzL2RpYWxvZ3MvZXJyb3ItZGlhbG9nL3NlcnZpY2UvZXJyb3ItZGlhbG9nLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBQ0FPX1BBR0lOQUNBTyB9IGZyb20gJy4vY29uc3RhbnRzL2ljLWRhdGFiYXIuY29uc3RhbnRzJztcclxuaW1wb3J0IHsgRGF0YWJhclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2ljLWRhdGFiYXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEljRGF0YWJhclJldmVydGVyU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvaWMtZGF0YWJhci1yZXZlcnRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSURhdGFCYXJSZXZlcnRlclNlcnZpY2UgfSBmcm9tICcuL2NvbnRyYXRvL0lEYXRhQmFyUmV2ZXJ0ZXJTZXJ2aWNlJztcclxuaW1wb3J0IHsgRGF0YUJhckNvbmZpZ0JvdG9lc1NlcnZpY2UgfSBmcm9tICcuL2NvbnRyYXRvL0RhdGFCYXJDb25maWdCb3RvZXNTZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdpYy1kYXRhLWJhcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdmlldy9pYy1kYXRhLWJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi92aWV3L2ljLWRhdGEtYmFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhQmFyQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgc2Vydmljb0JpbmQ6XHJcbiAgICAgICAgfCBJRGF0YUJhckJpbmRTZXJ2aWNlPFQ+XHJcbiAgICAgICAgfCBJRGF0YWJhckJpbmRTdGF0dXNTZXJ2aWNlPFQ+XHJcbiAgICAgICAgfCBJRGF0YWJhckJpbmRPbkNsaWNrU2VydmljZTxUPjtcclxuICAgIEBJbnB1dCgpIGZvcm06IEZvcm1Hcm91cDtcclxuICAgIEBJbnB1dCgpIGVudGlkYWRlUGFnaW5hZGE6IElEYXRhRW50aWRhZGVQYWdpbmFkYTxUPjtcclxuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBzZXJ2aWNvQ29uZmlndXJhY2FvQm90b2VzOiBEYXRhQmFyQ29uZmlnQm90b2VzU2VydmljZTtcclxuICAgIEBJbnB1dCgpIHNldCBzZXJ2aWNvUmV2ZXJ0ZXIoc2VydmljbzogSURhdGFCYXJSZXZlcnRlclNlcnZpY2U8VD4pIHtcclxuICAgICAgICB0aGlzLl9zZXJ2aWNvUmV2ZXJ0ZXIgPSBzZXJ2aWNvO1xyXG4gICAgfVxyXG5cclxuICAgIEBPdXRwdXQoKSBzdGF0dXNDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxFU3RhdHVzPigpO1xyXG5cclxuICAgIHB1YmxpYyBzdGF0dXM6IEVTdGF0dXM7XHJcbiAgICBwdWJsaWMgRVN0YXR1cyA9IEVTdGF0dXM7XHJcbiAgICBwdWJsaWMgZW1Qcm9ncmVzc28gPSBmYWxzZTtcclxuICAgIHByaXZhdGUgX3NlcnZpY29SZXZlcnRlcjogSURhdGFCYXJSZXZlcnRlclNlcnZpY2U8VD47XHJcbiAgICBwcml2YXRlICRzZXRTdGF0dXM6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdkcmF3ZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgZHJhd2VyOiBNYXREcmF3ZXI7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfZGlhbG9nOiBJY0NvbmZpcm1hRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9kaWFsb2dFcnJvOiBFcnJvckRpYWxvZ1NlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF9kYXRhYmFyU2VydmljZTogRGF0YWJhclNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfc25hY2tCYXJTZXJ2aWNlOiBJY21TbmFja0JhclNlcnZpY2VcclxuICAgICkge31cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnZhbGlkYXJQcm9wZXJ0c09icmlnYXRvcmlhcygpO1xyXG4gICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3NvKGZhbHNlKTtcclxuICAgICAgICB0aGlzLm5vdmFQZXNxdWlzYSgpO1xyXG4gICAgICAgIHRoaXMuX3N1Ym1ldGVyRm9ybXVsYXJpb09uRW50ZXIoKTtcclxuICAgICAgICB0aGlzLm9ic2VydmFyU2V0U3RhdHVzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2Vydmljb0JpbmQub25DbGlja0VudGVyKSB0aGlzLnNlcnZpY29CaW5kLm9uQ2xpY2tFbnRlci51bnN1YnNjcmliZSgpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy4kc2V0U3RhdHVzKSB0aGlzLiRzZXRTdGF0dXMudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgICBmZWNoYXJTaWRlbmF2KGV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5kcmF3ZXIuY2xvc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgaW5zZXJpbmRvT3VFZGl0YW5kbygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IEVTdGF0dXMuaW5zZXJpbmRvIHx8IHRoaXMuc3RhdHVzID09PSBFU3RhdHVzLmVkaXRhbmRvO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZXNhYmlsaXRhckJvdGFvTW9kb1RhYmVsYSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmluc2VyaW5kbyB8fFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmVkaXRhbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc28gfHxcclxuICAgICAgICAgICAgdGhpcy5mb3JtLmludmFsaWQgfHxcclxuICAgICAgICAgICAgdGhpcy5zZXJ2aWNvQ29uZmlndXJhY2FvQm90b2VzPy5kZXNhYmlsaXRhckJvdGFvTW9kb1RhYmVsYSgpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVzYWJpbGl0YXJCb3Rhb1Blc3F1aXNhcigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmluc2VyaW5kbyB8fFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmVkaXRhbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzID09IEVTdGF0dXMuZGFkb3NDYXJyZWdhZG9zIHx8XHJcbiAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc28gfHxcclxuICAgICAgICAgICAgdGhpcy5mb3JtLmludmFsaWQgfHxcclxuICAgICAgICAgICAgdGhpcy5zZXJ2aWNvQ29uZmlndXJhY2FvQm90b2VzPy5kZXNhYmlsaXRhckJvdGFvUGVzcXVpc2FyKClcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZXNhYmlsaXRhckJvdGFvUmV2ZXJ0ZXIoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5ub3ZhUGVzcXVpc2EgfHxcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5leGVjdXRhckFjYW8gfHxcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5kYWRvc0NhcnJlZ2Fkb3MgfHxcclxuICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyB8fFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY29Db25maWd1cmFjYW9Cb3RvZXM/LmRlc2FiaWxpdGFyQm90YW9SZXZlcnRlcigpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVzYWJpbGl0YXJCb3Rhb0FkaWNpb25hcigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmVkaXRhbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzID09IEVTdGF0dXMuaW5zZXJpbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc28gfHxcclxuICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCB8fFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY29Db25maWd1cmFjYW9Cb3RvZXM/LmRlc2FiaWxpdGFyQm90YW9BZGljaW9uYXIoKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRlc2FiaWxpdGFyQm90YW9FZGl0YXIoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5pbnNlcmluZG8gfHxcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5ub3ZhUGVzcXVpc2EgfHxcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5leGVjdXRhckFjYW8gfHxcclxuICAgICAgICAgICAgdGhpcy5zdGF0dXMgPT0gRVN0YXR1cy5wZXNxdWlzYW5kbyB8fFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyA9PSBFU3RhdHVzLmVkaXRhbmRvIHx8XHJcbiAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc28gfHxcclxuICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCB8fFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY29Db25maWd1cmFjYW9Cb3RvZXM/LmRlc2FiaWxpdGFyQm90YW9FZGl0YXIoKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRlc2FiaWxpdGFyQm90YW9SZW1vdmVyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICF0aGlzLmVudGlkYWRlUGFnaW5hZGE/LmVudGlkYWRlIHx8XHJcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzICE9IEVTdGF0dXMuZGFkb3NDYXJyZWdhZG9zIHx8XHJcbiAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc28gfHxcclxuICAgICAgICAgICAgdGhpcy5zZXJ2aWNvQ29uZmlndXJhY2FvQm90b2VzPy5kZXNhYmlsaXRhckJvdGFvUmVtb3ZlcigpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVzYWJpbGl0YXJCb3Rhb1NhbHZhcigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICB0aGlzLmZvcm0/LmludmFsaWQgfHxcclxuICAgICAgICAgICAgKHRoaXMuc3RhdHVzICE9IEVTdGF0dXMuaW5zZXJpbmRvICYmIHRoaXMuc3RhdHVzICE9IEVTdGF0dXMuZWRpdGFuZG8pIHx8XHJcbiAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc28gfHxcclxuICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCB8fFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY29Db25maWd1cmFjYW9Cb3RvZXM/LmRlc2FiaWxpdGFyQm90YW9TYWx2YXIoKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRlc2FiaWxpdGFyQm90b2VzUGFnaW5hY2FvUmV0cm9jZWRlcigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICB0aGlzLmluc2VyaW5kb091RWRpdGFuZG8gfHxcclxuICAgICAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8gPD0gMSB8fFxyXG4gICAgICAgICAgICB0aGlzLmVtUHJvZ3Jlc3NvXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVzYWJpbGl0YXJCb3RvZXNQYWdpbmFjYW9BdmFuY2FyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHRoaXMuaW5zZXJpbmRvT3VFZGl0YW5kbyB8fFxyXG4gICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEucG9zaWNhbyA+PSB0aGlzLmVudGlkYWRlUGFnaW5hZGEudG90YWwgfHxcclxuICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzb1xyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgb25DbGlja1JldmVydGVyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2V4aWJpckRpYWxvZ0NvbmZpcm1hY2FvUmV2ZXJ0ZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkNsaWNrTW9kb1RhYmVsYSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2sub25DbGlja01vZG9UYWJlbGEpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQ2xpY2tOb3ZhUGVzcXVpc2EoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLm9uQ2xpY2tOb3ZhUGVzcXVpc2EpO1xyXG4gICAgICAgIHRoaXMubm92YVBlc3F1aXNhKCk7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLmFmdGVyQ2xpY2tOb3ZhUGVzcXVpc2EpO1xyXG4gICAgfVxyXG5cclxuICAgIG5vdmFQZXNxdWlzYSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9kYXRhYmFyU2VydmljZS5oYWJpbGl0YXJGb3JtKHRoaXMuZm9ybSk7XHJcbiAgICAgICAgdGhpcy5mb3JtLnJlc2V0KHsgZW1pdEV2ZW50OiBmYWxzZSwgb25seVNlbGY6IHRydWUgfSk7XHJcbiAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLmVudGlkYWRlID0gdGhpcy5mb3JtLnZhbHVlO1xyXG4gICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS5wb3NpY2FvID0gMDtcclxuICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEudG90YWwgPSAwO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMubm92YVBlc3F1aXNhKTtcclxuICAgIH1cclxuXHJcbiAgICBwZXNxdWlzYXIoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuX3NldERhZG9zQW50ZXJpb3JlcygpO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMucGVzcXVpc2FuZG8pO1xyXG4gICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS5lbnRpZGFkZSA9IFtdLmNvbmNhdCh0aGlzLl9nZXRFbnRpZGFkZSgpKTtcclxuICAgICAgICB0aGlzLl9wYWdpbmFyKCk7XHJcbiAgICAgICAgdGhpcy5kcmF3ZXIuY2xvc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBpbnNlcmlyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2VtaXRpckV2ZW50b0NsaWNrKEVFdmVudG9DbGljay5vbkNsaWNrSW5zZXJpcik7XHJcbiAgICAgICAgdGhpcy5fY2xpY2tJbnNlcmlyKCk7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLmFmdGVyQ2xpY2tJbnNlcmlyKTtcclxuICAgIH1cclxuXHJcbiAgICBlZGl0YXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLm9uQ2xpY2tFZGl0YXIpO1xyXG4gICAgICAgIHRoaXMuX2NsaWNrRWRpdGFyKCk7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLmFmdGVyQ2xpY2tFZGl0YXIpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLm9uQ2xpY2tSZW1vdmVyKTtcclxuICAgICAgICB0aGlzLl9jbGlja1JlbW92ZXIoKTtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2suYWZ0ZXJDbGlja1JlbW92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3hpbW8oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcGFnaW5hcigncHJveGltbycpO1xyXG4gICAgfVxyXG5cclxuICAgIGFudGVyaW9yKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3BhZ2luYXIoJ2FudGVyaW9yJyk7XHJcbiAgICB9XHJcblxyXG4gICAgdWx0aW1vKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3BhZ2luYXIoJ3VsdGltbycpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaW1laXJvKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3BhZ2luYXIoJ3ByaW1laXJvJyk7XHJcbiAgICB9XHJcblxyXG4gICAgc2FsdmFyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2VtaXRpckV2ZW50b0NsaWNrKEVFdmVudG9DbGljay5vbkNsaWNrU2FsdmFyKTtcclxuXHJcbiAgICAgICAgc3dpdGNoICh0aGlzLnN0YXR1cykge1xyXG4gICAgICAgICAgICBjYXNlIEVTdGF0dXMuaW5zZXJpbmRvOlxyXG4gICAgICAgICAgICAgICAgdGhpcy5faW5zZXJpcigpO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgICBjYXNlIEVTdGF0dXMuZWRpdGFuZG86XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9lZGl0YXIoKTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9pbnNlcmlyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMuc2FsdmFuZG8pO1xyXG4gICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3NvKHRydWUpO1xyXG4gICAgICAgIHRoaXMuc2Vydmljb0JpbmRcclxuICAgICAgICAgICAgLmNyaWFyKClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLmFmdGVyQ2xpY2tTYWx2YXIpO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKHN1Y2Nlc3MpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFByb2dyZXNzbyhmYWxzZSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3NuYWNrQmFyU2VydmljZS5hYnJpclNuYWNrQmFyU3VjZXNzbyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ1JlZ2lzdHJvIHNhbHZvIGNvbSBzdWNlc3NvISdcclxuICAgICAgICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZShzdWNjZXNzKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5kYWRvc0NhcnJlZ2Fkb3MpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRyYXdlci5jbG9zZSgpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9kYXRhYmFyU2VydmljZS5kZXNhYmlsaXRhckZvcm0odGhpcy5mb3JtKTtcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRQcm9ncmVzc28oZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMuaW5zZXJpbmRvKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9lZGl0YXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5zYWx2YW5kbyk7XHJcbiAgICAgICAgdGhpcy5zZXRQcm9ncmVzc28odHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5zZXJ2aWNvQmluZFxyXG4gICAgICAgICAgICAuZWRpdGFyKClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZW1pdGlyRXZlbnRvQ2xpY2soRUV2ZW50b0NsaWNrLmFmdGVyQ2xpY2tTYWx2YXIpO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKHN1Y2Nlc3MpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9zbmFja0JhclNlcnZpY2UuYWJyaXJTbmFja0JhclN1Y2Vzc28oXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdSZWdpc3RybyBlZGl0YWRvIGNvbSBzdWNlc3NvISdcclxuICAgICAgICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZShzdWNjZXNzKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRQcm9ncmVzc28oZmFsc2UpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLmRhZG9zQ2FycmVnYWRvcyk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmRlc2FiaWxpdGFyRm9ybSh0aGlzLmZvcm0pO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRyYXdlci5jbG9zZSgpO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFByb2dyZXNzbyhmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5lZGl0YW5kbyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvYnNlcnZhclNldFN0YXR1cygpOiB2b2lkIHtcclxuICAgICAgICBpZiAoKHRoaXMuc2Vydmljb0JpbmQgYXMgSURhdGFiYXJCaW5kU3RhdHVzU2VydmljZTxUPikuc2V0U3RhdHVzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuJHNldFN0YXR1cyA9IChcclxuICAgICAgICAgICAgICAgIHRoaXMuc2Vydmljb0JpbmQgYXMgSURhdGFiYXJCaW5kU3RhdHVzU2VydmljZTxUPlxyXG4gICAgICAgICAgICApLnNldFN0YXR1cy5zdWJzY3JpYmUoKHN0YXR1cykgPT4ge1xyXG4gICAgICAgICAgICAgICAgc3dpdGNoIChzdGF0dXMpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIEVTdGF0dXMuZWRpdGFuZG86XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZWRpdGFyKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc28gPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBFU3RhdHVzLmluc2VyaW5kbzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnNlcmlyKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZW1Qcm9ncmVzc28gPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBFU3RhdHVzLnBlc3F1aXNhbmRvOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBlc3F1aXNhcigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIEVTdGF0dXMubm92YVBlc3F1aXNhOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdmFQZXNxdWlzYSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIEVTdGF0dXMucmVtb3ZlbmRvOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZXIoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBFU3RhdHVzLmRhZG9zQ2FycmVnYWRvczpcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGF0dXMgPSBFU3RhdHVzLmRhZG9zQ2FycmVnYWRvcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbVByb2dyZXNzbyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmV0b3JuYXJTZXJ2aWNvUmV2ZXJ0ZXIoKTogSURhdGFCYXJSZXZlcnRlclNlcnZpY2U8VD4ge1xyXG4gICAgICAgIGlmICh0aGlzLl9zZXJ2aWNvUmV2ZXJ0ZXIgPT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5fc2Vydmljb1JldmVydGVyID0gbmV3IEljRGF0YWJhclJldmVydGVyU2VydmljZSgpO1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5fc2Vydmljb1JldmVydGVyO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3NldERhZG9zQW50ZXJpb3JlcygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnJldG9ybmFyU2Vydmljb1JldmVydGVyKCkuc2V0RGFkb3NBbnRlcmlvcmVzKFxyXG4gICAgICAgICAgICB0aGlzLnN0YXR1cyxcclxuICAgICAgICAgICAgdGhpcy5mb3JtLFxyXG4gICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGFcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3JldmVydGVyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2VtaXRpckV2ZW50b0NsaWNrKEVFdmVudG9DbGljay5vbkNsaWNrUmV2ZXJ0ZXIpO1xyXG4gICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYSA9IHRoaXMucmV0b3JuYXJTZXJ2aWNvUmV2ZXJ0ZXIoKS5yZXN0YXVyYXJEYWRvc0FudGVyaW9yZXMoXHJcbiAgICAgICAgICAgIHRoaXMuZm9ybVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgY29uc3Qgc3RhdHVzQW50ZXJpb3IgPSB0aGlzLnJldG9ybmFyU2Vydmljb1JldmVydGVyKCkuc3RhdHVzQW50ZXJpb3I7XHJcblxyXG4gICAgICAgIGlmIChzdGF0dXNBbnRlcmlvciA9PSBFU3RhdHVzLmRhZG9zQ2FycmVnYWRvcylcclxuICAgICAgICAgICAgdGhpcy5fZGF0YWJhclNlcnZpY2UuZGVzYWJpbGl0YXJGb3JtKHRoaXMuZm9ybSk7XHJcbiAgICAgICAgZWxzZSB0aGlzLl9kYXRhYmFyU2VydmljZS5oYWJpbGl0YXJGb3JtKHRoaXMuZm9ybSk7XHJcblxyXG4gICAgICAgIHRoaXMuc2V0U3RhdHVzKHN0YXR1c0FudGVyaW9yKTtcclxuICAgICAgICB0aGlzLl9lbWl0aXJFdmVudG9DbGljayhFRXZlbnRvQ2xpY2suYWZ0ZXJDbGlja1JldmVydGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9yZXNldGFyQ29udGFkb3JQYWdpbmFjYW8oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8gPSAwO1xyXG4gICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS50b3RhbCA9IDA7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB2YWxpZGFyUHJvcGVydHNPYnJpZ2F0b3JpYXMoKTogYW55IHtcclxuICAgICAgICBpZiAodGhpcy5zZXJ2aWNvQmluZCA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignw4kgb2JyaWdhdMOzcmlvIHRlciB1bSBzZXJ2acOnbyBkZSBiaW5kIHZpbmN1bGFkby4nKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmVudGlkYWRlUGFnaW5hZGEgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ8OJIG9icmlnYXTDs3JpbyB0ZXIgdW1hIGVudGlkYWRlIHBhZ2luYWRhIHZpbmN1bGFkYS4nKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzZXRTdGF0dXMoc3RhdHVzOiBFU3RhdHVzKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFzdGF0dXMpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnN0YXR1cyA9IHN0YXR1cztcclxuICAgICAgICB0aGlzLnN0YXR1c0NoYW5nZWQuZW1pdCh0aGlzLnN0YXR1cyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfZ2V0RW50aWRhZGUoKTogVCB7XHJcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5mb3JtLmdldFJhd1ZhbHVlKCkgYXMgVDtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3N1Ym1ldGVyRm9ybXVsYXJpb09uRW50ZXIoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnNlcnZpY29CaW5kLm9uQ2xpY2tFbnRlcikgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMuc2Vydmljb0JpbmQub25DbGlja0VudGVyLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnN0YXR1cyA9PT0gRVN0YXR1cy5ub3ZhUGVzcXVpc2EgJiYgdGhpcy5mb3JtLnZhbGlkKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBlc3F1aXNhcigpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfY2xpY2tJbnNlcmlyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3NldERhZG9zQW50ZXJpb3JlcygpO1xyXG4gICAgICAgIHRoaXMuX3Jlc2V0YXJDb250YWRvclBhZ2luYWNhbygpO1xyXG4gICAgICAgIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmhhYmlsaXRhckZvcm0odGhpcy5mb3JtKTtcclxuICAgICAgICB0aGlzLmZvcm0ucmVzZXQoeyBlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZSB9KTtcclxuICAgICAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xyXG4gICAgICAgIHRoaXMuZHJhd2VyLmNsb3NlKCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5pbnNlcmluZG8pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2NsaWNrRWRpdGFyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3NldERhZG9zQW50ZXJpb3JlcygpO1xyXG4gICAgICAgIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmhhYmlsaXRhckZvcm0odGhpcy5mb3JtKTtcclxuXHJcbiAgICAgICAgdGhpcy5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKTtcclxuICAgICAgICB0aGlzLmRyYXdlci5jbG9zZSgpO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMuZWRpdGFuZG8pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2NsaWNrUmVtb3ZlcigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLnJlbW92ZW5kbyk7XHJcbiAgICAgICAgdGhpcy5fZXhpYmlyRGlhbG9nQ29uZmlybWFjYW8oKTtcclxuICAgICAgICB0aGlzLmRyYXdlci5jbG9zZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2VtaXRpckV2ZW50b0NsaWNrKGV2ZW50bzogRUV2ZW50b0NsaWNrKTogdm9pZCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmVtaXRpckV2ZW50b0NsaWNrPFQ+KFxyXG4gICAgICAgICAgICB0aGlzLnNlcnZpY29CaW5kIGFzIElEYXRhYmFyQmluZE9uQ2xpY2tTZXJ2aWNlPFQ+LFxyXG4gICAgICAgICAgICBldmVudG9cclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2FjYW9DbG9zZURpYWxvZ0NvbmZpcm1hY2FvKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2RpYWxvZy5lbVByb2dyZXNzbyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuX2RpYWxvZy5jbG9zZURpYWxvZygpO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMuZGFkb3NDYXJyZWdhZG9zKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9leGliaXJEaWFsb2dDb25maXJtYWNhbygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9kaWFsb2cuYWNhb01lbnNhZ2VtID0gJ1JlbW92ZW5kbyByZWdpc3Ryby4uLic7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nLmFjYW9PayA9ICgpID0+XHJcbiAgICAgICAgICAgIHRoaXMuc2Vydmljb0JpbmQucmVtb3ZlcigpLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9kaWFsb2cuY2xvc2VEaWFsb2coKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdmFQZXNxdWlzYSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2RpYWxvZy5lbVByb2dyZXNzbyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3NuYWNrQmFyU2VydmljZS5hYnJpclNuYWNrQmFyU3VjZXNzbygnUmVtb3ZpZG8gY29tIHN1Y2Vzc28hJyk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgKCkgPT4gdGhpcy5fYWNhb0Nsb3NlRGlhbG9nQ29uZmlybWFjYW8oKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuX2RpYWxvZy5hY2FvQ2FuY2VsYXIgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX2FjYW9DbG9zZURpYWxvZ0NvbmZpcm1hY2FvKCk7XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5fZGlhbG9nLm9wZW5EaWFsb2coXHJcbiAgICAgICAgICAgICdBdGVuw6fDo28hJyxcclxuICAgICAgICAgICAgJ1ZvY8OqIHJlYWxtZW50ZSBkZXNlamEgZXhjbHVpciBlc3RlIHJlZ2lzdHJvPydcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2V4aWJpckRpYWxvZ0NvbmZpcm1hY2FvUmV2ZXJ0ZXIoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nLmFjYW9PayA9ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fcmV2ZXJ0ZXIoKTtcclxuICAgICAgICAgICAgdGhpcy5fZGlhbG9nLmVtUHJvZ3Jlc3NvID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuX2RpYWxvZy5jbG9zZURpYWxvZygpO1xyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuX2RpYWxvZy5hY2FvQ2FuY2VsYXIgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX2RpYWxvZy5jbG9zZURpYWxvZygpO1xyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuX2RpYWxvZy5vcGVuRGlhbG9nKFxyXG4gICAgICAgICAgICAnQXRlbsOnw6NvIScsXHJcbiAgICAgICAgICAgICdBcyBhbHRlcmHDp8O1ZXMgcmVhbGl6YWRhcyBzZXLDo28gcGVyZGlkYXMuIERlc2VqYSBjb250aW51YXI/J1xyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfcGFnaW5hcihhY2FvPzogQUNBT19QQUdJTkFDQU8pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLnBlc3F1aXNhbmRvKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZW50aWRhZGVQYWdpbmFkYS5lbnRpZGFkZSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS5lbnRpZGFkZSA9IFtdLmNvbmNhdCh0aGlzLl9nZXRFbnRpZGFkZSgpKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHBvc2ljYW9BbnRlcmlvciA9IHRoaXMuZW50aWRhZGVQYWdpbmFkYS5wb3NpY2FvO1xyXG5cclxuICAgICAgICBzd2l0Y2ggKGFjYW8pIHtcclxuICAgICAgICAgICAgY2FzZSAncHJpbWVpcm8nOlxyXG4gICAgICAgICAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8gPSAxO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ3VsdGltbyc6XHJcbiAgICAgICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEucG9zaWNhbyA9IHRoaXMuZW50aWRhZGVQYWdpbmFkYS50b3RhbDtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdwcm94aW1vJzpcclxuICAgICAgICAgICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS5wb3NpY2FvKys7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnYW50ZXJpb3InOlxyXG4gICAgICAgICAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8tLTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8gPSAwO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNldFByb2dyZXNzbyh0cnVlKTtcclxuXHJcbiAgICAgICAgdGhpcy5zZXJ2aWNvQmluZC5saXN0YXJQYWdpbmFjYW8odGhpcy5lbnRpZGFkZVBhZ2luYWRhKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgIChzdWNjZXNzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFByb2dyZXNzbyhmYWxzZSk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHN1Y2Nlc3MgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2RpYWxvZ0Vycm8ub3BlbkRpYWxvZyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ0F0ZW7Dp8OjbyEnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnTmVuaHVtIHJlZ2lzdHJvIGZvaSBlbmNvbnRyYWRvLidcclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdHVzKEVTdGF0dXMubm92YVBlc3F1aXNhKTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHN1Y2Nlc3MuZW50aWRhZGUgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2RhdGFiYXJTZXJ2aWNlLnJlc2V0Rm9ybSh0aGlzLmZvcm0sIHRoaXMuZW50aWRhZGVQYWdpbmFkYSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5ub3ZhUGVzcXVpc2EpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXR1cyhFU3RhdHVzLmRhZG9zQ2FycmVnYWRvcyk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmVudGlkYWRlUGFnaW5hZGEuZW50aWRhZGUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEgPSBzdWNjZXNzO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmVudGlkYWRlUGFnaW5hZGEudG90YWwgPSBzdWNjZXNzLnRvdGFsO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZW50aWRhZGVQYWdpbmFkYS5wb3NpY2FvID0gc3VjY2Vzcy5wb3NpY2FvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHN1Y2Nlc3MuZW50aWRhZGVbMF0pO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0UHJvZ3Jlc3NvKGZhbHNlKTtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLl9kYXRhYmFyU2VydmljZS5kZXNhYmlsaXRhckZvcm0odGhpcy5mb3JtKTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdlcnJvIHBhZ2luYcOnw6NvJywgZXJyb3IpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0dXMoRVN0YXR1cy5kYWRvc0NhcnJlZ2Fkb3MpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5lbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8gPSBwb3NpY2FvQW50ZXJpb3I7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFByb2dyZXNzbyhmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9kYXRhYmFyU2VydmljZS5kZXNhYmlsaXRhckZvcm0odGhpcy5mb3JtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzZXRQcm9ncmVzc28ocHJvZ3Jlc3NvOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lbVByb2dyZXNzbyA9IHRoaXMuX2RhdGFiYXJTZXJ2aWNlLmRlZmluaXJQcm9ncmVzc28odGhpcy5mb3JtLCBwcm9ncmVzc28pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -38,4 +38,4 @@ DataBarModule.decorators = [
|
|
|
38
38
|
providers: [DatabarService]
|
|
39
39
|
},] }
|
|
40
40
|
];
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWMtZGF0YS1iYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IkM6L0FXUy9jb2RlY29taXQvYmlibGlvdGVjYS1hbmd1bGFyL3Byb2plY3RzL2ljLWRhdGFiYXItbGliL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9pYy1kYXRhLWJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDM0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBc0I3RCxNQUFNLE9BQU8sYUFBYTs7O1lBcEJ6QixRQUFRLFNBQUM7Z0JBQ04sWUFBWSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ2hDLE9BQU8sRUFBRTtvQkFDTCxZQUFZO29CQUNaLGdCQUFnQjtvQkFDaEIsYUFBYTtvQkFDYixnQkFBZ0I7b0JBQ2hCLGFBQWE7b0JBQ2Isd0JBQXdCO29CQUN4QixnQkFBZ0I7b0JBQ2hCLGVBQWU7b0JBQ2YsZ0JBQWdCO29CQUNoQixnQkFBZ0I7b0JBQ2hCLHNCQUFzQjtvQkFDdEIsaUJBQWlCO29CQUNqQixpQkFBaUI7aUJBQ3BCO2dCQUNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO2dCQUMzQixTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUM7YUFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXREaXZpZGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGl2aWRlcic7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuaW1wb3J0IHsgTWF0U2lkZW5hdk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xyXG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IEljQ29uZmlybWFEaWFsb2dNb2R1bGUgfSBmcm9tICdAaW5vdmFtb2JpbC9pYy1jb25maXJtYS1kaWFsb2cnO1xyXG5pbXBvcnQgeyBEYXRhQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9pYy1kYXRhLWJhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFcnJvckRpYWxvZ01vZHVsZSB9IGZyb20gJy4uL2NvbXBvbmVudHMvZGlhbG9ncy9lcnJvci1kaWFsb2cvZXJyb3ItZGlhbG9nLm1vZHVsZSc7XHJcbmltcG9ydCB7IERhdGFiYXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9pYy1kYXRhYmFyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJY21TbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bpbm92YW1vYmlsL2ljbS1zbmFja2Jhcic7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbRGF0YUJhckNvbXBvbmVudF0sXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgICAgIE1hdFRvb2xiYXJNb2R1bGUsXHJcbiAgICAgICAgTWF0TGlzdE1vZHVsZSxcclxuICAgICAgICBNYXRTaWRlbmF2TW9kdWxlLFxyXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICAgICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxyXG4gICAgICAgIE1hdERpdmlkZXJNb2R1bGUsXHJcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgICAgIE1hdFRvb2x0aXBNb2R1bGUsXHJcbiAgICAgICAgRmxleExheW91dE1vZHVsZSxcclxuICAgICAgICBJY0NvbmZpcm1hRGlhbG9nTW9kdWxlLFxyXG4gICAgICAgIEVycm9yRGlhbG9nTW9kdWxlLFxyXG4gICAgICAgIEljbVNuYWNrQmFyTW9kdWxlXHJcbiAgICBdLFxyXG4gICAgZXhwb3J0czogW0RhdGFCYXJDb21wb25lbnRdLFxyXG4gICAgcHJvdmlkZXJzOiBbRGF0YWJhclNlcnZpY2VdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhQmFyTW9kdWxlIHsgfVxyXG4iXX0=
|
|
@@ -6,4 +6,4 @@ export class DatabarEventClickService {
|
|
|
6
6
|
this.onEvent(evento);
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWMtZGF0YWJhci1ldmVudC1jbGljay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L0FXUy9jb2RlY29taXQvYmlibGlvdGVjYS1hbmd1bGFyL3Byb2plY3RzL2ljLWRhdGFiYXItbGliL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9pYy1kYXRhYmFyLWV2ZW50LWNsaWNrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLHdCQUF3QjtJQUVqQyxZQUFvQixPQUFzQztRQUF0QyxZQUFPLEdBQVAsT0FBTyxDQUErQjtJQUFHLENBQUM7SUFFOUQsTUFBTSxDQUFDLE1BQW9CO1FBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkIsQ0FBQztDQUVKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRUV2ZW50b0NsaWNrIH0gZnJvbSAnLi4vZW51bS9lZXZlbnRvY2xpY2snO1xyXG5cclxuZXhwb3J0IGNsYXNzIERhdGFiYXJFdmVudENsaWNrU2VydmljZSB7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBvbkV2ZW50OiAoZXZlbnQ6IEVFdmVudG9DbGljaykgPT4gdm9pZCkge31cclxuICBcclxuICAgIGVtaXRpcihldmVudG86IEVFdmVudG9DbGljayk6IHZvaWQge1xyXG4gICAgICB0aGlzLm9uRXZlbnQoZXZlbnRvKTtcclxuICAgIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -21,4 +21,4 @@ export class IcDatabarReverterService {
|
|
|
21
21
|
IcDatabarReverterService.decorators = [
|
|
22
22
|
{ type: Injectable }
|
|
23
23
|
];
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWMtZGF0YWJhci1yZXZlcnRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L0FXUy9jb2RlY29taXQvYmlibGlvdGVjYS1hbmd1bGFyL3Byb2plY3RzL2ljLWRhdGFiYXItbGliL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9pYy1kYXRhYmFyLXJldmVydGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8zQyxNQUFNLE9BQU8sd0JBQXdCO0lBTW5DLElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVNLGtCQUFrQixDQUFDLE1BQWUsRUFBRSxTQUFvQixFQUFFLGdCQUEwQztRQUN6RyxJQUFJLENBQUMseUJBQXlCLEdBQUc7WUFDL0IsUUFBUSxFQUFFLGdCQUFnQixDQUFDLFFBQVE7WUFDbkMsT0FBTyxFQUFFLGdCQUFnQixDQUFDLE9BQU87WUFDakMsVUFBVSxFQUFFLGdCQUFnQixDQUFDLFVBQVU7WUFDdkMsS0FBSyxFQUFFLGdCQUFnQixDQUFDLEtBQUs7U0FDRixDQUFDO1FBRTlCLElBQUksQ0FBQywwQkFBMEIsR0FBRyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDMUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUM7SUFDaEMsQ0FBQztJQUVNLHdCQUF3QixDQUFDLFVBQXFCO1FBQ25ELFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDdkQsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUM7SUFDeEMsQ0FBQzs7O1lBMUJGLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRVN0YXR1cyB9IGZyb20gJy4uL2VudW0vZXN0YXR1cyc7XHJcbmltcG9ydCB7IElEYXRhRW50aWRhZGVQYWdpbmFkYSB9IGZyb20gJy4uL2NvbnRyYXRvL0lEYXRhRW50aWRhZGVQYWdpbmFkYSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSURhdGFCYXJSZXZlcnRlclNlcnZpY2UgfSBmcm9tICcuLi9jb250cmF0by9JRGF0YUJhclJldmVydGVyU2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBJY0RhdGFiYXJSZXZlcnRlclNlcnZpY2U8VD4gaW1wbGVtZW50cyBJRGF0YUJhclJldmVydGVyU2VydmljZTxUPntcclxuXHJcbiAgcHJpdmF0ZSBfc3RhdHVzQW50ZXJpb3I6IEVTdGF0dXM7XHJcbiAgcHJpdmF0ZSBfZGFkb3NBbnRlcmlvcmVzRm9ybXVsYXJpbzogVDtcclxuICBwcml2YXRlIF9lbnRpZGFkZVBhZ2luYWRhQW50ZXJpb3I6IElEYXRhRW50aWRhZGVQYWdpbmFkYTxUPjtcclxuXHJcbiAgZ2V0IHN0YXR1c0FudGVyaW9yKCk6IEVTdGF0dXMge1xyXG4gICAgcmV0dXJuIHRoaXMuX3N0YXR1c0FudGVyaW9yO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERhZG9zQW50ZXJpb3JlcyhzdGF0dXM6IEVTdGF0dXMsIGZvcm11bGFybzogRm9ybUdyb3VwLCBlbnRpZGFkZVBhZ2luYWRhOiBJRGF0YUVudGlkYWRlUGFnaW5hZGE8VD4pOiB2b2lkIHtcclxuICAgIHRoaXMuX2VudGlkYWRlUGFnaW5hZGFBbnRlcmlvciA9IHtcclxuICAgICAgZW50aWRhZGU6IGVudGlkYWRlUGFnaW5hZGEuZW50aWRhZGUsXHJcbiAgICAgIHBvc2ljYW86IGVudGlkYWRlUGFnaW5hZGEucG9zaWNhbyxcclxuICAgICAgcXVhbnRpZGFkZTogZW50aWRhZGVQYWdpbmFkYS5xdWFudGlkYWRlLFxyXG4gICAgICB0b3RhbDogZW50aWRhZGVQYWdpbmFkYS50b3RhbFxyXG4gICAgfSBhcyBJRGF0YUVudGlkYWRlUGFnaW5hZGE8VD47XHJcblxyXG4gICAgdGhpcy5fZGFkb3NBbnRlcmlvcmVzRm9ybXVsYXJpbyA9IGZvcm11bGFyby5nZXRSYXdWYWx1ZSgpO1xyXG4gICAgdGhpcy5fc3RhdHVzQW50ZXJpb3IgPSBzdGF0dXM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVzdGF1cmFyRGFkb3NBbnRlcmlvcmVzKGZvcm11bGFyaW86IEZvcm1Hcm91cCk6IElEYXRhRW50aWRhZGVQYWdpbmFkYTxUPiB7XHJcbiAgICBmb3JtdWxhcmlvLnBhdGNoVmFsdWUodGhpcy5fZGFkb3NBbnRlcmlvcmVzRm9ybXVsYXJpbyk7XHJcbiAgICByZXR1cm4gdGhpcy5fZW50aWRhZGVQYWdpbmFkYUFudGVyaW9yO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -32,4 +32,4 @@ DatabarService.decorators = [
|
|
|
32
32
|
{ type: Injectable }
|
|
33
33
|
];
|
|
34
34
|
DatabarService.ctorParameters = () => [];
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWMtZGF0YWJhci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L0FXUy9jb2RlY29taXQvYmlibGlvdGVjYS1hbmd1bGFyL3Byb2plY3RzL2ljLWRhdGFiYXItbGliL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9pYy1kYXRhYmFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8zQyxNQUFNLE9BQU8sY0FBYztJQUd2QixnQkFBZ0IsQ0FBQztJQUVWLGVBQWUsQ0FBQyxJQUFlO1FBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTSxhQUFhLENBQUMsSUFBZTtRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sU0FBUyxDQUFDLElBQWUsRUFBRSxnQkFBNEM7UUFDMUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDakQsZ0JBQWdCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNqQyxnQkFBZ0IsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQzdCLGdCQUFnQixDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLGlCQUFpQixDQUFJLE9BQXNDLEVBQUUsTUFBb0I7UUFDcEYsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQ3RCLE9BQU8sQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQWUsRUFBRSxTQUFrQjtRQUNoRCxJQUFJLENBQUMsSUFBSTtZQUNMLE9BQU87UUFFWCxJQUFJLFNBQVM7WUFDVCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDOztZQUUzQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTdCLE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7OztZQXJDSixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBJRGF0YUVudGlkYWRlUGFnaW5hZGEgfSBmcm9tICcuLi9jb250cmF0by9JRGF0YUVudGlkYWRlUGFnaW5hZGEnO1xyXG5pbXBvcnQgeyBJRGF0YWJhckJpbmRPbkNsaWNrU2VydmljZSwgRUV2ZW50b0NsaWNrIH0gZnJvbSAnLi4vLi4vcHVibGljLWFwaSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEYXRhYmFyU2VydmljZSB7XHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgcHVibGljIGRlc2FiaWxpdGFyRm9ybShmb3JtOiBGb3JtR3JvdXApOiB2b2lkIHtcclxuICAgICAgICBmb3JtLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFiaWxpdGFyRm9ybShmb3JtOiBGb3JtR3JvdXApOiB2b2lkIHtcclxuICAgICAgICBmb3JtLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UsIG9ubHlTZWxmOiB0cnVlIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyByZXNldEZvcm0oZm9ybTogRm9ybUdyb3VwLCBlbnRpZGFkZVBhZ2luYWRhOiBJRGF0YUVudGlkYWRlUGFnaW5hZGE8YW55Pik6IHZvaWQge1xyXG4gICAgICAgIGZvcm0ucmVzZXQoeyBlbWl0RXZlbnQ6IGZhbHNlLCBvbmx5U2VsZjogdHJ1ZSB9KTtcclxuICAgICAgICBlbnRpZGFkZVBhZ2luYWRhLmVudGlkYWRlID0gbnVsbDtcclxuICAgICAgICBlbnRpZGFkZVBhZ2luYWRhLnBvc2ljYW8gPSAwO1xyXG4gICAgICAgIGVudGlkYWRlUGFnaW5hZGEudG90YWwgPSAwO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBlbWl0aXJFdmVudG9DbGljazxUPihzZXJ2aWNvOiBJRGF0YWJhckJpbmRPbkNsaWNrU2VydmljZTxUPiwgZXZlbnRvOiBFRXZlbnRvQ2xpY2spOiB2b2lkIHtcclxuICAgICAgICBpZiAoc2Vydmljby5ldmVudERhdGFiYXIpIHtcclxuICAgICAgICAgICAgc2Vydmljby5ldmVudERhdGFiYXIuZW1pdGlyKGV2ZW50byk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGRlZmluaXJQcm9ncmVzc28oZm9ybTogRm9ybUdyb3VwLCBwcm9ncmVzc286IGJvb2xlYW4pOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIWZvcm0pXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgaWYgKHByb2dyZXNzbylcclxuICAgICAgICAgICAgdGhpcy5kZXNhYmlsaXRhckZvcm0oZm9ybSk7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB0aGlzLmhhYmlsaXRhckZvcm0oZm9ybSk7XHJcblxyXG4gICAgICAgIHJldHVybiBwcm9ncmVzc287XHJcbiAgICB9XHJcbn1cclxuIl19
|
package/esm2015/public-api.js
CHANGED
|
@@ -11,4 +11,4 @@ export * from './lib/enum/estatus';
|
|
|
11
11
|
export * from './lib/services/ic-databar-event-click.service';
|
|
12
12
|
export * from './lib/ic-data-bar.component';
|
|
13
13
|
export * from './lib/ic-data-bar.module';
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9BV1MvY29kZWNvbWl0L2JpYmxpb3RlY2EtYW5ndWxhci9wcm9qZWN0cy9pYy1kYXRhYmFyLWxpYi9zcmMvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9jb250cmF0by9JRGF0YUJhckJpbmQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cmF0by9JRGF0YUJhckJpbmRPbkNsaWNrU2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyYXRvL0lEYXRhQmFyU2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyYXRvL0lEYXRhRW50aWRhZGVQYWdpbmFkYSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyYXRvL0lEYXRhYmFyU3RhdHVzU2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyYXRvL09uSW5pdERhdGFCYXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cmF0by9JRGF0YUJhclJldmVydGVyU2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyYXRvL0RhdGFCYXJDb25maWdCb3RvZXNTZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bS9lZXZlbnRvY2xpY2snO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnVtL2VzdGF0dXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9pYy1kYXRhYmFyLWV2ZW50LWNsaWNrLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pYy1kYXRhLWJhci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pYy1kYXRhLWJhci5tb2R1bGUnO1xyXG4iXX0=
|
|
@@ -634,7 +634,7 @@ class DataBarComponent {
|
|
|
634
634
|
DataBarComponent.decorators = [
|
|
635
635
|
{ type: Component, args: [{
|
|
636
636
|
selector: 'ic-data-bar',
|
|
637
|
-
template: "<div\r\n fxFlex=\"1 0 auto\"\r\n fxFlexLayout=\"space-around center\"\r\n fxLayout=\"column\"\r\n>\r\n <!-- DESKTOP -->\r\n <mat-toolbar class=\"px-0 mat-elevation-z4\">\r\n <div\r\n fxFlex=\"1 0 auto\"\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"space-around center\"\r\n >\r\n <!-- BOT\u00C3O EXIBIR DRAWER -->\r\n <mat-drawer-container\r\n fxFlex.sm\r\n fxHide.gt-sm\r\n >\r\n <button\r\n (click)=\"drawer.toggle()\"\r\n id=\"btn_exibir_databar_mobile\"\r\n mat-button\r\n type=\"button\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n </button>\r\n </mat-drawer-container>\r\n <!-- /BOT\u00C3O EXIBIR DRAWER -->\r\n\r\n <!-- A\u00C7\u00D5ES -->\r\n <div\r\n fxFlex.sm\r\n fxHide\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"space-around center\"\r\n fxShow.gt-sm\r\n >\r\n <!-- MODO_TABELA -->\r\n <button\r\n *ngIf=\"servicoConfiguracaoBotoes?.exibirBotaoModoTabela()\"\r\n (click)=\"onClickModoTabela()\"\r\n [disabled]=\"desabilitarBotaoModoTabela\"\r\n color=\"primary\"\r\n id=\"btn_modo_tabela\"\r\n mat-button\r\n matTooltip=\"Alterar exibi\u00E7\u00E3o para tabela\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n </button>\r\n <!-- MODO_TABELA -->\r\n\r\n <!-- BTN_NOVA_PESQUISA -->\r\n <button\r\n (click)=\"onClickNovaPesquisa()\"\r\n [disabled]=\"servicoConfiguracaoBotoes?.desabilitarBotaoNovaPesquisa()\"\r\n color=\"primary\"\r\n id=\"btn_nova_pesquisa\"\r\n mat-button\r\n matTooltip=\"Nova Pesquisa\"\r\n >\r\n <mat-icon>insert_drive_file</mat-icon>\r\n </button>\r\n <!-- BTN_NOVA_PESQUISA -->\r\n\r\n <!-- BTN_REVERTER -->\r\n <button\r\n (click)=\"onClickReverter()\"\r\n [disabled]=\"desabilitarBotaoReverter\"\r\n color=\"primary\"\r\n id=\"btn_reverter\"\r\n mat-button\r\n matTooltip=\"Reverter\"\r\n >\r\n <mat-icon>restore</mat-icon>\r\n </button>\r\n <!-- BTN_REVERTER -->\r\n\r\n <!-- BTN_PESQUISAR -->\r\n <button\r\n (click)=\"pesquisar()\"\r\n [disabled]=\"desabilitarBotaoPesquisar\"\r\n color=\"primary\"\r\n id=\"btn_pesquisar\"\r\n mat-button\r\n matTooltip=\"Pesquisar\"\r\n >\r\n <mat-icon>search</mat-icon>\r\n </button>\r\n <!-- BTN_PESQUISAR -->\r\n\r\n <!-- BTN_ADICIONAR -->\r\n <button\r\n (click)=\"inserir()\"\r\n [disabled]=\"desabilitarBotaoAdicionar\"\r\n color=\"primary\"\r\n id=\"btn_adicionar\"\r\n mat-button\r\n matTooltip=\"Adicionar\"\r\n >\r\n <mat-icon>add_circle</mat-icon>\r\n </button>\r\n <!-- BTN_ADICIONAR -->\r\n\r\n <!-- BTN_EDITAR -->\r\n <button\r\n (click)=\"editar()\"\r\n [disabled]=\"desabilitarBotaoEditar\"\r\n color=\"primary\"\r\n id=\"btn_editar\"\r\n mat-button\r\n matTooltip=\"Editar\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <!-- BTN_EDITAR -->\r\n\r\n <!-- BTN_REMOVER -->\r\n <button\r\n (click)=\"remover()\"\r\n [disabled]=\"desabilitarBotaoRemover\"\r\n color=\"primary\"\r\n id=\"btn_remover\"\r\n mat-button\r\n matTooltip=\"Remover\"\r\n >\r\n <mat-icon>delete_forever</mat-icon>\r\n </button>\r\n <!-- BTN_REMOVER -->\r\n\r\n <!-- BTN_SALVAR -->\r\n <button\r\n (click)=\"salvar()\"\r\n [disabled]=\"desabilitarBotaoSalvar\"\r\n color=\"primary\"\r\n id=\"btn_salvar\"\r\n mat-button\r\n matTooltip=\"Salvar\"\r\n >\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <!-- BTN_SALVAR -->\r\n </div>\r\n <!-- /A\u00C7\u00D5ES -->\r\n\r\n <!-- STATUS -->\r\n <div fxLayout=\"row\"\r\n fxLayoutAlign=\"center center\">\r\n\r\n <!-- PROGRESS -->\r\n <mat-spinner *ngIf=\"emProgresso\"\r\n [diameter]=\"20\"></mat-spinner>\r\n <!-- PROGRESS -->\r\n\r\n <button\r\n color=\"primary\"\r\n fxHide.lt-sm\r\n id=\"btn_status\"\r\n mat-button\r\n matTooltip=\"A\u00E7\u00E3o no momento\"\r\n >\r\n {{ status }}\r\n </button>\r\n </div>\r\n <!-- STATUS -->\r\n\r\n <!-- PAGINA\u00C7\u00C3O -->\r\n <div\r\n fxFlex.sm\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"center center\"\r\n >\r\n <!-- BTN_PRIMEIRO -->\r\n <button\r\n (click)=\"primeiro()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoRetroceder || servicoConfiguracaoBotoes?.desabilitarBotaoPrimeiro()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n fxFlex.sm\r\n fxHide.lt-sm\r\n id=\"btn_primeiro\"\r\n mat-button\r\n matTooltip=\"Primeiro item\"\r\n >\r\n <mat-icon>first_page</mat-icon>\r\n </button>\r\n <!-- BTN_PRIMEIRO -->\r\n\r\n <!-- BTN_ANTERIOR -->\r\n <button\r\n (click)=\"anterior()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoRetroceder || servicoConfiguracaoBotoes?.desabilitarBotaoAnterior()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_anterior\"\r\n mat-button\r\n matTooltip=\"Anterior\">\r\n <mat-icon>navigate_before</mat-icon>\r\n </button>\r\n <!-- BTN_ANTERIOR -->\r\n\r\n <div\r\n class=\"px-0 px-sm-12 contador-paginas\"\r\n id=\"contador_paginacao\"\r\n matTooltip=\"P\u00E1gina Atual\"\r\n >\r\n {{ entidadePaginada?.posicao }} de {{ entidadePaginada?.total }}\r\n </div>\r\n\r\n <!-- BTN_PROXIMO -->\r\n <button\r\n (click)=\"proximo()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoAvancar || servicoConfiguracaoBotoes?.desabilitarBotaoProximo()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_proximo\"\r\n mat-button\r\n matTooltip=\"Pr\u00F3ximo\">\r\n <mat-icon>navigate_next</mat-icon>\r\n </button>\r\n <!-- BTN_PROXIMO -->\r\n\r\n <!-- BTN_ULTIMO -->\r\n <button\r\n (click)=\"ultimo()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoAvancar || servicoConfiguracaoBotoes?.desabilitarBotaoUltimo()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_ultimo\"\r\n fxFlex.sm\r\n fxHide.lt-sm\r\n mat-button\r\n matTooltip=\"\u00DAltimo\">\r\n <mat-icon>last_page</mat-icon>\r\n </button>\r\n <!-- BTN_ULTIMO -->\r\n </div>\r\n <!-- /PAGINA\u00C7\u00C3O -->\r\n </div>\r\n </mat-toolbar>\r\n <!-- /DESKTOP -->\r\n\r\n <!-- MOBILE -->\r\n <mat-drawer\r\n #drawer\r\n fxFlex\r\n fxLayoutAlign=\"column\"\r\n mode=\"over\"\r\n >\r\n\r\n <!-- FECHAR SIDENAV -->\r\n <button\r\n (click)=\"drawer.toggle()\"\r\n class=\"btn-fechar-drawer\"\r\n id=\"btn_fechar_databar_mobile\"\r\n mat-icon-button\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <!-- /FECHAR SIDENAV -->\r\n\r\n <!-- STATUS -->\r\n <div class=\"pr-12\"\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"space-between center\">\r\n\r\n <div fxFlex=\"100\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\r\n <h4 class=\"pl-12\">A\u00E7\u00F5es</h4>\r\n <p class=\"texto-status\" id=\"status_mobile\">{{ status }}</p>\r\n </div>\r\n\r\n </div>\r\n <!-- /STATUS -->\r\n\r\n <!-- OPCOES -->\r\n <div\r\n class=\"px-12 overflow\"\r\n fxLayout=\"column\"\r\n fxLayoutAlign=\"start start\"\r\n >\r\n <mat-list>\r\n <!-- BTN_PRIMEIRO -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"primeiro()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoRetroceder || servicoConfiguracaoBotoes?.desabilitarBotaoPrimeiro()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_primeiro_mobile\"\r\n matTooltip=\"Primeiro item\"\r\n >\r\n <mat-icon>first_page</mat-icon>\r\n Primeiro item\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_PRIMEIRO -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_ULTIMO -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"ultimo()\"\r\n [disabled]=\"desabilitarBotoesPaginacaoAvancar || servicoConfiguracaoBotoes?.desabilitarBotaoUltimo()\"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_ultimo_mobile\"\r\n mat-button\r\n matTooltip=\"\u00DAltimo\">\r\n <mat-icon>last_page</mat-icon>\r\n \u00DAltimo item\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_ULTIMO -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- MODO_TABELA -->\r\n <mat-list-item>\r\n <button\r\n *ngIf=\"servicoConfiguracaoBotoes?.exibirBotaoModoTabela()\"\r\n (click)=\"onClickModoTabela()\"\r\n [disabled]=\"desabilitarBotaoModoTabela\"\r\n color=\"primary\"\r\n id=\"btn_modo_tabela_mobile\"\r\n mat-button\r\n matTooltip=\"Alterar exibi\u00E7\u00E3o para tabela\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n Modo tabela\r\n </button>\r\n </mat-list-item>\r\n <!-- MODO_TABELA -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_NOVA_PESQUISA -->\r\n <mat-list-item>\r\n <button (click)=\"onClickNovaPesquisa()\"\r\n [disabled]=\"servicoConfiguracaoBotoes?.desabilitarBotaoNovaPesquisa()\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_nova_pesquisa_mobile\"\r\n matTooltip=\"Nova Pesquisa\">\r\n <mat-icon>restore_page</mat-icon>\r\n Nova Pesquisa\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_NOVA_PESQUISA -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_PESQUISAR -->\r\n <mat-list-item>\r\n <button (click)=\"pesquisar()\"\r\n [disabled]=\"desabilitarBotaoPesquisar\"\r\n color=\"primary\"\r\n id=\"btn_pesquisar_mobile\"\r\n mat-button\r\n matTooltip=\"Pesquisar\">\r\n <mat-icon>search</mat-icon>\r\n Pesquisar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_PESQUISAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_ADICIONAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"inserir()\"\r\n [disabled]=\"desabilitarBotaoAdicionar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_adicionar_mobile\"\r\n matTooltip=\"Adicionar\"\r\n >\r\n <mat-icon>add_circle</mat-icon>\r\n Incluir\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_ADICIONAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_EDITAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"editar()\"\r\n [disabled]=\"desabilitarBotaoEditar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_editar_mobile\"\r\n matTooltip=\"Editar\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n Editar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_EDITAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_REMOVER -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"remover()\"\r\n [disabled]=\"desabilitarBotaoRemover\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_remover_mobile\"\r\n matTooltip=\"Remover\"\r\n >\r\n <mat-icon>delete_forever</mat-icon>\r\n Remover\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_REMOVER -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_SALVAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"salvar()\"\r\n [disabled]=\"desabilitarBotaoSalvar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_salvar_mobile\"\r\n matTooltip=\"Salvar\"\r\n >\r\n <mat-icon>save</mat-icon>\r\n Salvar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_SALVAR -->\r\n\r\n <mat-divider></mat-divider>\r\n </mat-list>\r\n </div>\r\n <!-- /OPCOES -->\r\n </mat-drawer>\r\n <!-- /MOBILE -->\r\n</div>\r\n",
|
|
637
|
+
template: "<div fxFlex=\"1 0 auto\" fxFlexLayout=\"space-around center\" fxLayout=\"column\">\r\n <!-- DESKTOP -->\r\n <mat-toolbar class=\"px-0 mat-elevation-z4\">\r\n <div fxFlex=\"1 0 auto\" fxLayout=\"row\" fxLayoutAlign=\"space-around center\">\r\n <!-- BOT\u00C3O EXIBIR DRAWER -->\r\n <mat-drawer-container fxFlex.sm fxHide.gt-sm>\r\n <button\r\n (click)=\"drawer.toggle()\"\r\n id=\"btn_exibir_databar_mobile\"\r\n mat-button\r\n type=\"button\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n </button>\r\n </mat-drawer-container>\r\n <!-- /BOT\u00C3O EXIBIR DRAWER -->\r\n\r\n <!-- A\u00C7\u00D5ES -->\r\n <div\r\n fxFlex.sm\r\n fxHide\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"space-around center\"\r\n fxShow.gt-sm\r\n >\r\n <!-- BTN_NOVA_PESQUISA -->\r\n <button\r\n (click)=\"onClickNovaPesquisa()\"\r\n [disabled]=\"servicoConfiguracaoBotoes?.desabilitarBotaoNovaPesquisa()\"\r\n color=\"primary\"\r\n id=\"btn_nova_pesquisa\"\r\n mat-button\r\n matTooltip=\"Nova Pesquisa\"\r\n >\r\n <mat-icon>insert_drive_file</mat-icon>\r\n </button>\r\n <!-- BTN_NOVA_PESQUISA -->\r\n\r\n <!-- BTN_REVERTER -->\r\n <button\r\n (click)=\"onClickReverter()\"\r\n [disabled]=\"desabilitarBotaoReverter\"\r\n color=\"primary\"\r\n id=\"btn_reverter\"\r\n mat-button\r\n matTooltip=\"Reverter\"\r\n >\r\n <mat-icon>restore</mat-icon>\r\n </button>\r\n <!-- BTN_REVERTER -->\r\n\r\n <!-- BTN_PESQUISAR -->\r\n <button\r\n (click)=\"pesquisar()\"\r\n [disabled]=\"desabilitarBotaoPesquisar\"\r\n color=\"primary\"\r\n id=\"btn_pesquisar\"\r\n mat-button\r\n matTooltip=\"Pesquisar\"\r\n >\r\n <mat-icon>search</mat-icon>\r\n </button>\r\n <!-- BTN_PESQUISAR -->\r\n\r\n <!-- BTN_ADICIONAR -->\r\n <button\r\n (click)=\"inserir()\"\r\n [disabled]=\"desabilitarBotaoAdicionar\"\r\n color=\"primary\"\r\n id=\"btn_adicionar\"\r\n mat-button\r\n matTooltip=\"Adicionar\"\r\n >\r\n <mat-icon>add_circle</mat-icon>\r\n </button>\r\n <!-- BTN_ADICIONAR -->\r\n\r\n <!-- BTN_EDITAR -->\r\n <button\r\n (click)=\"editar()\"\r\n [disabled]=\"desabilitarBotaoEditar\"\r\n color=\"primary\"\r\n id=\"btn_editar\"\r\n mat-button\r\n matTooltip=\"Editar\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <!-- BTN_EDITAR -->\r\n\r\n <!-- BTN_REMOVER -->\r\n <button\r\n (click)=\"remover()\"\r\n [disabled]=\"desabilitarBotaoRemover\"\r\n color=\"primary\"\r\n id=\"btn_remover\"\r\n mat-button\r\n matTooltip=\"Remover\"\r\n >\r\n <mat-icon>delete_forever</mat-icon>\r\n </button>\r\n <!-- BTN_REMOVER -->\r\n\r\n <!-- BTN_SALVAR -->\r\n <button\r\n (click)=\"salvar()\"\r\n [disabled]=\"desabilitarBotaoSalvar\"\r\n color=\"primary\"\r\n id=\"btn_salvar\"\r\n mat-button\r\n matTooltip=\"Salvar\"\r\n >\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <!-- BTN_SALVAR -->\r\n </div>\r\n <!-- /A\u00C7\u00D5ES -->\r\n\r\n <!-- STATUS -->\r\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\">\r\n <!-- PROGRESS -->\r\n <mat-spinner *ngIf=\"emProgresso\" [diameter]=\"20\"></mat-spinner>\r\n <!-- PROGRESS -->\r\n\r\n <button\r\n color=\"primary\"\r\n fxHide.lt-sm\r\n id=\"btn_status\"\r\n mat-button\r\n matTooltip=\"A\u00E7\u00E3o no momento\"\r\n >\r\n {{ status }}\r\n </button>\r\n </div>\r\n <!-- STATUS -->\r\n\r\n <!-- PAGINA\u00C7\u00C3O -->\r\n <div fxFlex.sm fxLayout=\"row\" fxLayoutAlign=\"center center\">\r\n <!-- BTN_PRIMEIRO -->\r\n <button\r\n (click)=\"primeiro()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoRetroceder ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoPrimeiro()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n fxFlex.sm\r\n fxHide.lt-sm\r\n id=\"btn_primeiro\"\r\n mat-button\r\n matTooltip=\"Primeiro item\"\r\n >\r\n <mat-icon>first_page</mat-icon>\r\n </button>\r\n <!-- BTN_PRIMEIRO -->\r\n\r\n <!-- BTN_ANTERIOR -->\r\n <button\r\n (click)=\"anterior()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoRetroceder ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoAnterior()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_anterior\"\r\n mat-button\r\n matTooltip=\"Anterior\"\r\n >\r\n <mat-icon>navigate_before</mat-icon>\r\n </button>\r\n <!-- BTN_ANTERIOR -->\r\n\r\n <div\r\n class=\"px-0 px-sm-12 contador-paginas\"\r\n id=\"contador_paginacao\"\r\n matTooltip=\"P\u00E1gina Atual\"\r\n >\r\n {{ entidadePaginada?.posicao }} de {{ entidadePaginada?.total }}\r\n </div>\r\n\r\n <!-- BTN_PROXIMO -->\r\n <button\r\n (click)=\"proximo()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoAvancar ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoProximo()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_proximo\"\r\n mat-button\r\n matTooltip=\"Pr\u00F3ximo\"\r\n >\r\n <mat-icon>navigate_next</mat-icon>\r\n </button>\r\n <!-- BTN_PROXIMO -->\r\n\r\n <!-- BTN_ULTIMO -->\r\n <button\r\n (click)=\"ultimo()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoAvancar ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoUltimo()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_ultimo\"\r\n fxFlex.sm\r\n fxHide.lt-sm\r\n mat-button\r\n matTooltip=\"\u00DAltimo\"\r\n >\r\n <mat-icon>last_page</mat-icon>\r\n </button>\r\n <!-- BTN_ULTIMO -->\r\n </div>\r\n <!-- /PAGINA\u00C7\u00C3O -->\r\n\r\n <div\r\n fxShow.gt-sm\r\n fxHide\r\n fxFlex.sm\r\n fxLayout=\"row\"\r\n fxLayoutAlign=\"center center\"\r\n >\r\n <!-- MODO_TABELA -->\r\n <button\r\n *ngIf=\"servicoConfiguracaoBotoes?.exibirBotaoModoTabela()\"\r\n (click)=\"onClickModoTabela()\"\r\n [disabled]=\"desabilitarBotaoModoTabela\"\r\n color=\"primary\"\r\n id=\"btn_modo_tabela\"\r\n mat-button\r\n matTooltip=\"Alterar exibi\u00E7\u00E3o para tabela\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n </button>\r\n <!-- MODO_TABELA -->\r\n </div>\r\n </div>\r\n </mat-toolbar>\r\n <!-- /DESKTOP -->\r\n\r\n <!-- MOBILE -->\r\n <mat-drawer #drawer fxFlex fxLayoutAlign=\"column\" mode=\"over\">\r\n <!-- FECHAR SIDENAV -->\r\n <button\r\n (click)=\"drawer.toggle()\"\r\n class=\"btn-fechar-drawer\"\r\n id=\"btn_fechar_databar_mobile\"\r\n mat-icon-button\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n <!-- /FECHAR SIDENAV -->\r\n\r\n <!-- STATUS -->\r\n <div class=\"pr-12\" fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\r\n <div fxFlex=\"100\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\r\n <h4 class=\"pl-12\">A\u00E7\u00F5es</h4>\r\n <p class=\"texto-status\" id=\"status_mobile\">{{ status }}</p>\r\n </div>\r\n </div>\r\n <!-- /STATUS -->\r\n\r\n <!-- OPCOES -->\r\n <div class=\"px-12 overflow\" fxLayout=\"column\" fxLayoutAlign=\"start start\">\r\n <mat-list>\r\n <!-- BTN_PRIMEIRO -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"primeiro()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoRetroceder ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoPrimeiro()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_primeiro_mobile\"\r\n matTooltip=\"Primeiro item\"\r\n >\r\n <mat-icon>first_page</mat-icon>\r\n Primeiro item\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_PRIMEIRO -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_ULTIMO -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"ultimo()\"\r\n [disabled]=\"\r\n desabilitarBotoesPaginacaoAvancar ||\r\n servicoConfiguracaoBotoes?.desabilitarBotaoUltimo()\r\n \"\r\n class=\"px-0 px-sm-12\"\r\n color=\"primary\"\r\n id=\"btn_ultimo_mobile\"\r\n mat-button\r\n matTooltip=\"\u00DAltimo\"\r\n >\r\n <mat-icon>last_page</mat-icon>\r\n \u00DAltimo item\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_ULTIMO -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- MODO_TABELA -->\r\n <mat-list-item>\r\n <button\r\n *ngIf=\"servicoConfiguracaoBotoes?.exibirBotaoModoTabela()\"\r\n (click)=\"onClickModoTabela()\"\r\n [disabled]=\"desabilitarBotaoModoTabela\"\r\n color=\"primary\"\r\n id=\"btn_modo_tabela_mobile\"\r\n mat-button\r\n matTooltip=\"Alterar exibi\u00E7\u00E3o para tabela\"\r\n >\r\n <mat-icon>list</mat-icon>\r\n Modo tabela\r\n </button>\r\n </mat-list-item>\r\n <!-- MODO_TABELA -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_NOVA_PESQUISA -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"onClickNovaPesquisa()\"\r\n [disabled]=\"\r\n servicoConfiguracaoBotoes?.desabilitarBotaoNovaPesquisa()\r\n \"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_nova_pesquisa_mobile\"\r\n matTooltip=\"Nova Pesquisa\"\r\n >\r\n <mat-icon>restore_page</mat-icon>\r\n Nova Pesquisa\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_NOVA_PESQUISA -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_PESQUISAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"pesquisar()\"\r\n [disabled]=\"desabilitarBotaoPesquisar\"\r\n color=\"primary\"\r\n id=\"btn_pesquisar_mobile\"\r\n mat-button\r\n matTooltip=\"Pesquisar\"\r\n >\r\n <mat-icon>search</mat-icon>\r\n Pesquisar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_PESQUISAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_ADICIONAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"inserir()\"\r\n [disabled]=\"desabilitarBotaoAdicionar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_adicionar_mobile\"\r\n matTooltip=\"Adicionar\"\r\n >\r\n <mat-icon>add_circle</mat-icon>\r\n Incluir\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_ADICIONAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_EDITAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"editar()\"\r\n [disabled]=\"desabilitarBotaoEditar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_editar_mobile\"\r\n matTooltip=\"Editar\"\r\n >\r\n <mat-icon>edit</mat-icon>\r\n Editar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_EDITAR -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_REMOVER -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"remover()\"\r\n [disabled]=\"desabilitarBotaoRemover\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_remover_mobile\"\r\n matTooltip=\"Remover\"\r\n >\r\n <mat-icon>delete_forever</mat-icon>\r\n Remover\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_REMOVER -->\r\n\r\n <mat-divider></mat-divider>\r\n\r\n <!-- BTN_SALVAR -->\r\n <mat-list-item>\r\n <button\r\n (click)=\"salvar()\"\r\n [disabled]=\"desabilitarBotaoSalvar\"\r\n color=\"primary\"\r\n mat-button\r\n id=\"btn_salvar_mobile\"\r\n matTooltip=\"Salvar\"\r\n >\r\n <mat-icon>save</mat-icon>\r\n Salvar\r\n </button>\r\n </mat-list-item>\r\n <!-- BTN_SALVAR -->\r\n\r\n <mat-divider></mat-divider>\r\n </mat-list>\r\n </div>\r\n <!-- /OPCOES -->\r\n </mat-drawer>\r\n <!-- /MOBILE -->\r\n</div>\r\n",
|
|
638
638
|
styles: ["::ng-deep .sucesso{background:#4caf50!important;color:#fff!important}::ng-deep .sucesso button{color:#1b5e20!important;font-weight:800!important}.contador-paginas{color:#039be5;font-size:14px}@media (max-width:959px){.contador-paginas{font-size:12px}}.btn-fechar-drawer{position:absolute;right:5px;top:5px}.texto-status{color:#039be5;text-align:center}mat-toolbar{background:#fff!important;width:100%}mat-drawer-container{background:transparent!important}mat-drawer{left:0;min-width:240px}.overflow,mat-drawer,mat-list{overflow-y:auto}:host{display:flex;flex:0 0 auto;z-index:99999}:host .mat-toolbar{background:inherit;border-bottom:1px solid #e6e6e6;color:inherit}:host .mat-toolbar .pagina{font-size:10px;margin:1vm;text-align:center}:host.above{position:relative;z-index:99999999}"]
|
|
639
639
|
},] }
|
|
640
640
|
];
|