oxpi-nglib 3.0.1 → 3.0.3
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/fesm2022/oxpi-nglib.mjs +53 -30
- package/fesm2022/oxpi-nglib.mjs.map +1 -1
- package/package.json +1 -1
- package/types/oxpi-nglib.d.ts +3 -0
- package/esm2022/lib/animations/animations.mjs +0 -22
- package/esm2022/lib/cadastros/clientes/clientes/clientes-form.component.mjs +0 -32
- package/esm2022/lib/cadastros/clientes/clientes/clientes.component.mjs +0 -165
- package/esm2022/lib/cadastros/clientes/clientes-add-dialog/clientes-add-dialog.component.mjs +0 -73
- package/esm2022/lib/cadastros/clientes/clientes-edit-dialog/clientes-edit-dialog.component.mjs +0 -71
- package/esm2022/lib/cadastros/clientes/selecao-cliente-dialog/selecao-cliente-dialog.component.mjs +0 -113
- package/esm2022/lib/cadastros/fornecedores/fornecedores/fornecedores-form.component.mjs +0 -44
- package/esm2022/lib/cadastros/fornecedores/fornecedores/fornecedores.component.mjs +0 -165
- package/esm2022/lib/cadastros/fornecedores/fornecedores-add-dialog/fornecedores-add-dialog.component.mjs +0 -73
- package/esm2022/lib/cadastros/fornecedores/fornecedores-edit-dialog/fornecedores-edit-dialog.component.mjs +0 -71
- package/esm2022/lib/cadastros/fornecedores/selecao-fornecedor-dialog/selecao-fornecedor-dialog.component.mjs +0 -108
- package/esm2022/lib/cadastros/funcionarios/funcionario-add-dialog/funcionario-add-dialog.component.mjs +0 -79
- package/esm2022/lib/cadastros/funcionarios/funcionario-edit-dialog/funcionario-edit-dialog.component.mjs +0 -68
- package/esm2022/lib/cadastros/funcionarios/funcionario-form/funcionario-form.component.mjs +0 -50
- package/esm2022/lib/cadastros/funcionarios/funcionarios/funcionarios.component.mjs +0 -157
- package/esm2022/lib/controls/alert-dialog/alert-dialog.component.mjs +0 -23
- package/esm2022/lib/controls/busy-indicator/busy-indicator.component.mjs +0 -19
- package/esm2022/lib/controls/check-button/check-button.component.mjs +0 -35
- package/esm2022/lib/controls/image-viewer/image-viewer.component.mjs +0 -73
- package/esm2022/lib/controls/item-card/item-card.component.mjs +0 -38
- package/esm2022/lib/controls/month-year-picker/month-year-picker.component.mjs +0 -125
- package/esm2022/lib/controls/numeric-picker/numeric-picker.component.mjs +0 -102
- package/esm2022/lib/controls/paginator/paginator.component.mjs +0 -70
- package/esm2022/lib/controls/radio-button-group/radio-button-group.component.mjs +0 -40
- package/esm2022/lib/controls/selecao-list-item/selecao-list-item.component.mjs +0 -17
- package/esm2022/lib/models/entidades/funcionario.mjs +0 -12
- package/esm2022/lib/models/entidades/id-nome-model.mjs +0 -2
- package/esm2022/lib/models/entidades/login-item.mjs +0 -2
- package/esm2022/lib/models/entidades/login-result.mjs +0 -2
- package/esm2022/lib/models/entidades/operador.mjs +0 -17
- package/esm2022/lib/models/entidades/ownership.mjs +0 -15
- package/esm2022/lib/models/entidades/permissoes.mjs +0 -2
- package/esm2022/lib/models/entidades/pessoa.mjs +0 -9
- package/esm2022/lib/models/entidades/sensores-def.mjs +0 -2
- package/esm2022/lib/models/entidades/setor-estoque.mjs +0 -9
- package/esm2022/lib/models/entidades/suite-base.mjs +0 -2
- package/esm2022/lib/models/entidades/usuario.mjs +0 -2
- package/esm2022/lib/models/infra/busy-state.mjs +0 -26
- package/esm2022/lib/models/infra/convert-setting-to-string.mjs +0 -29
- package/esm2022/lib/models/infra/lazy-trigger.mjs +0 -17
- package/esm2022/lib/models/infra/number-parser.mjs +0 -67
- package/esm2022/lib/models/infra/ordem.mjs +0 -17
- package/esm2022/lib/models/infra/paging-result.mjs +0 -2
- package/esm2022/lib/models/infra/selecao-utils.mjs +0 -47
- package/esm2022/lib/models/infra/utils-methods.mjs +0 -99
- package/esm2022/lib/models/infra/validations.mjs +0 -25
- package/esm2022/lib/models/settings/PagamentoRecebimentoSearchSetting.mjs +0 -13
- package/esm2022/lib/models/settings/consumo-produto-search-setting.mjs +0 -18
- package/esm2022/lib/models/settings/duplicata-search-setting.mjs +0 -13
- package/esm2022/lib/models/settings/ocupacao-filter-setting.mjs +0 -14
- package/esm2022/lib/models/settings/ocupacao-search-setting.mjs +0 -37
- package/esm2022/lib/models/settings/produto-search-setting.mjs +0 -13
- package/esm2022/lib/models/settings/search-setting.mjs +0 -60
- package/esm2022/lib/models/settings/suites-intervencoes-setting.mjs +0 -4
- package/esm2022/lib/models/tuple.mjs +0 -2
- package/esm2022/lib/oxpi-nglib.module.mjs +0 -173
- package/esm2022/lib/providers/auth-data.service.mjs +0 -242
- package/esm2022/lib/providers/common-web-service.mjs +0 -206
- package/esm2022/lib/providers/export.file.service.mjs +0 -29
- package/esm2022/lib/providers/focus.service.mjs +0 -84
- package/esm2022/lib/providers/notification.service.mjs +0 -39
- package/esm2022/lib/providers/preference.service.mjs +0 -42
- package/esm2022/lib/providers/safe-html.pipe.mjs +0 -20
- package/esm2022/lib/providers/screen-helper.service.mjs +0 -97
- package/esm2022/oxpi-nglib.mjs +0 -5
- package/esm2022/public-api.mjs +0 -69
- package/index.d.ts +0 -5
- package/lib/animations/animations.d.ts +0 -2
- package/lib/cadastros/clientes/clientes/clientes-form.component.d.ts +0 -13
- package/lib/cadastros/clientes/clientes/clientes.component.d.ts +0 -36
- package/lib/cadastros/clientes/clientes-add-dialog/clientes-add-dialog.component.d.ts +0 -27
- package/lib/cadastros/clientes/clientes-edit-dialog/clientes-edit-dialog.component.d.ts +0 -27
- package/lib/cadastros/clientes/selecao-cliente-dialog/selecao-cliente-dialog.component.d.ts +0 -35
- package/lib/cadastros/fornecedores/fornecedores/fornecedores-form.component.d.ts +0 -14
- package/lib/cadastros/fornecedores/fornecedores/fornecedores.component.d.ts +0 -36
- package/lib/cadastros/fornecedores/fornecedores-add-dialog/fornecedores-add-dialog.component.d.ts +0 -27
- package/lib/cadastros/fornecedores/fornecedores-edit-dialog/fornecedores-edit-dialog.component.d.ts +0 -27
- package/lib/cadastros/fornecedores/selecao-fornecedor-dialog/selecao-fornecedor-dialog.component.d.ts +0 -35
- package/lib/cadastros/funcionarios/funcionario-add-dialog/funcionario-add-dialog.component.d.ts +0 -27
- package/lib/cadastros/funcionarios/funcionario-edit-dialog/funcionario-edit-dialog.component.d.ts +0 -27
- package/lib/cadastros/funcionarios/funcionario-form/funcionario-form.component.d.ts +0 -19
- package/lib/cadastros/funcionarios/funcionarios/funcionarios.component.d.ts +0 -36
- package/lib/controls/alert-dialog/alert-dialog.component.d.ts +0 -15
- package/lib/controls/busy-indicator/busy-indicator.component.d.ts +0 -9
- package/lib/controls/check-button/check-button.component.d.ts +0 -12
- package/lib/controls/image-viewer/image-viewer.component.d.ts +0 -27
- package/lib/controls/item-card/item-card.component.d.ts +0 -19
- package/lib/controls/month-year-picker/month-year-picker.component.d.ts +0 -33
- package/lib/controls/numeric-picker/numeric-picker.component.d.ts +0 -28
- package/lib/controls/paginator/paginator.component.d.ts +0 -24
- package/lib/controls/radio-button-group/radio-button-group.component.d.ts +0 -19
- package/lib/controls/selecao-list-item/selecao-list-item.component.d.ts +0 -6
- package/lib/models/entidades/funcionario.d.ts +0 -20
- package/lib/models/entidades/id-nome-model.d.ts +0 -8
- package/lib/models/entidades/login-item.d.ts +0 -6
- package/lib/models/entidades/login-result.d.ts +0 -20
- package/lib/models/entidades/operador.d.ts +0 -10
- package/lib/models/entidades/ownership.d.ts +0 -20
- package/lib/models/entidades/permissoes.d.ts +0 -196
- package/lib/models/entidades/pessoa.d.ts +0 -41
- package/lib/models/entidades/sensores-def.d.ts +0 -6
- package/lib/models/entidades/setor-estoque.d.ts +0 -9
- package/lib/models/entidades/suite-base.d.ts +0 -10
- package/lib/models/entidades/usuario.d.ts +0 -34
- package/lib/models/infra/busy-state.d.ts +0 -7
- package/lib/models/infra/convert-setting-to-string.d.ts +0 -5
- package/lib/models/infra/lazy-trigger.d.ts +0 -8
- package/lib/models/infra/number-parser.d.ts +0 -15
- package/lib/models/infra/ordem.d.ts +0 -13
- package/lib/models/infra/paging-result.d.ts +0 -11
- package/lib/models/infra/selecao-utils.d.ts +0 -12
- package/lib/models/infra/utils-methods.d.ts +0 -6
- package/lib/models/infra/validations.d.ts +0 -6
- package/lib/models/settings/PagamentoRecebimentoSearchSetting.d.ts +0 -10
- package/lib/models/settings/consumo-produto-search-setting.d.ts +0 -26
- package/lib/models/settings/duplicata-search-setting.d.ts +0 -18
- package/lib/models/settings/ocupacao-filter-setting.d.ts +0 -14
- package/lib/models/settings/ocupacao-search-setting.d.ts +0 -62
- package/lib/models/settings/produto-search-setting.d.ts +0 -14
- package/lib/models/settings/search-setting.d.ts +0 -27
- package/lib/models/settings/suites-intervencoes-setting.d.ts +0 -7
- package/lib/models/tuple.d.ts +0 -4
- package/lib/oxpi-nglib.module.d.ts +0 -54
- package/lib/providers/auth-data.service.d.ts +0 -26
- package/lib/providers/common-web-service.d.ts +0 -81
- package/lib/providers/export.file.service.d.ts +0 -10
- package/lib/providers/focus.service.d.ts +0 -15
- package/lib/providers/notification.service.d.ts +0 -12
- package/lib/providers/preference.service.d.ts +0 -11
- package/lib/providers/safe-html.pipe.d.ts +0 -10
- package/lib/providers/screen-helper.service.d.ts +0 -28
- package/public-api.d.ts +0 -64
package/esm2022/lib/cadastros/clientes/selecao-cliente-dialog/selecao-cliente-dialog.component.mjs
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { LazyTrigger } from '../../../models/infra/lazy-trigger';
|
|
3
|
-
import { NavegacaoSelecaoDialogUtil } from '../../../models/infra/selecao-utils';
|
|
4
|
-
import { SearchSetting } from '../../../models/settings/search-setting';
|
|
5
|
-
import { ClientesAddDialogComponent } from '../clientes-add-dialog/clientes-add-dialog.component';
|
|
6
|
-
import { ClientesEditDialogComponent } from '../clientes-edit-dialog/clientes-edit-dialog.component';
|
|
7
|
-
import { formatCpfCnpj } from '../../../models/infra/utils-methods';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/material/dialog";
|
|
10
|
-
import * as i2 from "../../../providers/common-web-service";
|
|
11
|
-
import * as i3 from "../../../providers/notification.service";
|
|
12
|
-
import * as i4 from "../../../providers/auth-data.service";
|
|
13
|
-
import * as i5 from "../../../providers/screen-helper.service";
|
|
14
|
-
import * as i6 from "@angular/common";
|
|
15
|
-
import * as i7 from "@angular/forms";
|
|
16
|
-
import * as i8 from "@angular/material/button";
|
|
17
|
-
import * as i9 from "@angular/material/icon";
|
|
18
|
-
import * as i10 from "../../../controls/busy-indicator/busy-indicator.component";
|
|
19
|
-
import * as i11 from "../../../controls/selecao-list-item/selecao-list-item.component";
|
|
20
|
-
export class SelecaoClienteDialogComponent {
|
|
21
|
-
constructor(dialogRef, ws, notification, dialog, auth, screenHelper) {
|
|
22
|
-
this.dialogRef = dialogRef;
|
|
23
|
-
this.ws = ws;
|
|
24
|
-
this.notification = notification;
|
|
25
|
-
this.dialog = dialog;
|
|
26
|
-
this.screenHelper = screenHelper;
|
|
27
|
-
this.items = [];
|
|
28
|
-
this.selectedItem = null;
|
|
29
|
-
this.isBusy = false;
|
|
30
|
-
this.setting = new SearchSetting();
|
|
31
|
-
this.lazyTrigger = new LazyTrigger(() => { this.atualiza(); });
|
|
32
|
-
this.nav = new NavegacaoSelecaoDialogUtil(this);
|
|
33
|
-
this.mobile = this.screenHelper.isMedium;
|
|
34
|
-
this.allowAdd = auth.permissoes.financasClienteAdd;
|
|
35
|
-
this.allowEdit = auth.permissoes.financasClientePesquisa;
|
|
36
|
-
}
|
|
37
|
-
ngOnInit() {
|
|
38
|
-
this.setting.ordem = "nome";
|
|
39
|
-
this.atualiza();
|
|
40
|
-
}
|
|
41
|
-
atualiza() {
|
|
42
|
-
this.isBusy = true;
|
|
43
|
-
this.ws.buscaCliente(this.setting)
|
|
44
|
-
.subscribe({
|
|
45
|
-
next: r => {
|
|
46
|
-
this.isBusy = false;
|
|
47
|
-
for (let i of r) {
|
|
48
|
-
i.cnpjCpfFormatado = formatCpfCnpj(i.cnpjCpf);
|
|
49
|
-
}
|
|
50
|
-
this.items = r;
|
|
51
|
-
console.info(r);
|
|
52
|
-
},
|
|
53
|
-
error: err => {
|
|
54
|
-
this.isBusy = false;
|
|
55
|
-
this.notification.showHttpError(err);
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
selectItem(i) {
|
|
60
|
-
if (this.selectedItem === i) {
|
|
61
|
-
this.dialogRef.close(i);
|
|
62
|
-
}
|
|
63
|
-
this.selectedItem = i;
|
|
64
|
-
}
|
|
65
|
-
novo() {
|
|
66
|
-
let height = (window.innerHeight * 0.90) + 'px';
|
|
67
|
-
let width = 550 + 'px';
|
|
68
|
-
if (this.mobile) {
|
|
69
|
-
width = (window.innerWidth * 0.99) + 'px';
|
|
70
|
-
//height = (window.innerHeight * 0.98) + 'px';
|
|
71
|
-
}
|
|
72
|
-
const dialog = this.dialog.open(ClientesAddDialogComponent, {
|
|
73
|
-
width: width,
|
|
74
|
-
height: height,
|
|
75
|
-
maxWidth: '100%',
|
|
76
|
-
panelClass: 'dialog-p0',
|
|
77
|
-
});
|
|
78
|
-
dialog.afterClosed().subscribe(result => {
|
|
79
|
-
if (result === undefined)
|
|
80
|
-
return;
|
|
81
|
-
this.notification.showMsg("Salvo com sucesso.");
|
|
82
|
-
this.atualiza();
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
editar() {
|
|
86
|
-
let height = (window.innerHeight * 0.90) + 'px';
|
|
87
|
-
let width = 550 + 'px';
|
|
88
|
-
if (this.mobile) {
|
|
89
|
-
width = (window.innerWidth * 0.99) + 'px';
|
|
90
|
-
//height = (window.innerHeight * 0.98) + 'px';
|
|
91
|
-
}
|
|
92
|
-
const dialog = this.dialog.open(ClientesEditDialogComponent, {
|
|
93
|
-
width: width,
|
|
94
|
-
height: height,
|
|
95
|
-
maxWidth: '100%',
|
|
96
|
-
panelClass: 'dialog-p0',
|
|
97
|
-
data: this.selectedItem
|
|
98
|
-
});
|
|
99
|
-
dialog.afterClosed().subscribe(result => {
|
|
100
|
-
if (result === undefined)
|
|
101
|
-
return;
|
|
102
|
-
this.notification.showMsg("Salvo com sucesso.");
|
|
103
|
-
this.atualiza();
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelecaoClienteDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.CommonWebService }, { token: i3.NotificationService }, { token: i1.MatDialog }, { token: i4.AuthDataService }, { token: i5.ScreenHelperService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
107
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SelecaoClienteDialogComponent, selector: "app-selecao-cliente-dialog", ngImport: i0, template: "<div class=\"dialog-header\">\n <h2>Sele\u00E7\u00E3o de Clientes</h2>\n </div>\n <div class=\"tool-panel\">\n <div class=\"tool-section\">\n <label>Pesquisa</label>\n <div class=\"search-input-container\">\n <input (keydown)=\"nav.onKeyDown($event)\" cdkFocusInitial [(ngModel)]=\"setting.frase\" placeholder=\"Digite um termo de busca...\" (input)=\"lazyTrigger.fire()\">\n </div>\n </div>\n <div class=\"tool-section\">\n <label>A\u00E7\u00F5es</label>\n <div class=\"tool-row\">\n <button color=\"primary\" mat-icon-button (click)=\"atualiza()\">\n <mat-icon aria-label=\"Atualizar\">refresh</mat-icon>\n </button>\n <button color=\"primary\" mat-icon-button (click)=\"novo()\" *ngIf=\"allowAdd\">\n <mat-icon aria-label=\"novo\">add</mat-icon>\n </button>\n <button color=\"primary\" mat-icon-button (click)=\"editar()\" *ngIf=\"selectedItem\">\n <mat-icon aria-label=\"editar\">edit</mat-icon>\n </button>\n </div>\n </div>\n </div>\n <div class=\"dialog-content\"> \n <ox-selecao-list-item (click)=\"selectItem(i)\" *ngFor=\"let i of items\" [class.selected]=\"i === selectedItem\">\n <div class=\"hbox gap-16\">\n <span class=\"grow-1\">{{i.nome}}</span> <span class=\"cnpj-badge\" *ngIf=\"i.cnpjCpf\" >{{i.cnpjCpfFormatado}}</span>\n </div>\n </ox-selecao-list-item>\n </div>\n <div class=\"dialog-footer\">\n <button mat-button [disabled]=\"selectedItem == undefined\" color=\"primary\" [mat-dialog-close]=\"selectedItem\">CONFIRMAR</button>\n <button mat-button [mat-dialog-close]=\"undefined\">VOLTAR</button>\n </div>\n <ox-busy-indicator [isBusy]=\"isBusy\"></ox-busy-indicator>\n ", styles: [":host{background:#fafafa;display:flex;flex-direction:column;height:100%;max-height:99vh}.cnpj-badge{padding:4px 8px;font-size:9px;border-radius:9px;background:#e6f9f7;color:#0040ff;font-weight:500}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i10.BusyIndicatorComponent, selector: "ox-busy-indicator", inputs: ["isBusy"] }, { kind: "component", type: i11.SelecaoListItemComponent, selector: "ox-selecao-list-item", inputs: ["text"] }] }); }
|
|
108
|
-
}
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelecaoClienteDialogComponent, decorators: [{
|
|
110
|
-
type: Component,
|
|
111
|
-
args: [{ selector: 'app-selecao-cliente-dialog', template: "<div class=\"dialog-header\">\n <h2>Sele\u00E7\u00E3o de Clientes</h2>\n </div>\n <div class=\"tool-panel\">\n <div class=\"tool-section\">\n <label>Pesquisa</label>\n <div class=\"search-input-container\">\n <input (keydown)=\"nav.onKeyDown($event)\" cdkFocusInitial [(ngModel)]=\"setting.frase\" placeholder=\"Digite um termo de busca...\" (input)=\"lazyTrigger.fire()\">\n </div>\n </div>\n <div class=\"tool-section\">\n <label>A\u00E7\u00F5es</label>\n <div class=\"tool-row\">\n <button color=\"primary\" mat-icon-button (click)=\"atualiza()\">\n <mat-icon aria-label=\"Atualizar\">refresh</mat-icon>\n </button>\n <button color=\"primary\" mat-icon-button (click)=\"novo()\" *ngIf=\"allowAdd\">\n <mat-icon aria-label=\"novo\">add</mat-icon>\n </button>\n <button color=\"primary\" mat-icon-button (click)=\"editar()\" *ngIf=\"selectedItem\">\n <mat-icon aria-label=\"editar\">edit</mat-icon>\n </button>\n </div>\n </div>\n </div>\n <div class=\"dialog-content\"> \n <ox-selecao-list-item (click)=\"selectItem(i)\" *ngFor=\"let i of items\" [class.selected]=\"i === selectedItem\">\n <div class=\"hbox gap-16\">\n <span class=\"grow-1\">{{i.nome}}</span> <span class=\"cnpj-badge\" *ngIf=\"i.cnpjCpf\" >{{i.cnpjCpfFormatado}}</span>\n </div>\n </ox-selecao-list-item>\n </div>\n <div class=\"dialog-footer\">\n <button mat-button [disabled]=\"selectedItem == undefined\" color=\"primary\" [mat-dialog-close]=\"selectedItem\">CONFIRMAR</button>\n <button mat-button [mat-dialog-close]=\"undefined\">VOLTAR</button>\n </div>\n <ox-busy-indicator [isBusy]=\"isBusy\"></ox-busy-indicator>\n ", styles: [":host{background:#fafafa;display:flex;flex-direction:column;height:100%;max-height:99vh}.cnpj-badge{padding:4px 8px;font-size:9px;border-radius:9px;background:#e6f9f7;color:#0040ff;font-weight:500}\n"] }]
|
|
112
|
-
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: i2.CommonWebService }, { type: i3.NotificationService }, { type: i1.MatDialog }, { type: i4.AuthDataService }, { type: i5.ScreenHelperService }]; } });
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWNhby1jbGllbnRlLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9veHBpLW5nbGliL3NyYy9saWIvY2FkYXN0cm9zL2NsaWVudGVzL3NlbGVjYW8tY2xpZW50ZS1kaWFsb2cvc2VsZWNhby1jbGllbnRlLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9veHBpLW5nbGliL3NyYy9saWIvY2FkYXN0cm9zL2NsaWVudGVzL3NlbGVjYW8tY2xpZW50ZS1kaWFsb2cvc2VsZWNhby1jbGllbnRlLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR2xELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFLeEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDbEcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDckcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7Ozs7Ozs7O0FBUXBFLE1BQU0sT0FBTyw2QkFBNkI7SUFXeEMsWUFBbUIsU0FBc0QsRUFDL0QsRUFBb0IsRUFDcEIsWUFBaUMsRUFDbEMsTUFBaUIsRUFDeEIsSUFBcUIsRUFDYixZQUFpQztRQUx4QixjQUFTLEdBQVQsU0FBUyxDQUE2QztRQUMvRCxPQUFFLEdBQUYsRUFBRSxDQUFrQjtRQUNwQixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDbEMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUVoQixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFmM0MsVUFBSyxHQUFjLEVBQUUsQ0FBQztRQUN0QixpQkFBWSxHQUFtQixJQUFJLENBQUM7UUFDcEMsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUl4QixZQUFPLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUM5QixnQkFBVyxHQUFHLElBQUksV0FBVyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFELFFBQUcsR0FBRyxJQUFJLDBCQUEwQixDQUF5QyxJQUFJLENBQUMsQ0FBQztRQVFqRixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQztRQUNuRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUM7SUFDM0QsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQzthQUMvQixTQUFTLENBQUM7WUFDVCxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7Z0JBQ1IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7Z0JBQ3BCLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNmLENBQUMsQ0FBQyxnQkFBZ0IsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUMvQztnQkFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztnQkFDZixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2xCLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsVUFBVSxDQUFDLENBQVc7UUFDcEIsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLENBQUMsRUFBRTtZQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6QjtRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJO1FBRUYsSUFBSSxNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQztRQUNoRCxJQUFJLEtBQUssR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLEtBQUssR0FBRyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQzFDLDhDQUE4QztTQUMvQztRQUNELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFO1lBQzFELEtBQUssRUFBRSxLQUFLO1lBQ1osTUFBTSxFQUFFLE1BQU07WUFDZCxRQUFRLEVBQUUsTUFBTTtZQUNoQixVQUFVLEVBQUUsV0FBVztTQUN4QixDQUFDLENBQUM7UUFDSCxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3RDLElBQUksTUFBTSxLQUFLLFNBQVM7Z0JBQUUsT0FBTztZQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNO1FBRUosSUFBSSxNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQztRQUNoRCxJQUFJLEtBQUssR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLEtBQUssR0FBRyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQzFDLDhDQUE4QztTQUMvQztRQUNELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFFO1lBQzNELEtBQUssRUFBRSxLQUFLO1lBQ1osTUFBTSxFQUFFLE1BQU07WUFDZCxRQUFRLEVBQUUsTUFBTTtZQUNoQixVQUFVLEVBQUUsV0FBVztZQUN2QixJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVk7U0FDeEIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN0QyxJQUFJLE1BQU0sS0FBSyxTQUFTO2dCQUFFLE9BQU87WUFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUNoRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOytHQTlGVSw2QkFBNkI7bUdBQTdCLDZCQUE2QixrRUNwQjFDLGd1REFxQ0U7OzRGRGpCVyw2QkFBNkI7a0JBTHpDLFNBQVM7K0JBQ0UsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IENsaWVudGUgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZW50aWRhZGVzL3Blc3NvYSc7XG5pbXBvcnQgeyBMYXp5VHJpZ2dlciB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbmZyYS9sYXp5LXRyaWdnZXInO1xuaW1wb3J0IHsgTmF2ZWdhY2FvU2VsZWNhb0RpYWxvZ1V0aWwgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaW5mcmEvc2VsZWNhby11dGlscyc7XG5pbXBvcnQgeyBTZWFyY2hTZXR0aW5nIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3NldHRpbmdzL3NlYXJjaC1zZXR0aW5nJztcbmltcG9ydCB7IEF1dGhEYXRhU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Byb3ZpZGVycy9hdXRoLWRhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBDb21tb25XZWJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL2NvbW1vbi13ZWItc2VydmljZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFNjcmVlbkhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9wcm92aWRlcnMvc2NyZWVuLWhlbHBlci5zZXJ2aWNlJztcbmltcG9ydCB7IENsaWVudGVzQWRkRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY2xpZW50ZXMtYWRkLWRpYWxvZy9jbGllbnRlcy1hZGQtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDbGllbnRlc0VkaXREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jbGllbnRlcy1lZGl0LWRpYWxvZy9jbGllbnRlcy1lZGl0LWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgZm9ybWF0Q3BmQ25waiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbmZyYS91dGlscy1tZXRob2RzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc2VsZWNhby1jbGllbnRlLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY2FvLWNsaWVudGUtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VsZWNhby1jbGllbnRlLWRpYWxvZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjYW9DbGllbnRlRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgaXRlbXM6IENsaWVudGVbXSA9IFtdO1xuICBzZWxlY3RlZEl0ZW06IENsaWVudGUgfCBudWxsID0gbnVsbDtcbiAgaXNCdXN5OiBib29sZWFuID0gZmFsc2U7XG4gIG1vYmlsZTogYm9vbGVhbjtcbiAgYWxsb3dBZGQ6IGJvb2xlYW47XG4gIGFsbG93RWRpdDogYm9vbGVhbjtcbiAgc2V0dGluZyA9IG5ldyBTZWFyY2hTZXR0aW5nKCk7XG4gIGxhenlUcmlnZ2VyID0gbmV3IExhenlUcmlnZ2VyKCgpID0+IHsgdGhpcy5hdHVhbGl6YSgpOyB9KTtcbiAgbmF2ID0gbmV3IE5hdmVnYWNhb1NlbGVjYW9EaWFsb2dVdGlsPENsaWVudGUsIFNlbGVjYW9DbGllbnRlRGlhbG9nQ29tcG9uZW50Pih0aGlzKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U2VsZWNhb0NsaWVudGVEaWFsb2dDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgd3M6IENvbW1vbldlYlNlcnZpY2UsXG4gICAgcHJpdmF0ZSBub3RpZmljYXRpb246IE5vdGlmaWNhdGlvblNlcnZpY2UsXG4gICAgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIGF1dGg6IEF1dGhEYXRhU2VydmljZSxcbiAgICBwcml2YXRlIHNjcmVlbkhlbHBlcjogU2NyZWVuSGVscGVyU2VydmljZSkge1xuICAgIHRoaXMubW9iaWxlID0gdGhpcy5zY3JlZW5IZWxwZXIuaXNNZWRpdW07XG4gICAgdGhpcy5hbGxvd0FkZCA9IGF1dGgucGVybWlzc29lcy5maW5hbmNhc0NsaWVudGVBZGQ7XG4gICAgdGhpcy5hbGxvd0VkaXQgPSBhdXRoLnBlcm1pc3NvZXMuZmluYW5jYXNDbGllbnRlUGVzcXVpc2E7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldHRpbmcub3JkZW0gPSBcIm5vbWVcIjtcbiAgICB0aGlzLmF0dWFsaXphKCk7XG4gIH1cblxuICBhdHVhbGl6YSgpIHtcbiAgICB0aGlzLmlzQnVzeSA9IHRydWU7XG4gICAgdGhpcy53cy5idXNjYUNsaWVudGUodGhpcy5zZXR0aW5nKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IHIgPT4ge1xuICAgICAgICAgIHRoaXMuaXNCdXN5ID0gZmFsc2U7XG4gICAgICAgICAgZm9yIChsZXQgaSBvZiByKSB7XG4gICAgICAgICAgICBpLmNucGpDcGZGb3JtYXRhZG8gPSBmb3JtYXRDcGZDbnBqKGkuY25wakNwZik7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuaXRlbXMgPSByO1xuICAgICAgICAgIGNvbnNvbGUuaW5mbyhyKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgICAgdGhpcy5pc0J1c3kgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbi5zaG93SHR0cEVycm9yKGVycik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgc2VsZWN0SXRlbShpIDogQ2xpZW50ZSkge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbSA9PT0gaSkge1xuICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoaSk7XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gaTtcbiAgfVxuXG4gIG5vdm8oKSB7XG5cbiAgICBsZXQgaGVpZ2h0ID0gKHdpbmRvdy5pbm5lckhlaWdodCAqIDAuOTApICsgJ3B4JztcbiAgICBsZXQgd2lkdGggPSA1NTAgKyAncHgnO1xuICAgIGlmICh0aGlzLm1vYmlsZSkge1xuICAgICAgd2lkdGggPSAod2luZG93LmlubmVyV2lkdGggKiAwLjk5KSArICdweCc7XG4gICAgICAvL2hlaWdodCA9ICh3aW5kb3cuaW5uZXJIZWlnaHQgKiAwLjk4KSArICdweCc7XG4gICAgfVxuICAgIGNvbnN0IGRpYWxvZyA9IHRoaXMuZGlhbG9nLm9wZW4oQ2xpZW50ZXNBZGREaWFsb2dDb21wb25lbnQsIHtcbiAgICAgIHdpZHRoOiB3aWR0aCxcbiAgICAgIGhlaWdodDogaGVpZ2h0LFxuICAgICAgbWF4V2lkdGg6ICcxMDAlJyxcbiAgICAgIHBhbmVsQ2xhc3M6ICdkaWFsb2ctcDAnLFxuICAgIH0pO1xuICAgIGRpYWxvZy5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgaWYgKHJlc3VsdCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbi5zaG93TXNnKFwiU2Fsdm8gY29tIHN1Y2Vzc28uXCIpO1xuICAgICAgdGhpcy5hdHVhbGl6YSgpO1xuICAgIH0pO1xuICB9XG5cbiAgZWRpdGFyKCkge1xuXG4gICAgbGV0IGhlaWdodCA9ICh3aW5kb3cuaW5uZXJIZWlnaHQgKiAwLjkwKSArICdweCc7XG4gICAgbGV0IHdpZHRoID0gNTUwICsgJ3B4JztcbiAgICBpZiAodGhpcy5tb2JpbGUpIHtcbiAgICAgIHdpZHRoID0gKHdpbmRvdy5pbm5lcldpZHRoICogMC45OSkgKyAncHgnO1xuICAgICAgLy9oZWlnaHQgPSAod2luZG93LmlubmVySGVpZ2h0ICogMC45OCkgKyAncHgnO1xuICAgIH1cbiAgICBjb25zdCBkaWFsb2cgPSB0aGlzLmRpYWxvZy5vcGVuKENsaWVudGVzRWRpdERpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgd2lkdGg6IHdpZHRoLFxuICAgICAgaGVpZ2h0OiBoZWlnaHQsXG4gICAgICBtYXhXaWR0aDogJzEwMCUnLFxuICAgICAgcGFuZWxDbGFzczogJ2RpYWxvZy1wMCcsXG4gICAgICBkYXRhOiB0aGlzLnNlbGVjdGVkSXRlbVxuICAgIH0pO1xuICAgIGRpYWxvZy5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgaWYgKHJlc3VsdCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbi5zaG93TXNnKFwiU2Fsdm8gY29tIHN1Y2Vzc28uXCIpO1xuICAgICAgdGhpcy5hdHVhbGl6YSgpO1xuICAgIH0pO1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJkaWFsb2ctaGVhZGVyXCI+XG4gICAgPGgyPlNlbGXDp8OjbyBkZSBDbGllbnRlczwvaDI+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwidG9vbC1wYW5lbFwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0b29sLXNlY3Rpb25cIj5cbiAgICAgIDxsYWJlbD5QZXNxdWlzYTwvbGFiZWw+XG4gICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWlucHV0LWNvbnRhaW5lclwiPlxuICAgICAgICA8aW5wdXQgKGtleWRvd24pPVwibmF2Lm9uS2V5RG93bigkZXZlbnQpXCIgY2RrRm9jdXNJbml0aWFsIFsobmdNb2RlbCldPVwic2V0dGluZy5mcmFzZVwiIHBsYWNlaG9sZGVyPVwiRGlnaXRlIHVtIHRlcm1vIGRlIGJ1c2NhLi4uXCIgKGlucHV0KT1cImxhenlUcmlnZ2VyLmZpcmUoKVwiPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRvb2wtc2VjdGlvblwiPlxuICAgICAgPGxhYmVsPkHDp8O1ZXM8L2xhYmVsPlxuICAgICAgPGRpdiBjbGFzcz1cInRvb2wtcm93XCI+XG4gICAgICAgIDxidXR0b24gY29sb3I9XCJwcmltYXJ5XCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJhdHVhbGl6YSgpXCI+XG4gICAgICAgICAgPG1hdC1pY29uIGFyaWEtbGFiZWw9XCJBdHVhbGl6YXJcIj5yZWZyZXNoPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gY29sb3I9XCJwcmltYXJ5XCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJub3ZvKClcIiAqbmdJZj1cImFsbG93QWRkXCI+XG4gICAgICAgICAgPG1hdC1pY29uIGFyaWEtbGFiZWw9XCJub3ZvXCI+YWRkPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gY29sb3I9XCJwcmltYXJ5XCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJlZGl0YXIoKVwiICpuZ0lmPVwic2VsZWN0ZWRJdGVtXCI+XG4gICAgICAgICAgPG1hdC1pY29uIGFyaWEtbGFiZWw9XCJlZGl0YXJcIj5lZGl0PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJkaWFsb2ctY29udGVudFwiPiAgICBcbiAgICA8b3gtc2VsZWNhby1saXN0LWl0ZW0gKGNsaWNrKT1cInNlbGVjdEl0ZW0oaSlcIiAqbmdGb3I9XCJsZXQgaSBvZiBpdGVtc1wiIFtjbGFzcy5zZWxlY3RlZF09XCJpID09PSBzZWxlY3RlZEl0ZW1cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoYm94IGdhcC0xNlwiPlxuICAgICAgICAgPHNwYW4gY2xhc3M9XCJncm93LTFcIj57e2kubm9tZX19PC9zcGFuPiA8c3BhbiBjbGFzcz1cImNucGotYmFkZ2VcIiAqbmdJZj1cImkuY25wakNwZlwiID57e2kuY25wakNwZkZvcm1hdGFkb319PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9veC1zZWxlY2FvLWxpc3QtaXRlbT5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJkaWFsb2ctZm9vdGVyXCI+XG4gICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFtkaXNhYmxlZF09XCJzZWxlY3RlZEl0ZW0gPT0gdW5kZWZpbmVkXCIgY29sb3I9XCJwcmltYXJ5XCIgW21hdC1kaWFsb2ctY2xvc2VdPVwic2VsZWN0ZWRJdGVtXCI+Q09ORklSTUFSPC9idXR0b24+XG4gICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFttYXQtZGlhbG9nLWNsb3NlXT1cInVuZGVmaW5lZFwiPlZPTFRBUjwvYnV0dG9uPlxuICA8L2Rpdj5cbiAgPG94LWJ1c3ktaW5kaWNhdG9yIFtpc0J1c3ldPVwiaXNCdXN5XCI+PC9veC1idXN5LWluZGljYXRvcj5cbiAgIl19
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { validaCnpj, validCpf } from '../../../models/infra/utils-methods';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/forms";
|
|
6
|
-
import * as i3 from "ngx-mask";
|
|
7
|
-
export class FornecedoresFormComponent {
|
|
8
|
-
get model() {
|
|
9
|
-
return this._model;
|
|
10
|
-
}
|
|
11
|
-
set model(val) {
|
|
12
|
-
this._model = val;
|
|
13
|
-
this.validarCpfCnpj();
|
|
14
|
-
}
|
|
15
|
-
constructor() {
|
|
16
|
-
this.boolCpfCnpjValidado = false;
|
|
17
|
-
}
|
|
18
|
-
ngOnInit() {
|
|
19
|
-
}
|
|
20
|
-
validarCpfCnpj() {
|
|
21
|
-
if (this.model?.cnpjCpf == null || this.model?.cnpjCpf == undefined) {
|
|
22
|
-
this.boolCpfCnpjValidado = false;
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
if (this.model.cnpjCpf.length == 11) {
|
|
26
|
-
this.boolCpfCnpjValidado = validCpf(this.model.cnpjCpf);
|
|
27
|
-
}
|
|
28
|
-
else if (this.model.cnpjCpf.length == 14) {
|
|
29
|
-
this.boolCpfCnpjValidado = validaCnpj(this.model.cnpjCpf);
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
this.boolCpfCnpjValidado = false;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FornecedoresFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FornecedoresFormComponent, selector: "app-fornecedores-form", inputs: { model: "model" }, ngImport: i0, template: "<ng-container *ngIf=\"model\">\n <div class=\"form-block\">\n <label>Nome</label>\n <input id=\"nome\" maxlength=\"60\" required cdkFocusInitial [(ngModel)]=\"model.nome\" class=\"form-control input-300\" tabindex=\"1\">\n </div>\n \n <h4 class=\"margin-top-16\">Dados Complementares</h4>\n \n <div class=\"form-group\">\n <label>Nome Fantasia</label>\n <input [(ngModel)]=\"model.fantasia\" maxlength=\"60\" class=\"form-control input-300\" tabindex=\"2\">\n </div>\n <div class=\"form-group\">\n <label>CPF/CNPJ</label>\n <div class=\"hbox gap-4\">\n <input [(ngModel)]=\"model.cnpjCpf\" (change)=\"validarCpfCnpj()\" mask=\"000.000.000-00||00.000.000/0000-00\"\n class=\"form-control input-180\" tabindex=\"3\">\n <i class=\"material-icons\" style=\"align-self: center; color: #03a928;\" *ngIf=\"boolCpfCnpjValidado === true\">\n check_circle\n </i>\n <i class=\"material-icons\" style=\"align-self: center; color: #a98203;\" *ngIf=\"boolCpfCnpjValidado === false\">\n cancel\n </i>\n \n </div>\n </div>\n <div class=\"form-group\">\n <label>Observa\u00E7\u00F5es</label>\n <input [(ngModel)]=\"model.obs\" maxlength=\"60\" class=\"form-control input-300\">\n </div>\n <div class=\"hbox gap-8\">\n <div class=\"form-group\">\n <label>Telefone</label>\n <input [(ngModel)]=\"model.telefone\" maxlength=\"30\" class=\"form-control input-180\">\n </div>\n <div class=\"form-group\">\n <label>Fax</label>\n <input [(ngModel)]=\"model.fax\" maxlength=\"15\" class=\"form-control input-120\">\n </div>\n </div>\n <div class=\"hbox gap-8\">\n <div class=\"form-group\">\n <label>Contato</label>\n <input [(ngModel)]=\"model.contato\" maxlength=\"30\" class=\"form-control input-120\">\n </div>\n <div class=\"form-group\">\n <label>E-mail</label>\n <input [(ngModel)]=\"model.email\" maxlength=\"60\" class=\"form-control input-200\">\n </div>\n </div>\n <div class=\"form-group\">\n <label>Endere\u00E7o</label>\n <input [(ngModel)]=\"model.endereco\" maxlength=\"60\" class=\"form-control input-300\">\n </div>\n \n <div class=\"hbox gap-8\">\n <div class=\"form-group\">\n <label>N\u00FAmero</label>\n <input [(ngModel)]=\"model.numero\" maxlength=\"15\" class=\"form-control input-120\">\n </div>\n <div class=\"form-group\">\n <label>CEP</label>\n <input [(ngModel)]=\"model.cep\" maxlength=\"9\" class=\"form-control input-120\">\n </div>\n <div class=\"form-group\">\n <label>Bairro</label>\n <input [(ngModel)]=\"model.bairro\" maxlength=\"60\" class=\"form-control input-120\">\n </div>\n </div>\n <div class=\"hbox gap-8\">\n <div class=\"form-group\">\n <label>Complemento</label>\n <input [(ngModel)]=\"model.complemento\" maxlength=\"30\" class=\"form-control input-200\">\n </div>\n <div class=\"form-group\">\n <label>IE/RG</label>\n <input [(ngModel)]=\"model.ieRg\" maxlength=\"20\" class=\"form-control input-120\">\n </div>\n </div>\n</ng-container>", styles: [":host{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }] }); }
|
|
37
|
-
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FornecedoresFormComponent, decorators: [{
|
|
39
|
-
type: Component,
|
|
40
|
-
args: [{ selector: 'app-fornecedores-form', template: "<ng-container *ngIf=\"model\">\n <div class=\"form-block\">\n <label>Nome</label>\n <input id=\"nome\" maxlength=\"60\" required cdkFocusInitial [(ngModel)]=\"model.nome\" class=\"form-control input-300\" tabindex=\"1\">\n </div>\n \n <h4 class=\"margin-top-16\">Dados Complementares</h4>\n \n <div class=\"form-group\">\n <label>Nome Fantasia</label>\n <input [(ngModel)]=\"model.fantasia\" maxlength=\"60\" class=\"form-control input-300\" tabindex=\"2\">\n </div>\n <div class=\"form-group\">\n <label>CPF/CNPJ</label>\n <div class=\"hbox gap-4\">\n <input [(ngModel)]=\"model.cnpjCpf\" (change)=\"validarCpfCnpj()\" mask=\"000.000.000-00||00.000.000/0000-00\"\n class=\"form-control input-180\" tabindex=\"3\">\n <i class=\"material-icons\" style=\"align-self: center; color: #03a928;\" *ngIf=\"boolCpfCnpjValidado === true\">\n check_circle\n </i>\n <i class=\"material-icons\" style=\"align-self: center; color: #a98203;\" *ngIf=\"boolCpfCnpjValidado === false\">\n cancel\n </i>\n \n </div>\n </div>\n <div class=\"form-group\">\n <label>Observa\u00E7\u00F5es</label>\n <input [(ngModel)]=\"model.obs\" maxlength=\"60\" class=\"form-control input-300\">\n </div>\n <div class=\"hbox gap-8\">\n <div class=\"form-group\">\n <label>Telefone</label>\n <input [(ngModel)]=\"model.telefone\" maxlength=\"30\" class=\"form-control input-180\">\n </div>\n <div class=\"form-group\">\n <label>Fax</label>\n <input [(ngModel)]=\"model.fax\" maxlength=\"15\" class=\"form-control input-120\">\n </div>\n </div>\n <div class=\"hbox gap-8\">\n <div class=\"form-group\">\n <label>Contato</label>\n <input [(ngModel)]=\"model.contato\" maxlength=\"30\" class=\"form-control input-120\">\n </div>\n <div class=\"form-group\">\n <label>E-mail</label>\n <input [(ngModel)]=\"model.email\" maxlength=\"60\" class=\"form-control input-200\">\n </div>\n </div>\n <div class=\"form-group\">\n <label>Endere\u00E7o</label>\n <input [(ngModel)]=\"model.endereco\" maxlength=\"60\" class=\"form-control input-300\">\n </div>\n \n <div class=\"hbox gap-8\">\n <div class=\"form-group\">\n <label>N\u00FAmero</label>\n <input [(ngModel)]=\"model.numero\" maxlength=\"15\" class=\"form-control input-120\">\n </div>\n <div class=\"form-group\">\n <label>CEP</label>\n <input [(ngModel)]=\"model.cep\" maxlength=\"9\" class=\"form-control input-120\">\n </div>\n <div class=\"form-group\">\n <label>Bairro</label>\n <input [(ngModel)]=\"model.bairro\" maxlength=\"60\" class=\"form-control input-120\">\n </div>\n </div>\n <div class=\"hbox gap-8\">\n <div class=\"form-group\">\n <label>Complemento</label>\n <input [(ngModel)]=\"model.complemento\" maxlength=\"30\" class=\"form-control input-200\">\n </div>\n <div class=\"form-group\">\n <label>IE/RG</label>\n <input [(ngModel)]=\"model.ieRg\" maxlength=\"20\" class=\"form-control input-120\">\n </div>\n </div>\n</ng-container>", styles: [":host{display:flex;flex-direction:column}\n"] }]
|
|
41
|
-
}], ctorParameters: function () { return []; }, propDecorators: { model: [{
|
|
42
|
-
type: Input
|
|
43
|
-
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybmVjZWRvcmVzLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3hwaS1uZ2xpYi9zcmMvbGliL2NhZGFzdHJvcy9mb3JuZWNlZG9yZXMvZm9ybmVjZWRvcmVzL2Zvcm5lY2Vkb3Jlcy1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL294cGktbmdsaWIvc3JjL2xpYi9jYWRhc3Ryb3MvZm9ybmVjZWRvcmVzL2Zvcm5lY2Vkb3Jlcy9mb3JuZWNlZG9yZXMtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFFM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7QUFPM0UsTUFBTSxPQUFPLHlCQUF5QjtJQUdwQyxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLEdBQTJCO1FBQ25DLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBR0Q7UUFGQSx3QkFBbUIsR0FBWSxLQUFLLENBQUM7SUFHckMsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDO0lBRUQsY0FBYztRQUVaLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLFNBQVMsRUFDbkU7WUFDRSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1lBQ2pDLE9BQU87U0FDUjtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLEVBQUUsRUFDbkM7WUFDRSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDekQ7YUFDSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxFQUFFLEVBQ3hDO1lBQ0UsSUFBSSxDQUFDLG1CQUFtQixHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzNEO2FBRUQ7WUFDRSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQzsrR0F2Q1UseUJBQXlCO21HQUF6Qix5QkFBeUIseUZDVHRDLDQyR0ErRWU7OzRGRHRFRix5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UsdUJBQXVCOzBFQVE3QixLQUFLO3NCQURSLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm5lY2Vkb3IgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZW50aWRhZGVzL3Blc3NvYSc7XG5pbXBvcnQgeyB2YWxpZGFDbnBqLCB2YWxpZENwZiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbmZyYS91dGlscy1tZXRob2RzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZvcm5lY2Vkb3Jlcy1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm5lY2Vkb3Jlcy1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybmVjZWRvcmVzLWZvcm0uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JuZWNlZG9yZXNGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgX21vZGVsPzogRm9ybmVjZWRvcjtcblxuICBASW5wdXQoKVxuICBnZXQgbW9kZWwoKTogRm9ybmVjZWRvciB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX21vZGVsO1xuICB9XG5cbiAgc2V0IG1vZGVsKHZhbDogRm9ybmVjZWRvciB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX21vZGVsID0gdmFsO1xuICAgIHRoaXMudmFsaWRhckNwZkNucGooKTtcbiAgfVxuICBib29sQ3BmQ25walZhbGlkYWRvOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIHZhbGlkYXJDcGZDbnBqKClcbiAge1xuICAgIGlmICh0aGlzLm1vZGVsPy5jbnBqQ3BmID09IG51bGwgfHwgdGhpcy5tb2RlbD8uY25wakNwZiA9PSB1bmRlZmluZWQpXG4gICAge1xuICAgICAgdGhpcy5ib29sQ3BmQ25walZhbGlkYWRvID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0aGlzLm1vZGVsLmNucGpDcGYubGVuZ3RoID09IDExKVxuICAgIHtcbiAgICAgIHRoaXMuYm9vbENwZkNucGpWYWxpZGFkbyA9IHZhbGlkQ3BmKHRoaXMubW9kZWwuY25wakNwZik7XG4gICAgfVxuICAgIGVsc2UgaWYgKHRoaXMubW9kZWwuY25wakNwZi5sZW5ndGggPT0gMTQpXG4gICAge1xuICAgICAgdGhpcy5ib29sQ3BmQ25walZhbGlkYWRvID0gdmFsaWRhQ25waih0aGlzLm1vZGVsLmNucGpDcGYpO1xuICAgIH1cbiAgICBlbHNlXG4gICAge1xuICAgICAgdGhpcy5ib29sQ3BmQ25walZhbGlkYWRvID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlbFwiPlxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWJsb2NrXCI+XG4gICAgICAgIDxsYWJlbD5Ob21lPC9sYWJlbD5cbiAgICAgICAgPGlucHV0IGlkPVwibm9tZVwiIG1heGxlbmd0aD1cIjYwXCIgcmVxdWlyZWQgY2RrRm9jdXNJbml0aWFsIFsobmdNb2RlbCldPVwibW9kZWwubm9tZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sIGlucHV0LTMwMFwiIHRhYmluZGV4PVwiMVwiPlxuICAgIDwvZGl2PlxuICAgIFxuICAgIDxoNCBjbGFzcz1cIm1hcmdpbi10b3AtMTZcIj5EYWRvcyBDb21wbGVtZW50YXJlczwvaDQ+XG4gICAgXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgPGxhYmVsPk5vbWUgRmFudGFzaWE8L2xhYmVsPlxuICAgICAgICA8aW5wdXQgWyhuZ01vZGVsKV09XCJtb2RlbC5mYW50YXNpYVwiIG1heGxlbmd0aD1cIjYwXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaW5wdXQtMzAwXCIgdGFiaW5kZXg9XCIyXCI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgPGxhYmVsPkNQRi9DTlBKPC9sYWJlbD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImhib3ggZ2FwLTRcIj5cbiAgICAgICAgICAgIDxpbnB1dCBbKG5nTW9kZWwpXT1cIm1vZGVsLmNucGpDcGZcIiAoY2hhbmdlKT1cInZhbGlkYXJDcGZDbnBqKClcIiBtYXNrPVwiMDAwLjAwMC4wMDAtMDB8fDAwLjAwMC4wMDAvMDAwMC0wMFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaW5wdXQtMTgwXCIgdGFiaW5kZXg9XCIzXCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cIm1hdGVyaWFsLWljb25zXCIgc3R5bGU9XCJhbGlnbi1zZWxmOiBjZW50ZXI7IGNvbG9yOiAjMDNhOTI4O1wiICpuZ0lmPVwiYm9vbENwZkNucGpWYWxpZGFkbyA9PT0gdHJ1ZVwiPlxuICAgICAgICAgICAgICAgIGNoZWNrX2NpcmNsZVxuICAgICAgICAgICAgPC9pPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiIHN0eWxlPVwiYWxpZ24tc2VsZjogY2VudGVyOyBjb2xvcjogI2E5ODIwMztcIiAqbmdJZj1cImJvb2xDcGZDbnBqVmFsaWRhZG8gPT09IGZhbHNlXCI+XG4gICAgICAgICAgICAgICAgY2FuY2VsXG4gICAgICAgICAgICA8L2k+XG4gICAgXG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgIDxsYWJlbD5PYnNlcnZhw6fDtWVzPC9sYWJlbD5cbiAgICAgICAgPGlucHV0IFsobmdNb2RlbCldPVwibW9kZWwub2JzXCIgbWF4bGVuZ3RoPVwiNjBcIiBjbGFzcz1cImZvcm0tY29udHJvbCBpbnB1dC0zMDBcIj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiaGJveCBnYXAtOFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsPlRlbGVmb25lPC9sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBbKG5nTW9kZWwpXT1cIm1vZGVsLnRlbGVmb25lXCIgbWF4bGVuZ3RoPVwiMzBcIiBjbGFzcz1cImZvcm0tY29udHJvbCBpbnB1dC0xODBcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWw+RmF4PC9sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBbKG5nTW9kZWwpXT1cIm1vZGVsLmZheFwiIG1heGxlbmd0aD1cIjE1XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaW5wdXQtMTIwXCI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJoYm94IGdhcC04XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWw+Q29udGF0bzwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgWyhuZ01vZGVsKV09XCJtb2RlbC5jb250YXRvXCIgbWF4bGVuZ3RoPVwiMzBcIiBjbGFzcz1cImZvcm0tY29udHJvbCBpbnB1dC0xMjBcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWw+RS1tYWlsPC9sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBbKG5nTW9kZWwpXT1cIm1vZGVsLmVtYWlsXCIgbWF4bGVuZ3RoPVwiNjBcIiBjbGFzcz1cImZvcm0tY29udHJvbCBpbnB1dC0yMDBcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgPGxhYmVsPkVuZGVyZcOnbzwvbGFiZWw+XG4gICAgICAgIDxpbnB1dCBbKG5nTW9kZWwpXT1cIm1vZGVsLmVuZGVyZWNvXCIgbWF4bGVuZ3RoPVwiNjBcIiBjbGFzcz1cImZvcm0tY29udHJvbCBpbnB1dC0zMDBcIj5cbiAgICA8L2Rpdj5cbiAgICBcbiAgICA8ZGl2IGNsYXNzPVwiaGJveCBnYXAtOFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsPk7Dum1lcm88L2xhYmVsPlxuICAgICAgICAgICAgPGlucHV0IFsobmdNb2RlbCldPVwibW9kZWwubnVtZXJvXCIgbWF4bGVuZ3RoPVwiMTVcIiBjbGFzcz1cImZvcm0tY29udHJvbCBpbnB1dC0xMjBcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWw+Q0VQPC9sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBbKG5nTW9kZWwpXT1cIm1vZGVsLmNlcFwiIG1heGxlbmd0aD1cIjlcIiBjbGFzcz1cImZvcm0tY29udHJvbCBpbnB1dC0xMjBcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWw+QmFpcnJvPC9sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBbKG5nTW9kZWwpXT1cIm1vZGVsLmJhaXJyb1wiIG1heGxlbmd0aD1cIjYwXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgaW5wdXQtMTIwXCI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJoYm94IGdhcC04XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWw+Q29tcGxlbWVudG88L2xhYmVsPlxuICAgICAgICAgICAgPGlucHV0IFsobmdNb2RlbCldPVwibW9kZWwuY29tcGxlbWVudG9cIiBtYXhsZW5ndGg9XCIzMFwiIGNsYXNzPVwiZm9ybS1jb250cm9sIGlucHV0LTIwMFwiPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbD5JRS9SRzwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgWyhuZ01vZGVsKV09XCJtb2RlbC5pZVJnXCIgbWF4bGVuZ3RoPVwiMjBcIiBjbGFzcz1cImZvcm0tY29udHJvbCBpbnB1dC0xMjBcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj4iXX0=
|
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { fadeAnimation } from '../../../animations/animations';
|
|
3
|
-
import { validaPessoa } from '../../../models/entidades/pessoa';
|
|
4
|
-
import { LazyTrigger } from '../../../models/infra/lazy-trigger';
|
|
5
|
-
import { confirmaExclusao } from '../../../models/infra/selecao-utils';
|
|
6
|
-
import { SearchSetting } from '../../../models/settings/search-setting';
|
|
7
|
-
import { FocusService } from '../../../providers/focus.service';
|
|
8
|
-
import { FornecedoresAddDialogComponent } from '../fornecedores-add-dialog/fornecedores-add-dialog.component';
|
|
9
|
-
import { FornecedoresEditDialogComponent } from '../fornecedores-edit-dialog/fornecedores-edit-dialog.component';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "../../../providers/common-web-service";
|
|
12
|
-
import * as i2 from "../../../providers/notification.service";
|
|
13
|
-
import * as i3 from "@angular/material/dialog";
|
|
14
|
-
import * as i4 from "../../../providers/auth-data.service";
|
|
15
|
-
import * as i5 from "../../../providers/screen-helper.service";
|
|
16
|
-
import * as i6 from "@angular/common";
|
|
17
|
-
import * as i7 from "@angular/forms";
|
|
18
|
-
import * as i8 from "@angular/material/button";
|
|
19
|
-
import * as i9 from "@angular/material/icon";
|
|
20
|
-
import * as i10 from "../../../controls/busy-indicator/busy-indicator.component";
|
|
21
|
-
import * as i11 from "../../../controls/item-card/item-card.component";
|
|
22
|
-
import * as i12 from "./fornecedores-form.component";
|
|
23
|
-
export class FornecedoresComponent {
|
|
24
|
-
constructor(ws, notification, dialog, auth, screenHelper) {
|
|
25
|
-
this.ws = ws;
|
|
26
|
-
this.notification = notification;
|
|
27
|
-
this.dialog = dialog;
|
|
28
|
-
this.screenHelper = screenHelper;
|
|
29
|
-
this.isBusy = false;
|
|
30
|
-
this.items = [];
|
|
31
|
-
this.selectedItem = null;
|
|
32
|
-
this.lazyTrigger = new LazyTrigger(() => { this.atualiza(); });
|
|
33
|
-
this.setting = new SearchSetting();
|
|
34
|
-
this.focus = new FocusService();
|
|
35
|
-
this.allowAdd = auth.permissoes.financasFornecedorAdd || auth.permissoes.estoqueFornecedorAdd;
|
|
36
|
-
this.allowExcluir = auth.permissoes.financasFornecedorDelete || auth.permissoes.estoqueFornecedorDelete;
|
|
37
|
-
this.mobile = this.screenHelper.isMedium;
|
|
38
|
-
this.screenHelper.changedMediumScreen.subscribe(x => this.mobile = x);
|
|
39
|
-
}
|
|
40
|
-
ngOnInit() {
|
|
41
|
-
this.setting.ordem = "nome";
|
|
42
|
-
this.atualiza();
|
|
43
|
-
}
|
|
44
|
-
onSelectItem() {
|
|
45
|
-
if (!this.focus.hasInit()) {
|
|
46
|
-
setTimeout(() => {
|
|
47
|
-
this.focus.registerElementById("form-column");
|
|
48
|
-
this.focus.setFirst();
|
|
49
|
-
}, 500);
|
|
50
|
-
//this._focus.registerElementById("form-column");
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
this.focus.setFirst();
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
ngOnDestroy() {
|
|
57
|
-
this.focus.unregisterElementById("form-column");
|
|
58
|
-
}
|
|
59
|
-
atualiza() {
|
|
60
|
-
this.isBusy = true;
|
|
61
|
-
this.ws.buscaFornecedor(this.setting)
|
|
62
|
-
.subscribe({
|
|
63
|
-
next: r => {
|
|
64
|
-
this.items = r;
|
|
65
|
-
this.selectedItem = null;
|
|
66
|
-
console.info(r);
|
|
67
|
-
this.isBusy = false;
|
|
68
|
-
}, error: err => {
|
|
69
|
-
this.isBusy = false;
|
|
70
|
-
this.notification.showHttpError(err);
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
excluir() {
|
|
75
|
-
const item = this.selectedItem;
|
|
76
|
-
if (!item)
|
|
77
|
-
return;
|
|
78
|
-
confirmaExclusao(this.dialog, `Deseja prosseguir com a exclusão do fornecedor ${item.nome}?`, () => {
|
|
79
|
-
this.isBusy = true;
|
|
80
|
-
this.ws.deleteFornecedor(item.id)
|
|
81
|
-
.subscribe({
|
|
82
|
-
next: r => {
|
|
83
|
-
this.notification.showMsg("O fornecedor foi excluído com sucesso.");
|
|
84
|
-
this.items.remove(item);
|
|
85
|
-
this.selectedItem = null;
|
|
86
|
-
this.isBusy = false;
|
|
87
|
-
},
|
|
88
|
-
error: err => {
|
|
89
|
-
this.isBusy = false;
|
|
90
|
-
this.notification.showMsg(err.error);
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
novo() {
|
|
96
|
-
let height = (window.innerHeight * 0.90) + 'px';
|
|
97
|
-
let width = 550 + 'px';
|
|
98
|
-
if (this.mobile) {
|
|
99
|
-
width = (window.innerWidth * 0.99) + 'px';
|
|
100
|
-
//height = (window.innerHeight * 0.98) + 'px';
|
|
101
|
-
}
|
|
102
|
-
const dialog = this.dialog.open(FornecedoresAddDialogComponent, {
|
|
103
|
-
width: width,
|
|
104
|
-
height: height,
|
|
105
|
-
maxWidth: '100%',
|
|
106
|
-
panelClass: 'dialog-p0',
|
|
107
|
-
});
|
|
108
|
-
dialog.afterClosed().subscribe(result => {
|
|
109
|
-
if (result === undefined)
|
|
110
|
-
return;
|
|
111
|
-
this.notification.showMsg("Salvo com sucesso.");
|
|
112
|
-
this.atualiza();
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
abreCadastro(item) {
|
|
116
|
-
let height = undefined;
|
|
117
|
-
let width = 550 + 'px';
|
|
118
|
-
if (this.mobile) {
|
|
119
|
-
width = (window.innerWidth * 0.99) + 'px';
|
|
120
|
-
height = (window.innerHeight * 0.99) + 'px';
|
|
121
|
-
}
|
|
122
|
-
const dialog = this.dialog.open(FornecedoresEditDialogComponent, {
|
|
123
|
-
data: item,
|
|
124
|
-
width: width,
|
|
125
|
-
height: height,
|
|
126
|
-
maxWidth: '100%',
|
|
127
|
-
panelClass: 'dialog-p0',
|
|
128
|
-
});
|
|
129
|
-
dialog.afterClosed().subscribe(result => {
|
|
130
|
-
if (result !== true)
|
|
131
|
-
return;
|
|
132
|
-
this.notification.showMsg("Salvo com sucesso.");
|
|
133
|
-
this.atualiza();
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
|
-
salvar() {
|
|
137
|
-
const item = this.selectedItem;
|
|
138
|
-
if (!item)
|
|
139
|
-
return;
|
|
140
|
-
const valMsg = validaPessoa(item, this.focus);
|
|
141
|
-
if (valMsg) {
|
|
142
|
-
this.notification.showMsgError(valMsg);
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
this.isBusy = true;
|
|
146
|
-
this.ws.saveFornecedor(item)
|
|
147
|
-
.subscribe({
|
|
148
|
-
next: r => {
|
|
149
|
-
this.notification.showMsg("Salvo com sucesso.");
|
|
150
|
-
this.isBusy = false;
|
|
151
|
-
},
|
|
152
|
-
error: err => {
|
|
153
|
-
this.isBusy = false;
|
|
154
|
-
this.notification.showMsg(err.error);
|
|
155
|
-
}
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FornecedoresComponent, deps: [{ token: i1.CommonWebService }, { token: i2.NotificationService }, { token: i3.MatDialog }, { token: i4.AuthDataService }, { token: i5.ScreenHelperService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
159
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FornecedoresComponent, selector: "app-fornecedores", ngImport: i0, template: "<ox-busy-indicator [isBusy]=\"isBusy\"></ox-busy-indicator>\n<div class=\"tool-panel\" *ngIf=\"mobile\">\n <div class=\"tool-section ordem-sm2\">\n <label>A\u00E7\u00F5es</label>\n <div class=\"tool-row\">\n <button mat-icon-button (click)=\"atualiza()\">\n <mat-icon aria-label=\"Atualizar\">refresh</mat-icon>\n </button>\n <button mat-icon-button (click)=\"novo()\" *ngIf=\"allowAdd\">\n <mat-icon aria-label=\"Novo Grupo\">add</mat-icon>\n </button>\n <button mat-icon-button (click)=\"excluir()\" *ngIf=\"selectedItem && allowExcluir\" [@fade]>\n <mat-icon aria-label=\"Excluir Grupo\">delete</mat-icon>\n </button>\n </div>\n </div>\n <div class=\"tool-section\">\n <label>Pesquisa</label>\n <div class=\"search-input-container\">\n <input [(ngModel)]=\"setting.frase\" placeholder=\"Digite um termo de busca...\"\n (input)=\"lazyTrigger.fire()\">\n </div>\n </div>\n</div>\n<div class=\"result-container\" *ngIf=\"items\">\n <div class=\"cards-container cards-container-shadow\" *ngIf=\"mobile\">\n <ox-item-card [cloud]=\"i.enviadoPC\" [nome]=\"i.nome\" *ngFor=\"let i of items\" (click)=\"abreCadastro(i)\"></ox-item-card>\n </div>\n <div class=\"listagem-desktop-grid\" *ngIf=\"!mobile\">\n <div class=\"listagem-column-container listagem-list-column\">\n <h3>Fornecedores</h3>\n <div class=\"tool-panel tool-panel-float\">\n <div class=\"tool-section\">\n <label>Pesquisa</label>\n <div class=\"search-input-container\">\n <input [(ngModel)]=\"setting.frase\" placeholder=\"Digite um termo de busca...\"\n (input)=\"lazyTrigger.fire()\">\n </div>\n </div>\n <div class=\"tool-section ordem-sm2\">\n <label>A\u00E7\u00F5es</label>\n <div class=\"tool-row\">\n <button mat-icon-button (click)=\"atualiza()\">\n <mat-icon aria-label=\"Atualizar\">refresh</mat-icon>\n </button>\n <button mat-icon-button (click)=\"novo()\" *ngIf=\"allowAdd\">\n <mat-icon aria-label=\"Novo\">add</mat-icon>\n </button>\n <button mat-icon-button (click)=\"excluir()\" *ngIf=\"selectedItem && allowExcluir\" [@fade]>\n <mat-icon aria-label=\"Excluir\">delete</mat-icon>\n </button>\n </div>\n </div>\n </div>\n <div class=\"listagem-list-container\">\n <h4 *ngIf=\"items.length === 0\" class=\"nenhum-item-msg\">A busca n\u00E3o retornou resultados</h4>\n <ox-item-card [cloud]=\"i.enviadoPC\" [nome]=\"i.nome\" *ngFor=\"let i of items\" [class.selected]=\"i === selectedItem\"\n (click)=\"selectedItem = i; onSelectItem();\"></ox-item-card >\n </div>\n </div>\n <div id=\"form-column\" class=\"listagem-column-container listagem-column-form\">\n <h3 *ngIf=\"!selectedItem\" class=\"selecione-um-item-msg\">Selecione um fornecedor no lado direito</h3>\n <h3 *ngIf=\"selectedItem\">{{selectedItem.nome | uppercase}}</h3>\n <div class=\"listagem-form-container\">\n <app-fornecedores-form [@fade] [model]=\"selectedItem\" *ngIf=\"selectedItem\"></app-fornecedores-form>\n </div>\n <div class=\"listagem-form-acoes\">\n <button (click)=\"salvar()\" mat-fab color=\"primary\" *ngIf=\"selectedItem\" tabindex=\"20\">\n <mat-icon>save</mat-icon>\n </button>\n </div>\n </div>\n </div>\n</div>", styles: [":host{height:calc(100% - 48px);display:flex;flex-grow:1;flex-direction:column;background:#f0f0f0}:host{background-color:#fafafa}\n"], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i8.MatFabButton, selector: "button[mat-fab]", inputs: ["disabled", "disableRipple", "color", "tabIndex", "extended"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.BusyIndicatorComponent, selector: "ox-busy-indicator", inputs: ["isBusy"] }, { kind: "component", type: i11.ItemCardComponent, selector: "ox-item-card", inputs: ["nome", "codigo", "star", "cloud", "desativado", "ownership"] }, { kind: "component", type: i12.FornecedoresFormComponent, selector: "app-fornecedores-form", inputs: ["model"] }, { kind: "pipe", type: i6.UpperCasePipe, name: "uppercase" }], animations: [fadeAnimation] }); }
|
|
160
|
-
}
|
|
161
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FornecedoresComponent, decorators: [{
|
|
162
|
-
type: Component,
|
|
163
|
-
args: [{ selector: 'app-fornecedores', animations: [fadeAnimation], template: "<ox-busy-indicator [isBusy]=\"isBusy\"></ox-busy-indicator>\n<div class=\"tool-panel\" *ngIf=\"mobile\">\n <div class=\"tool-section ordem-sm2\">\n <label>A\u00E7\u00F5es</label>\n <div class=\"tool-row\">\n <button mat-icon-button (click)=\"atualiza()\">\n <mat-icon aria-label=\"Atualizar\">refresh</mat-icon>\n </button>\n <button mat-icon-button (click)=\"novo()\" *ngIf=\"allowAdd\">\n <mat-icon aria-label=\"Novo Grupo\">add</mat-icon>\n </button>\n <button mat-icon-button (click)=\"excluir()\" *ngIf=\"selectedItem && allowExcluir\" [@fade]>\n <mat-icon aria-label=\"Excluir Grupo\">delete</mat-icon>\n </button>\n </div>\n </div>\n <div class=\"tool-section\">\n <label>Pesquisa</label>\n <div class=\"search-input-container\">\n <input [(ngModel)]=\"setting.frase\" placeholder=\"Digite um termo de busca...\"\n (input)=\"lazyTrigger.fire()\">\n </div>\n </div>\n</div>\n<div class=\"result-container\" *ngIf=\"items\">\n <div class=\"cards-container cards-container-shadow\" *ngIf=\"mobile\">\n <ox-item-card [cloud]=\"i.enviadoPC\" [nome]=\"i.nome\" *ngFor=\"let i of items\" (click)=\"abreCadastro(i)\"></ox-item-card>\n </div>\n <div class=\"listagem-desktop-grid\" *ngIf=\"!mobile\">\n <div class=\"listagem-column-container listagem-list-column\">\n <h3>Fornecedores</h3>\n <div class=\"tool-panel tool-panel-float\">\n <div class=\"tool-section\">\n <label>Pesquisa</label>\n <div class=\"search-input-container\">\n <input [(ngModel)]=\"setting.frase\" placeholder=\"Digite um termo de busca...\"\n (input)=\"lazyTrigger.fire()\">\n </div>\n </div>\n <div class=\"tool-section ordem-sm2\">\n <label>A\u00E7\u00F5es</label>\n <div class=\"tool-row\">\n <button mat-icon-button (click)=\"atualiza()\">\n <mat-icon aria-label=\"Atualizar\">refresh</mat-icon>\n </button>\n <button mat-icon-button (click)=\"novo()\" *ngIf=\"allowAdd\">\n <mat-icon aria-label=\"Novo\">add</mat-icon>\n </button>\n <button mat-icon-button (click)=\"excluir()\" *ngIf=\"selectedItem && allowExcluir\" [@fade]>\n <mat-icon aria-label=\"Excluir\">delete</mat-icon>\n </button>\n </div>\n </div>\n </div>\n <div class=\"listagem-list-container\">\n <h4 *ngIf=\"items.length === 0\" class=\"nenhum-item-msg\">A busca n\u00E3o retornou resultados</h4>\n <ox-item-card [cloud]=\"i.enviadoPC\" [nome]=\"i.nome\" *ngFor=\"let i of items\" [class.selected]=\"i === selectedItem\"\n (click)=\"selectedItem = i; onSelectItem();\"></ox-item-card >\n </div>\n </div>\n <div id=\"form-column\" class=\"listagem-column-container listagem-column-form\">\n <h3 *ngIf=\"!selectedItem\" class=\"selecione-um-item-msg\">Selecione um fornecedor no lado direito</h3>\n <h3 *ngIf=\"selectedItem\">{{selectedItem.nome | uppercase}}</h3>\n <div class=\"listagem-form-container\">\n <app-fornecedores-form [@fade] [model]=\"selectedItem\" *ngIf=\"selectedItem\"></app-fornecedores-form>\n </div>\n <div class=\"listagem-form-acoes\">\n <button (click)=\"salvar()\" mat-fab color=\"primary\" *ngIf=\"selectedItem\" tabindex=\"20\">\n <mat-icon>save</mat-icon>\n </button>\n </div>\n </div>\n </div>\n</div>", styles: [":host{height:calc(100% - 48px);display:flex;flex-grow:1;flex-direction:column;background:#f0f0f0}:host{background-color:#fafafa}\n"] }]
|
|
164
|
-
}], ctorParameters: function () { return [{ type: i1.CommonWebService }, { type: i2.NotificationService }, { type: i3.MatDialog }, { type: i4.AuthDataService }, { type: i5.ScreenHelperService }]; } });
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybmVjZWRvcmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL294cGktbmdsaWIvc3JjL2xpYi9jYWRhc3Ryb3MvZm9ybmVjZWRvcmVzL2Zvcm5lY2Vkb3Jlcy9mb3JuZWNlZG9yZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3hwaS1uZ2xpYi9zcmMvbGliL2NhZGFzdHJvcy9mb3JuZWNlZG9yZXMvZm9ybmVjZWRvcmVzL2Zvcm5lY2Vkb3Jlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUE0QyxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDL0QsT0FBTyxFQUFjLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR2hFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzlHLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGdFQUFnRSxDQUFDOzs7Ozs7Ozs7Ozs7OztBQVFqSCxNQUFNLE9BQU8scUJBQXFCO0lBV2hDLFlBQW9CLEVBQW9CLEVBQzlCLFlBQWlDLEVBQ2xDLE1BQWlCLEVBQ3hCLElBQXFCLEVBQ2IsWUFBaUM7UUFKdkIsT0FBRSxHQUFGLEVBQUUsQ0FBa0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2xDLFdBQU0sR0FBTixNQUFNLENBQVc7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RSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUMsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2QyxPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixJQUFJLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7YUFDekIsU0FBUyxDQUFDO1lBQ1QsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFO2dCQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUM7Z0JBQ2hELElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0F0SlUscUJBQXFCO21HQUFyQixxQkFBcUIsd0RDckJsQyx3NUhBeUVNLDgyRER0RFEsQ0FBQyxhQUFhLENBQUM7OzRGQUVoQixxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLENBQUMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgZmFkZUFuaW1hdGlvbiB9IGZyb20gJy4uLy4uLy4uL2FuaW1hdGlvbnMvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBGb3JuZWNlZG9yLCB2YWxpZGFQZXNzb2EgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZW50aWRhZGVzL3Blc3NvYSc7XG5pbXBvcnQgeyBMYXp5VHJpZ2dlciB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbmZyYS9sYXp5LXRyaWdnZXInO1xuaW1wb3J0IHsgY29uZmlybWFFeGNsdXNhbyB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbmZyYS9zZWxlY2FvLXV0aWxzJztcbmltcG9ydCB7IFNlYXJjaFNldHRpbmcgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvc2V0dGluZ3Mvc2VhcmNoLXNldHRpbmcnO1xuaW1wb3J0IHsgQXV0aERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL2F1dGgtZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbW1vbldlYlNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9wcm92aWRlcnMvY29tbW9uLXdlYi1zZXJ2aWNlJztcbmltcG9ydCB7IEZvY3VzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Byb3ZpZGVycy9mb2N1cy5zZXJ2aWNlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9wcm92aWRlcnMvbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2NyZWVuSGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Byb3ZpZGVycy9zY3JlZW4taGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9ybmVjZWRvcmVzQWRkRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybmVjZWRvcmVzLWFkZC1kaWFsb2cvZm9ybmVjZWRvcmVzLWFkZC1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm5lY2Vkb3Jlc0VkaXREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9mb3JuZWNlZG9yZXMtZWRpdC1kaWFsb2cvZm9ybmVjZWRvcmVzLWVkaXQtZGlhbG9nLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1mb3JuZWNlZG9yZXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybmVjZWRvcmVzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybmVjZWRvcmVzLmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtmYWRlQW5pbWF0aW9uXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JuZWNlZG9yZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIG1vYmlsZTogYm9vbGVhbjtcbiAgaXNCdXN5OiBib29sZWFuID0gZmFsc2U7XG4gIGl0ZW1zOiBGb3JuZWNlZG9yW10gPSBbXTtcbiAgc2VsZWN0ZWRJdGVtOiBGb3JuZWNlZG9yIHwgbnVsbCA9IG51bGw7XG4gIGxhenlUcmlnZ2VyID0gbmV3IExhenlUcmlnZ2VyKCgpID0+IHsgdGhpcy5hdHVhbGl6YSgpOyB9KTtcbiAgYWxsb3dBZGQ6IGJvb2xlYW47XG4gIGFsbG93RXhjbHVpcjogYm9vbGVhbjtcbiAgc2V0dGluZyA9IG5ldyBTZWFyY2hTZXR0aW5nKCk7XG4gIHByaXZhdGUgZm9jdXM6IEZvY3VzU2VydmljZSA9IG5ldyBGb2N1c1NlcnZpY2UoKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHdzOiBDb21tb25XZWJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBhdXRoOiBBdXRoRGF0YVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzY3JlZW5IZWxwZXI6IFNjcmVlbkhlbHBlclNlcnZpY2UpIHtcbiAgICB0aGlzLmFsbG93QWRkID0gYXV0aC5wZXJtaXNzb2VzLmZpbmFuY2FzRm9ybmVjZWRvckFkZCB8fCBhdXRoLnBlcm1pc3NvZXMuZXN0b3F1ZUZvcm5lY2Vkb3JBZGQ7XG4gICAgdGhpcy5hbGxvd0V4Y2x1aXIgPSBhdXRoLnBlcm1pc3NvZXMuZmluYW5jYXNGb3JuZWNlZG9yRGVsZXRlIHx8IGF1dGgucGVybWlzc29lcy5lc3RvcXVlRm9ybmVjZWRvckRlbGV0ZTtcbiAgICB0aGlzLm1vYmlsZSA9IHRoaXMuc2NyZWVuSGVscGVyLmlzTWVkaXVtO1xuICAgIHRoaXMuc2NyZWVuSGVscGVyLmNoYW5nZWRNZWRpdW1TY3JlZW4uc3Vic2NyaWJlKHggPT4gdGhpcy5tb2JpbGUgPSB4KTtcblxuXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldHRpbmcub3JkZW0gPSBcIm5vbWVcIjtcbiAgICB0aGlzLmF0dWFsaXphKCk7XG4gIH1cblxuICBvblNlbGVjdEl0ZW0oKTogdm9pZCB7XG5cbiAgICBpZiAoIXRoaXMuZm9jdXMuaGFzSW5pdCgpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5mb2N1cy5yZWdpc3RlckVsZW1lbnRCeUlkKFwiZm9ybS1jb2x1bW5cIik7XG4gICAgICAgIHRoaXMuZm9jdXMuc2V0Rmlyc3QoKTtcbiAgICAgIH0sIDUwMCk7XG4gICAgICAvL3RoaXMuX2ZvY3VzLnJlZ2lzdGVyRWxlbWVudEJ5SWQoXCJmb3JtLWNvbHVtblwiKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmZvY3VzLnNldEZpcnN0KCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1cy51bnJlZ2lzdGVyRWxlbWVudEJ5SWQoXCJmb3JtLWNvbHVtblwiKTtcbiAgfVxuXG4gIGF0dWFsaXphKCkge1xuICAgIHRoaXMuaXNCdXN5ID0gdHJ1ZTtcbiAgICB0aGlzLndzLmJ1c2NhRm9ybmVjZWRvcih0aGlzLnNldHRpbmcpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogciA9PiB7XG4gICAgICAgICAgdGhpcy5pdGVtcyA9IHI7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW0gPSBudWxsO1xuICAgICAgICAgIGNvbnNvbGUuaW5mbyhyKTtcbiAgICAgICAgICB0aGlzLmlzQnVzeSA9IGZhbHNlO1xuICAgICAgICB9LCBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgICB0aGlzLmlzQnVzeSA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uLnNob3dIdHRwRXJyb3IoZXJyKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuXG4gIGV4Y2x1aXIoKSB7XG4gICAgY29uc3QgaXRlbSA9IHRoaXMuc2VsZWN0ZWRJdGVtO1xuICAgIGlmICghaXRlbSkgcmV0dXJuO1xuICAgIGNvbmZpcm1hRXhjbHVzYW8odGhpcy5kaWFsb2csXG4gICAgICBgRGVzZWphIHByb3NzZWd1aXIgY29tIGEgZXhjbHVzw6NvIGRvIGZvcm5lY2Vkb3IgJHtpdGVtLm5vbWV9P2AsXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNCdXN5ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy53cy5kZWxldGVGb3JuZWNlZG9yKGl0ZW0uaWQpXG4gICAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBuZXh0OiByID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb24uc2hvd01zZyhcIk8gZm9ybmVjZWRvciBmb2kgZXhjbHXDrWRvIGNvbSBzdWNlc3NvLlwiKTtcbiAgICAgICAgICAgICAgdGhpcy5pdGVtcy5yZW1vdmUoaXRlbSk7XG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gbnVsbDtcbiAgICAgICAgICAgICAgdGhpcy5pc0J1c3kgPSBmYWxzZTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5pc0J1c3kgPSBmYWxzZTtcbiAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb24uc2hvd01zZyhlcnIuZXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBub3ZvKCkge1xuXG4gICAgbGV0IGhlaWdodCA9ICh3aW5kb3cuaW5uZXJIZWlnaHQgKiAwLjkwKSArICdweCc7XG4gICAgbGV0IHdpZHRoID0gNTUwICsgJ3B4JztcbiAgICBpZiAodGhpcy5tb2JpbGUpIHtcbiAgICAgIHdpZHRoID0gKHdpbmRvdy5pbm5lcldpZHRoICogMC45OSkgKyAncHgnO1xuICAgICAgLy9oZWlnaHQgPSAod2luZG93LmlubmVySGVpZ2h0ICogMC45OCkgKyAncHgnO1xuICAgIH1cbiAgICBjb25zdCBkaWFsb2cgPSB0aGlzLmRpYWxvZy5vcGVuKEZvcm5lY2Vkb3Jlc0FkZERpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgd2lkdGg6IHdpZHRoLFxuICAgICAgaGVpZ2h0OiBoZWlnaHQsXG4gICAgICBtYXhXaWR0aDogJzEwMCUnLFxuICAgICAgcGFuZWxDbGFzczogJ2RpYWxvZy1wMCcsXG4gICAgfSk7XG4gICAgZGlhbG9nLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICBpZiAocmVzdWx0ID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9uLnNob3dNc2coXCJTYWx2byBjb20gc3VjZXNzby5cIik7XG4gICAgICB0aGlzLmF0dWFsaXphKCk7XG4gICAgfSk7XG4gIH1cblxuICBhYnJlQ2FkYXN0cm8oaXRlbTogRm9ybmVjZWRvcikge1xuXG4gICAgbGV0IGhlaWdodCA9IHVuZGVmaW5lZDtcbiAgICBsZXQgd2lkdGggPSA1NTAgKyAncHgnO1xuICAgIGlmICh0aGlzLm1vYmlsZSkge1xuICAgICAgd2lkdGggPSAod2luZG93LmlubmVyV2lkdGggKiAwLjk5KSArICdweCc7XG4gICAgICBoZWlnaHQgPSAod2luZG93LmlubmVySGVpZ2h0ICogMC45OSkgKyAncHgnO1xuICAgIH1cbiAgICBjb25zdCBkaWFsb2cgPSB0aGlzLmRpYWxvZy5vcGVuKEZvcm5lY2Vkb3Jlc0VkaXREaWFsb2dDb21wb25lbnQsIHtcbiAgICAgIGRhdGE6IGl0ZW0sXG4gICAgICB3aWR0aDogd2lkdGgsXG4gICAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICAgIG1heFdpZHRoOiAnMTAwJScsXG4gICAgICBwYW5lbENsYXNzOiAnZGlhbG9nLXAwJyxcbiAgICB9KTtcbiAgICBkaWFsb2cuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgIGlmIChyZXN1bHQgIT09IHRydWUpIHJldHVybjtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9uLnNob3dNc2coXCJTYWx2byBjb20gc3VjZXNzby5cIik7XG4gICAgICB0aGlzLmF0dWFsaXphKCk7XG4gICAgfSk7XG4gIH1cblxuICBzYWx2YXIoKSB7XG4gICAgY29uc3QgaXRlbSA9IHRoaXMuc2VsZWN0ZWRJdGVtO1xuICAgIGlmICghaXRlbSkgcmV0dXJuO1xuICAgIGNvbnN0IHZhbE1zZyA9IHZhbGlkYVBlc3NvYShpdGVtLCB0aGlzLmZvY3VzKTtcbiAgICBpZiAodmFsTXNnKSB7XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbi5zaG93TXNnRXJyb3IodmFsTXNnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5pc0J1c3kgPSB0cnVlO1xuICAgIHRoaXMud3Muc2F2ZUZvcm5lY2Vkb3IoaXRlbSlcbiAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiByID0+IHtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbi5zaG93TXNnKFwiU2Fsdm8gY29tIHN1Y2Vzc28uXCIpO1xuICAgICAgICAgIHRoaXMuaXNCdXN5ID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiBlcnIgPT4ge1xuICAgICAgICAgIHRoaXMuaXNCdXN5ID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb24uc2hvd01zZyhlcnIuZXJyb3IpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG59XG4iLCI8b3gtYnVzeS1pbmRpY2F0b3IgW2lzQnVzeV09XCJpc0J1c3lcIj48L294LWJ1c3ktaW5kaWNhdG9yPlxuPGRpdiBjbGFzcz1cInRvb2wtcGFuZWxcIiAqbmdJZj1cIm1vYmlsZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0b29sLXNlY3Rpb24gb3JkZW0tc20yXCI+XG4gICAgICAgIDxsYWJlbD5Bw6fDtWVzPC9sYWJlbD5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRvb2wtcm93XCI+XG4gICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiYXR1YWxpemEoKVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBhcmlhLWxhYmVsPVwiQXR1YWxpemFyXCI+cmVmcmVzaDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJub3ZvKClcIiAqbmdJZj1cImFsbG93QWRkXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIGFyaWEtbGFiZWw9XCJOb3ZvIEdydXBvXCI+YWRkPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImV4Y2x1aXIoKVwiICpuZ0lmPVwic2VsZWN0ZWRJdGVtICYmIGFsbG93RXhjbHVpclwiIFtAZmFkZV0+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIGFyaWEtbGFiZWw9XCJFeGNsdWlyIEdydXBvXCI+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidG9vbC1zZWN0aW9uXCI+XG4gICAgICAgIDxsYWJlbD5QZXNxdWlzYTwvbGFiZWw+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtaW5wdXQtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8aW5wdXQgWyhuZ01vZGVsKV09XCJzZXR0aW5nLmZyYXNlXCIgcGxhY2Vob2xkZXI9XCJEaWdpdGUgdW0gdGVybW8gZGUgYnVzY2EuLi5cIlxuICAgICAgICAgICAgICAgIChpbnB1dCk9XCJsYXp5VHJpZ2dlci5maXJlKClcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJyZXN1bHQtY29udGFpbmVyXCIgKm5nSWY9XCJpdGVtc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkcy1jb250YWluZXIgY2FyZHMtY29udGFpbmVyLXNoYWRvd1wiICpuZ0lmPVwibW9iaWxlXCI+XG4gICAgICAgIDxveC1pdGVtLWNhcmQgW2Nsb3VkXT1cImkuZW52aWFkb1BDXCIgW25vbWVdPVwiaS5ub21lXCIgKm5nRm9yPVwibGV0IGkgb2YgaXRlbXNcIiAoY2xpY2spPVwiYWJyZUNhZGFzdHJvKGkpXCI+PC9veC1pdGVtLWNhcmQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImxpc3RhZ2VtLWRlc2t0b3AtZ3JpZFwiICpuZ0lmPVwiIW1vYmlsZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGlzdGFnZW0tY29sdW1uLWNvbnRhaW5lciBsaXN0YWdlbS1saXN0LWNvbHVtblwiPlxuICAgICAgICAgICAgPGgzPkZvcm5lY2Vkb3JlczwvaDM+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbC1wYW5lbCB0b29sLXBhbmVsLWZsb2F0XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2wtc2VjdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICA8bGFiZWw+UGVzcXVpc2E8L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWlucHV0LWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFsobmdNb2RlbCldPVwic2V0dGluZy5mcmFzZVwiIHBsYWNlaG9sZGVyPVwiRGlnaXRlIHVtIHRlcm1vIGRlIGJ1c2NhLi4uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW5wdXQpPVwibGF6eVRyaWdnZXIuZmlyZSgpXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sLXNlY3Rpb24gb3JkZW0tc20yXCI+XG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbD5Bw6fDtWVzPC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2wtcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiYXR1YWxpemEoKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBhcmlhLWxhYmVsPVwiQXR1YWxpemFyXCI+cmVmcmVzaDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJub3ZvKClcIiAqbmdJZj1cImFsbG93QWRkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIGFyaWEtbGFiZWw9XCJOb3ZvXCI+YWRkPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImV4Y2x1aXIoKVwiICpuZ0lmPVwic2VsZWN0ZWRJdGVtICYmIGFsbG93RXhjbHVpclwiIFtAZmFkZV0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIGFyaWEtbGFiZWw9XCJFeGNsdWlyXCI+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxpc3RhZ2VtLWxpc3QtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgPGg0ICpuZ0lmPVwiaXRlbXMubGVuZ3RoID09PSAwXCIgY2xhc3M9XCJuZW5odW0taXRlbS1tc2dcIj5BIGJ1c2NhIG7Do28gcmV0b3Jub3UgcmVzdWx0YWRvczwvaDQ+XG4gICAgICAgICAgICAgICAgPG94LWl0ZW0tY2FyZCBbY2xvdWRdPVwiaS5lbnZpYWRvUENcIiBbbm9tZV09XCJpLm5vbWVcIiAqbmdGb3I9XCJsZXQgaSBvZiBpdGVtc1wiIFtjbGFzcy5zZWxlY3RlZF09XCJpID09PSBzZWxlY3RlZEl0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWRJdGVtID0gaTsgb25TZWxlY3RJdGVtKCk7XCI+PC9veC1pdGVtLWNhcmQgPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGlkPVwiZm9ybS1jb2x1bW5cIiBjbGFzcz1cImxpc3RhZ2VtLWNvbHVtbi1jb250YWluZXIgbGlzdGFnZW0tY29sdW1uLWZvcm1cIj5cbiAgICAgICAgICAgIDxoMyAqbmdJZj1cIiFzZWxlY3RlZEl0ZW1cIiBjbGFzcz1cInNlbGVjaW9uZS11bS1pdGVtLW1zZ1wiPlNlbGVjaW9uZSB1bSBmb3JuZWNlZG9yIG5vIGxhZG8gZGlyZWl0bzwvaDM+XG4gICAgICAgICAgICA8aDMgKm5nSWY9XCJzZWxlY3RlZEl0ZW1cIj57e3NlbGVjdGVkSXRlbS5ub21lIHwgdXBwZXJjYXNlfX08L2gzPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxpc3RhZ2VtLWZvcm0tY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgPGFwcC1mb3JuZWNlZG9yZXMtZm9ybSBbQGZhZGVdIFttb2RlbF09XCJzZWxlY3RlZEl0ZW1cIiAqbmdJZj1cInNlbGVjdGVkSXRlbVwiPjwvYXBwLWZvcm5lY2Vkb3Jlcy1mb3JtPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGlzdGFnZW0tZm9ybS1hY29lc1wiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInNhbHZhcigpXCIgbWF0LWZhYiBjb2xvcj1cInByaW1hcnlcIiAqbmdJZj1cInNlbGVjdGVkSXRlbVwiIHRhYmluZGV4PVwiMjBcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPnNhdmU8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { Component, Inject, Optional } from '@angular/core';
|
|
2
|
-
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
-
import { validaPessoa } from '../../../models/entidades/pessoa';
|
|
4
|
-
import { FocusService } from '../../../providers/focus.service';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../../../providers/common-web-service";
|
|
7
|
-
import * as i2 from "../../../providers/notification.service";
|
|
8
|
-
import * as i3 from "@angular/material/dialog";
|
|
9
|
-
import * as i4 from "../../../providers/screen-helper.service";
|
|
10
|
-
import * as i5 from "@angular/common";
|
|
11
|
-
import * as i6 from "@angular/material/button";
|
|
12
|
-
import * as i7 from "@angular/material/icon";
|
|
13
|
-
import * as i8 from "../../../controls/busy-indicator/busy-indicator.component";
|
|
14
|
-
import * as i9 from "../fornecedores/fornecedores-form.component";
|
|
15
|
-
export class FornecedoresAddDialogComponent {
|
|
16
|
-
constructor(ws, notification, dataDialog, dialog, elRef, dialogRef, screenHelper) {
|
|
17
|
-
this.ws = ws;
|
|
18
|
-
this.notification = notification;
|
|
19
|
-
this.dataDialog = dataDialog;
|
|
20
|
-
this.dialog = dialog;
|
|
21
|
-
this.elRef = elRef;
|
|
22
|
-
this.dialogRef = dialogRef;
|
|
23
|
-
this.screenHelper = screenHelper;
|
|
24
|
-
this.isBusy = false;
|
|
25
|
-
this.focus = new FocusService();
|
|
26
|
-
this.model = dataDialog ?? {
|
|
27
|
-
id: 0,
|
|
28
|
-
nome: '',
|
|
29
|
-
isAtivo: true
|
|
30
|
-
};
|
|
31
|
-
this.mobile = this.screenHelper.isMedium;
|
|
32
|
-
this.screenHelper.changedMediumScreen.subscribe(x => this.mobile = x);
|
|
33
|
-
}
|
|
34
|
-
ngOnInit() {
|
|
35
|
-
this.focus.registerElement(this.elRef.nativeElement);
|
|
36
|
-
}
|
|
37
|
-
ngOnDestroy() {
|
|
38
|
-
this.focus.unregisterElement(this.elRef.nativeElement);
|
|
39
|
-
}
|
|
40
|
-
salvar() {
|
|
41
|
-
const valMsg = validaPessoa(this.model, this.focus);
|
|
42
|
-
if (valMsg) {
|
|
43
|
-
this.notification.showMsgError(valMsg);
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
this.isBusy = true;
|
|
47
|
-
this.ws.addFornecedor(this.model)
|
|
48
|
-
.subscribe({
|
|
49
|
-
next: r => {
|
|
50
|
-
this.isBusy = false;
|
|
51
|
-
this.model.id = r;
|
|
52
|
-
this.notification.showMsg("Salvo com sucesso.");
|
|
53
|
-
this.dialogRef.close(this.model);
|
|
54
|
-
},
|
|
55
|
-
error: err => {
|
|
56
|
-
this.isBusy = false;
|
|
57
|
-
this.notification.showMsg(err.error);
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FornecedoresAddDialogComponent, deps: [{ token: i1.CommonWebService }, { token: i2.NotificationService }, { token: MAT_DIALOG_DATA, optional: true }, { token: i3.MatDialog }, { token: i0.ElementRef }, { token: i3.MatDialogRef }, { token: i4.ScreenHelperService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FornecedoresAddDialogComponent, selector: "app-fornecedores-add-dialog", ngImport: i0, template: "<div class=\"ox-header\">\n <h2 class=\"titulo\">Novo Fornecedor</h2>\n <button mat-icon-button [mat-dialog-close]>\n <mat-icon>close</mat-icon>\n </button>\n</div>\n<div class=\"dialog-content\">\n <app-fornecedores-form [model]=\"model\" *ngIf=\"model\"></app-fornecedores-form>\n</div>\n<div class=\"dialog-footer\">\n <button mat-button color=\"primary\" [disabled]=\"isBusy\" (click)=\"salvar()\" tabindex=\"100\">SALVAR</button>\n <button mat-button [mat-dialog-close] >VOLTAR</button>\n</div>\n<ox-busy-indicator [isBusy]=\"isBusy\"></ox-busy-indicator>", styles: [":host{background:#fafafa;display:flex;flex-direction:column;height:100%;max-height:99vh}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i8.BusyIndicatorComponent, selector: "ox-busy-indicator", inputs: ["isBusy"] }, { kind: "component", type: i9.FornecedoresFormComponent, selector: "app-fornecedores-form", inputs: ["model"] }] }); }
|
|
63
|
-
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FornecedoresAddDialogComponent, decorators: [{
|
|
65
|
-
type: Component,
|
|
66
|
-
args: [{ selector: 'app-fornecedores-add-dialog', template: "<div class=\"ox-header\">\n <h2 class=\"titulo\">Novo Fornecedor</h2>\n <button mat-icon-button [mat-dialog-close]>\n <mat-icon>close</mat-icon>\n </button>\n</div>\n<div class=\"dialog-content\">\n <app-fornecedores-form [model]=\"model\" *ngIf=\"model\"></app-fornecedores-form>\n</div>\n<div class=\"dialog-footer\">\n <button mat-button color=\"primary\" [disabled]=\"isBusy\" (click)=\"salvar()\" tabindex=\"100\">SALVAR</button>\n <button mat-button [mat-dialog-close] >VOLTAR</button>\n</div>\n<ox-busy-indicator [isBusy]=\"isBusy\"></ox-busy-indicator>", styles: [":host{background:#fafafa;display:flex;flex-direction:column;height:100%;max-height:99vh}\n"] }]
|
|
67
|
-
}], ctorParameters: function () { return [{ type: i1.CommonWebService }, { type: i2.NotificationService }, { type: undefined, decorators: [{
|
|
68
|
-
type: Optional
|
|
69
|
-
}, {
|
|
70
|
-
type: Inject,
|
|
71
|
-
args: [MAT_DIALOG_DATA]
|
|
72
|
-
}] }, { type: i3.MatDialog }, { type: i0.ElementRef }, { type: i3.MatDialogRef }, { type: i4.ScreenHelperService }]; } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybmVjZWRvcmVzLWFkZC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3hwaS1uZ2xpYi9zcmMvbGliL2NhZGFzdHJvcy9mb3JuZWNlZG9yZXMvZm9ybmVjZWRvcmVzLWFkZC1kaWFsb2cvZm9ybmVjZWRvcmVzLWFkZC1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3hwaS1uZ2xpYi9zcmMvbGliL2NhZGFzdHJvcy9mb3JuZWNlZG9yZXMvZm9ybmVjZWRvcmVzLWFkZC1kaWFsb2cvZm9ybmVjZWRvcmVzLWFkZC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQTJCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BGLE9BQU8sRUFBYyxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUU1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7Ozs7O0FBU2hFLE1BQU0sT0FBTyw4QkFBOEI7SUFLekMsWUFBb0IsRUFBb0IsRUFDOUIsWUFBaUMsRUFFbEMsVUFBc0IsRUFDdEIsTUFBaUIsRUFDaEIsS0FBaUIsRUFDakIsU0FBdUQsRUFDdkQsWUFBaUM7UUFQdkIsT0FBRSxHQUFGLEVBQUUsQ0FBa0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBRWxDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNoQixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLGNBQVMsR0FBVCxTQUFTLENBQThDO1FBQ3ZELGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQVQzQyxXQUFNLEdBQVksS0FBSyxDQUFDO1FBQ3hCLFVBQUssR0FBaUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVN2QyxJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUsSUFBSTtZQUN6QixFQUFFLEVBQUUsQ0FBQztZQUNMLElBQUksRUFBRSxFQUFFO1lBQ1IsT0FBTyxFQUFFLElBQUk7U0FDZCxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUdELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDdkMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUM5QixTQUFTLENBQUM7WUFDVCxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7Z0JBQ1IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDaEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0FsRFUsOEJBQThCLHFGQU9uQixlQUFlO21HQVAxQiw4QkFBOEIsbUVDYjNDLDRrQkFheUQ7OzRGREE1Qyw4QkFBOEI7a0JBTDFDLFNBQVM7K0JBQ0UsNkJBQTZCOzswQkFXcEMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3QsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBGb3JuZWNlZG9yLCB2YWxpZGFQZXNzb2EgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZW50aWRhZGVzL3Blc3NvYSc7XG5pbXBvcnQgeyBDb21tb25XZWJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL2NvbW1vbi13ZWItc2VydmljZSc7XG5pbXBvcnQgeyBGb2N1c1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9wcm92aWRlcnMvZm9jdXMuc2VydmljZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFNjcmVlbkhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9wcm92aWRlcnMvc2NyZWVuLWhlbHBlci5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZvcm5lY2Vkb3Jlcy1hZGQtZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm5lY2Vkb3Jlcy1hZGQtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybmVjZWRvcmVzLWFkZC1kaWFsb2cuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JuZWNlZG9yZXNBZGREaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIG1vZGVsOiBGb3JuZWNlZG9yO1xuICBtb2JpbGU6IGJvb2xlYW47XG4gIGlzQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuICBmb2N1czogRm9jdXNTZXJ2aWNlID0gbmV3IEZvY3VzU2VydmljZSgpO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHdzOiBDb21tb25XZWJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKVxuICAgIHB1YmxpYyBkYXRhRGlhbG9nOiBGb3JuZWNlZG9yLFxuICAgIHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Rm9ybmVjZWRvcmVzQWRkRGlhbG9nQ29tcG9uZW50PixcbiAgICBwcml2YXRlIHNjcmVlbkhlbHBlcjogU2NyZWVuSGVscGVyU2VydmljZSkge1xuICAgIHRoaXMubW9kZWwgPSBkYXRhRGlhbG9nID8/IHtcbiAgICAgIGlkOiAwLFxuICAgICAgbm9tZTogJycsXG4gICAgICBpc0F0aXZvOiB0cnVlXG4gICAgfTtcbiAgICB0aGlzLm1vYmlsZSA9IHRoaXMuc2NyZWVuSGVscGVyLmlzTWVkaXVtO1xuICAgIHRoaXMuc2NyZWVuSGVscGVyLmNoYW5nZWRNZWRpdW1TY3JlZW4uc3Vic2NyaWJlKHggPT4gdGhpcy5tb2JpbGUgPSB4KTtcbiAgfVxuXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1cy5yZWdpc3RlckVsZW1lbnQodGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgfVxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzLnVucmVnaXN0ZXJFbGVtZW50KHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICBzYWx2YXIoKSB7XG4gICAgY29uc3QgdmFsTXNnID0gdmFsaWRhUGVzc29hKHRoaXMubW9kZWwsIHRoaXMuZm9jdXMpO1xuICAgIGlmICh2YWxNc2cpIHtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9uLnNob3dNc2dFcnJvcih2YWxNc2cpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlzQnVzeSA9IHRydWU7XG4gICAgdGhpcy53cy5hZGRGb3JuZWNlZG9yKHRoaXMubW9kZWwpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogciA9PiB7XG4gICAgICAgICAgdGhpcy5pc0J1c3kgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLm1vZGVsLmlkID0gcjtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbi5zaG93TXNnKFwiU2Fsdm8gY29tIHN1Y2Vzc28uXCIpO1xuICAgICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMubW9kZWwpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgICB0aGlzLmlzQnVzeSA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uLnNob3dNc2coZXJyLmVycm9yKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJveC1oZWFkZXJcIj5cbiAgICA8aDIgY2xhc3M9XCJ0aXR1bG9cIj5Ob3ZvIEZvcm5lY2Vkb3I8L2gyPlxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXQtZGlhbG9nLWNsb3NlXT5cbiAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImRpYWxvZy1jb250ZW50XCI+XG4gICAgPGFwcC1mb3JuZWNlZG9yZXMtZm9ybSBbbW9kZWxdPVwibW9kZWxcIiAqbmdJZj1cIm1vZGVsXCI+PC9hcHAtZm9ybmVjZWRvcmVzLWZvcm0+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJkaWFsb2ctZm9vdGVyXCI+XG4gICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIFtkaXNhYmxlZF09XCJpc0J1c3lcIiAoY2xpY2spPVwic2FsdmFyKClcIiAgdGFiaW5kZXg9XCIxMDBcIj5TQUxWQVI8L2J1dHRvbj5cbiAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdC1kaWFsb2ctY2xvc2VdID5WT0xUQVI8L2J1dHRvbj5cbjwvZGl2PlxuPG94LWJ1c3ktaW5kaWNhdG9yIFtpc0J1c3ldPVwiaXNCdXN5XCI+PC9veC1idXN5LWluZGljYXRvcj4iXX0=
|