@inovamobil/ic-databar-lib 2.0.3 → 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 +40 -30
- 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 +3 -2
- 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 +43 -35
- 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 +43 -34
- package/fesm2015/inovamobil-ic-databar-lib.js.map +1 -1
- package/inovamobil-ic-databar-lib.metadata.json +1 -1
- package/lib/ic-data-bar.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -200,7 +200,8 @@
|
|
|
200
200
|
ErrorDialogComponent.decorators = [
|
|
201
201
|
{ type: i0.Component, args: [{
|
|
202
202
|
selector: 'confirma-dialog',
|
|
203
|
-
template: "<h2 mat-dialog-title>{{titulo}}</h2>\r\n\r\n<mat-dialog-content>\r\n <p>{{mensagem}}</p>\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions align=\"end\">\r\n <button class=\"mat-raised-button\" (click)=\"close()\">Ok</button>\r\n</mat-dialog-actions
|
|
203
|
+
template: "<h2 mat-dialog-title class=\"error__title\">{{titulo}}</h2>\r\n\r\n<mat-dialog-content>\r\n <p>{{mensagem}}</p>\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions align=\"end\">\r\n <button class=\"mat-raised-button\" (click)=\"close()\">Ok</button>\r\n</mat-dialog-actions>\r\n",
|
|
204
|
+
styles: [".error__title{text-align:center}"]
|
|
204
205
|
},] }
|
|
205
206
|
];
|
|
206
207
|
ErrorDialogComponent.ctorParameters = function () { return [
|
|
@@ -323,7 +324,6 @@
|
|
|
323
324
|
enumerable: false,
|
|
324
325
|
configurable: true
|
|
325
326
|
});
|
|
326
|
-
;
|
|
327
327
|
DataBarComponent.prototype.ngOnInit = function () {
|
|
328
328
|
this.validarPropertsObrigatorias();
|
|
329
329
|
this.setProgresso(false);
|
|
@@ -345,8 +345,7 @@
|
|
|
345
345
|
};
|
|
346
346
|
Object.defineProperty(DataBarComponent.prototype, "inserindoOuEditando", {
|
|
347
347
|
get: function () {
|
|
348
|
-
return
|
|
349
|
-
this.status === exports.EStatus.editando);
|
|
348
|
+
return this.status === exports.EStatus.inserindo || this.status === exports.EStatus.editando;
|
|
350
349
|
},
|
|
351
350
|
enumerable: false,
|
|
352
351
|
configurable: true
|
|
@@ -354,10 +353,10 @@
|
|
|
354
353
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotaoModoTabela", {
|
|
355
354
|
get: function () {
|
|
356
355
|
var _a;
|
|
357
|
-
return this.status == exports.EStatus.inserindo ||
|
|
356
|
+
return (this.status == exports.EStatus.inserindo ||
|
|
358
357
|
this.status == exports.EStatus.editando ||
|
|
359
358
|
this.emProgresso ||
|
|
360
|
-
this.form.invalid || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoModoTabela());
|
|
359
|
+
this.form.invalid || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoModoTabela()));
|
|
361
360
|
},
|
|
362
361
|
enumerable: false,
|
|
363
362
|
configurable: true
|
|
@@ -365,11 +364,11 @@
|
|
|
365
364
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotaoPesquisar", {
|
|
366
365
|
get: function () {
|
|
367
366
|
var _a;
|
|
368
|
-
return this.status == exports.EStatus.inserindo ||
|
|
367
|
+
return (this.status == exports.EStatus.inserindo ||
|
|
369
368
|
this.status == exports.EStatus.editando ||
|
|
370
369
|
this.status == exports.EStatus.dadosCarregados ||
|
|
371
370
|
this.emProgresso ||
|
|
372
|
-
this.form.invalid || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoPesquisar());
|
|
371
|
+
this.form.invalid || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoPesquisar()));
|
|
373
372
|
},
|
|
374
373
|
enumerable: false,
|
|
375
374
|
configurable: true
|
|
@@ -377,10 +376,10 @@
|
|
|
377
376
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotaoReverter", {
|
|
378
377
|
get: function () {
|
|
379
378
|
var _a;
|
|
380
|
-
return this.status == exports.EStatus.novaPesquisa ||
|
|
379
|
+
return (this.status == exports.EStatus.novaPesquisa ||
|
|
381
380
|
this.status == exports.EStatus.executarAcao ||
|
|
382
381
|
this.status == exports.EStatus.dadosCarregados ||
|
|
383
|
-
this.emProgresso || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoReverter());
|
|
382
|
+
this.emProgresso || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoReverter()));
|
|
384
383
|
},
|
|
385
384
|
enumerable: false,
|
|
386
385
|
configurable: true
|
|
@@ -388,10 +387,10 @@
|
|
|
388
387
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotaoAdicionar", {
|
|
389
388
|
get: function () {
|
|
390
389
|
var _a;
|
|
391
|
-
return this.status == exports.EStatus.editando ||
|
|
390
|
+
return (this.status == exports.EStatus.editando ||
|
|
392
391
|
this.status == exports.EStatus.inserindo ||
|
|
393
392
|
this.emProgresso ||
|
|
394
|
-
this.disabled || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoAdicionar());
|
|
393
|
+
this.disabled || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoAdicionar()));
|
|
395
394
|
},
|
|
396
395
|
enumerable: false,
|
|
397
396
|
configurable: true
|
|
@@ -399,13 +398,13 @@
|
|
|
399
398
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotaoEditar", {
|
|
400
399
|
get: function () {
|
|
401
400
|
var _a;
|
|
402
|
-
return this.status == exports.EStatus.inserindo ||
|
|
401
|
+
return (this.status == exports.EStatus.inserindo ||
|
|
403
402
|
this.status == exports.EStatus.novaPesquisa ||
|
|
404
403
|
this.status == exports.EStatus.executarAcao ||
|
|
405
404
|
this.status == exports.EStatus.pesquisando ||
|
|
406
405
|
this.status == exports.EStatus.editando ||
|
|
407
406
|
this.emProgresso ||
|
|
408
|
-
this.disabled || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoEditar());
|
|
407
|
+
this.disabled || ((_a = this.servicoConfiguracaoBotoes) === null || _a === void 0 ? void 0 : _a.desabilitarBotaoEditar()));
|
|
409
408
|
},
|
|
410
409
|
enumerable: false,
|
|
411
410
|
configurable: true
|
|
@@ -413,9 +412,9 @@
|
|
|
413
412
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotaoRemover", {
|
|
414
413
|
get: function () {
|
|
415
414
|
var _a, _b;
|
|
416
|
-
return !((_a = this.entidadePaginada) === null || _a === void 0 ? void 0 : _a.entidade) ||
|
|
415
|
+
return (!((_a = this.entidadePaginada) === null || _a === void 0 ? void 0 : _a.entidade) ||
|
|
417
416
|
this.status != exports.EStatus.dadosCarregados ||
|
|
418
|
-
this.emProgresso || ((_b = this.servicoConfiguracaoBotoes) === null || _b === void 0 ? void 0 : _b.desabilitarBotaoRemover());
|
|
417
|
+
this.emProgresso || ((_b = this.servicoConfiguracaoBotoes) === null || _b === void 0 ? void 0 : _b.desabilitarBotaoRemover()));
|
|
419
418
|
},
|
|
420
419
|
enumerable: false,
|
|
421
420
|
configurable: true
|
|
@@ -423,36 +422,34 @@
|
|
|
423
422
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotaoSalvar", {
|
|
424
423
|
get: function () {
|
|
425
424
|
var _a, _b;
|
|
426
|
-
return ((_a = this.form) === null || _a === void 0 ? void 0 : _a.invalid) ||
|
|
425
|
+
return (((_a = this.form) === null || _a === void 0 ? void 0 : _a.invalid) ||
|
|
427
426
|
(this.status != exports.EStatus.inserindo && this.status != exports.EStatus.editando) ||
|
|
428
427
|
this.emProgresso ||
|
|
429
|
-
this.disabled || ((_b = this.servicoConfiguracaoBotoes) === null || _b === void 0 ? void 0 : _b.desabilitarBotaoSalvar());
|
|
428
|
+
this.disabled || ((_b = this.servicoConfiguracaoBotoes) === null || _b === void 0 ? void 0 : _b.desabilitarBotaoSalvar()));
|
|
430
429
|
},
|
|
431
430
|
enumerable: false,
|
|
432
431
|
configurable: true
|
|
433
432
|
});
|
|
434
433
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotoesPaginacaoRetroceder", {
|
|
435
434
|
get: function () {
|
|
436
|
-
return this.inserindoOuEditando ||
|
|
435
|
+
return (this.inserindoOuEditando ||
|
|
437
436
|
this.entidadePaginada.posicao <= 1 ||
|
|
438
|
-
this.emProgresso;
|
|
437
|
+
this.emProgresso);
|
|
439
438
|
},
|
|
440
439
|
enumerable: false,
|
|
441
440
|
configurable: true
|
|
442
441
|
});
|
|
443
442
|
Object.defineProperty(DataBarComponent.prototype, "desabilitarBotoesPaginacaoAvancar", {
|
|
444
443
|
get: function () {
|
|
445
|
-
return this.inserindoOuEditando ||
|
|
444
|
+
return (this.inserindoOuEditando ||
|
|
446
445
|
this.entidadePaginada.posicao >= this.entidadePaginada.total ||
|
|
447
|
-
this.emProgresso;
|
|
446
|
+
this.emProgresso);
|
|
448
447
|
},
|
|
449
448
|
enumerable: false,
|
|
450
449
|
configurable: true
|
|
451
450
|
});
|
|
452
451
|
DataBarComponent.prototype.onClickReverter = function () {
|
|
453
|
-
this.
|
|
454
|
-
this._reverter();
|
|
455
|
-
this._emitirEventoClick(exports.EEventoClick.afterClickReverter);
|
|
452
|
+
this._exibirDialogConfirmacaoReverter();
|
|
456
453
|
};
|
|
457
454
|
DataBarComponent.prototype.onClickModoTabela = function () {
|
|
458
455
|
this._emitirEventoClick(exports.EEventoClick.onClickModoTabela);
|
|
@@ -522,7 +519,8 @@
|
|
|
522
519
|
var _this = this;
|
|
523
520
|
this.setStatus(exports.EStatus.salvando);
|
|
524
521
|
this.setProgresso(true);
|
|
525
|
-
this.servicoBind
|
|
522
|
+
this.servicoBind
|
|
523
|
+
.criar()
|
|
526
524
|
.pipe(operators.finalize(function () {
|
|
527
525
|
_this._emitirEventoClick(exports.EEventoClick.afterClickSalvar);
|
|
528
526
|
}))
|
|
@@ -542,7 +540,8 @@
|
|
|
542
540
|
var _this = this;
|
|
543
541
|
this.setStatus(exports.EStatus.salvando);
|
|
544
542
|
this.setProgresso(true);
|
|
545
|
-
this.servicoBind
|
|
543
|
+
this.servicoBind
|
|
544
|
+
.editar()
|
|
546
545
|
.pipe(operators.finalize(function () {
|
|
547
546
|
_this._emitirEventoClick(exports.EEventoClick.afterClickSalvar);
|
|
548
547
|
}))
|
|
@@ -561,8 +560,7 @@
|
|
|
561
560
|
DataBarComponent.prototype.observarSetStatus = function () {
|
|
562
561
|
var _this = this;
|
|
563
562
|
if (this.servicoBind.setStatus) {
|
|
564
|
-
this.$setStatus = this.servicoBind.setStatus
|
|
565
|
-
.subscribe(function (status) {
|
|
563
|
+
this.$setStatus = this.servicoBind.setStatus.subscribe(function (status) {
|
|
566
564
|
switch (status) {
|
|
567
565
|
case exports.EStatus.editando:
|
|
568
566
|
_this.editar();
|
|
@@ -684,6 +682,18 @@
|
|
|
684
682
|
};
|
|
685
683
|
this._dialog.openDialog('Atenção!', 'Você realmente deseja excluir este registro?');
|
|
686
684
|
};
|
|
685
|
+
DataBarComponent.prototype._exibirDialogConfirmacaoReverter = function () {
|
|
686
|
+
var _this = this;
|
|
687
|
+
this._dialog.acaoOk = function () {
|
|
688
|
+
_this._reverter();
|
|
689
|
+
_this._dialog.emProgresso = false;
|
|
690
|
+
_this._dialog.closeDialog();
|
|
691
|
+
};
|
|
692
|
+
this._dialog.acaoCancelar = function () {
|
|
693
|
+
_this._dialog.closeDialog();
|
|
694
|
+
};
|
|
695
|
+
this._dialog.openDialog('Atenção!', 'As alterações realizadas serão perdidas. Deseja continuar?');
|
|
696
|
+
};
|
|
687
697
|
DataBarComponent.prototype._paginar = function (acao) {
|
|
688
698
|
var _this = this;
|
|
689
699
|
this.setStatus(exports.EStatus.pesquisando);
|
|
@@ -748,7 +758,7 @@
|
|
|
748
758
|
DataBarComponent.decorators = [
|
|
749
759
|
{ type: i0.Component, args: [{
|
|
750
760
|
selector: 'ic-data-bar',
|
|
751
|
-
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",
|
|
761
|
+
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",
|
|
752
762
|
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}"]
|
|
753
763
|
},] }
|
|
754
764
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inovamobil-ic-databar-lib.umd.js","sources":["../../../projects/ic-databar-lib/src/lib/enum/estatus.ts","../../../projects/ic-databar-lib/src/lib/contrato/OnInitDataBar.ts","../../../projects/ic-databar-lib/src/lib/contrato/DataBarConfigBotoesService.ts","../../../projects/ic-databar-lib/src/lib/enum/eeventoclick.ts","../../../projects/ic-databar-lib/src/lib/services/ic-databar-event-click.service.ts","../../../projects/ic-databar-lib/src/components/dialogs/error-dialog/error-dialog.component.ts","../../../projects/ic-databar-lib/src/components/dialogs/error-dialog/service/error-dialog.service.ts","../../../projects/ic-databar-lib/src/lib/services/ic-databar.service.ts","../../../projects/ic-databar-lib/src/lib/services/ic-databar-reverter.service.ts","../../../projects/ic-databar-lib/src/lib/ic-data-bar.component.ts","../../../projects/ic-databar-lib/src/components/dialogs/error-dialog/error-dialog.module.ts","../../../projects/ic-databar-lib/src/lib/ic-data-bar.module.ts","../../../projects/ic-databar-lib/src/inovamobil-ic-databar-lib.ts"],"sourcesContent":["\r\nexport enum EStatus {\r\n novaPesquisa = 'Nova pesquisa',\r\n inserindo = 'Inserindo',\r\n editando = 'Editando',\r\n removendo = 'Removendo',\r\n dadosCarregados = 'Dados carregados',\r\n pesquisando = 'Pesquisando',\r\n executarAcao = 'Executar ação',\r\n salvando = 'Salvando'\r\n}\r\n","import { IDataBarBindComponent } from './IDataBarBind';\r\nimport { Component, Directive } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { IDataEntidadePaginada } from './IDataEntidadePaginada';\r\nimport { IDataBarBindService } from './IDataBarService';\r\nimport { EStatus } from '../enum/estatus';\r\n\r\n@Directive()\r\nexport abstract class OnInitDataBar<T> implements IDataBarBindComponent<T> {\r\n form: FormGroup;\r\n entidadePaginada: IDataEntidadePaginada<T>;\r\n statusDataBar: EStatus;\r\n servicoDataBarBind: IDataBarBindService<T>;\r\n EStatus: typeof EStatus = EStatus;\r\n\r\n abstract onStatusChanged(status: EStatus): void;\r\n\r\n abstract onInit(): void;\r\n\r\n ngOnInit(): void {\r\n this.onInit();\r\n this.servicoDataBarBind.status = EStatus.novaPesquisa;\r\n }\r\n\r\n statusChanged(status: EStatus): void {\r\n this.servicoDataBarBind.status = status;\r\n this.statusDataBar = status;\r\n this.onStatusChanged(status);\r\n }\r\n\r\n public get inserindoOuEditando(): boolean {\r\n return this.statusDataBar === EStatus.inserindo ||\r\n this.statusDataBar === EStatus.editando;\r\n }\r\n\r\n public get inserindo(): boolean {\r\n return this.statusDataBar === EStatus.inserindo;\r\n }\r\n\r\n public get editando(): boolean {\r\n return this.statusDataBar === EStatus.editando;\r\n }\r\n\r\n public get editandoOuRemovendo(): boolean {\r\n return (this.statusDataBar === EStatus.editando || this.statusDataBar === EStatus.removendo);\r\n }\r\n}\r\n","export abstract class DataBarConfigBotoesService {\r\n desabilitarBotaoNovaPesquisa(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoReverter(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoPesquisar(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoEditar(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoAdicionar(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoRemover(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoSalvar(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoPrimeiro(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoAnterior(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoProximo(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoUltimo(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoModoTabela(...args): boolean {\r\n return false;\r\n }\r\n\r\n exibirBotaoModoTabela(...args): boolean {\r\n return false;\r\n }\r\n}\r\n","export enum EEventoClick {\r\n onClickInserir = 'onInserir',\r\n afterClickInserir = 'afterClickInserir',\r\n onClickReverter = \"onReverter\",\r\n afterClickReverter = \"afterClickReverter\",\r\n onClickNovaPesquisa = 'onNovaPesquisa',\r\n afterClickNovaPesquisa = 'afterClickNovaPesquisa',\r\n onClickEditar = 'onEditar',\r\n afterClickEditar = 'afterClickEditar',\r\n onClickRemover = 'onRemover',\r\n afterClickRemover = 'afterClickRemover',\r\n onClickSalvar = 'onClickSalvar',\r\n afterClickSalvar = 'afterClickSalvar',\r\n onClickModoTabela= 'onClickModoTabela'\r\n}\r\n\r\n","import { EEventoClick } from '../enum/eeventoclick';\r\n\r\nexport class DatabarEventClickService {\r\n\r\n constructor(private onEvent: (event: EEventoClick) => void) {}\r\n \r\n emitir(evento: EEventoClick): void {\r\n this.onEvent(evento);\r\n }\r\n\r\n}\r\n","import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Inject, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'confirma-dialog',\r\n templateUrl: './view/error-dialog.html',\r\n})\r\nexport class ErrorDialogComponent {\r\n\r\n mensagem: string;\r\n titulo: string;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef<ErrorDialogComponent>,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.mensagem = data.mensagem;\r\n this.titulo = data.titulo;\r\n }\r\n\r\n close(): void {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","import { MatDialogConfig, MatDialog } from '@angular/material/dialog';\r\nimport { Injectable } from '@angular/core';\r\n\r\nimport { ErrorDialogComponent } from '../error-dialog.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport abstract class ErrorDialogService {\r\n\r\n dialogRef: any;\r\n\r\n constructor(private dialog: MatDialog) { }\r\n\r\n openDialog(titulo: string, mensagem: string): void {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.disableClose = true;\r\n dialogConfig.autoFocus = true;\r\n\r\n dialogConfig.data = {\r\n titulo: titulo,\r\n mensagem: mensagem\r\n };\r\n\r\n dialogConfig.minWidth = '300px';\r\n\r\n this.dialogRef = this.dialog.open(ErrorDialogComponent, dialogConfig);\r\n\r\n }\r\n\r\n closeDialog(): void {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { IDataEntidadePaginada } from '../contrato/IDataEntidadePaginada';\r\nimport { IDatabarBindOnClickService, EEventoClick } from '../../public-api';\r\n\r\n@Injectable()\r\nexport class DatabarService {\r\n\r\n\r\n constructor() { }\r\n\r\n public desabilitarForm(form: FormGroup): void {\r\n form.disable({ emitEvent: false, onlySelf: true });\r\n }\r\n\r\n public habilitarForm(form: FormGroup): void {\r\n form.enable({ emitEvent: false, onlySelf: true });\r\n }\r\n\r\n public resetForm(form: FormGroup, entidadePaginada: IDataEntidadePaginada<any>): void {\r\n form.reset({ emitEvent: false, onlySelf: true });\r\n entidadePaginada.entidade = null;\r\n entidadePaginada.posicao = 0;\r\n entidadePaginada.total = 0;\r\n }\r\n\r\n public emitirEventoClick<T>(servico: IDatabarBindOnClickService<T>, evento: EEventoClick): void {\r\n if (servico.eventDatabar) {\r\n servico.eventDatabar.emitir(evento);\r\n }\r\n }\r\n\r\n definirProgresso(form: FormGroup, progresso: boolean): boolean {\r\n if (!form)\r\n return;\r\n\r\n if (progresso)\r\n this.desabilitarForm(form);\r\n else\r\n this.habilitarForm(form);\r\n\r\n return progresso;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { EStatus } from '../enum/estatus';\r\nimport { IDataEntidadePaginada } from '../contrato/IDataEntidadePaginada';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { IDataBarReverterService } from '../contrato/IDataBarReverterService';\r\n\r\n@Injectable()\r\nexport class IcDatabarReverterService<T> implements IDataBarReverterService<T>{\r\n\r\n private _statusAnterior: EStatus;\r\n private _dadosAnterioresFormulario: T;\r\n private _entidadePaginadaAnterior: IDataEntidadePaginada<T>;\r\n\r\n get statusAnterior(): EStatus {\r\n return this._statusAnterior;\r\n }\r\n\r\n public setDadosAnteriores(status: EStatus, formularo: FormGroup, entidadePaginada: IDataEntidadePaginada<T>): void {\r\n this._entidadePaginadaAnterior = {\r\n entidade: entidadePaginada.entidade,\r\n posicao: entidadePaginada.posicao,\r\n quantidade: entidadePaginada.quantidade,\r\n total: entidadePaginada.total\r\n } as IDataEntidadePaginada<T>;\r\n\r\n this._dadosAnterioresFormulario = formularo.getRawValue();\r\n this._statusAnterior = status;\r\n }\r\n\r\n public restaurarDadosAnteriores(formulario: FormGroup): IDataEntidadePaginada<T> {\r\n formulario.patchValue(this._dadosAnterioresFormulario);\r\n return this._entidadePaginadaAnterior;\r\n }\r\n\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n OnInit,\r\n HostListener,\r\n ElementRef,\r\n ViewChild,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { MatDrawer } from '@angular/material/sidenav';\r\n\r\nimport { Subscription } from 'rxjs';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\nimport { IcConfirmaDialogService } from '@inovamobil/ic-confirma-dialog';\r\nimport { IcmSnackBarService } from '@inovamobil/icm-snackbar';\r\n\r\nimport { IDataEntidadePaginada } from './contrato/IDataEntidadePaginada';\r\nimport { IDataBarBindService } from './contrato/IDataBarService';\r\nimport { EStatus } from './enum/estatus';\r\nimport { EEventoClick } from './enum/eeventoclick';\r\nimport { IDatabarBindOnClickService } from './contrato/IDataBarBindOnClickService';\r\nimport { IDatabarBindStatusService } from '../public-api';\r\nimport { ErrorDialogService } from '../components/dialogs/error-dialog/service/error-dialog.service';\r\nimport { ACAO_PAGINACAO } from './constants/ic-databar.constants';\r\nimport { DatabarService } from './services/ic-databar.service';\r\nimport { IcDatabarReverterService } from './services/ic-databar-reverter.service';\r\nimport { IDataBarReverterService } from './contrato/IDataBarReverterService';\r\nimport { DataBarConfigBotoesService } from './contrato/DataBarConfigBotoesService';\r\n\r\n@Component({\r\n selector: 'ic-data-bar',\r\n templateUrl: './view/ic-data-bar.component.html',\r\n styleUrls: ['./view/ic-data-bar.component.scss']\r\n})\r\nexport class DataBarComponent<T> implements OnInit, OnDestroy {\r\n @Input() servicoBind: IDataBarBindService<T> | IDatabarBindStatusService<T> | IDatabarBindOnClickService<T>;\r\n @Input() form: FormGroup;\r\n @Input() entidadePaginada: IDataEntidadePaginada<T>;\r\n @Input() disabled = false;\r\n @Input() servicoConfiguracaoBotoes: DataBarConfigBotoesService;\r\n @Input() set servicoReverter(servico: IDataBarReverterService<T>) {\r\n this._servicoReverter = servico;\r\n };\r\n\r\n @Output() statusChanged = new EventEmitter<EStatus>();\r\n\r\n public status: EStatus;\r\n public EStatus = EStatus;\r\n public emProgresso = false;\r\n private _servicoReverter: IDataBarReverterService<T>;\r\n private $setStatus: Subscription;\r\n\r\n @ViewChild('drawer', { static: false }) drawer: MatDrawer;\r\n\r\n constructor(\r\n private _dialog: IcConfirmaDialogService,\r\n private _dialogErro: ErrorDialogService,\r\n private _elementRef: ElementRef,\r\n private _databarService: DatabarService,\r\n private _snackBarService: IcmSnackBarService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.validarPropertsObrigatorias();\r\n this.setProgresso(false);\r\n this.novaPesquisa();\r\n this._submeterFormularioOnEnter();\r\n this.observarSetStatus();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.servicoBind.onClickEnter)\r\n this.servicoBind.onClickEnter.unsubscribe();\r\n\r\n if (this.$setStatus)\r\n this.$setStatus.unsubscribe();\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n fecharSidenav(event): void {\r\n if (this._elementRef.nativeElement.contains(event.target)) {\r\n return;\r\n }\r\n this.drawer.close();\r\n }\r\n\r\n get inserindoOuEditando(): boolean {\r\n return (this.status === EStatus.inserindo ||\r\n this.status === EStatus.editando)\r\n }\r\n\r\n get desabilitarBotaoModoTabela(): boolean {\r\n return this.status == EStatus.inserindo ||\r\n this.status == EStatus.editando ||\r\n this.emProgresso ||\r\n this.form.invalid ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoModoTabela();\r\n }\r\n\r\n get desabilitarBotaoPesquisar(): boolean {\r\n return this.status == EStatus.inserindo ||\r\n this.status == EStatus.editando ||\r\n this.status == EStatus.dadosCarregados ||\r\n this.emProgresso ||\r\n this.form.invalid ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoPesquisar();\r\n }\r\n\r\n get desabilitarBotaoReverter(): boolean {\r\n return this.status == EStatus.novaPesquisa ||\r\n this.status == EStatus.executarAcao ||\r\n this.status == EStatus.dadosCarregados ||\r\n this.emProgresso ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoReverter();\r\n }\r\n\r\n get desabilitarBotaoAdicionar(): boolean {\r\n return this.status == EStatus.editando ||\r\n this.status == EStatus.inserindo ||\r\n this.emProgresso ||\r\n this.disabled ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoAdicionar();\r\n }\r\n\r\n get desabilitarBotaoEditar(): boolean {\r\n return this.status == EStatus.inserindo ||\r\n this.status == EStatus.novaPesquisa ||\r\n this.status == EStatus.executarAcao ||\r\n this.status == EStatus.pesquisando ||\r\n this.status == EStatus.editando ||\r\n this.emProgresso ||\r\n this.disabled ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoEditar();\r\n }\r\n\r\n get desabilitarBotaoRemover(): boolean {\r\n return !this.entidadePaginada?.entidade ||\r\n this.status != EStatus.dadosCarregados ||\r\n this.emProgresso ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoRemover();\r\n }\r\n\r\n get desabilitarBotaoSalvar(): boolean {\r\n return this.form?.invalid ||\r\n (this.status != EStatus.inserindo && this.status != EStatus.editando) ||\r\n this.emProgresso ||\r\n this.disabled ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoSalvar();\r\n }\r\n\r\n get desabilitarBotoesPaginacaoRetroceder(): boolean {\r\n return this.inserindoOuEditando ||\r\n this.entidadePaginada.posicao <= 1 ||\r\n this.emProgresso;\r\n }\r\n\r\n get desabilitarBotoesPaginacaoAvancar(): boolean {\r\n return this.inserindoOuEditando ||\r\n this.entidadePaginada.posicao >= this.entidadePaginada.total ||\r\n this.emProgresso;\r\n }\r\n\r\n onClickReverter(): void {\r\n this._emitirEventoClick(EEventoClick.onClickReverter);\r\n this._reverter();\r\n this._emitirEventoClick(EEventoClick.afterClickReverter);\r\n }\r\n\r\n onClickModoTabela(): void {\r\n this._emitirEventoClick(EEventoClick.onClickModoTabela);\r\n }\r\n\r\n onClickNovaPesquisa(): void {\r\n this._emitirEventoClick(EEventoClick.onClickNovaPesquisa);\r\n this.novaPesquisa();\r\n this._emitirEventoClick(EEventoClick.afterClickNovaPesquisa);\r\n }\r\n\r\n novaPesquisa(): void {\r\n this._databarService.habilitarForm(this.form);\r\n this.form.reset({ emitEvent: false, onlySelf: true });\r\n this.entidadePaginada.entidade = this.form.value;\r\n this.entidadePaginada.posicao = 0;\r\n this.entidadePaginada.total = 0;\r\n this.setStatus(EStatus.novaPesquisa);\r\n }\r\n\r\n pesquisar(): void {\r\n if (this.form.invalid) {\r\n return;\r\n }\r\n\r\n this._setDadosAnteriores();\r\n this.setStatus(EStatus.pesquisando);\r\n this.entidadePaginada.entidade = [].concat(this._getEntidade());\r\n this._paginar();\r\n this.drawer.close();\r\n }\r\n\r\n inserir(): void {\r\n this._emitirEventoClick(EEventoClick.onClickInserir);\r\n this._clickInserir();\r\n this._emitirEventoClick(EEventoClick.afterClickInserir);\r\n }\r\n\r\n editar(): void {\r\n this._emitirEventoClick(EEventoClick.onClickEditar);\r\n this._clickEditar();\r\n this._emitirEventoClick(EEventoClick.afterClickEditar);\r\n }\r\n\r\n remover(): void {\r\n this._emitirEventoClick(EEventoClick.onClickRemover);\r\n this._clickRemover();\r\n this._emitirEventoClick(EEventoClick.afterClickRemover);\r\n }\r\n\r\n proximo(): void {\r\n this._paginar('proximo');\r\n }\r\n\r\n anterior(): void {\r\n this._paginar('anterior');\r\n }\r\n\r\n ultimo(): void {\r\n this._paginar('ultimo');\r\n }\r\n\r\n primeiro(): void {\r\n this._paginar('primeiro');\r\n }\r\n\r\n salvar(): void {\r\n this._emitirEventoClick(EEventoClick.onClickSalvar);\r\n\r\n switch (this.status) {\r\n case EStatus.inserindo:\r\n this._inserir();\r\n break;\r\n\r\n case EStatus.editando:\r\n this._editar();\r\n break;\r\n }\r\n }\r\n\r\n private _inserir(): void {\r\n this.setStatus(EStatus.salvando);\r\n this.setProgresso(true);\r\n this.servicoBind.criar()\r\n .pipe(finalize(() => {\r\n this._emitirEventoClick(EEventoClick.afterClickSalvar);\r\n }))\r\n .subscribe(\r\n success => {\r\n this.setProgresso(false);\r\n\r\n this._snackBarService.abrirSnackBarSucesso('Registro salvo com sucesso!');\r\n\r\n this.form.patchValue(success);\r\n\r\n this.setStatus(EStatus.dadosCarregados);\r\n\r\n this.drawer.close();\r\n\r\n this._databarService.desabilitarForm(this.form);\r\n },\r\n () => {\r\n this.setProgresso(false);\r\n this.setStatus(EStatus.inserindo);\r\n });\r\n }\r\n\r\n private _editar(): void {\r\n this.setStatus(EStatus.salvando);\r\n this.setProgresso(true);\r\n this.servicoBind.editar()\r\n .pipe(finalize(() => {\r\n this._emitirEventoClick(EEventoClick.afterClickSalvar);\r\n }))\r\n .subscribe(\r\n success => {\r\n this._snackBarService.abrirSnackBarSucesso('Registro editado com sucesso!');\r\n\r\n this.form.patchValue(success);\r\n\r\n this.setProgresso(false)\r\n\r\n this.setStatus(EStatus.dadosCarregados);\r\n\r\n this._databarService.desabilitarForm(this.form);\r\n\r\n this.drawer.close();\r\n },\r\n () => {\r\n this.setProgresso(false);\r\n this.setStatus(EStatus.editando);\r\n });\r\n }\r\n\r\n private observarSetStatus(): void {\r\n if ((this.servicoBind as IDatabarBindStatusService<T>).setStatus) {\r\n this.$setStatus = (this.servicoBind as IDatabarBindStatusService<T>).setStatus\r\n .subscribe(status => {\r\n switch (status) {\r\n case EStatus.editando:\r\n this.editar();\r\n this.emProgresso = false;\r\n break;\r\n case EStatus.inserindo:\r\n this.inserir();\r\n this.emProgresso = false;\r\n break;\r\n case EStatus.pesquisando:\r\n this.pesquisar();\r\n break;\r\n case EStatus.novaPesquisa:\r\n this.novaPesquisa();\r\n break;\r\n case EStatus.removendo:\r\n this.remover();\r\n break;\r\n case EStatus.dadosCarregados:\r\n this.status = EStatus.dadosCarregados;\r\n this.emProgresso = false;\r\n break;\r\n }\r\n });\r\n }\r\n }\r\n\r\n private retornarServicoReverter(): IDataBarReverterService<T> {\r\n if (this._servicoReverter == null)\r\n this._servicoReverter = new IcDatabarReverterService();\r\n\r\n return this._servicoReverter;\r\n }\r\n\r\n private _setDadosAnteriores(): void {\r\n this.retornarServicoReverter().setDadosAnteriores(this.status, this.form, this.entidadePaginada);\r\n }\r\n\r\n private _reverter(): void {\r\n this._emitirEventoClick(EEventoClick.onClickReverter);\r\n this.entidadePaginada = this.retornarServicoReverter().restaurarDadosAnteriores(this.form);\r\n const statusAnterior = this.retornarServicoReverter().statusAnterior;\r\n\r\n if (statusAnterior == EStatus.dadosCarregados)\r\n this._databarService.desabilitarForm(this.form);\r\n else\r\n this._databarService.habilitarForm(this.form);\r\n\r\n this.setStatus(statusAnterior);\r\n this._emitirEventoClick(EEventoClick.afterClickReverter);\r\n }\r\n\r\n private _resetarContadorPaginacao(): void {\r\n this.entidadePaginada.posicao = 0;\r\n this.entidadePaginada.total = 0;\r\n }\r\n\r\n private validarPropertsObrigatorias(): any {\r\n if (this.servicoBind == null) {\r\n throw new Error('É obrigatório ter um serviço de bind vinculado.');\r\n }\r\n\r\n if (this.entidadePaginada == null) {\r\n throw new Error(\r\n 'É obrigatório ter uma entidade paginada vinculada.'\r\n );\r\n }\r\n }\r\n\r\n private setStatus(status: EStatus): void {\r\n if (!status) {\r\n return;\r\n }\r\n this.status = status;\r\n this.statusChanged.emit(this.status);\r\n }\r\n\r\n private _getEntidade(): T {\r\n const result = this.form.getRawValue() as T;\r\n return result;\r\n }\r\n\r\n private _submeterFormularioOnEnter(): void {\r\n if (!this.servicoBind.onClickEnter)\r\n return;\r\n this.servicoBind.onClickEnter.subscribe(() => {\r\n if (this.status === EStatus.novaPesquisa && this.form.valid) {\r\n this.pesquisar();\r\n }\r\n });\r\n }\r\n\r\n private _clickInserir(): void {\r\n this._setDadosAnteriores();\r\n this._resetarContadorPaginacao();\r\n this._databarService.habilitarForm(this.form);\r\n this.form.reset({ emitEvent: false, onlySelf: true });\r\n this.form.markAllAsTouched();\r\n this.drawer.close();\r\n this.setStatus(EStatus.inserindo);\r\n }\r\n\r\n private _clickEditar(): void {\r\n this._setDadosAnteriores();\r\n this._databarService.habilitarForm(this.form);\r\n\r\n this.form.markAllAsTouched();\r\n this.drawer.close();\r\n this.setStatus(EStatus.editando);\r\n }\r\n\r\n private _clickRemover(): void {\r\n this.setStatus(EStatus.removendo);\r\n this._exibirDialogConfirmacao();\r\n this.drawer.close();\r\n }\r\n\r\n private _emitirEventoClick(evento: EEventoClick): void {\r\n return this._databarService.emitirEventoClick<T>((this.servicoBind as IDatabarBindOnClickService<T>), evento);\r\n }\r\n\r\n private _acaoCloseDialogConfirmacao(): void {\r\n this._dialog.emProgresso = false;\r\n this._dialog.closeDialog();\r\n this.setStatus(EStatus.dadosCarregados);\r\n }\r\n\r\n private _exibirDialogConfirmacao(): void {\r\n this._dialog.acaoMensagem = 'Removendo registro...';\r\n this._dialog.acaoOk = () =>\r\n this.servicoBind.remover().subscribe(\r\n () => {\r\n this._dialog.closeDialog();\r\n this.novaPesquisa();\r\n this._dialog.emProgresso = false;\r\n this._snackBarService.abrirSnackBarSucesso('Removido com sucesso!');\r\n },\r\n () => this._acaoCloseDialogConfirmacao()\r\n );\r\n this._dialog.acaoCancelar = () => {\r\n this._acaoCloseDialogConfirmacao();\r\n };\r\n\r\n this._dialog.openDialog(\r\n 'Atenção!',\r\n 'Você realmente deseja excluir este registro?'\r\n );\r\n }\r\n\r\n private _paginar(acao?: ACAO_PAGINACAO): void {\r\n this.setStatus(EStatus.pesquisando);\r\n\r\n if (this.entidadePaginada.entidade == null) {\r\n this.entidadePaginada.entidade = [].concat(this._getEntidade());\r\n }\r\n\r\n const posicaoAnterior = this.entidadePaginada.posicao;\r\n\r\n switch (acao) {\r\n case 'primeiro':\r\n this.entidadePaginada.posicao = 1;\r\n break;\r\n case 'ultimo':\r\n this.entidadePaginada.posicao = this.entidadePaginada.total;\r\n break;\r\n case 'proximo':\r\n this.entidadePaginada.posicao++;\r\n break;\r\n case 'anterior':\r\n this.entidadePaginada.posicao--;\r\n break;\r\n default:\r\n this.entidadePaginada.posicao = 0;\r\n break;\r\n }\r\n\r\n this.setProgresso(true);\r\n\r\n this.servicoBind.listarPaginacao(this.entidadePaginada).subscribe(\r\n success => {\r\n this.setProgresso(false);\r\n\r\n if (success == null) {\r\n this._dialogErro.openDialog(\r\n 'Atenção!',\r\n 'Nenhum registro foi encontrado.'\r\n );\r\n this.setStatus(EStatus.novaPesquisa);\r\n return;\r\n }\r\n\r\n if (success.entidade == null) {\r\n this._databarService.resetForm(this.form, this.entidadePaginada);\r\n this.setStatus(EStatus.novaPesquisa);\r\n return;\r\n }\r\n\r\n this.setStatus(EStatus.dadosCarregados);\r\n\r\n if (!this.entidadePaginada.entidade) {\r\n this.entidadePaginada = success;\r\n } else {\r\n this.entidadePaginada.total = success.total;\r\n this.entidadePaginada.posicao = success.posicao;\r\n }\r\n\r\n this.form.patchValue(success.entidade[0]);\r\n\r\n this.setProgresso(false);\r\n\r\n this._databarService.desabilitarForm(this.form);\r\n },\r\n error => {\r\n console.error('erro paginação', error);\r\n this.setStatus(EStatus.dadosCarregados);\r\n this.entidadePaginada.posicao = posicaoAnterior;\r\n this.setProgresso(false);\r\n this._databarService.desabilitarForm(this.form);\r\n });\r\n }\r\n\r\n private setProgresso(progresso: boolean): void {\r\n this.emProgresso = this._databarService.definirProgresso(this.form, progresso);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { ErrorDialogComponent } from './error-dialog.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [ErrorDialogComponent],\r\n imports: [\r\n MatDialogModule\r\n ],\r\n exports: [ErrorDialogComponent],\r\n entryComponents: [ErrorDialogComponent]\r\n})\r\nexport class ErrorDialogModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDividerModule } from '@angular/material/divider';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { IcConfirmaDialogModule } from '@inovamobil/ic-confirma-dialog';\r\nimport { DataBarComponent } from './ic-data-bar.component';\r\nimport { ErrorDialogModule } from '../components/dialogs/error-dialog/error-dialog.module';\r\nimport { DatabarService } from './services/ic-databar.service';\r\nimport { IcmSnackBarModule } from '@inovamobil/icm-snackbar';\r\n\r\n@NgModule({\r\n declarations: [DataBarComponent],\r\n imports: [\r\n CommonModule,\r\n MatToolbarModule,\r\n MatListModule,\r\n MatSidenavModule,\r\n MatIconModule,\r\n MatProgressSpinnerModule,\r\n MatDividerModule,\r\n MatButtonModule,\r\n MatTooltipModule,\r\n FlexLayoutModule,\r\n IcConfirmaDialogModule,\r\n ErrorDialogModule,\r\n IcmSnackBarModule\r\n ],\r\n exports: [DataBarComponent],\r\n providers: [DatabarService]\r\n})\r\nexport class DataBarModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {ErrorDialogComponent as ɵd} from './components/dialogs/error-dialog/error-dialog.component';\nexport {ErrorDialogModule as ɵc} from './components/dialogs/error-dialog/error-dialog.module';\nexport {ErrorDialogService as ɵa} from './components/dialogs/error-dialog/service/error-dialog.service';\nexport {DatabarService as ɵb} from './lib/services/ic-databar.service';"],"names":["EStatus","Directive","EEventoClick","Component","MatDialogRef","Inject","MAT_DIALOG_DATA","MatDialogConfig","Injectable","MatDialog","EventEmitter","finalize","IcConfirmaDialogService","ElementRef","IcmSnackBarService","Input","Output","ViewChild","HostListener","NgModule","MatDialogModule","CommonModule","MatToolbarModule","MatListModule","MatSidenavModule","MatIconModule","MatProgressSpinnerModule","MatDividerModule","MatButtonModule","MatTooltipModule","FlexLayoutModule","IcConfirmaDialogModule","IcmSnackBarModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"inovamobil-ic-databar-lib.umd.js","sources":["../../../projects/ic-databar-lib/src/lib/enum/estatus.ts","../../../projects/ic-databar-lib/src/lib/contrato/OnInitDataBar.ts","../../../projects/ic-databar-lib/src/lib/contrato/DataBarConfigBotoesService.ts","../../../projects/ic-databar-lib/src/lib/enum/eeventoclick.ts","../../../projects/ic-databar-lib/src/lib/services/ic-databar-event-click.service.ts","../../../projects/ic-databar-lib/src/components/dialogs/error-dialog/error-dialog.component.ts","../../../projects/ic-databar-lib/src/components/dialogs/error-dialog/service/error-dialog.service.ts","../../../projects/ic-databar-lib/src/lib/services/ic-databar.service.ts","../../../projects/ic-databar-lib/src/lib/services/ic-databar-reverter.service.ts","../../../projects/ic-databar-lib/src/lib/ic-data-bar.component.ts","../../../projects/ic-databar-lib/src/components/dialogs/error-dialog/error-dialog.module.ts","../../../projects/ic-databar-lib/src/lib/ic-data-bar.module.ts","../../../projects/ic-databar-lib/src/inovamobil-ic-databar-lib.ts"],"sourcesContent":["\r\nexport enum EStatus {\r\n novaPesquisa = 'Nova pesquisa',\r\n inserindo = 'Inserindo',\r\n editando = 'Editando',\r\n removendo = 'Removendo',\r\n dadosCarregados = 'Dados carregados',\r\n pesquisando = 'Pesquisando',\r\n executarAcao = 'Executar ação',\r\n salvando = 'Salvando'\r\n}\r\n","import { IDataBarBindComponent } from './IDataBarBind';\r\nimport { Component, Directive } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { IDataEntidadePaginada } from './IDataEntidadePaginada';\r\nimport { IDataBarBindService } from './IDataBarService';\r\nimport { EStatus } from '../enum/estatus';\r\n\r\n@Directive()\r\nexport abstract class OnInitDataBar<T> implements IDataBarBindComponent<T> {\r\n form: FormGroup;\r\n entidadePaginada: IDataEntidadePaginada<T>;\r\n statusDataBar: EStatus;\r\n servicoDataBarBind: IDataBarBindService<T>;\r\n EStatus: typeof EStatus = EStatus;\r\n\r\n abstract onStatusChanged(status: EStatus): void;\r\n\r\n abstract onInit(): void;\r\n\r\n ngOnInit(): void {\r\n this.onInit();\r\n this.servicoDataBarBind.status = EStatus.novaPesquisa;\r\n }\r\n\r\n statusChanged(status: EStatus): void {\r\n this.servicoDataBarBind.status = status;\r\n this.statusDataBar = status;\r\n this.onStatusChanged(status);\r\n }\r\n\r\n public get inserindoOuEditando(): boolean {\r\n return this.statusDataBar === EStatus.inserindo ||\r\n this.statusDataBar === EStatus.editando;\r\n }\r\n\r\n public get inserindo(): boolean {\r\n return this.statusDataBar === EStatus.inserindo;\r\n }\r\n\r\n public get editando(): boolean {\r\n return this.statusDataBar === EStatus.editando;\r\n }\r\n\r\n public get editandoOuRemovendo(): boolean {\r\n return (this.statusDataBar === EStatus.editando || this.statusDataBar === EStatus.removendo);\r\n }\r\n}\r\n","export abstract class DataBarConfigBotoesService {\r\n desabilitarBotaoNovaPesquisa(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoReverter(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoPesquisar(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoEditar(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoAdicionar(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoRemover(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoSalvar(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoPrimeiro(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoAnterior(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoProximo(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoUltimo(...args): boolean {\r\n return false;\r\n }\r\n\r\n desabilitarBotaoModoTabela(...args): boolean {\r\n return false;\r\n }\r\n\r\n exibirBotaoModoTabela(...args): boolean {\r\n return false;\r\n }\r\n}\r\n","export enum EEventoClick {\r\n onClickInserir = 'onInserir',\r\n afterClickInserir = 'afterClickInserir',\r\n onClickReverter = \"onReverter\",\r\n afterClickReverter = \"afterClickReverter\",\r\n onClickNovaPesquisa = 'onNovaPesquisa',\r\n afterClickNovaPesquisa = 'afterClickNovaPesquisa',\r\n onClickEditar = 'onEditar',\r\n afterClickEditar = 'afterClickEditar',\r\n onClickRemover = 'onRemover',\r\n afterClickRemover = 'afterClickRemover',\r\n onClickSalvar = 'onClickSalvar',\r\n afterClickSalvar = 'afterClickSalvar',\r\n onClickModoTabela= 'onClickModoTabela'\r\n}\r\n\r\n","import { EEventoClick } from '../enum/eeventoclick';\r\n\r\nexport class DatabarEventClickService {\r\n\r\n constructor(private onEvent: (event: EEventoClick) => void) {}\r\n \r\n emitir(evento: EEventoClick): void {\r\n this.onEvent(evento);\r\n }\r\n\r\n}\r\n","import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Inject, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'confirma-dialog',\r\n templateUrl: './view/error-dialog.html',\r\n styleUrls: ['./view/error-dialog.scss']\r\n})\r\nexport class ErrorDialogComponent {\r\n\r\n mensagem: string;\r\n titulo: string;\r\n\r\n constructor(\r\n private dialogRef: MatDialogRef<ErrorDialogComponent>,\r\n @Inject(MAT_DIALOG_DATA) data) {\r\n\r\n this.mensagem = data.mensagem;\r\n this.titulo = data.titulo;\r\n }\r\n\r\n close(): void {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n","import { MatDialogConfig, MatDialog } from '@angular/material/dialog';\r\nimport { Injectable } from '@angular/core';\r\n\r\nimport { ErrorDialogComponent } from '../error-dialog.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport abstract class ErrorDialogService {\r\n\r\n dialogRef: any;\r\n\r\n constructor(private dialog: MatDialog) { }\r\n\r\n openDialog(titulo: string, mensagem: string): void {\r\n const dialogConfig = new MatDialogConfig();\r\n dialogConfig.disableClose = true;\r\n dialogConfig.autoFocus = true;\r\n\r\n dialogConfig.data = {\r\n titulo: titulo,\r\n mensagem: mensagem\r\n };\r\n\r\n dialogConfig.minWidth = '300px';\r\n\r\n this.dialogRef = this.dialog.open(ErrorDialogComponent, dialogConfig);\r\n\r\n }\r\n\r\n closeDialog(): void {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\n\r\nimport { IDataEntidadePaginada } from '../contrato/IDataEntidadePaginada';\r\nimport { IDatabarBindOnClickService, EEventoClick } from '../../public-api';\r\n\r\n@Injectable()\r\nexport class DatabarService {\r\n\r\n\r\n constructor() { }\r\n\r\n public desabilitarForm(form: FormGroup): void {\r\n form.disable({ emitEvent: false, onlySelf: true });\r\n }\r\n\r\n public habilitarForm(form: FormGroup): void {\r\n form.enable({ emitEvent: false, onlySelf: true });\r\n }\r\n\r\n public resetForm(form: FormGroup, entidadePaginada: IDataEntidadePaginada<any>): void {\r\n form.reset({ emitEvent: false, onlySelf: true });\r\n entidadePaginada.entidade = null;\r\n entidadePaginada.posicao = 0;\r\n entidadePaginada.total = 0;\r\n }\r\n\r\n public emitirEventoClick<T>(servico: IDatabarBindOnClickService<T>, evento: EEventoClick): void {\r\n if (servico.eventDatabar) {\r\n servico.eventDatabar.emitir(evento);\r\n }\r\n }\r\n\r\n definirProgresso(form: FormGroup, progresso: boolean): boolean {\r\n if (!form)\r\n return;\r\n\r\n if (progresso)\r\n this.desabilitarForm(form);\r\n else\r\n this.habilitarForm(form);\r\n\r\n return progresso;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { EStatus } from '../enum/estatus';\r\nimport { IDataEntidadePaginada } from '../contrato/IDataEntidadePaginada';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { IDataBarReverterService } from '../contrato/IDataBarReverterService';\r\n\r\n@Injectable()\r\nexport class IcDatabarReverterService<T> implements IDataBarReverterService<T>{\r\n\r\n private _statusAnterior: EStatus;\r\n private _dadosAnterioresFormulario: T;\r\n private _entidadePaginadaAnterior: IDataEntidadePaginada<T>;\r\n\r\n get statusAnterior(): EStatus {\r\n return this._statusAnterior;\r\n }\r\n\r\n public setDadosAnteriores(status: EStatus, formularo: FormGroup, entidadePaginada: IDataEntidadePaginada<T>): void {\r\n this._entidadePaginadaAnterior = {\r\n entidade: entidadePaginada.entidade,\r\n posicao: entidadePaginada.posicao,\r\n quantidade: entidadePaginada.quantidade,\r\n total: entidadePaginada.total\r\n } as IDataEntidadePaginada<T>;\r\n\r\n this._dadosAnterioresFormulario = formularo.getRawValue();\r\n this._statusAnterior = status;\r\n }\r\n\r\n public restaurarDadosAnteriores(formulario: FormGroup): IDataEntidadePaginada<T> {\r\n formulario.patchValue(this._dadosAnterioresFormulario);\r\n return this._entidadePaginadaAnterior;\r\n }\r\n\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n OnInit,\r\n HostListener,\r\n ElementRef,\r\n ViewChild,\r\n OnDestroy,\r\n} from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { MatDrawer } from '@angular/material/sidenav';\r\n\r\nimport { Subscription } from 'rxjs';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\nimport { IcConfirmaDialogService } from '@inovamobil/ic-confirma-dialog';\r\nimport { IcmSnackBarService } from '@inovamobil/icm-snackbar';\r\n\r\nimport { IDataEntidadePaginada } from './contrato/IDataEntidadePaginada';\r\nimport { IDataBarBindService } from './contrato/IDataBarService';\r\nimport { EStatus } from './enum/estatus';\r\nimport { EEventoClick } from './enum/eeventoclick';\r\nimport { IDatabarBindOnClickService } from './contrato/IDataBarBindOnClickService';\r\nimport { IDatabarBindStatusService } from '../public-api';\r\nimport { ErrorDialogService } from '../components/dialogs/error-dialog/service/error-dialog.service';\r\nimport { ACAO_PAGINACAO } from './constants/ic-databar.constants';\r\nimport { DatabarService } from './services/ic-databar.service';\r\nimport { IcDatabarReverterService } from './services/ic-databar-reverter.service';\r\nimport { IDataBarReverterService } from './contrato/IDataBarReverterService';\r\nimport { DataBarConfigBotoesService } from './contrato/DataBarConfigBotoesService';\r\n\r\n@Component({\r\n selector: 'ic-data-bar',\r\n templateUrl: './view/ic-data-bar.component.html',\r\n styleUrls: ['./view/ic-data-bar.component.scss'],\r\n})\r\nexport class DataBarComponent<T> implements OnInit, OnDestroy {\r\n @Input() servicoBind:\r\n | IDataBarBindService<T>\r\n | IDatabarBindStatusService<T>\r\n | IDatabarBindOnClickService<T>;\r\n @Input() form: FormGroup;\r\n @Input() entidadePaginada: IDataEntidadePaginada<T>;\r\n @Input() disabled = false;\r\n @Input() servicoConfiguracaoBotoes: DataBarConfigBotoesService;\r\n @Input() set servicoReverter(servico: IDataBarReverterService<T>) {\r\n this._servicoReverter = servico;\r\n }\r\n\r\n @Output() statusChanged = new EventEmitter<EStatus>();\r\n\r\n public status: EStatus;\r\n public EStatus = EStatus;\r\n public emProgresso = false;\r\n private _servicoReverter: IDataBarReverterService<T>;\r\n private $setStatus: Subscription;\r\n\r\n @ViewChild('drawer', { static: false }) drawer: MatDrawer;\r\n\r\n constructor(\r\n private _dialog: IcConfirmaDialogService,\r\n private _dialogErro: ErrorDialogService,\r\n private _elementRef: ElementRef,\r\n private _databarService: DatabarService,\r\n private _snackBarService: IcmSnackBarService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.validarPropertsObrigatorias();\r\n this.setProgresso(false);\r\n this.novaPesquisa();\r\n this._submeterFormularioOnEnter();\r\n this.observarSetStatus();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.servicoBind.onClickEnter) this.servicoBind.onClickEnter.unsubscribe();\r\n\r\n if (this.$setStatus) this.$setStatus.unsubscribe();\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n fecharSidenav(event): void {\r\n if (this._elementRef.nativeElement.contains(event.target)) {\r\n return;\r\n }\r\n this.drawer.close();\r\n }\r\n\r\n get inserindoOuEditando(): boolean {\r\n return this.status === EStatus.inserindo || this.status === EStatus.editando;\r\n }\r\n\r\n get desabilitarBotaoModoTabela(): boolean {\r\n return (\r\n this.status == EStatus.inserindo ||\r\n this.status == EStatus.editando ||\r\n this.emProgresso ||\r\n this.form.invalid ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoModoTabela()\r\n );\r\n }\r\n\r\n get desabilitarBotaoPesquisar(): boolean {\r\n return (\r\n this.status == EStatus.inserindo ||\r\n this.status == EStatus.editando ||\r\n this.status == EStatus.dadosCarregados ||\r\n this.emProgresso ||\r\n this.form.invalid ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoPesquisar()\r\n );\r\n }\r\n\r\n get desabilitarBotaoReverter(): boolean {\r\n return (\r\n this.status == EStatus.novaPesquisa ||\r\n this.status == EStatus.executarAcao ||\r\n this.status == EStatus.dadosCarregados ||\r\n this.emProgresso ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoReverter()\r\n );\r\n }\r\n\r\n get desabilitarBotaoAdicionar(): boolean {\r\n return (\r\n this.status == EStatus.editando ||\r\n this.status == EStatus.inserindo ||\r\n this.emProgresso ||\r\n this.disabled ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoAdicionar()\r\n );\r\n }\r\n\r\n get desabilitarBotaoEditar(): boolean {\r\n return (\r\n this.status == EStatus.inserindo ||\r\n this.status == EStatus.novaPesquisa ||\r\n this.status == EStatus.executarAcao ||\r\n this.status == EStatus.pesquisando ||\r\n this.status == EStatus.editando ||\r\n this.emProgresso ||\r\n this.disabled ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoEditar()\r\n );\r\n }\r\n\r\n get desabilitarBotaoRemover(): boolean {\r\n return (\r\n !this.entidadePaginada?.entidade ||\r\n this.status != EStatus.dadosCarregados ||\r\n this.emProgresso ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoRemover()\r\n );\r\n }\r\n\r\n get desabilitarBotaoSalvar(): boolean {\r\n return (\r\n this.form?.invalid ||\r\n (this.status != EStatus.inserindo && this.status != EStatus.editando) ||\r\n this.emProgresso ||\r\n this.disabled ||\r\n this.servicoConfiguracaoBotoes?.desabilitarBotaoSalvar()\r\n );\r\n }\r\n\r\n get desabilitarBotoesPaginacaoRetroceder(): boolean {\r\n return (\r\n this.inserindoOuEditando ||\r\n this.entidadePaginada.posicao <= 1 ||\r\n this.emProgresso\r\n );\r\n }\r\n\r\n get desabilitarBotoesPaginacaoAvancar(): boolean {\r\n return (\r\n this.inserindoOuEditando ||\r\n this.entidadePaginada.posicao >= this.entidadePaginada.total ||\r\n this.emProgresso\r\n );\r\n }\r\n\r\n onClickReverter(): void {\r\n this._exibirDialogConfirmacaoReverter();\r\n }\r\n\r\n onClickModoTabela(): void {\r\n this._emitirEventoClick(EEventoClick.onClickModoTabela);\r\n }\r\n\r\n onClickNovaPesquisa(): void {\r\n this._emitirEventoClick(EEventoClick.onClickNovaPesquisa);\r\n this.novaPesquisa();\r\n this._emitirEventoClick(EEventoClick.afterClickNovaPesquisa);\r\n }\r\n\r\n novaPesquisa(): void {\r\n this._databarService.habilitarForm(this.form);\r\n this.form.reset({ emitEvent: false, onlySelf: true });\r\n this.entidadePaginada.entidade = this.form.value;\r\n this.entidadePaginada.posicao = 0;\r\n this.entidadePaginada.total = 0;\r\n this.setStatus(EStatus.novaPesquisa);\r\n }\r\n\r\n pesquisar(): void {\r\n if (this.form.invalid) {\r\n return;\r\n }\r\n\r\n this._setDadosAnteriores();\r\n this.setStatus(EStatus.pesquisando);\r\n this.entidadePaginada.entidade = [].concat(this._getEntidade());\r\n this._paginar();\r\n this.drawer.close();\r\n }\r\n\r\n inserir(): void {\r\n this._emitirEventoClick(EEventoClick.onClickInserir);\r\n this._clickInserir();\r\n this._emitirEventoClick(EEventoClick.afterClickInserir);\r\n }\r\n\r\n editar(): void {\r\n this._emitirEventoClick(EEventoClick.onClickEditar);\r\n this._clickEditar();\r\n this._emitirEventoClick(EEventoClick.afterClickEditar);\r\n }\r\n\r\n remover(): void {\r\n this._emitirEventoClick(EEventoClick.onClickRemover);\r\n this._clickRemover();\r\n this._emitirEventoClick(EEventoClick.afterClickRemover);\r\n }\r\n\r\n proximo(): void {\r\n this._paginar('proximo');\r\n }\r\n\r\n anterior(): void {\r\n this._paginar('anterior');\r\n }\r\n\r\n ultimo(): void {\r\n this._paginar('ultimo');\r\n }\r\n\r\n primeiro(): void {\r\n this._paginar('primeiro');\r\n }\r\n\r\n salvar(): void {\r\n this._emitirEventoClick(EEventoClick.onClickSalvar);\r\n\r\n switch (this.status) {\r\n case EStatus.inserindo:\r\n this._inserir();\r\n break;\r\n\r\n case EStatus.editando:\r\n this._editar();\r\n break;\r\n }\r\n }\r\n\r\n private _inserir(): void {\r\n this.setStatus(EStatus.salvando);\r\n this.setProgresso(true);\r\n this.servicoBind\r\n .criar()\r\n .pipe(\r\n finalize(() => {\r\n this._emitirEventoClick(EEventoClick.afterClickSalvar);\r\n })\r\n )\r\n .subscribe(\r\n (success) => {\r\n this.setProgresso(false);\r\n\r\n this._snackBarService.abrirSnackBarSucesso(\r\n 'Registro salvo com sucesso!'\r\n );\r\n\r\n this.form.patchValue(success);\r\n\r\n this.setStatus(EStatus.dadosCarregados);\r\n\r\n this.drawer.close();\r\n\r\n this._databarService.desabilitarForm(this.form);\r\n },\r\n () => {\r\n this.setProgresso(false);\r\n this.setStatus(EStatus.inserindo);\r\n }\r\n );\r\n }\r\n\r\n private _editar(): void {\r\n this.setStatus(EStatus.salvando);\r\n this.setProgresso(true);\r\n this.servicoBind\r\n .editar()\r\n .pipe(\r\n finalize(() => {\r\n this._emitirEventoClick(EEventoClick.afterClickSalvar);\r\n })\r\n )\r\n .subscribe(\r\n (success) => {\r\n this._snackBarService.abrirSnackBarSucesso(\r\n 'Registro editado com sucesso!'\r\n );\r\n\r\n this.form.patchValue(success);\r\n\r\n this.setProgresso(false);\r\n\r\n this.setStatus(EStatus.dadosCarregados);\r\n\r\n this._databarService.desabilitarForm(this.form);\r\n\r\n this.drawer.close();\r\n },\r\n () => {\r\n this.setProgresso(false);\r\n this.setStatus(EStatus.editando);\r\n }\r\n );\r\n }\r\n\r\n private observarSetStatus(): void {\r\n if ((this.servicoBind as IDatabarBindStatusService<T>).setStatus) {\r\n this.$setStatus = (\r\n this.servicoBind as IDatabarBindStatusService<T>\r\n ).setStatus.subscribe((status) => {\r\n switch (status) {\r\n case EStatus.editando:\r\n this.editar();\r\n this.emProgresso = false;\r\n break;\r\n case EStatus.inserindo:\r\n this.inserir();\r\n this.emProgresso = false;\r\n break;\r\n case EStatus.pesquisando:\r\n this.pesquisar();\r\n break;\r\n case EStatus.novaPesquisa:\r\n this.novaPesquisa();\r\n break;\r\n case EStatus.removendo:\r\n this.remover();\r\n break;\r\n case EStatus.dadosCarregados:\r\n this.status = EStatus.dadosCarregados;\r\n this.emProgresso = false;\r\n break;\r\n }\r\n });\r\n }\r\n }\r\n\r\n private retornarServicoReverter(): IDataBarReverterService<T> {\r\n if (this._servicoReverter == null)\r\n this._servicoReverter = new IcDatabarReverterService();\r\n\r\n return this._servicoReverter;\r\n }\r\n\r\n private _setDadosAnteriores(): void {\r\n this.retornarServicoReverter().setDadosAnteriores(\r\n this.status,\r\n this.form,\r\n this.entidadePaginada\r\n );\r\n }\r\n\r\n private _reverter(): void {\r\n this._emitirEventoClick(EEventoClick.onClickReverter);\r\n this.entidadePaginada = this.retornarServicoReverter().restaurarDadosAnteriores(\r\n this.form\r\n );\r\n const statusAnterior = this.retornarServicoReverter().statusAnterior;\r\n\r\n if (statusAnterior == EStatus.dadosCarregados)\r\n this._databarService.desabilitarForm(this.form);\r\n else this._databarService.habilitarForm(this.form);\r\n\r\n this.setStatus(statusAnterior);\r\n this._emitirEventoClick(EEventoClick.afterClickReverter);\r\n }\r\n\r\n private _resetarContadorPaginacao(): void {\r\n this.entidadePaginada.posicao = 0;\r\n this.entidadePaginada.total = 0;\r\n }\r\n\r\n private validarPropertsObrigatorias(): any {\r\n if (this.servicoBind == null) {\r\n throw new Error('É obrigatório ter um serviço de bind vinculado.');\r\n }\r\n\r\n if (this.entidadePaginada == null) {\r\n throw new Error('É obrigatório ter uma entidade paginada vinculada.');\r\n }\r\n }\r\n\r\n private setStatus(status: EStatus): void {\r\n if (!status) {\r\n return;\r\n }\r\n this.status = status;\r\n this.statusChanged.emit(this.status);\r\n }\r\n\r\n private _getEntidade(): T {\r\n const result = this.form.getRawValue() as T;\r\n return result;\r\n }\r\n\r\n private _submeterFormularioOnEnter(): void {\r\n if (!this.servicoBind.onClickEnter) return;\r\n this.servicoBind.onClickEnter.subscribe(() => {\r\n if (this.status === EStatus.novaPesquisa && this.form.valid) {\r\n this.pesquisar();\r\n }\r\n });\r\n }\r\n\r\n private _clickInserir(): void {\r\n this._setDadosAnteriores();\r\n this._resetarContadorPaginacao();\r\n this._databarService.habilitarForm(this.form);\r\n this.form.reset({ emitEvent: false, onlySelf: true });\r\n this.form.markAllAsTouched();\r\n this.drawer.close();\r\n this.setStatus(EStatus.inserindo);\r\n }\r\n\r\n private _clickEditar(): void {\r\n this._setDadosAnteriores();\r\n this._databarService.habilitarForm(this.form);\r\n\r\n this.form.markAllAsTouched();\r\n this.drawer.close();\r\n this.setStatus(EStatus.editando);\r\n }\r\n\r\n private _clickRemover(): void {\r\n this.setStatus(EStatus.removendo);\r\n this._exibirDialogConfirmacao();\r\n this.drawer.close();\r\n }\r\n\r\n private _emitirEventoClick(evento: EEventoClick): void {\r\n return this._databarService.emitirEventoClick<T>(\r\n this.servicoBind as IDatabarBindOnClickService<T>,\r\n evento\r\n );\r\n }\r\n\r\n private _acaoCloseDialogConfirmacao(): void {\r\n this._dialog.emProgresso = false;\r\n this._dialog.closeDialog();\r\n this.setStatus(EStatus.dadosCarregados);\r\n }\r\n\r\n private _exibirDialogConfirmacao(): void {\r\n this._dialog.acaoMensagem = 'Removendo registro...';\r\n this._dialog.acaoOk = () =>\r\n this.servicoBind.remover().subscribe(\r\n () => {\r\n this._dialog.closeDialog();\r\n this.novaPesquisa();\r\n this._dialog.emProgresso = false;\r\n this._snackBarService.abrirSnackBarSucesso('Removido com sucesso!');\r\n },\r\n () => this._acaoCloseDialogConfirmacao()\r\n );\r\n this._dialog.acaoCancelar = () => {\r\n this._acaoCloseDialogConfirmacao();\r\n };\r\n\r\n this._dialog.openDialog(\r\n 'Atenção!',\r\n 'Você realmente deseja excluir este registro?'\r\n );\r\n }\r\n\r\n private _exibirDialogConfirmacaoReverter(): void {\r\n this._dialog.acaoOk = () => {\r\n this._reverter();\r\n this._dialog.emProgresso = false;\r\n this._dialog.closeDialog();\r\n };\r\n\r\n this._dialog.acaoCancelar = () => {\r\n this._dialog.closeDialog();\r\n };\r\n\r\n this._dialog.openDialog(\r\n 'Atenção!',\r\n 'As alterações realizadas serão perdidas. Deseja continuar?'\r\n );\r\n }\r\n\r\n private _paginar(acao?: ACAO_PAGINACAO): void {\r\n this.setStatus(EStatus.pesquisando);\r\n\r\n if (this.entidadePaginada.entidade == null) {\r\n this.entidadePaginada.entidade = [].concat(this._getEntidade());\r\n }\r\n\r\n const posicaoAnterior = this.entidadePaginada.posicao;\r\n\r\n switch (acao) {\r\n case 'primeiro':\r\n this.entidadePaginada.posicao = 1;\r\n break;\r\n case 'ultimo':\r\n this.entidadePaginada.posicao = this.entidadePaginada.total;\r\n break;\r\n case 'proximo':\r\n this.entidadePaginada.posicao++;\r\n break;\r\n case 'anterior':\r\n this.entidadePaginada.posicao--;\r\n break;\r\n default:\r\n this.entidadePaginada.posicao = 0;\r\n break;\r\n }\r\n\r\n this.setProgresso(true);\r\n\r\n this.servicoBind.listarPaginacao(this.entidadePaginada).subscribe(\r\n (success) => {\r\n this.setProgresso(false);\r\n\r\n if (success == null) {\r\n this._dialogErro.openDialog(\r\n 'Atenção!',\r\n 'Nenhum registro foi encontrado.'\r\n );\r\n this.setStatus(EStatus.novaPesquisa);\r\n return;\r\n }\r\n\r\n if (success.entidade == null) {\r\n this._databarService.resetForm(this.form, this.entidadePaginada);\r\n this.setStatus(EStatus.novaPesquisa);\r\n return;\r\n }\r\n\r\n this.setStatus(EStatus.dadosCarregados);\r\n\r\n if (!this.entidadePaginada.entidade) {\r\n this.entidadePaginada = success;\r\n } else {\r\n this.entidadePaginada.total = success.total;\r\n this.entidadePaginada.posicao = success.posicao;\r\n }\r\n\r\n this.form.patchValue(success.entidade[0]);\r\n\r\n this.setProgresso(false);\r\n\r\n this._databarService.desabilitarForm(this.form);\r\n },\r\n (error) => {\r\n console.error('erro paginação', error);\r\n this.setStatus(EStatus.dadosCarregados);\r\n this.entidadePaginada.posicao = posicaoAnterior;\r\n this.setProgresso(false);\r\n this._databarService.desabilitarForm(this.form);\r\n }\r\n );\r\n }\r\n\r\n private setProgresso(progresso: boolean): void {\r\n this.emProgresso = this._databarService.definirProgresso(this.form, progresso);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { ErrorDialogComponent } from './error-dialog.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [ErrorDialogComponent],\r\n imports: [\r\n MatDialogModule\r\n ],\r\n exports: [ErrorDialogComponent],\r\n entryComponents: [ErrorDialogComponent]\r\n})\r\nexport class ErrorDialogModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDividerModule } from '@angular/material/divider';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { IcConfirmaDialogModule } from '@inovamobil/ic-confirma-dialog';\r\nimport { DataBarComponent } from './ic-data-bar.component';\r\nimport { ErrorDialogModule } from '../components/dialogs/error-dialog/error-dialog.module';\r\nimport { DatabarService } from './services/ic-databar.service';\r\nimport { IcmSnackBarModule } from '@inovamobil/icm-snackbar';\r\n\r\n@NgModule({\r\n declarations: [DataBarComponent],\r\n imports: [\r\n CommonModule,\r\n MatToolbarModule,\r\n MatListModule,\r\n MatSidenavModule,\r\n MatIconModule,\r\n MatProgressSpinnerModule,\r\n MatDividerModule,\r\n MatButtonModule,\r\n MatTooltipModule,\r\n FlexLayoutModule,\r\n IcConfirmaDialogModule,\r\n ErrorDialogModule,\r\n IcmSnackBarModule\r\n ],\r\n exports: [DataBarComponent],\r\n providers: [DatabarService]\r\n})\r\nexport class DataBarModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {ErrorDialogComponent as ɵd} from './components/dialogs/error-dialog/error-dialog.component';\nexport {ErrorDialogModule as ɵc} from './components/dialogs/error-dialog/error-dialog.module';\nexport {ErrorDialogService as ɵa} from './components/dialogs/error-dialog/service/error-dialog.service';\nexport {DatabarService as ɵb} from './lib/services/ic-databar.service';"],"names":["EStatus","Directive","EEventoClick","Component","MatDialogRef","Inject","MAT_DIALOG_DATA","MatDialogConfig","Injectable","MatDialog","EventEmitter","finalize","IcConfirmaDialogService","ElementRef","IcmSnackBarService","Input","Output","ViewChild","HostListener","NgModule","MatDialogModule","CommonModule","MatToolbarModule","MatListModule","MatSidenavModule","MatIconModule","MatProgressSpinnerModule","MatDividerModule","MatButtonModule","MatTooltipModule","FlexLayoutModule","IcConfirmaDialogModule","IcmSnackBarModule"],"mappings":"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"}
|