@stiunb/unb-lib-components 18.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/README.md +18 -0
  2. package/esm2022/lib/services/unb-auth.service.mjs +57 -0
  3. package/esm2022/lib/unb-mensagem/unb-mensagem.component.mjs +82 -0
  4. package/esm2022/lib/unb-mensagem/unb-mensagem.module.mjs +26 -0
  5. package/esm2022/lib/unb-mensagem/unb-mensagem.service.mjs +61 -0
  6. package/esm2022/lib/unb-mensagem/unb-message.model.mjs +3 -0
  7. package/esm2022/lib/unb-nav-bar/unb-nav-bar.component.mjs +53 -0
  8. package/esm2022/lib/unb-nav-bar/unb-nav-bar.module.mjs +52 -0
  9. package/esm2022/lib/unb-pessoa/pessoa-tabelas-apoio.mjs +30 -0
  10. package/esm2022/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-form.mjs +122 -0
  11. package/esm2022/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-list.mjs +140 -0
  12. package/esm2022/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-form.mjs +144 -0
  13. package/esm2022/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-list.mjs +139 -0
  14. package/esm2022/lib/unb-pessoa/unb-pessoa-form/unb-pessoa-form.component.mjs +166 -0
  15. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-email.model.mjs +5 -0
  16. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-endereco.model.mjs +5 -0
  17. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-escolaridade.model.mjs +6 -0
  18. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-estado-civil.model.mjs +6 -0
  19. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-municipio.mjs +3 -0
  20. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-pais.mjs +3 -0
  21. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-raca-cor.mjs +3 -0
  22. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-telefone.model.mjs +9 -0
  23. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa.model.mjs +6 -0
  24. package/esm2022/lib/unb-pessoa/unb-pessoa-pesquisar/unb-pessoa-pesquisar.component.mjs +229 -0
  25. package/esm2022/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-form.mjs +102 -0
  26. package/esm2022/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-list.mjs +140 -0
  27. package/esm2022/lib/unb-pessoa/unb-pessoa.module.mjs +128 -0
  28. package/esm2022/lib/unb-pessoa/unb-pessoa.service.mjs +157 -0
  29. package/esm2022/lib/unb-pessoa/unb-tipo-pessoa.enum.mjs +7 -0
  30. package/esm2022/lib/unb-usuario/oidc-decoded-token.mjs +2 -0
  31. package/esm2022/lib/unb-usuario/oidc-user-data.mjs +2 -0
  32. package/esm2022/lib/unb-usuario/unb-usuario.component.mjs +38 -0
  33. package/esm2022/lib/unb-usuario/unb-usuario.model.mjs +9 -0
  34. package/esm2022/lib/unb-usuario/unb-usuario.module.mjs +65 -0
  35. package/esm2022/lib/utils/unb-utils.mjs +76 -0
  36. package/esm2022/public-api.mjs +34 -0
  37. package/esm2022/unb-lib-components.mjs +5 -0
  38. package/fesm2022/unb-lib-components.mjs +1923 -0
  39. package/fesm2022/unb-lib-components.mjs.map +1 -0
  40. package/index.d.ts +5 -0
  41. package/lib/services/unb-auth.service.d.ts +17 -0
  42. package/lib/unb-mensagem/unb-mensagem.component.d.ts +35 -0
  43. package/lib/unb-mensagem/unb-mensagem.module.d.ts +10 -0
  44. package/lib/unb-mensagem/unb-mensagem.service.d.ts +36 -0
  45. package/lib/unb-mensagem/unb-message.model.d.ts +6 -0
  46. package/lib/unb-nav-bar/unb-nav-bar.component.d.ts +19 -0
  47. package/lib/unb-nav-bar/unb-nav-bar.module.d.ts +16 -0
  48. package/lib/unb-pessoa/pessoa-tabelas-apoio.d.ts +5 -0
  49. package/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-form.d.ts +34 -0
  50. package/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-list.d.ts +31 -0
  51. package/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-form.d.ts +36 -0
  52. package/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-list.d.ts +29 -0
  53. package/lib/unb-pessoa/unb-pessoa-form/unb-pessoa-form.component.d.ts +56 -0
  54. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-email.model.d.ts +13 -0
  55. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-endereco.model.d.ts +22 -0
  56. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-escolaridade.model.d.ts +6 -0
  57. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-estado-civil.model.d.ts +6 -0
  58. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-municipio.d.ts +8 -0
  59. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-pais.d.ts +7 -0
  60. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-raca-cor.d.ts +4 -0
  61. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-telefone.model.d.ts +17 -0
  62. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa.model.d.ts +69 -0
  63. package/lib/unb-pessoa/unb-pessoa-pesquisar/unb-pessoa-pesquisar.component.d.ts +39 -0
  64. package/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-form.d.ts +34 -0
  65. package/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-list.d.ts +31 -0
  66. package/lib/unb-pessoa/unb-pessoa.module.d.ts +35 -0
  67. package/lib/unb-pessoa/unb-pessoa.service.d.ts +59 -0
  68. package/lib/unb-pessoa/unb-tipo-pessoa.enum.d.ts +5 -0
  69. package/lib/unb-usuario/oidc-decoded-token.d.ts +29 -0
  70. package/lib/unb-usuario/oidc-user-data.d.ts +9 -0
  71. package/lib/unb-usuario/unb-usuario.component.d.ts +17 -0
  72. package/lib/unb-usuario/unb-usuario.model.d.ts +6 -0
  73. package/lib/unb-usuario/unb-usuario.module.d.ts +18 -0
  74. package/lib/utils/unb-utils.d.ts +7 -0
  75. package/package.json +28 -0
  76. package/public-api.d.ts +28 -0
@@ -0,0 +1,139 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { UnbPessoaEnderecoFormComponent } from './unb-pessoa-endereco-form';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/material/snack-bar";
5
+ import * as i2 from "../unb-pessoa.service";
6
+ import * as i3 from "@angular/material/dialog";
7
+ import * as i4 from "@angular/common";
8
+ import * as i5 from "@angular/material/icon";
9
+ import * as i6 from "@angular/material/button";
10
+ export class UnbPessoaenderecoListComponent {
11
+ constructor(snackBar, service, dialog) {
12
+ this.snackBar = snackBar;
13
+ this.service = service;
14
+ this.dialog = dialog;
15
+ this.podeEditar = true;
16
+ this.enderecos = [];
17
+ this.apiPessoaConfig = { url: '', token: '' };
18
+ this.enderecosEmitted = new EventEmitter();
19
+ }
20
+ ngOnInit() {
21
+ this.sortAndAssignOrder(); // organiza a lista de enderecos. As vezes tem ordem duplicada ou faltando.
22
+ }
23
+ excluir(endereco) {
24
+ }
25
+ editar(endereco) {
26
+ this.openFormDialog(endereco);
27
+ }
28
+ moverParaCima(index) {
29
+ if (index <= 0)
30
+ return;
31
+ [this.enderecos[index - 1], this.enderecos[index]] = [this.enderecos[index], this.enderecos[index - 1]];
32
+ this.atualizarOrdem();
33
+ }
34
+ moverParaBaixo(index) {
35
+ if (index >= this.enderecos.length - 1)
36
+ return;
37
+ [this.enderecos[index], this.enderecos[index + 1]] = [this.enderecos[index + 1], this.enderecos[index]];
38
+ this.atualizarOrdem();
39
+ }
40
+ atualizarOrdem() {
41
+ this.enderecos.forEach((endereco, idx) => {
42
+ endereco.ordem = idx + 1;
43
+ });
44
+ this.enderecosEmitted.emit(this.enderecos);
45
+ }
46
+ openFormDialog(enderecoToEdit) {
47
+ const dialogRef = this.dialog.open(UnbPessoaEnderecoFormComponent, {
48
+ width: '900px',
49
+ data: {
50
+ endereco: enderecoToEdit, // E-mail a ser editado ou vazio para novo
51
+ enderecosList: this.enderecos // A sua lista COMPLETA de e-mails
52
+ },
53
+ });
54
+ dialogRef.afterClosed().subscribe(result => {
55
+ if (result) {
56
+ const index = this.enderecos.findIndex(e => e.codigo === result.codigo);
57
+ if (result.codigo && index > -1) {
58
+ // Atualiza e-mail existente
59
+ this.enderecos[index] = result;
60
+ }
61
+ else {
62
+ // Adiciona novo e-mail (gera ordem automaticamente se quiser)
63
+ result.ordem = this.enderecos.length + 1;
64
+ this.enderecos.push(result);
65
+ }
66
+ // Emite lista atualizada
67
+ this.enderecosEmitted.emit(this.enderecos);
68
+ }
69
+ });
70
+ }
71
+ sortAndAssignOrder() {
72
+ // 1. Crie uma cópia da lista para não modificar a original durante a iteração inicial
73
+ const tempenderecos = [...this.enderecos];
74
+ // 2. Mapeie as ordens existentes para identificar duplicatas e ausentes
75
+ const orderMap = new Map();
76
+ const enderecosWithoutOrder = [];
77
+ tempenderecos.forEach(endereco => {
78
+ if (endereco.ordem !== undefined && endereco.ordem !== null) {
79
+ if (!orderMap.has(endereco.ordem)) {
80
+ orderMap.set(endereco.ordem, []);
81
+ }
82
+ orderMap.get(endereco.ordem)?.push(endereco);
83
+ }
84
+ else {
85
+ enderecosWithoutOrder.push(endereco);
86
+ }
87
+ });
88
+ // 3. Inicialize um Set para rastrear todas as ordens que serão usadas no final
89
+ const finalUsedOrders = new Set();
90
+ // Inicialize o próximo valor de ordem disponível
91
+ let nextAvailableOrder = 0;
92
+ // Função auxiliar para encontrar a próxima ordem disponível
93
+ const getNextAvailableOrder = () => {
94
+ while (finalUsedOrders.has(nextAvailableOrder)) {
95
+ nextAvailableOrder++;
96
+ }
97
+ return nextAvailableOrder++;
98
+ };
99
+ // 4. Processe enderecos com ordem definida:
100
+ // - A primeira ocorrência de uma ordem a mantém.
101
+ // - Duplicatas recebem uma nova ordem.
102
+ // - Adicione as ordens válidas ao finalUsedOrders.
103
+ this.enderecos.forEach(endereco => {
104
+ if (endereco.ordem !== undefined && endereco.ordem !== null) {
105
+ if (!finalUsedOrders.has(endereco.ordem)) {
106
+ // Se a ordem ainda não foi usada, use-a e adicione ao set
107
+ finalUsedOrders.add(endereco.ordem);
108
+ }
109
+ else {
110
+ // Se a ordem já foi usada (é uma duplicata), atribua uma nova
111
+ endereco.ordem = getNextAvailableOrder();
112
+ finalUsedOrders.add(endereco.ordem); // Adiciona a nova ordem ao set
113
+ }
114
+ }
115
+ });
116
+ // 5. Atribua ordens para enderecos que não tinham ordem definida
117
+ enderecosWithoutOrder.forEach(endereco => {
118
+ endereco.ordemEndereco = getNextAvailableOrder();
119
+ finalUsedOrders.add(endereco.ordemEndereco); // Adiciona a nova ordem ao set
120
+ });
121
+ // 6. Finalmente, ordene a lista completa com as ordens agora únicas
122
+ this.enderecos.sort((a, b) => (a.ordemEndereco ?? 0) - (b.ordemEndereco ?? 0));
123
+ }
124
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaenderecoListComponent, deps: [{ token: i1.MatSnackBar }, { token: i2.UnBPessoaService }, { token: i3.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
125
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: UnbPessoaenderecoListComponent, selector: "lib-unb-pessoa-endereco-list", inputs: { podeEditar: "podeEditar", enderecos: "enderecos", apiPessoaConfig: "apiPessoaConfig" }, outputs: { enderecosEmitted: "enderecosEmitted" }, ngImport: i0, template: "<div class=\"mes-container\">\r\n <div class=\"header-container\">\r\n <div class=\"mes-header\">\r\n <span class=\"titulo\">\r\n {{ enderecos?.length === 1 ? 'Endere\u00E7o Cadastrado' : 'Endere\u00E7os Cadastrados' }}\r\n </span>\r\n <span class=\"titulo\">({{ enderecos?.length || 0 }})</span>\r\n </div>\r\n\r\n <button matTooltip=\"Novo Endere\u00E7o\" mat-flat-button color=\"primary\" (click)=\"openFormDialog(null)\">\r\n Cadastrar Novo Endere\u00E7o\r\n </button>\r\n </div>\r\n\r\n <!-- Exibe a tabela de despesas somente se houver despesas -->\r\n <table class=\"my-table\" *ngIf=\"enderecos && enderecos.length > 0\">\r\n <tr style=\"background-color: #e4e3e3cc;\">\r\n <th style=\"text-align: center;\" >Ordem</th>\r\n <th>Logradouro</th>\r\n <th>Bairro</th>\r\n <th>CEP</th>\r\n <th>Tipo</th>\r\n <th style=\"text-align: center;\">A\u00E7\u00F5es</th>\r\n </tr>\r\n\r\n <tr *ngFor=\"let valor of enderecos; let i = index\" class=\"my-tr\">\r\n <td style=\"width: 5%; text-align: center;\"> \r\n <button *ngIf=\"enderecos.length > 1 && i > 0\" mat-icon-button aria-label=\"Mover para cima\"\r\n (click)=\"moverParaCima(i)\">\r\n <mat-icon>arrow_upward</mat-icon>\r\n </button>\r\n <button *ngIf=\"enderecos.length > 1 && i < enderecos.length - 1\" mat-icon-button aria-label=\"Mover para baixo\"\r\n (click)=\"moverParaBaixo(i)\">\r\n <mat-icon>arrow_downward</mat-icon>\r\n </button>\r\n </td>\r\n <td style=\"width: 20%;\">{{ valor.logradouro }}</td>\r\n <td style=\"width: 20%;\">{{ valor.bairro }}</td>\r\n <td style=\"width: 10%;\">{{ valor.cep }}</td>\r\n <td style=\"width: 10%;\">{{ valor.tipo?.toUpperCase() }}</td>\r\n <td style=\"width: 20%; text-align: center;\">\r\n <button mat-icon-button aria-label=\"Salvar\" color=\"primary\" (click)=\"editar(valor)\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button mat-icon-button aria-label=\"Deletar\" color=\"warn\" (click)=\"excluir(valor)\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </td>\r\n </tr>\r\n </table>\r\n</div>", styles: [".mes-container{padding:12px;margin-bottom:2px;border-radius:8px;box-shadow:0 2px 6px #0000001a;transition:background-color .3s ease,box-shadow .3s ease}.mes-container:nth-child(2n){background-color:#f9f9fc}.mes-container:nth-child(odd){background-color:#fff}.mes-container:hover{background-color:#f0f0f5;box-shadow:0 4px 8px #00000026}.header-container{display:flex;align-items:center;margin-bottom:2px}.header-container button{margin-left:auto}.mes-header{display:flex;align-items:center;gap:6px;font-size:1.2rem;font-weight:700;color:#333}.my-table{width:100%;border-collapse:collapse;border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000001a;font-family:Arial,sans-serif}.my-table th,.my-table td{padding:5px;text-align:left;border-bottom:1px solid #ddd}.my-table th{background-color:#005dbb7b;color:#fff;font-weight:700}.my-table tr{transition:background-color .3s ease}.my-table tr:hover{background-color:#f1f1f1}.my-table td{background-color:#fff}.my-table td button{transition:transform .2s ease}.my-table td button:hover{transform:scale(1.1)}.my-table td:last-child{text-align:center}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
126
+ }
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaenderecoListComponent, decorators: [{
128
+ type: Component,
129
+ args: [{ standalone: false, selector: 'lib-unb-pessoa-endereco-list', template: "<div class=\"mes-container\">\r\n <div class=\"header-container\">\r\n <div class=\"mes-header\">\r\n <span class=\"titulo\">\r\n {{ enderecos?.length === 1 ? 'Endere\u00E7o Cadastrado' : 'Endere\u00E7os Cadastrados' }}\r\n </span>\r\n <span class=\"titulo\">({{ enderecos?.length || 0 }})</span>\r\n </div>\r\n\r\n <button matTooltip=\"Novo Endere\u00E7o\" mat-flat-button color=\"primary\" (click)=\"openFormDialog(null)\">\r\n Cadastrar Novo Endere\u00E7o\r\n </button>\r\n </div>\r\n\r\n <!-- Exibe a tabela de despesas somente se houver despesas -->\r\n <table class=\"my-table\" *ngIf=\"enderecos && enderecos.length > 0\">\r\n <tr style=\"background-color: #e4e3e3cc;\">\r\n <th style=\"text-align: center;\" >Ordem</th>\r\n <th>Logradouro</th>\r\n <th>Bairro</th>\r\n <th>CEP</th>\r\n <th>Tipo</th>\r\n <th style=\"text-align: center;\">A\u00E7\u00F5es</th>\r\n </tr>\r\n\r\n <tr *ngFor=\"let valor of enderecos; let i = index\" class=\"my-tr\">\r\n <td style=\"width: 5%; text-align: center;\"> \r\n <button *ngIf=\"enderecos.length > 1 && i > 0\" mat-icon-button aria-label=\"Mover para cima\"\r\n (click)=\"moverParaCima(i)\">\r\n <mat-icon>arrow_upward</mat-icon>\r\n </button>\r\n <button *ngIf=\"enderecos.length > 1 && i < enderecos.length - 1\" mat-icon-button aria-label=\"Mover para baixo\"\r\n (click)=\"moverParaBaixo(i)\">\r\n <mat-icon>arrow_downward</mat-icon>\r\n </button>\r\n </td>\r\n <td style=\"width: 20%;\">{{ valor.logradouro }}</td>\r\n <td style=\"width: 20%;\">{{ valor.bairro }}</td>\r\n <td style=\"width: 10%;\">{{ valor.cep }}</td>\r\n <td style=\"width: 10%;\">{{ valor.tipo?.toUpperCase() }}</td>\r\n <td style=\"width: 20%; text-align: center;\">\r\n <button mat-icon-button aria-label=\"Salvar\" color=\"primary\" (click)=\"editar(valor)\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n <button mat-icon-button aria-label=\"Deletar\" color=\"warn\" (click)=\"excluir(valor)\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </td>\r\n </tr>\r\n </table>\r\n</div>", styles: [".mes-container{padding:12px;margin-bottom:2px;border-radius:8px;box-shadow:0 2px 6px #0000001a;transition:background-color .3s ease,box-shadow .3s ease}.mes-container:nth-child(2n){background-color:#f9f9fc}.mes-container:nth-child(odd){background-color:#fff}.mes-container:hover{background-color:#f0f0f5;box-shadow:0 4px 8px #00000026}.header-container{display:flex;align-items:center;margin-bottom:2px}.header-container button{margin-left:auto}.mes-header{display:flex;align-items:center;gap:6px;font-size:1.2rem;font-weight:700;color:#333}.my-table{width:100%;border-collapse:collapse;border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000001a;font-family:Arial,sans-serif}.my-table th,.my-table td{padding:5px;text-align:left;border-bottom:1px solid #ddd}.my-table th{background-color:#005dbb7b;color:#fff;font-weight:700}.my-table tr{transition:background-color .3s ease}.my-table tr:hover{background-color:#f1f1f1}.my-table td{background-color:#fff}.my-table td button{transition:transform .2s ease}.my-table td button:hover{transform:scale(1.1)}.my-table td:last-child{text-align:center}\n"] }]
130
+ }], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i2.UnBPessoaService }, { type: i3.MatDialog }], propDecorators: { podeEditar: [{
131
+ type: Input
132
+ }], enderecos: [{
133
+ type: Input
134
+ }], apiPessoaConfig: [{
135
+ type: Input
136
+ }], enderecosEmitted: [{
137
+ type: Output
138
+ }] } });
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lbmRlcmVjby1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVuZGVyZWNvLWZvcm0vdW5iLXBlc3NvYS1lbmRlcmVjby1saXN0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLWVuZGVyZWNvLWZvcm0vdW5iLXBlc3NvYS1lbmRlcmVjby1saXN0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEvRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7QUFRNUUsTUFBTSxPQUFPLDhCQUE4QjtJQUt6QyxZQUFvQixRQUFxQixFQUFVLE9BQXlCLEVBQVMsTUFBaUI7UUFBbEYsYUFBUSxHQUFSLFFBQVEsQ0FBYTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUo3RixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsb0JBQWUsR0FBbUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUN4RSxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBdUIsQ0FBQztJQUdyRSxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsMkVBQTJFO0lBQ3hHLENBQUM7SUFFRCxPQUFPLENBQUMsUUFBMkI7SUFFbkMsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUEyQjtRQUNoQyxJ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QXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBVbkJQZXNzb2FTZXJ2aWNlIH0gZnJvbSAnLi4vdW5iLXBlc3NvYS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVGlwb1Blc3NvYUVudW0gfSBmcm9tICcuLi91bmItdGlwby1wZXNzb2EuZW51bSc7XHJcbmltcG9ydCB7IFVuYlBlc3NvYUVuZGVyZWNvIH0gZnJvbSAnLi4vdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS1lbmRlcmVjby5tb2RlbCc7XHJcbmltcG9ydCB7IFVuYlBlc3NvYVRlbGVmb25lVGlwbyB9IGZyb20gJy4uL3VuYi1wZXNzb2EtbW9kZWxzL3VuYi1wZXNzb2EtdGVsZWZvbmUubW9kZWwnO1xyXG5pbXBvcnQgeyBVbmJQZXNzb2FFbmRlcmVjb0Zvcm1Db21wb25lbnQgfSBmcm9tICcuL3VuYi1wZXNzb2EtZW5kZXJlY28tZm9ybSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzdGFuZGFsb25lOiBmYWxzZSxcclxuICBzZWxlY3RvcjogJ2xpYi11bmItcGVzc29hLWVuZGVyZWNvLWxpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91bmItcGVzc29hLWVuZGVyZWNvLWxpc3QuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3VuYi1wZXNzb2EtZW5kZXJlY28tbGlzdC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVbmJQZXNzb2FlbmRlcmVjb0xpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIHBvZGVFZGl0YXIgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGVuZGVyZWNvczogYW55ID0gW107XHJcbiAgQElucHV0KCkgYXBpUGVzc29hQ29uZmlnOiB7IHVybDogc3RyaW5nOyB0b2tlbjogc3RyaW5nIH0gPSB7IHVybDogJycsIHRva2VuOiAnJyB9O1xyXG4gIEBPdXRwdXQoKSBlbmRlcmVjb3NFbWl0dGVkID0gbmV3IEV2ZW50RW1pdHRlcjxVbmJQZXNzb2FFbmRlcmVjb1tdPigpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc25hY2tCYXI6IE1hdFNuYWNrQmFyLCBwcml2YXRlIHNlcnZpY2U6IFVuQlBlc3NvYVNlcnZpY2UsIHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZykge1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zb3J0QW5kQXNzaWduT3JkZXIoKTsgLy8gb3JnYW5pemEgYSBsaXN0YSBkZSBlbmRlcmVjb3MuIEFzIHZlemVzIHRlbSBvcmRlbSBkdXBsaWNhZGEgb3UgZmFsdGFuZG8uXHJcbiAgfVxyXG5cclxuICBleGNsdWlyKGVuZGVyZWNvOiBVbmJQZXNzb2FFbmRlcmVjbykge1xyXG5cclxuICB9XHJcblxyXG4gIGVkaXRhcihlbmRlcmVjbzogVW5iUGVzc29hRW5kZXJlY28pIHtcclxuICAgIHRoaXMub3BlbkZvcm1EaWFsb2coZW5kZXJlY28pO1xyXG4gIH1cclxuXHJcbiAgbW92ZXJQYXJhQ2ltYShpbmRleDogbnVtYmVyKSB7XHJcbiAgICBpZiAoaW5kZXggPD0gMCkgcmV0dXJuO1xyXG5cclxuICAgIFt0aGlzLmVuZGVyZWNvc1tpbmRleCAtIDFdLCB0aGlzLmVuZGVyZWNvc1tpbmRleF1dID0gW3RoaXMuZW5kZXJlY29zW2luZGV4XSwgdGhpcy5lbmRlcmVjb3NbaW5kZXggLSAxXV07XHJcbiAgICB0aGlzLmF0dWFsaXphck9yZGVtKCk7XHJcbiAgfVxyXG5cclxuICBtb3ZlclBhcmFCYWl4byhpbmRleDogbnVtYmVyKSB7XHJcbiAgICBpZiAoaW5kZXggPj0gdGhpcy5lbmRlcmVjb3MubGVuZ3RoIC0gMSkgcmV0dXJuO1xyXG5cclxuICAgIFt0aGlzLmVuZGVyZWNvc1tpbmRleF0sIHRoaXMuZW5kZXJlY29zW2luZGV4ICsgMV1dID0gW3RoaXMuZW5kZXJlY29zW2luZGV4ICsgMV0sIHRoaXMuZW5kZXJlY29zW2luZGV4XV07XHJcbiAgICB0aGlzLmF0dWFsaXphck9yZGVtKCk7XHJcbiAgfVxyXG5cclxuICBhdHVhbGl6YXJPcmRlbSgpIHtcclxuICAgIHRoaXMuZW5kZXJlY29zLmZvckVhY2goKGVuZGVyZWNvLCBpZHgpID0+IHtcclxuICAgICAgZW5kZXJlY28ub3JkZW0gPSBpZHggKyAxO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5lbmRlcmVjb3NFbWl0dGVkLmVtaXQodGhpcy5lbmRlcmVjb3MpO1xyXG4gIH1cclxuXHJcbiAgb3BlbkZvcm1EaWFsb2coZW5kZXJlY29Ub0VkaXQ6IGFueSkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihVbmJQZXNzb2FFbmRlcmVjb0Zvcm1Db21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6ICc5MDBweCcsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBlbmRlcmVjbzogZW5kZXJlY29Ub0VkaXQsIC8vIEUtbWFpbCBhIHNlciBlZGl0YWRvIG91IHZhemlvIHBhcmEgbm92b1xyXG4gICAgICAgIGVuZGVyZWNvc0xpc3Q6IHRoaXMuZW5kZXJlY29zIC8vIEEgc3VhIGxpc3RhIENPTVBMRVRBIGRlIGUtbWFpbHNcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmVuZGVyZWNvcy5maW5kSW5kZXgoZSA9PiBlLmNvZGlnbyA9PT0gcmVzdWx0LmNvZGlnbyk7XHJcblxyXG4gICAgICAgIGlmIChyZXN1bHQuY29kaWdvICYmIGluZGV4ID4gLTEpIHtcclxuICAgICAgICAgIC8vIEF0dWFsaXphIGUtbWFpbCBleGlzdGVudGVcclxuICAgICAgICAgIHRoaXMuZW5kZXJlY29zW2luZGV4XSA9IHJlc3VsdDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gQWRpY2lvbmEgbm92byBlLW1haWwgKGdlcmEgb3JkZW0gYXV0b21hdGljYW1lbnRlIHNlIHF1aXNlcilcclxuICAgICAgICAgIHJlc3VsdC5vcmRlbSA9IHRoaXMuZW5kZXJlY29zLmxlbmd0aCArIDE7XHJcbiAgICAgICAgICB0aGlzLmVuZGVyZWNvcy5wdXNoKHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIEVtaXRlIGxpc3RhIGF0dWFsaXphZGFcclxuICAgICAgICB0aGlzLmVuZGVyZWNvc0VtaXR0ZWQuZW1pdCh0aGlzLmVuZGVyZWNvcyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzb3J0QW5kQXNzaWduT3JkZXIoKTogdm9pZCB7XHJcbiAgICAvLyAxLiBDcmllIHVtYSBjw7NwaWEgZGEgbGlzdGEgcGFyYSBuw6NvIG1vZGlmaWNhciBhIG9yaWdpbmFsIGR1cmFudGUgYSBpdGVyYcOnw6NvIGluaWNpYWxcclxuICAgIGNvbnN0IHRlbXBlbmRlcmVjb3MgPSBbLi4udGhpcy5lbmRlcmVjb3NdO1xyXG5cclxuICAgIC8vIDIuIE1hcGVpZSBhcyBvcmRlbnMgZXhpc3RlbnRlcyBwYXJhIGlkZW50aWZpY2FyIGR1cGxpY2F0YXMgZSBhdXNlbnRlc1xyXG4gICAgY29uc3Qgb3JkZXJNYXAgPSBuZXcgTWFwPG51bWJlciwgVW5iUGVzc29hRW5kZXJlY29bXT4oKTtcclxuICAgIGNvbnN0IGVuZGVyZWNvc1dpdGhvdXRPcmRlcjogVW5iUGVzc29hRW5kZXJlY29bXSA9IFtdO1xyXG5cclxuICAgIHRlbXBlbmRlcmVjb3MuZm9yRWFjaChlbmRlcmVjbyA9PiB7XHJcbiAgICAgIGlmIChlbmRlcmVjby5vcmRlbSAhPT0gdW5kZWZpbmVkICYmIGVuZGVyZWNvLm9yZGVtICE9PSBudWxsKSB7XHJcbiAgICAgICAgaWYgKCFvcmRlck1hcC5oYXMoZW5kZXJlY28ub3JkZW0pKSB7XHJcbiAgICAgICAgICBvcmRlck1hcC5zZXQoZW5kZXJlY28ub3JkZW0sIFtdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgb3JkZXJNYXAuZ2V0KGVuZGVyZWNvLm9yZGVtKT8ucHVzaChlbmRlcmVjbyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZW5kZXJlY29zV2l0aG91dE9yZGVyLnB1c2goZW5kZXJlY28pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyAzLiBJbmljaWFsaXplIHVtIFNldCBwYXJhIHJhc3RyZWFyIHRvZGFzIGFzIG9yZGVucyBxdWUgc2Vyw6NvIHVzYWRhcyBubyBmaW5hbFxyXG4gICAgY29uc3QgZmluYWxVc2VkT3JkZXJzID0gbmV3IFNldDxudW1iZXI+KCk7XHJcbiAgICAvLyBJbmljaWFsaXplIG8gcHLDs3hpbW8gdmFsb3IgZGUgb3JkZW0gZGlzcG9uw612ZWxcclxuICAgIGxldCBuZXh0QXZhaWxhYmxlT3JkZXIgPSAwO1xyXG5cclxuICAgIC8vIEZ1bsOnw6NvIGF1eGlsaWFyIHBhcmEgZW5jb250cmFyIGEgcHLDs3hpbWEgb3JkZW0gZGlzcG9uw612ZWxcclxuICAgIGNvbnN0IGdldE5leHRBdmFpbGFibGVPcmRlciA9ICgpID0+IHtcclxuICAgICAgd2hpbGUgKGZpbmFsVXNlZE9yZGVycy5oYXMobmV4dEF2YWlsYWJsZU9yZGVyKSkge1xyXG4gICAgICAgIG5leHRBdmFpbGFibGVPcmRlcisrO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBuZXh0QXZhaWxhYmxlT3JkZXIrKztcclxuICAgIH07XHJcblxyXG4gICAgLy8gNC4gUHJvY2Vzc2UgZW5kZXJlY29zIGNvbSBvcmRlbSBkZWZpbmlkYTpcclxuICAgIC8vICAgIC0gQSBwcmltZWlyYSBvY29ycsOqbmNpYSBkZSB1bWEgb3JkZW0gYSBtYW50w6ltLlxyXG4gICAgLy8gICAgLSBEdXBsaWNhdGFzIHJlY2ViZW0gdW1hIG5vdmEgb3JkZW0uXHJcbiAgICAvLyAgICAtIEFkaWNpb25lIGFzIG9yZGVucyB2w6FsaWRhcyBhbyBmaW5hbFVzZWRPcmRlcnMuXHJcbiAgICB0aGlzLmVuZGVyZWNvcy5mb3JFYWNoKGVuZGVyZWNvID0+IHsgLy8gSXRlcmFyIHNvYnJlIGEgbGlzdGEgb3JpZ2luYWwgcGFyYSBtb2RpZmljYXIgaW4tcGxhY2VcclxuICAgICAgaWYgKGVuZGVyZWNvLm9yZGVtICE9PSB1bmRlZmluZWQgJiYgZW5kZXJlY28ub3JkZW0gIT09IG51bGwpIHtcclxuICAgICAgICBpZiAoIWZpbmFsVXNlZE9yZGVycy5oYXMoZW5kZXJlY28ub3JkZW0pKSB7XHJcbiAgICAgICAgICAvLyBTZSBhIG9yZGVtIGFpbmRhIG7Do28gZm9pIHVzYWRhLCB1c2UtYSBlIGFkaWNpb25lIGFvIHNldFxyXG4gICAgICAgICAgZmluYWxVc2VkT3JkZXJzLmFkZChlbmRlcmVjby5vcmRlbSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIC8vIFNlIGEgb3JkZW0gasOhIGZvaSB1c2FkYSAow6kgdW1hIGR1cGxpY2F0YSksIGF0cmlidWEgdW1hIG5vdmFcclxuICAgICAgICAgIGVuZGVyZWNvLm9yZGVtID0gZ2V0TmV4dEF2YWlsYWJsZU9yZGVyKCk7XHJcbiAgICAgICAgICBmaW5hbFVzZWRPcmRlcnMuYWRkKGVuZGVyZWNvLm9yZGVtKTsgLy8gQWRpY2lvbmEgYSBub3ZhIG9yZGVtIGFvIHNldFxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gNS4gQXRyaWJ1YSBvcmRlbnMgcGFyYSBlbmRlcmVjb3MgcXVlIG7Do28gdGluaGFtIG9yZGVtIGRlZmluaWRhXHJcbiAgICBlbmRlcmVjb3NXaXRob3V0T3JkZXIuZm9yRWFjaChlbmRlcmVjbyA9PiB7XHJcbiAgICAgIGVuZGVyZWNvLm9yZGVtRW5kZXJlY28gPSBnZXROZXh0QXZhaWxhYmxlT3JkZXIoKTtcclxuICAgICAgZmluYWxVc2VkT3JkZXJzLmFkZChlbmRlcmVjby5vcmRlbUVuZGVyZWNvKTsgLy8gQWRpY2lvbmEgYSBub3ZhIG9yZGVtIGFvIHNldFxyXG4gICAgfSk7XHJcbiAgICBcclxuICAgIC8vIDYuIEZpbmFsbWVudGUsIG9yZGVuZSBhIGxpc3RhIGNvbXBsZXRhIGNvbSBhcyBvcmRlbnMgYWdvcmEgw7puaWNhc1xyXG4gICAgdGhpcy5lbmRlcmVjb3Muc29ydCgoYSwgYikgPT4gKGEub3JkZW1FbmRlcmVjbyA/PyAwKSAtIChiLm9yZGVtRW5kZXJlY28gPz8gMCkpO1xyXG4gIH1cclxuXHJcblxyXG59IiwiPGRpdiBjbGFzcz1cIm1lcy1jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lcy1oZWFkZXJcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXR1bG9cIj5cclxuICAgICAgICAgICAgICAgIHt7IGVuZGVyZWNvcz8ubGVuZ3RoID09PSAxID8gJ0VuZGVyZcOnbyBDYWRhc3RyYWRvJyA6ICdFbmRlcmXDp29zIENhZGFzdHJhZG9zJyB9fVxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0dWxvXCI+KHt7IGVuZGVyZWNvcz8ubGVuZ3RoIHx8IDAgfX0pPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8YnV0dG9uIG1hdFRvb2x0aXA9XCJOb3ZvIEVuZGVyZcOnb1wiIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwib3BlbkZvcm1EaWFsb2cobnVsbClcIj5cclxuICAgICAgICAgICAgQ2FkYXN0cmFyIE5vdm8gRW5kZXJlw6dvXHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8IS0tIEV4aWJlIGEgdGFiZWxhIGRlIGRlc3Blc2FzIHNvbWVudGUgc2UgaG91dmVyIGRlc3Blc2FzIC0tPlxyXG4gICAgPHRhYmxlIGNsYXNzPVwibXktdGFibGVcIiAqbmdJZj1cImVuZGVyZWNvcyAmJiBlbmRlcmVjb3MubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgIDx0ciBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICNlNGUzZTNjYztcIj5cclxuICAgICAgICAgICAgPHRoIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiID5PcmRlbTwvdGg+XHJcbiAgICAgICAgICAgIDx0aD5Mb2dyYWRvdXJvPC90aD5cclxuICAgICAgICAgICAgPHRoPkJhaXJybzwvdGg+XHJcbiAgICAgICAgICAgIDx0aD5DRVA8L3RoPlxyXG4gICAgICAgICAgICA8dGg+VGlwbzwvdGg+XHJcbiAgICAgICAgICAgIDx0aCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5Bw6fDtWVzPC90aD5cclxuICAgICAgICA8L3RyPlxyXG5cclxuICAgICAgICA8dHIgKm5nRm9yPVwibGV0IHZhbG9yIG9mIGVuZGVyZWNvczsgbGV0IGkgPSBpbmRleFwiIGNsYXNzPVwibXktdHJcIj5cclxuICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDUlOyB0ZXh0LWFsaWduOiBjZW50ZXI7XCI+ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImVuZGVyZWNvcy5sZW5ndGggPiAxICYmIGkgPiAwXCIgbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJNb3ZlciBwYXJhIGNpbWFcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJtb3ZlclBhcmFDaW1hKGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmFycm93X3Vwd2FyZDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJlbmRlcmVjb3MubGVuZ3RoID4gMSAmJiBpIDwgZW5kZXJlY29zLmxlbmd0aCAtIDFcIiBtYXQtaWNvbi1idXR0b24gYXJpYS1sYWJlbD1cIk1vdmVyIHBhcmEgYmFpeG9cIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJtb3ZlclBhcmFCYWl4byhpKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5hcnJvd19kb3dud2FyZDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDIwJTtcIj57eyB2YWxvci5sb2dyYWRvdXJvIH19PC90ZD5cclxuICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDIwJTtcIj57eyB2YWxvci5iYWlycm8gfX08L3RkPlxyXG4gICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogMTAlO1wiPnt7IHZhbG9yLmNlcCB9fTwvdGQ+XHJcbiAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiAxMCU7XCI+e3sgdmFsb3IudGlwbz8udG9VcHBlckNhc2UoKSB9fTwvdGQ+XHJcbiAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiAyMCU7IHRleHQtYWxpZ246IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJTYWx2YXJcIiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiZWRpdGFyKHZhbG9yKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5lZGl0PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gYXJpYS1sYWJlbD1cIkRlbGV0YXJcIiBjb2xvcj1cIndhcm5cIiAoY2xpY2spPVwiZXhjbHVpcih2YWxvcilcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICA8L3RhYmxlPlxyXG48L2Rpdj4iXX0=
@@ -0,0 +1,166 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { listaEstados } from '../pessoa-tabelas-apoio';
3
+ import { UnbPessoaEmail } from '../unb-pessoa-models/unb-pessoa-email.model';
4
+ import { UnbPessoaEndereco } from '../unb-pessoa-models/unb-pessoa-endereco.model';
5
+ import { UnbPessoaModel } from '../unb-pessoa-models/unb-pessoa.model';
6
+ import { TipoPessoaEnum } from '../unb-tipo-pessoa.enum';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../unb-pessoa.service";
9
+ import * as i2 from "@angular/material/snack-bar";
10
+ import * as i3 from "@angular/common";
11
+ import * as i4 from "@angular/forms";
12
+ import * as i5 from "@angular/material/button";
13
+ import * as i6 from "@angular/material/card";
14
+ import * as i7 from "@angular/material/form-field";
15
+ import * as i8 from "@angular/material/input";
16
+ import * as i9 from "@angular/material/select";
17
+ import * as i10 from "@angular/material/core";
18
+ import * as i11 from "@angular/material/datepicker";
19
+ import * as i12 from "../unb-pessoa-pesquisar/unb-pessoa-pesquisar.component";
20
+ import * as i13 from "../unb-pessoa-telefone-form/unb-pessoa-telefone-list";
21
+ import * as i14 from "../unb-pessoa-endereco-form/unb-pessoa-endereco-list";
22
+ import * as i15 from "../unb-pessoa-email-form/unb-pessoa-email-list";
23
+ export class UnbPessoaFormComponent {
24
+ constructor(service, snackBar) {
25
+ this.service = service;
26
+ this.snackBar = snackBar;
27
+ this.isLoading = false;
28
+ this.buscaRealizada = false;
29
+ this.endereco = new UnbPessoaEndereco();
30
+ this.email = new UnbPessoaEmail();
31
+ this.tiposPessoa = TipoPessoaEnum;
32
+ this.pessoa = new UnbPessoaModel(); // inicializa com pessoa
33
+ this.dadosSalvos = {}; // Armazena os dados ao trocar de tipo
34
+ this.apiPessoaConfig = { url: '', token: '' };
35
+ this.pesquisarPorCPF = true;
36
+ this.pesquisarPorCNPJ = true;
37
+ this.pesquisarPorEstrangeiro = true;
38
+ }
39
+ ngOnInit() {
40
+ if (this.apiPessoaConfig.url.endsWith('/')) {
41
+ this.apiPessoaConfig.url = this.apiPessoaConfig.url.slice(0, -1);
42
+ }
43
+ this.service.setApiConfig(this.apiPessoaConfig);
44
+ // atencao, o pessoaRecebida que inicializa esse componente
45
+ this.escolaridade = this.service.getEscolaridade();
46
+ this.paises = this.service.getPaises();
47
+ this.estadosCivil = this.service.getEstadoCivil();
48
+ }
49
+ pessoaRecebida(pessoaRecebida) {
50
+ this.buscaRealizada = true;
51
+ this.pessoa = pessoaRecebida;
52
+ if (this.pessoa && this.pessoa.escolaridade) {
53
+ this.pessoa.escolaridade = this.normalizaEscolaridade(this.pessoa.escolaridade);
54
+ }
55
+ }
56
+ salvar() {
57
+ if (!this.validar() && !this.pessoa)
58
+ return;
59
+ if (!this.service)
60
+ return;
61
+ this.isLoading = true;
62
+ let result = this.service.salvar(this.pessoa);
63
+ if (result && typeof result.subscribe === 'function') {
64
+ result.subscribe((resposta) => {
65
+ this.isLoading = false;
66
+ this.pessoa = resposta;
67
+ }, (err) => { this.erro(err); });
68
+ }
69
+ else {
70
+ console.error("Erro: O método salvar() não retornou um Observable.");
71
+ }
72
+ }
73
+ validar() {
74
+ if (!this.pessoa) {
75
+ this.openSnackBar("Erro ao carregar objeto pessoa");
76
+ return false;
77
+ }
78
+ if (this.pessoa.telefones == null || (this.pessoa.telefones != null && this.pessoa.telefones.length == 0)) {
79
+ this.openSnackBar("Digite um Contato e clique em Adicionar");
80
+ return false;
81
+ }
82
+ if (this.pessoa.enderecos == null || (this.pessoa.enderecos != null && this.pessoa.enderecos.length == 0)) {
83
+ this.openSnackBar("Digite um Endereço(Localicade) e clique em Adicionar");
84
+ return false;
85
+ }
86
+ if (this.pessoa.emails == null || (this.pessoa.emails != null && this.pessoa.emails.length == 0)) {
87
+ this.openSnackBar("Digite um E-mail e clique em Adicionar");
88
+ return false;
89
+ }
90
+ if (this.pessoa.tipoPessoa == TipoPessoaEnum.FISICA) {
91
+ if (!this.pessoa.nome || (this.pessoa && this.pessoa.nome == "")) {
92
+ this.openSnackBar("Nome é um campo obrigatório");
93
+ return false;
94
+ }
95
+ if (!this.pessoa.dataNascimento) {
96
+ this.openSnackBar("Data de Nascimento é um campo obrigatório");
97
+ return false;
98
+ }
99
+ }
100
+ if (this.pessoa.tipoPessoa == TipoPessoaEnum.ESTRANGEIRA) {
101
+ if (!this.pessoa.nome || (this.pessoa && this.pessoa.nome == "")) {
102
+ this.openSnackBar("Nome é um campo obrigatório");
103
+ return false;
104
+ }
105
+ if (this.pessoa.passaporte == null || (this.pessoa.passaporte != null && this.pessoa.passaporte == "")) {
106
+ this.openSnackBar("Passaporte é um campo obrigatório");
107
+ return false;
108
+ }
109
+ }
110
+ if (this.pessoa.tipoPessoa == TipoPessoaEnum.JURIDICA) {
111
+ if (this.pessoa.passaporte == null || (this.pessoa.passaporte != null && this.pessoa.passaporte == "")) {
112
+ this.openSnackBar("Passaporte é um campo obrigatório");
113
+ return false;
114
+ }
115
+ }
116
+ return true;
117
+ }
118
+ telefonesEmitted(telefones) {
119
+ this.pessoa.telefones = telefones;
120
+ }
121
+ enderecosEmitted(enderecos) {
122
+ this.pessoa.enderecos = enderecos;
123
+ }
124
+ emailsEmitted(emails) {
125
+ this.pessoa.emails = emails;
126
+ }
127
+ normalizaEscolaridade(escolaridade) {
128
+ if (!escolaridade)
129
+ return '0'; // Retorna "Não Informado" se estiver vazio
130
+ const partes = escolaridade.split(" - ");
131
+ return partes.length > 1 ? partes[0].trim() : '0';
132
+ }
133
+ erro(erro) {
134
+ // coloco o erro em negrito
135
+ this.openSnackBar(erro);
136
+ this.isLoading = false;
137
+ }
138
+ openSnackBar(message) {
139
+ this.snackBar.open(message, 'x', {
140
+ duration: 5000,
141
+ });
142
+ }
143
+ tipoPessoaEnum() {
144
+ return TipoPessoaEnum;
145
+ }
146
+ getListaEstados() {
147
+ return listaEstados;
148
+ }
149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaFormComponent, deps: [{ token: i1.UnBPessoaService }, { token: i2.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
150
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: UnbPessoaFormComponent, selector: "lib-unb-pessoa-form", inputs: { apiPessoaConfig: "apiPessoaConfig", defaultTipoPessoa: "defaultTipoPessoa", pesquisarPorCPF: "pesquisarPorCPF", pesquisarPorCNPJ: "pesquisarPorCNPJ", pesquisarPorEstrangeiro: "pesquisarPorEstrangeiro" }, ngImport: i0, template: " <div class=\"form-container\">\r\n <lib-unb-pessoa-pesquisar\r\n [apiPessoaConfig]=\"apiPessoaConfig\" \r\n [defaultTipoPessoa]=\"defaultTipoPessoa\" \r\n (pessoaEmitted)=\"pessoaRecebida($event)\"></lib-unb-pessoa-pesquisar>\r\n</div>\r\n \r\n <form #pessoaForm=\"ngForm\" class=\"form-container mt-2\" *ngIf=\"buscaRealizada && apiPessoaConfig.url\" (ngSubmit)=\"salvar()\">\r\n \r\n <!-- Campos Pessoa F\u00EDsica e Estrangeira -->\r\n <ng-container\r\n *ngIf=\"pessoa.tipoPessoa == tipoPessoaEnum().FISICA || pessoa.tipoPessoa == tipoPessoaEnum().ESTRANGEIRA\">\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nome\" name=\"nome\" #nome=\"ngModel\" required />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Sexo</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.codigoSexo\" name=\"codigoSexo\" #codigoSexo=\"ngModel\" required>\r\n <mat-option [value]=\"1\">Masculino</mat-option>\r\n <mat-option [value]=\"2\">Feminino</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-15\" appearance=\"outline\">\r\n <mat-label>Data Nascimento</mat-label>\r\n <input matInput [matDatepicker]=\"dataNascimentoPicker\" [(ngModel)]=\"pessoa.dataNascimento\" name=\"dataNascimento\" #dataNascimento=\"ngModel\" required>\r\n <mat-datepicker-toggle matSuffix [for]=\"dataNascimentoPicker\"></mat-datepicker-toggle>\r\n <mat-datepicker #dataNascimentoPicker></mat-datepicker>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Estado Civil</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.codigoEstadoCivil\" name=\"codigoEstadoCivil\" #codigoEstadoCivil=\"ngModel\">\r\n <mat-option *ngFor=\"let estado of estadosCivil | async\" [value]=\"estado.codigo\">\r\n {{ estado.denominacao }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <!--\r\n <mat-form-field class=\"form-15\" appearance=\"outline\">\r\n <mat-label>Naturalidade</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.naturalidade\" name=\"naturalidade\" #naturalidade=\"ngModel\" required>\r\n <mat-option *ngFor=\"let cidade of getListaEstados()\" [value]=\"cidade.codigo\">\r\n {{ cidade.descricao }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n -->\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Pa\u00EDs Nascimento</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.codigoPaisNascimento\" name=\"codigoPaisNascimento\" #codigoPaisNascimento=\"ngModel\">\r\n <mat-option *ngFor=\"let paisNascimento of paises | async\" [value]=\"paisNascimento.codigo\">\r\n <span *ngIf=\"paisNascimento.denominacao === 'BRASIL'\">\uD83C\uDDE7\uD83C\uDDF7 <b>{{ paisNascimento.denominacao }}</b></span>\r\n <span *ngIf=\"paisNascimento.denominacao !== 'BRASIL'\">{{ paisNascimento.denominacao }}</span>\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n\r\n <mat-form-field class=\"form-10\" appearance=\"outline\" *ngIf=\"pessoa.codigoPaisNascimento == 22\"> <!-- 22 eh Brasil-->\r\n <mat-label>UF Nascimento</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.ufNascimento\" name=\"ufNascimento\" #ufNascimento=\"ngModel\" required>\r\n <mat-option *ngFor=\"let ufNascimento of getListaEstados()\" [value]=\"ufNascimento\">\r\n {{ ufNascimento }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-15\" appearance=\"outline\" *ngIf=\"pessoa.codigoPaisNascimento == 22\">\r\n <mat-label>Naturalidade</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.naturalidade\" name=\"naturalidade\" #naturalidade=\"ngModel\" required/>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Escolaridade</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.escolaridade\" name=\"codigoEscolaridade\" #codigoEscolaridade=\"ngModel\">\r\n <mat-option *ngFor=\"let escolaridade of escolaridade | async\" [value]=\"escolaridade.codigo\">\r\n {{ escolaridade.denominacao }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome Social</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nomeSocial\" name=\"nomeSocial\" #nomeSocial=\"ngModel\" />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome da M\u00E3e</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nomeMae\" name=\"nomeMae\" #nomeMae=\"ngModel\" required />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome do Pai</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nomePai\" name=\"nomePai\" #nomePai=\"ngModel\" required />\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Campos Pessoa Jur\u00EDdica -->\r\n <ng-container *ngIf=\"pessoa.tipoPessoa === tipoPessoaEnum().JURIDICA\">\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Raz\u00E3o Social</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.razaoSocial\" name=\"razaoSocial\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome Fantasia</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nomeFantasia\" name=\"nomeFantasia\" />\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n \r\n <ng-container *ngIf=\"pessoa.tipoPessoa == tipoPessoaEnum().FISICA || pessoa.tipoPessoa == tipoPessoaEnum().ESTRANGEIRA \">\r\n <b style=\"flex: 1 1 100%; margin-bottom: 10px;\">Documenta\u00E7\u00E3o</b>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Identidade</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.rg\" name=\"rg\" #rg=\"ngModel\" required />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>\u00D3rg\u00E3o Emissor</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.rgOrgao\" name=\"rgOrgao\" #rgOrgao=\"ngModel\" required />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Unidade Federativa</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.rgUf\" name=\"rgUf\" #rgUf=\"ngModel\" required>\r\n <mat-option *ngFor=\"let cidade of getListaEstados()\" [value]=\"cidade.identificador\">\r\n {{ cidade.identificador }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-20\" appearance=\"outline\">\r\n <mat-label>Data de Emiss\u00E3o</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.rgDataEmissao\" name=\"rgDataEmissao\"\r\n #rgDataEmissao=\"ngModel\" />\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"pessoa.tipoPessoa == tipoPessoaEnum().ESTRANGEIRA \">\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Pa\u00EDs Passaporte</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.codigoPaisPassaporte\" name=\"codigoPaisPassaporte\" #codigoPaisPassaporte=\"ngModel\">\r\n <mat-option *ngFor=\"let paisNascimento of paises | async\" [value]=\"paisNascimento.codigo\">\r\n {{ paisNascimento.denominacao }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>N\u00FAmero Passaporte</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.passaporte\" name=\"passaporte\" #passaporte=\"ngModel\" />\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <b style=\"flex: 1 1 100%; margin-bottom: 10px;\"> Contato</b>\r\n\r\n <lib-unb-pessoa-telefone-list style=\"flex: 1 1 100%;\" [apiPessoaConfig]=\"apiPessoaConfig\" [telefones]=\"pessoa.telefones\" (telefonesEmitted)=\"telefonesEmitted($event)\" ></lib-unb-pessoa-telefone-list>\r\n\r\n <lib-unb-pessoa-endereco-list style=\"flex: 1 1 100%;\" [apiPessoaConfig]=\"apiPessoaConfig\" [enderecos]=\"pessoa.enderecos\" (enderecosEmitted)=\"enderecosEmitted($event)\" ></lib-unb-pessoa-endereco-list>\r\n\r\n <lib-unb-pessoa-email-list style=\"flex: 1 1 100%;\" [apiPessoaConfig]=\"apiPessoaConfig\" [emails]=\"pessoa.emails\" (emailsEmitted)=\"emailsEmitted($event)\" ></lib-unb-pessoa-email-list>\r\n \r\n <mat-card-actions class=\"card-actions-buttons\" *ngIf=\"buscaRealizada\">\r\n <button mat-flat-button disabled=\"{{isLoading}}\" type=\"submit\" color=\"primary\">\r\n Salvar\r\n </button>\r\n </mat-card-actions>\r\n \r\n </form>\r\n\r\n", styles: [".card-actions-buttons{display:flex;gap:5px;flex-wrap:wrap}.form-container{display:flex;flex-wrap:wrap;column-gap:10px;margin:10px}@media (max-width: 1000px){.form-container{flex-direction:column;gap:5px}}.break{flex-basis:100%;height:0}.form-5{flex:1 1 5%}.inline-table-container{display:flex;align-items:center;justify-content:space-between;padding:5px}@media (max-width: 600px){.form-5,.form-10,.form-15{flex:1 1 100%}}.form-10{flex:1 1 10%}.form-15{flex:1 1 15%}.form-20{flex:1 1 20%}.form-25{flex:1 1 25%}.form-30{flex:1 1 30%}.form-35{flex:1 1 35%}.form-40{flex:1 1 40%}.form-45{flex:1 1 45%}.form-50{flex:1 1 50%}.form-100{flex:1 1 100%;min-width:250px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i9.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i10.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i11.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i11.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i11.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i12.UnbPessoaPesquisarComponent, selector: "lib-unb-pessoa-pesquisar", inputs: ["apiPessoaConfig", "pesquisarPorCPF", "pesquisarPorCNPJ", "pesquisarPorEstrangeiro", "defaultTipoPessoa", "pessoa", "mostrarPesquisa", "limparAposPesquisa", "label", "placeholder", "hint"], outputs: ["pessoaEmitted"] }, { kind: "component", type: i13.UnbPessoaTelefoneListComponent, selector: "lib-unb-pessoa-telefone-list", inputs: ["podeEditar", "telefones", "apiPessoaConfig"], outputs: ["telefonesEmitted"] }, { kind: "component", type: i14.UnbPessoaenderecoListComponent, selector: "lib-unb-pessoa-endereco-list", inputs: ["podeEditar", "enderecos", "apiPessoaConfig"], outputs: ["enderecosEmitted"] }, { kind: "component", type: i15.UnbPessoaEmailListComponent, selector: "lib-unb-pessoa-email-list", inputs: ["podeEditar", "emails", "apiPessoaConfig"], outputs: ["emailsEmitted"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
151
+ }
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UnbPessoaFormComponent, decorators: [{
153
+ type: Component,
154
+ args: [{ selector: 'lib-unb-pessoa-form', standalone: false, template: " <div class=\"form-container\">\r\n <lib-unb-pessoa-pesquisar\r\n [apiPessoaConfig]=\"apiPessoaConfig\" \r\n [defaultTipoPessoa]=\"defaultTipoPessoa\" \r\n (pessoaEmitted)=\"pessoaRecebida($event)\"></lib-unb-pessoa-pesquisar>\r\n</div>\r\n \r\n <form #pessoaForm=\"ngForm\" class=\"form-container mt-2\" *ngIf=\"buscaRealizada && apiPessoaConfig.url\" (ngSubmit)=\"salvar()\">\r\n \r\n <!-- Campos Pessoa F\u00EDsica e Estrangeira -->\r\n <ng-container\r\n *ngIf=\"pessoa.tipoPessoa == tipoPessoaEnum().FISICA || pessoa.tipoPessoa == tipoPessoaEnum().ESTRANGEIRA\">\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nome\" name=\"nome\" #nome=\"ngModel\" required />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Sexo</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.codigoSexo\" name=\"codigoSexo\" #codigoSexo=\"ngModel\" required>\r\n <mat-option [value]=\"1\">Masculino</mat-option>\r\n <mat-option [value]=\"2\">Feminino</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-15\" appearance=\"outline\">\r\n <mat-label>Data Nascimento</mat-label>\r\n <input matInput [matDatepicker]=\"dataNascimentoPicker\" [(ngModel)]=\"pessoa.dataNascimento\" name=\"dataNascimento\" #dataNascimento=\"ngModel\" required>\r\n <mat-datepicker-toggle matSuffix [for]=\"dataNascimentoPicker\"></mat-datepicker-toggle>\r\n <mat-datepicker #dataNascimentoPicker></mat-datepicker>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Estado Civil</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.codigoEstadoCivil\" name=\"codigoEstadoCivil\" #codigoEstadoCivil=\"ngModel\">\r\n <mat-option *ngFor=\"let estado of estadosCivil | async\" [value]=\"estado.codigo\">\r\n {{ estado.denominacao }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <!--\r\n <mat-form-field class=\"form-15\" appearance=\"outline\">\r\n <mat-label>Naturalidade</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.naturalidade\" name=\"naturalidade\" #naturalidade=\"ngModel\" required>\r\n <mat-option *ngFor=\"let cidade of getListaEstados()\" [value]=\"cidade.codigo\">\r\n {{ cidade.descricao }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n -->\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Pa\u00EDs Nascimento</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.codigoPaisNascimento\" name=\"codigoPaisNascimento\" #codigoPaisNascimento=\"ngModel\">\r\n <mat-option *ngFor=\"let paisNascimento of paises | async\" [value]=\"paisNascimento.codigo\">\r\n <span *ngIf=\"paisNascimento.denominacao === 'BRASIL'\">\uD83C\uDDE7\uD83C\uDDF7 <b>{{ paisNascimento.denominacao }}</b></span>\r\n <span *ngIf=\"paisNascimento.denominacao !== 'BRASIL'\">{{ paisNascimento.denominacao }}</span>\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n\r\n <mat-form-field class=\"form-10\" appearance=\"outline\" *ngIf=\"pessoa.codigoPaisNascimento == 22\"> <!-- 22 eh Brasil-->\r\n <mat-label>UF Nascimento</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.ufNascimento\" name=\"ufNascimento\" #ufNascimento=\"ngModel\" required>\r\n <mat-option *ngFor=\"let ufNascimento of getListaEstados()\" [value]=\"ufNascimento\">\r\n {{ ufNascimento }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-15\" appearance=\"outline\" *ngIf=\"pessoa.codigoPaisNascimento == 22\">\r\n <mat-label>Naturalidade</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.naturalidade\" name=\"naturalidade\" #naturalidade=\"ngModel\" required/>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Escolaridade</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.escolaridade\" name=\"codigoEscolaridade\" #codigoEscolaridade=\"ngModel\">\r\n <mat-option *ngFor=\"let escolaridade of escolaridade | async\" [value]=\"escolaridade.codigo\">\r\n {{ escolaridade.denominacao }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome Social</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nomeSocial\" name=\"nomeSocial\" #nomeSocial=\"ngModel\" />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome da M\u00E3e</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nomeMae\" name=\"nomeMae\" #nomeMae=\"ngModel\" required />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome do Pai</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nomePai\" name=\"nomePai\" #nomePai=\"ngModel\" required />\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Campos Pessoa Jur\u00EDdica -->\r\n <ng-container *ngIf=\"pessoa.tipoPessoa === tipoPessoaEnum().JURIDICA\">\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Raz\u00E3o Social</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.razaoSocial\" name=\"razaoSocial\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Nome Fantasia</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.nomeFantasia\" name=\"nomeFantasia\" />\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n \r\n <ng-container *ngIf=\"pessoa.tipoPessoa == tipoPessoaEnum().FISICA || pessoa.tipoPessoa == tipoPessoaEnum().ESTRANGEIRA \">\r\n <b style=\"flex: 1 1 100%; margin-bottom: 10px;\">Documenta\u00E7\u00E3o</b>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Identidade</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.rg\" name=\"rg\" #rg=\"ngModel\" required />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>\u00D3rg\u00E3o Emissor</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.rgOrgao\" name=\"rgOrgao\" #rgOrgao=\"ngModel\" required />\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>Unidade Federativa</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.rgUf\" name=\"rgUf\" #rgUf=\"ngModel\" required>\r\n <mat-option *ngFor=\"let cidade of getListaEstados()\" [value]=\"cidade.identificador\">\r\n {{ cidade.identificador }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <mat-form-field class=\"form-20\" appearance=\"outline\">\r\n <mat-label>Data de Emiss\u00E3o</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.rgDataEmissao\" name=\"rgDataEmissao\"\r\n #rgDataEmissao=\"ngModel\" />\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"pessoa.tipoPessoa == tipoPessoaEnum().ESTRANGEIRA \">\r\n <mat-form-field class=\"form-10\" appearance=\"outline\">\r\n <mat-label>Pa\u00EDs Passaporte</mat-label>\r\n <mat-select [(ngModel)]=\"pessoa.codigoPaisPassaporte\" name=\"codigoPaisPassaporte\" #codigoPaisPassaporte=\"ngModel\">\r\n <mat-option *ngFor=\"let paisNascimento of paises | async\" [value]=\"paisNascimento.codigo\">\r\n {{ paisNascimento.denominacao }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field class=\"form-25\" appearance=\"outline\">\r\n <mat-label>N\u00FAmero Passaporte</mat-label>\r\n <input type=\"text\" matInput [(ngModel)]=\"pessoa.passaporte\" name=\"passaporte\" #passaporte=\"ngModel\" />\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <b style=\"flex: 1 1 100%; margin-bottom: 10px;\"> Contato</b>\r\n\r\n <lib-unb-pessoa-telefone-list style=\"flex: 1 1 100%;\" [apiPessoaConfig]=\"apiPessoaConfig\" [telefones]=\"pessoa.telefones\" (telefonesEmitted)=\"telefonesEmitted($event)\" ></lib-unb-pessoa-telefone-list>\r\n\r\n <lib-unb-pessoa-endereco-list style=\"flex: 1 1 100%;\" [apiPessoaConfig]=\"apiPessoaConfig\" [enderecos]=\"pessoa.enderecos\" (enderecosEmitted)=\"enderecosEmitted($event)\" ></lib-unb-pessoa-endereco-list>\r\n\r\n <lib-unb-pessoa-email-list style=\"flex: 1 1 100%;\" [apiPessoaConfig]=\"apiPessoaConfig\" [emails]=\"pessoa.emails\" (emailsEmitted)=\"emailsEmitted($event)\" ></lib-unb-pessoa-email-list>\r\n \r\n <mat-card-actions class=\"card-actions-buttons\" *ngIf=\"buscaRealizada\">\r\n <button mat-flat-button disabled=\"{{isLoading}}\" type=\"submit\" color=\"primary\">\r\n Salvar\r\n </button>\r\n </mat-card-actions>\r\n \r\n </form>\r\n\r\n", styles: [".card-actions-buttons{display:flex;gap:5px;flex-wrap:wrap}.form-container{display:flex;flex-wrap:wrap;column-gap:10px;margin:10px}@media (max-width: 1000px){.form-container{flex-direction:column;gap:5px}}.break{flex-basis:100%;height:0}.form-5{flex:1 1 5%}.inline-table-container{display:flex;align-items:center;justify-content:space-between;padding:5px}@media (max-width: 600px){.form-5,.form-10,.form-15{flex:1 1 100%}}.form-10{flex:1 1 10%}.form-15{flex:1 1 15%}.form-20{flex:1 1 20%}.form-25{flex:1 1 25%}.form-30{flex:1 1 30%}.form-35{flex:1 1 35%}.form-40{flex:1 1 40%}.form-45{flex:1 1 45%}.form-50{flex:1 1 50%}.form-100{flex:1 1 100%;min-width:250px}\n"] }]
155
+ }], ctorParameters: () => [{ type: i1.UnBPessoaService }, { type: i2.MatSnackBar }], propDecorators: { apiPessoaConfig: [{
156
+ type: Input
157
+ }], defaultTipoPessoa: [{
158
+ type: Input
159
+ }], pesquisarPorCPF: [{
160
+ type: Input
161
+ }], pesquisarPorCNPJ: [{
162
+ type: Input
163
+ }], pesquisarPorEstrangeiro: [{
164
+ type: Input
165
+ }] } });
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuYi1saWItY29tcG9uZW50cy9zcmMvbGliL3VuYi1wZXNzb2EvdW5iLXBlc3NvYS1mb3JtL3VuYi1wZXNzb2EtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmItbGliLWNvbXBvbmVudHMvc3JjL2xpYi91bmItcGVzc29hL3VuYi1wZXNzb2EtZm9ybS91bmItcGVzc29hLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFHekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUtuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztBQVF6RCxNQUFNLE9BQU8sc0JBQXNCO0lBaUJqQyxZQUFvQixPQUF5QixFQUFVLFFBQXFCO1FBQXhELFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBYTtRQWhCNUUsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyxhQUFRLEdBQUcsSUFBSyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3BDLFVBQUssR0FBRyxJQUFLLGNBQWMsRUFBRSxDQUFDO1FBRTlCLGdCQUFXLEdBQUcsY0FBYyxDQUFDO1FBRTdCLFdBQU0sR0FBbUIsSUFBSSxjQUFjLEVB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LGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLHVCQUF1QjtzQkFBL0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbGlzdGFFc3RhZG9zIH0gZnJvbSAnLi4vcGVzc29hLXRhYmVsYXMtYXBvaW8nO1xyXG5pbXBvcnQgeyBVbmJQZXNzb2FFbWFpbCB9IGZyb20gJy4uL3VuYi1wZXNzb2EtbW9kZWxzL3VuYi1wZXNzb2EtZW1haWwubW9kZWwnO1xyXG5pbXBvcnQgeyBVbmJQZXNzb2FFbmRlcmVjbyB9IGZyb20gJy4uL3VuYi1wZXNzb2EtbW9kZWxzL3VuYi1wZXNzb2EtZW5kZXJlY28ubW9kZWwnO1xyXG5pbXBvcnQgeyBVbmJQZXNzb2FFc2NvbGFyaWRhZGUgfSBmcm9tICcuLi91bmItcGVzc29hLW1vZGVscy91bmItcGVzc29hLWVzY29sYXJpZGFkZS5tb2RlbCc7XHJcbmltcG9ydCB7IFVuYlBlc3NvYUVzdGFkb0NpdmlsIH0gZnJvbSAnLi4vdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS1lc3RhZG8tY2l2aWwubW9kZWwnO1xyXG5pbXBvcnQgeyBVbmJQZXNzb2FQYWlzIH0gZnJvbSAnLi4vdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS1wYWlzJztcclxuaW1wb3J0IHsgVW5iUGVzc29hVGVsZWZvbmUgfSBmcm9tICcuLi91bmItcGVzc29hLW1vZGVscy91bmItcGVzc29hLXRlbGVmb25lLm1vZGVsJztcclxuaW1wb3J0IHsgVW5iUGVzc29hTW9kZWwgfSBmcm9tICcuLi91bmItcGVzc29hLW1vZGVscy91bmItcGVzc29hLm1vZGVsJztcclxuaW1wb3J0IHsgVW5CUGVzc29hU2VydmljZSB9IGZyb20gJy4uL3VuYi1wZXNzb2Euc2VydmljZSc7XHJcbmltcG9ydCB7IFRpcG9QZXNzb2FFbnVtIH0gZnJvbSAnLi4vdW5iLXRpcG8tcGVzc29hLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdW5iLXBlc3NvYS1mb3JtJyxcclxuICBzdGFuZGFsb25lOiBmYWxzZSwgIFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91bmItcGVzc29hLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi91bmItcGVzc29hLWZvcm0uY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFVuYlBlc3NvYUZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGJ1c2NhUmVhbGl6YWRhOiBib29sZWFuID0gZmFsc2U7ICBcclxuICBlbmRlcmVjbyA9IG5ldyAgVW5iUGVzc29hRW5kZXJlY28oKTsgXHJcbiAgZW1haWwgPSBuZXcgIFVuYlBlc3NvYUVtYWlsKCk7XHJcbiAgXHJcbiAgdGlwb3NQZXNzb2EgPSBUaXBvUGVzc29hRW51bTtcclxuICBcclxuICBwZXNzb2E6IFVuYlBlc3NvYU1vZGVsID0gbmV3IFVuYlBlc3NvYU1vZGVsKCk7IC8vIGluaWNpYWxpemEgY29tIHBlc3NvYVxyXG4gIGRhZG9zU2Fsdm9zOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307IC8vIEFybWF6ZW5hIG9zIGRhZG9zIGFvIHRyb2NhciBkZSB0aXBvXHJcbiAgXHJcbiAgQElucHV0KCkgYXBpUGVzc29hQ29uZmlnOiB7IHVybDogc3RyaW5nOyB0b2tlbjogc3RyaW5nIH0gPSB7IHVybDogJycsIHRva2VuOiAnJyB9O1xyXG4gIEBJbnB1dCgpIGRlZmF1bHRUaXBvUGVzc29hITogVGlwb1Blc3NvYUVudW07XHJcbiAgQElucHV0KCkgcGVzcXVpc2FyUG9yQ1BGID0gdHJ1ZTtcclxuICBASW5wdXQoKSBwZXNxdWlzYXJQb3JDTlBKID0gdHJ1ZTtcclxuICBASW5wdXQoKSBwZXNxdWlzYXJQb3JFc3RyYW5nZWlybyA9IHRydWU7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogVW5CUGVzc29hU2VydmljZSwgcHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIpIHsgfVxyXG4gXHJcbiAgLy8gdGFiZWxhcyB0cmFkaWNpb25haXMgcXVlIHZlbSBkbyBiYWNrZW5kXHJcbiAgZXNjb2xhcmlkYWRlITogT2JzZXJ2YWJsZTxVbmJQZXNzb2FFc2NvbGFyaWRhZGVbXT47XHJcbiAgcGFpc2VzITogT2JzZXJ2YWJsZTxVbmJQZXNzb2FQYWlzW10+O1xyXG4gIGVzdGFkb3NDaXZpbCEgOiBPYnNlcnZhYmxlPFVuYlBlc3NvYUVzdGFkb0NpdmlsW10+O1xyXG5cclxuIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXBpUGVzc29hQ29uZmlnLnVybC5lbmRzV2l0aCgnLycpKSB7XHJcbiAgICAgIHRoaXMuYXBpUGVzc29hQ29uZmlnLnVybCA9IHRoaXMuYXBpUGVzc29hQ29uZmlnLnVybC5zbGljZSgwLCAtMSk7XHJcbiAgICB9XHJcbiAgICBcclxuICB0aGlzLnNlcnZpY2Uuc2V0QXBpQ29uZmlnKHRoaXMuYXBpUGVzc29hQ29uZmlnKTtcclxuXHJcbiAgICAvLyBhdGVuY2FvLCBvIHBlc3NvYVJlY2ViaWRhIHF1ZSBpbmljaWFsaXphIGVzc2UgY29tcG9uZW50ZVxyXG4gICAgdGhpcy5lc2NvbGFyaWRhZGUgPSB0aGlzLnNlcnZpY2UuZ2V0RXNjb2xhcmlkYWRlKCk7XHJcbiAgICB0aGlzLnBhaXNlcyA9IHRoaXMuc2VydmljZS5nZXRQYWlzZXMoKTtcclxuICAgIHRoaXMuZXN0YWRvc0NpdmlsID0gdGhpcy5zZXJ2aWNlLmdldEVzdGFkb0NpdmlsKCk7XHJcbiAgfVxyXG4gIHBlc3NvYVJlY2ViaWRhKHBlc3NvYVJlY2ViaWRhOiBVbmJQZXNzb2FNb2RlbCkge1xyXG4gICAgdGhpcy5idXNjYVJlYWxpemFkYSA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5wZXNzb2EgPSBwZXNzb2FSZWNlYmlkYTtcclxuICAgIGlmICh0aGlzLnBlc3NvYSAmJiB0aGlzLnBlc3NvYS5lc2NvbGFyaWRhZGUpIHtcclxuICAgICAgdGhpcy5wZXNzb2EuZXNjb2xhcmlkYWRlID0gdGhpcy5ub3JtYWxpemFFc2NvbGFyaWRhZGUodGhpcy5wZXNzb2EuZXNjb2xhcmlkYWRlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNhbHZhcigpIHtcclxuICAgIGlmICghdGhpcy52YWxpZGFyKCkgJiYgIXRoaXMucGVzc29hKSByZXR1cm5cclxuICAgIGlmICghdGhpcy5zZXJ2aWNlKSByZXR1cm47XHJcbiAgICBcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuXHJcbiAgICBsZXQgcmVzdWx0ID0gdGhpcy5zZXJ2aWNlLnNhbHZhcih0aGlzLnBlc3NvYSk7XHJcbiAgICBpZiAocmVzdWx0ICYmIHR5cGVvZiByZXN1bHQuc3Vic2NyaWJlID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgIHJlc3VsdC5zdWJzY3JpYmUoKHJlc3Bvc3RhOmFueSApID0+IHsgICBcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlOyAgIFxyXG4gICAgICAgIHRoaXMucGVzc29hID0gcmVzcG9zdGE7XHJcbiAgICAgIH0sIChlcnIpID0+IHsgdGhpcy5lcnJvKGVycil9ICk7IFxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc29sZS5lcnJvcihcIkVycm86IE8gbcOpdG9kbyBzYWx2YXIoKSBuw6NvIHJldG9ybm91IHVtIE9ic2VydmFibGUuXCIpO1xyXG4gICAgfVxyXG4gIH0gXHJcblxyXG4gIHZhbGlkYXIoKTogYm9vbGVhbiB7XHJcblxyXG4gICAgaWYgKCF0aGlzLnBlc3NvYSkge1xyXG4gICAgICB0aGlzLm9wZW5TbmFja0JhcihcIkVycm8gYW8gY2FycmVnYXIgb2JqZXRvIHBlc3NvYVwiKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnBlc3NvYS50ZWxlZm9uZXMgPT0gbnVsbCB8fCAodGhpcy5wZXNzb2EudGVsZWZvbmVzICE9IG51bGwgJiYgdGhpcy5wZXNzb2EudGVsZWZvbmVzLmxlbmd0aCA9PSAwKSkge1xyXG4gICAgICB0aGlzLm9wZW5TbmFja0JhcihcIkRpZ2l0ZSB1bSBDb250YXRvIGUgY2xpcXVlIGVtIEFkaWNpb25hclwiKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnBlc3NvYS5lbmRlcmVjb3MgPT0gbnVsbCB8fCAodGhpcy5wZXNzb2EuZW5kZXJlY29zICE9IG51bGwgJiYgdGhpcy5wZXNzb2EuZW5kZXJlY29zLmxlbmd0aCA9PSAwKSkge1xyXG4gICAgICB0aGlzLm9wZW5TbmFja0JhcihcIkRpZ2l0ZSB1bSBFbmRlcmXDp28oTG9jYWxpY2FkZSkgZSBjbGlxdWUgZW0gQWRpY2lvbmFyXCIpO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMucGVzc29hLmVtYWlscyA9PSBudWxsIHx8ICh0aGlzLnBlc3NvYS5lbWFpbHMgIT0gbnVsbCAmJiB0aGlzLnBlc3NvYS5lbWFpbHMubGVuZ3RoID09IDApKSB7XHJcbiAgICAgIHRoaXMub3BlblNuYWNrQmFyKFwiRGlnaXRlIHVtIEUtbWFpbCBlIGNsaXF1ZSBlbSBBZGljaW9uYXJcIik7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5wZXNzb2EudGlwb1Blc3NvYSA9PSBUaXBvUGVzc29hRW51bS5GSVNJQ0EpIHtcclxuICAgICAgaWYgKCF0aGlzLnBlc3NvYS5ub21lIHx8ICh0aGlzLnBlc3NvYSAmJiB0aGlzLnBlc3NvYS5ub21lID09IFwiXCIpKSB7XHJcbiAgICAgICAgdGhpcy5vcGVuU25hY2tCYXIoXCJOb21lIMOpIHVtIGNhbXBvIG9icmlnYXTDs3Jpb1wiKTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghdGhpcy5wZXNzb2EuZGF0YU5hc2NpbWVudG8pIHtcclxuICAgICAgICB0aGlzLm9wZW5TbmFja0JhcihcIkRhdGEgZGUgTmFzY2ltZW50byDDqSB1bSBjYW1wbyBvYnJpZ2F0w7NyaW9cIik7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMucGVzc29hLnRpcG9QZXNzb2EgPT0gVGlwb1Blc3NvYUVudW0uRVNUUkFOR0VJUkEpIHtcclxuICAgICAgaWYgKCF0aGlzLnBlc3NvYS5ub21lIHx8ICh0aGlzLnBlc3NvYSAmJiB0aGlzLnBlc3NvYS5ub21lID09IFwiXCIpKSB7XHJcbiAgICAgICAgdGhpcy5vcGVuU25hY2tCYXIoXCJOb21lIMOpIHVtIGNhbXBvIG9icmlnYXTDs3Jpb1wiKTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLnBlc3NvYS5wYXNzYXBvcnRlID09IG51bGwgfHwgKHRoaXMucGVzc29hLnBhc3NhcG9ydGUgIT0gbnVsbCAmJiB0aGlzLnBlc3NvYS5wYXNzYXBvcnRlID09IFwiXCIpKSB7XHJcbiAgICAgICAgdGhpcy5vcGVuU25hY2tCYXIoXCJQYXNzYXBvcnRlIMOpIHVtIGNhbXBvIG9icmlnYXTDs3Jpb1wiKTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgaWYgKHRoaXMucGVzc29hLnRpcG9QZXNzb2EgPT0gVGlwb1Blc3NvYUVudW0uSlVSSURJQ0EpIHtcclxuICAgICAgaWYgKHRoaXMucGVzc29hLnBhc3NhcG9ydGUgPT0gbnVsbCB8fCAodGhpcy5wZXNzb2EucGFzc2Fwb3J0ZSAhPSBudWxsICYmIHRoaXMucGVzc29hLnBhc3NhcG9ydGUgPT0gXCJcIikpIHtcclxuICAgICAgICB0aGlzLm9wZW5TbmFja0JhcihcIlBhc3NhcG9ydGUgw6kgdW0gY2FtcG8gb2JyaWdhdMOzcmlvXCIpO1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgdGVsZWZvbmVzRW1pdHRlZCh0ZWxlZm9uZXM6IFVuYlBlc3NvYVRlbGVmb25lW10pIHtcclxuICAgIHRoaXMucGVzc29hLnRlbGVmb25lcyA9IHRlbGVmb25lcztcclxuICB9XHJcblxyXG4gIGVuZGVyZWNvc0VtaXR0ZWQoZW5kZXJlY29zOiBVbmJQZXNzb2FFbmRlcmVjb1tdKSB7XHJcbiAgICB0aGlzLnBlc3NvYS5lbmRlcmVjb3MgPSBlbmRlcmVjb3M7XHJcbiAgfVxyXG5cclxuICBlbWFpbHNFbWl0dGVkKGVtYWlsczogVW5iUGVzc29hRW1haWxbXSkge1xyXG4gICAgdGhpcy5wZXNzb2EuZW1haWxzID0gZW1haWxzO1xyXG4gIH1cclxuXHJcbiAgbm9ybWFsaXphRXNjb2xhcmlkYWRlKGVzY29sYXJpZGFkZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghZXNjb2xhcmlkYWRlKSByZXR1cm4gJzAnOyAvLyBSZXRvcm5hIFwiTsOjbyBJbmZvcm1hZG9cIiBzZSBlc3RpdmVyIHZhemlvXHJcbiAgICBcclxuICAgIGNvbnN0IHBhcnRlcyA9IGVzY29sYXJpZGFkZS5zcGxpdChcIiAtIFwiKTtcclxuICAgIHJldHVybiBwYXJ0ZXMubGVuZ3RoID4gMSA/IHBhcnRlc1swXS50cmltKCkgOiAnMCc7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGVycm8oZXJybzogYW55KTogdm9pZCB7ICAgIFxyXG4gICAgLy8gY29sb2NvIG8gZXJybyBlbSBuZWdyaXRvXHJcbiAgICB0aGlzLm9wZW5TbmFja0JhcihlcnJvKTsgICAgXHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgb3BlblNuYWNrQmFyKG1lc3NhZ2U6IHN0cmluZykge1xyXG4gICAgdGhpcy5zbmFja0Jhci5vcGVuKG1lc3NhZ2UsICd4Jywge1xyXG4gICAgICBkdXJhdGlvbjogNTAwMCxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdGlwb1Blc3NvYUVudW0oKSB7XHJcbiAgICByZXR1cm4gVGlwb1Blc3NvYUVudW07XHJcbiAgfVxyXG5cclxuICBnZXRMaXN0YUVzdGFkb3MoKSB7XHJcbiAgICByZXR1cm4gbGlzdGFFc3RhZG9zO1xyXG4gIH1cclxufVxyXG4iLCIgIDxkaXYgIGNsYXNzPVwiZm9ybS1jb250YWluZXJcIj5cclxuICAgIDxsaWItdW5iLXBlc3NvYS1wZXNxdWlzYXJcclxuICAgICAgIFthcGlQZXNzb2FDb25maWddPVwiYXBpUGVzc29hQ29uZmlnXCIgXHJcbiAgICAgICBbZGVmYXVsdFRpcG9QZXNzb2FdPVwiZGVmYXVsdFRpcG9QZXNzb2FcIiBcclxuICAgICAgIChwZXNzb2FFbWl0dGVkKT1cInBlc3NvYVJlY2ViaWRhKCRldmVudClcIj48L2xpYi11bmItcGVzc29hLXBlc3F1aXNhcj5cclxuPC9kaXY+XHJcbiAgXHJcbiAgPGZvcm0gI3Blc3NvYUZvcm09XCJuZ0Zvcm1cIiBjbGFzcz1cImZvcm0tY29udGFpbmVyIG10LTJcIiAqbmdJZj1cImJ1c2NhUmVhbGl6YWRhICYmIGFwaVBlc3NvYUNvbmZpZy51cmxcIiAobmdTdWJtaXQpPVwic2FsdmFyKClcIj5cclxuICAgICAgICBcclxuICAgICAgPCEtLSBDYW1wb3MgUGVzc29hIEbDrXNpY2EgZSBFc3RyYW5nZWlyYSAgLS0+XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAqbmdJZj1cInBlc3NvYS50aXBvUGVzc29hID09IHRpcG9QZXNzb2FFbnVtKCkuRklTSUNBIHx8IHBlc3NvYS50aXBvUGVzc29hID09IHRpcG9QZXNzb2FFbnVtKCkuRVNUUkFOR0VJUkFcIj5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmb3JtLTI1XCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+Tm9tZTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgWyhuZ01vZGVsKV09XCJwZXNzb2Eubm9tZVwiIG5hbWU9XCJub21lXCIgI25vbWU9XCJuZ01vZGVsXCIgcmVxdWlyZWQgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmb3JtLTEwXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+U2V4bzwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPG1hdC1zZWxlY3QgWyhuZ01vZGVsKV09XCJwZXNzb2EuY29kaWdvU2V4b1wiIG5hbWU9XCJjb2RpZ29TZXhvXCIgI2NvZGlnb1NleG89XCJuZ01vZGVsXCIgcmVxdWlyZWQ+XHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCIxXCI+TWFzY3VsaW5vPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiMlwiPkZlbWluaW5vPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMTVcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD5EYXRhIE5hc2NpbWVudG88L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBbbWF0RGF0ZXBpY2tlcl09XCJkYXRhTmFzY2ltZW50b1BpY2tlclwiIFsobmdNb2RlbCldPVwicGVzc29hLmRhdGFOYXNjaW1lbnRvXCIgbmFtZT1cImRhdGFOYXNjaW1lbnRvXCIgI2RhdGFOYXNjaW1lbnRvPVwibmdNb2RlbFwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJkYXRhTmFzY2ltZW50b1BpY2tlclwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgPG1hdC1kYXRlcGlja2VyICNkYXRhTmFzY2ltZW50b1BpY2tlcj48L21hdC1kYXRlcGlja2VyPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMTBcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD5Fc3RhZG8gQ2l2aWw8L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxtYXQtc2VsZWN0IFsobmdNb2RlbCldPVwicGVzc29hLmNvZGlnb0VzdGFkb0NpdmlsXCIgbmFtZT1cImNvZGlnb0VzdGFkb0NpdmlsXCIgI2NvZGlnb0VzdGFkb0NpdmlsPVwibmdNb2RlbFwiPlxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgZXN0YWRvIG9mIGVzdGFkb3NDaXZpbCB8IGFzeW5jXCIgW3ZhbHVlXT1cImVzdGFkby5jb2RpZ29cIj5cclxuICAgICAgICAgICAgICB7eyBlc3RhZG8uZGVub21pbmFjYW8gfX1cclxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDwhLS1cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmb3JtLTE1XCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+TmF0dXJhbGlkYWRlPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8bWF0LXNlbGVjdCBbKG5nTW9kZWwpXT1cInBlc3NvYS5uYXR1cmFsaWRhZGVcIiBuYW1lPVwibmF0dXJhbGlkYWRlXCIgI25hdHVyYWxpZGFkZT1cIm5nTW9kZWxcIiByZXF1aXJlZD5cclxuICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGNpZGFkZSBvZiBnZXRMaXN0YUVzdGFkb3MoKVwiIFt2YWx1ZV09XCJjaWRhZGUuY29kaWdvXCI+XHJcbiAgICAgICAgICAgICAge3sgY2lkYWRlLmRlc2NyaWNhbyB9fVxyXG4gICAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAtLT5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmb3JtLTEwXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+UGHDrXMgTmFzY2ltZW50bzwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPG1hdC1zZWxlY3QgWyhuZ01vZGVsKV09XCJwZXNzb2EuY29kaWdvUGFpc05hc2NpbWVudG9cIiBuYW1lPVwiY29kaWdvUGFpc05hc2NpbWVudG9cIiAjY29kaWdvUGFpc05hc2NpbWVudG89XCJuZ01vZGVsXCI+XHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBwYWlzTmFzY2ltZW50byBvZiBwYWlzZXMgfCBhc3luY1wiIFt2YWx1ZV09XCJwYWlzTmFzY2ltZW50by5jb2RpZ29cIj5cclxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInBhaXNOYXNjaW1lbnRvLmRlbm9taW5hY2FvID09PSAnQlJBU0lMJ1wiPvCfh6fwn4e3IDxiPnt7IHBhaXNOYXNjaW1lbnRvLmRlbm9taW5hY2FvIH19PC9iPjwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInBhaXNOYXNjaW1lbnRvLmRlbm9taW5hY2FvICE9PSAnQlJBU0lMJ1wiPnt7IHBhaXNOYXNjaW1lbnRvLmRlbm9taW5hY2FvIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMTBcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiICpuZ0lmPVwicGVzc29hLmNvZGlnb1BhaXNOYXNjaW1lbnRvID09IDIyXCI+IDwhLS0gMjIgZWggQnJhc2lsLS0+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPlVGIE5hc2NpbWVudG88L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxtYXQtc2VsZWN0IFsobmdNb2RlbCldPVwicGVzc29hLnVmTmFzY2ltZW50b1wiIG5hbWU9XCJ1Zk5hc2NpbWVudG9cIiAjdWZOYXNjaW1lbnRvPVwibmdNb2RlbFwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgdWZOYXNjaW1lbnRvIG9mIGdldExpc3RhRXN0YWRvcygpXCIgW3ZhbHVlXT1cInVmTmFzY2ltZW50b1wiPlxyXG4gICAgICAgICAgICAgIHt7IHVmTmFzY2ltZW50byB9fVxyXG4gICAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS0xNVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgKm5nSWY9XCJwZXNzb2EuY29kaWdvUGFpc05hc2NpbWVudG8gPT0gMjJcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+TmF0dXJhbGlkYWRlPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cInBlc3NvYS5uYXR1cmFsaWRhZGVcIiBuYW1lPVwibmF0dXJhbGlkYWRlXCIgI25hdHVyYWxpZGFkZT1cIm5nTW9kZWxcIiByZXF1aXJlZC8+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS0xMFwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPkVzY29sYXJpZGFkZTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPG1hdC1zZWxlY3QgWyhuZ01vZGVsKV09XCJwZXNzb2EuZXNjb2xhcmlkYWRlXCIgbmFtZT1cImNvZGlnb0VzY29sYXJpZGFkZVwiICNjb2RpZ29Fc2NvbGFyaWRhZGU9XCJuZ01vZGVsXCI+XHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBlc2NvbGFyaWRhZGUgb2YgZXNjb2xhcmlkYWRlIHwgYXN5bmNcIiBbdmFsdWVdPVwiZXNjb2xhcmlkYWRlLmNvZGlnb1wiPlxyXG4gICAgICAgICAgICAgIHt7IGVzY29sYXJpZGFkZS5kZW5vbWluYWNhbyB9fVxyXG4gICAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS0yNVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPk5vbWUgU29jaWFsPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cInBlc3NvYS5ub21lU29jaWFsXCIgbmFtZT1cIm5vbWVTb2NpYWxcIiAjbm9tZVNvY2lhbD1cIm5nTW9kZWxcIiAvPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMjVcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD5Ob21lIGRhIE3Do2U8L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IFsobmdNb2RlbCldPVwicGVzc29hLm5vbWVNYWVcIiBuYW1lPVwibm9tZU1hZVwiICNub21lTWFlPVwibmdNb2RlbFwiIHJlcXVpcmVkIC8+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS0yNVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPk5vbWUgZG8gUGFpPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cInBlc3NvYS5ub21lUGFpXCIgbmFtZT1cIm5vbWVQYWlcIiAjbm9tZVBhaT1cIm5nTW9kZWxcIiByZXF1aXJlZCAvPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPCEtLSBDYW1wb3MgUGVzc29hIEp1csOtZGljYSAtLT5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBlc3NvYS50aXBvUGVzc29hID09PSB0aXBvUGVzc29hRW51bSgpLkpVUklESUNBXCI+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS0yNVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPlJhesOjbyBTb2NpYWw8L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IFsobmdNb2RlbCldPVwicGVzc29hLnJhemFvU29jaWFsXCIgbmFtZT1cInJhemFvU29jaWFsXCIgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMjVcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD5Ob21lIEZhbnRhc2lhPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cInBlc3NvYS5ub21lRmFudGFzaWFcIiBuYW1lPVwibm9tZUZhbnRhc2lhXCIgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIFxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicGVzc29hLnRpcG9QZXNzb2EgPT0gdGlwb1Blc3NvYUVudW0oKS5GSVNJQ0EgfHwgcGVzc29hLnRpcG9QZXNzb2EgPT0gdGlwb1Blc3NvYUVudW0oKS5FU1RSQU5HRUlSQSBcIj5cclxuICAgICAgICA8YiBzdHlsZT1cImZsZXg6IDEgMSAxMDAlOyBtYXJnaW4tYm90dG9tOiAxMHB4O1wiPkRvY3VtZW50YcOnw6NvPC9iPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmb3JtLTI1XCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+SWRlbnRpZGFkZTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgWyhuZ01vZGVsKV09XCJwZXNzb2EucmdcIiBuYW1lPVwicmdcIiAjcmc9XCJuZ01vZGVsXCIgcmVxdWlyZWQgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmb3JtLTI1XCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+w5NyZ8OjbyBFbWlzc29yPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cInBlc3NvYS5yZ09yZ2FvXCIgbmFtZT1cInJnT3JnYW9cIiAjcmdPcmdhbz1cIm5nTW9kZWxcIiByZXF1aXJlZCAvPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMjVcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD5VbmlkYWRlIEZlZGVyYXRpdmE8L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxtYXQtc2VsZWN0IFsobmdNb2RlbCldPVwicGVzc29hLnJnVWZcIiBuYW1lPVwicmdVZlwiICNyZ1VmPVwibmdNb2RlbFwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgY2lkYWRlIG9mIGdldExpc3RhRXN0YWRvcygpXCIgW3ZhbHVlXT1cImNpZGFkZS5pZGVudGlmaWNhZG9yXCI+XHJcbiAgICAgICAgICAgICAge3sgY2lkYWRlLmlkZW50aWZpY2Fkb3IgfX1cclxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tMjBcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD5EYXRhIGRlIEVtaXNzw6NvPC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cInBlc3NvYS5yZ0RhdGFFbWlzc2FvXCIgbmFtZT1cInJnRGF0YUVtaXNzYW9cIlxyXG4gICAgICAgICAgICAjcmdEYXRhRW1pc3Nhbz1cIm5nTW9kZWxcIiAvPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBlc3NvYS50aXBvUGVzc29hID09IHRpcG9QZXNzb2FFbnVtKCkuRVNUUkFOR0VJUkEgXCI+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS0xMFwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPlBhw61zIFBhc3NhcG9ydGU8L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxtYXQtc2VsZWN0IFsobmdNb2RlbCldPVwicGVzc29hLmNvZGlnb1BhaXNQYXNzYXBvcnRlXCIgbmFtZT1cImNvZGlnb1BhaXNQYXNzYXBvcnRlXCIgI2NvZGlnb1BhaXNQYXNzYXBvcnRlPVwibmdNb2RlbFwiPlxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgcGFpc05hc2NpbWVudG8gb2YgcGFpc2VzIHwgYXN5bmNcIiBbdmFsdWVdPVwicGFpc05hc2NpbWVudG8uY29kaWdvXCI+XHJcbiAgICAgICAgICAgICAge3sgcGFpc05hc2NpbWVudG8uZGVub21pbmFjYW8gfX1cclxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS0yNVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPk7Dum1lcm8gUGFzc2Fwb3J0ZTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgWyhuZ01vZGVsKV09XCJwZXNzb2EucGFzc2Fwb3J0ZVwiIG5hbWU9XCJwYXNzYXBvcnRlXCIgI3Bhc3NhcG9ydGU9XCJuZ01vZGVsXCIgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxiIHN0eWxlPVwiZmxleDogMSAxIDEwMCU7IG1hcmdpbi1ib3R0b206IDEwcHg7XCI+IENvbnRhdG88L2I+XHJcblxyXG4gICAgICA8bGliLXVuYi1wZXNzb2EtdGVsZWZvbmUtbGlzdCBzdHlsZT1cImZsZXg6IDEgMSAxMDAlO1wiIFthcGlQZXNzb2FDb25maWddPVwiYXBpUGVzc29hQ29uZmlnXCIgW3RlbGVmb25lc109XCJwZXNzb2EudGVsZWZvbmVzXCIgKHRlbGVmb25lc0VtaXR0ZWQpPVwidGVsZWZvbmVzRW1pdHRlZCgkZXZlbnQpXCIgPjwvbGliLXVuYi1wZXNzb2EtdGVsZWZvbmUtbGlzdD5cclxuXHJcbiAgICAgIDxsaWItdW5iLXBlc3NvYS1lbmRlcmVjby1saXN0IHN0eWxlPVwiZmxleDogMSAxIDEwMCU7XCIgW2FwaVBlc3NvYUNvbmZpZ109XCJhcGlQZXNzb2FDb25maWdcIiBbZW5kZXJlY29zXT1cInBlc3NvYS5lbmRlcmVjb3NcIiAoZW5kZXJlY29zRW1pdHRlZCk9XCJlbmRlcmVjb3NFbWl0dGVkKCRldmVudClcIiA+PC9saWItdW5iLXBlc3NvYS1lbmRlcmVjby1saXN0PlxyXG5cclxuICAgICAgPGxpYi11bmItcGVzc29hLWVtYWlsLWxpc3Qgc3R5bGU9XCJmbGV4OiAxIDEgMTAwJTtcIiBbYXBpUGVzc29hQ29uZmlnXT1cImFwaVBlc3NvYUNvbmZpZ1wiIFtlbWFpbHNdPVwicGVzc29hLmVtYWlsc1wiIChlbWFpbHNFbWl0dGVkKT1cImVtYWlsc0VtaXR0ZWQoJGV2ZW50KVwiID48L2xpYi11bmItcGVzc29hLWVtYWlsLWxpc3Q+XHJcbiBcclxuICAgICAgPG1hdC1jYXJkLWFjdGlvbnMgY2xhc3M9XCJjYXJkLWFjdGlvbnMtYnV0dG9uc1wiICpuZ0lmPVwiYnVzY2FSZWFsaXphZGFcIj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBkaXNhYmxlZD1cInt7aXNMb2FkaW5nfX1cIiB0eXBlPVwic3VibWl0XCIgY29sb3I9XCJwcmltYXJ5XCI+XHJcbiAgICAgICAgICBTYWx2YXJcclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxyXG4gICAgXHJcbiAgPC9mb3JtPlxyXG5cclxuIl19
@@ -0,0 +1,5 @@
1
+ export class UnbPessoaEmail {
2
+ }
3
+ export class UnbPessoaEmailTipo {
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lbWFpbC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuYi1saWItY29tcG9uZW50cy9zcmMvbGliL3VuYi1wZXNzb2EvdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS1lbWFpbC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sY0FBYztDQU8xQjtBQUVELE1BQU0sT0FBTyxrQkFBa0I7Q0FJOUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVW5iUGVzc29hRW1haWwge1xyXG4gIGNvZGlnbz86IG51bWJlcjtcclxuICB0aXBvRW1haWxDb2RpZ28/OiBudW1iZXI7XHJcbiAgdGlwbz86IHN0cmluZztcclxuICBlbWFpbD86IHN0cmluZztcclxuICBhdXRvcml6YWNhbz86IGJvb2xlYW47XHJcbiAgb3JkZW0/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBVbmJQZXNzb2FFbWFpbFRpcG8ge1xyXG4gIGluZGV4PzogbnVtYmVyO1xyXG4gIGNvZGlnbz86IG51bWJlcjtcclxuICBkZW5vbWluYWNhbz86IHN0cmluZztcclxufSJdfQ==
@@ -0,0 +1,5 @@
1
+ export class UnbPessoaEndereco {
2
+ }
3
+ export class UnbPessoaEnderecoTipo {
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lbmRlcmVjby5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuYi1saWItY29tcG9uZW50cy9zcmMvbGliL3VuYi1wZXNzb2EvdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS1lbmRlcmVjby5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8saUJBQWlCO0NBaUI3QjtBQUVELE1BQU0sT0FBTyxxQkFBcUI7Q0FHakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVW5iUGVzc29hRW5kZXJlY28ge1xyXG4gIGNvZGlnbz86IG51bWJlcjtcclxuICB0aXBvRW5kZXJlY29Db2RpZ28/OiBudW1iZXI7XHJcbiAgdGlwbz86IHN0cmluZztcclxuICBjZXA/OiBzdHJpbmc7XHJcbiAgbG9ncmFkb3Vybz86IHN0cmluZztcclxuICBtdW5pY2lwaW8/OiBzdHJpbmc7XHJcbiAgYmFpcnJvPzogc3RyaW5nO1xyXG4gIHVmRW5kZXJlY28/OiBzdHJpbmc7IC8vIG8gcHV0IGVoIHVmRW5kZXJlY28gZSBvIGdldCBlaCB1Zi4gRW50YW8gcHJlY2lzYSBjb252ZXJ0ZXJcclxuICB1Zj86IHN0cmluZztcclxuICBwYWlzPzogc3RyaW5nO1xyXG4gIGNvbXBsZW1lbnRvPzogc3RyaW5nO1xyXG4gIGNhaXhhUG9zdGFsPzogc3RyaW5nO1xyXG4gIGNvcnJlc3BvbmRlbmNpYT86IGJvb2xlYW47XHJcbiAgb3JkZW1FbmRlcmVjbz86IG51bWJlcjtcclxuICBwYWlzRW5kZXJlY29Db2RpZ28/OiBudW1iZXI7XHJcbiAgbXVuaWNpcGlvQ29kaWdvPzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVW5iUGVzc29hRW5kZXJlY29UaXBvIHtcclxuICBjb2RpZ28/OiBudW1iZXI7XHJcbiAgZGVub21pbmFjYW8/OiBzdHJpbmc7XHJcbn0iXX0=
@@ -0,0 +1,6 @@
1
+ export class UnbPessoaEscolaridade {
2
+ constructor() {
3
+ this.extinto = false;
4
+ }
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lc2NvbGFyaWRhZGUubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmItbGliLWNvbXBvbmVudHMvc3JjL2xpYi91bmItcGVzc29hL3VuYi1wZXNzb2EtbW9kZWxzL3VuYi1wZXNzb2EtZXNjb2xhcmlkYWRlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxxQkFBcUI7SUFBbEM7UUFJRSxZQUFPLEdBQVksS0FBSyxDQUFDO0lBQzNCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBVbmJQZXNzb2FFc2NvbGFyaWRhZGUge1xyXG4gIGNvZGlnbz86IG51bWJlcjsgLy8gQnl0ZSBlbSBKYXZhIGNvcnJlc3BvbmRlIGEgbnVtYmVyIGVtIFR5cGVTY3JpcHRcclxuICBkZW5vbWluYWNhbz86IHN0cmluZztcclxuICBjb2RpZ29TaWFwZT86IG51bWJlciB8IG51bGw7IC8vIFNob3J0IGVtIEphdmEgY29ycmVzcG9uZGUgYSBudW1iZXIsIGUgcG9kZSBzZXIgbnVsb1xyXG4gIGV4dGludG86IGJvb2xlYW4gPSBmYWxzZTtcclxufSJdfQ==
@@ -0,0 +1,6 @@
1
+ export class UnbPessoaEstadoCivil {
2
+ constructor() {
3
+ this.extinto = false;
4
+ }
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1lc3RhZG8tY2l2aWwubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmItbGliLWNvbXBvbmVudHMvc3JjL2xpYi91bmItcGVzc29hL3VuYi1wZXNzb2EtbW9kZWxzL3VuYi1wZXNzb2EtZXN0YWRvLWNpdmlsLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxvQkFBb0I7SUFBakM7UUFJRSxZQUFPLEdBQVksS0FBSyxDQUFDO0lBQzNCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBVbmJQZXNzb2FFc3RhZG9DaXZpbCB7XHJcbiAgY29kaWdvPzogbnVtYmVyO1xyXG4gIGRlbm9taW5hY2FvPzogc3RyaW5nO1xyXG4gIGNvZGlnb1NpYXBlPzogbnVtYmVyIHwgbnVsbDtcclxuICBleHRpbnRvOiBib29sZWFuID0gZmFsc2U7XHJcbn0iXX0=
@@ -0,0 +1,3 @@
1
+ export class UnbPessoaMunincipio {
2
+ }
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1tdW5pY2lwaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmItbGliLWNvbXBvbmVudHMvc3JjL2xpYi91bmItcGVzc29hL3VuYi1wZXNzb2EtbW9kZWxzL3VuYi1wZXNzb2EtbXVuaWNpcGlvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxtQkFBbUI7Q0FPL0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVW5iUGVzc29hTXVuaW5jaXBpbyB7XHJcbiAgY29kaWdvPzogbnVtYmVyO1xyXG4gIGRlbm9taW5hY2FvPzogc3RyaW5nO1xyXG4gIGNvZGlnb0lCR0U/OiBudW1iZXIgfCBudWxsO1xyXG4gIGNvZGlnb1VmPzogbnVtYmVyO1xyXG4gIHNpZ2xhVWY/OiBzdHJpbmc7XHJcbiAgZGVub21pbmFjYW9VZj86IHN0cmluZztcclxufSJdfQ==
@@ -0,0 +1,3 @@
1
+ export class UnbPessoaPais {
2
+ }
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1wYWlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5iLWxpYi1jb21wb25lbnRzL3NyYy9saWIvdW5iLXBlc3NvYS91bmItcGVzc29hLW1vZGVscy91bmItcGVzc29hLXBhaXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGFBQWE7Q0FNekIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVW5iUGVzc29hUGFpcyB7XHJcbiAgY29kaWdvPzogbnVtYmVyO1xyXG4gIGRlbm9taW5hY2FvPzogc3RyaW5nO1xyXG4gIHNpZ2xhPzogc3RyaW5nO1xyXG4gIG5hY2lvbmFsaWRhZGU/OiBzdHJpbmc7XHJcbiAgZXh0aW50bz86IGJvb2xlYW47XHJcbn0iXX0=
@@ -0,0 +1,3 @@
1
+ export class UnbPessoaRacaCor {
2
+ }
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS1yYWNhLWNvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuYi1saWItY29tcG9uZW50cy9zcmMvbGliL3VuYi1wZXNzb2EvdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS1yYWNhLWNvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sZ0JBQWdCO0NBRzVCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFVuYlBlc3NvYVJhY2FDb3J7XHJcbiAgY29kaWdvPzogbnVtYmVyO1xyXG4gIGRlbm9taW5hY2FvPzogc3RyaW5nO1xyXG59Il19
@@ -0,0 +1,9 @@
1
+ export class UnbPessoaTelefone {
2
+ constructor() {
3
+ // usado pelo componente unb-pesoa-form, pra indicar que o usuario estah editando
4
+ this.modoEdicao = false;
5
+ }
6
+ }
7
+ export class UnbPessoaTelefoneTipo {
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS10ZWxlZm9uZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuYi1saWItY29tcG9uZW50cy9zcmMvbGliL3VuYi1wZXNzb2EvdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS10ZWxlZm9uZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBRSxNQUFNLE9BQU8saUJBQWlCO0lBQTlCO1FBWUUsaUZBQWlGO1FBQ2pGLGVBQVUsR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztDQUFBO0FBRUQsTUFBTSxPQUFPLHFCQUFxQjtDQUdqQyIsInNvdXJjZXNDb250ZW50IjpbIiAgZXhwb3J0IGNsYXNzIFVuYlBlc3NvYVRlbGVmb25lIHtcclxuICAgIGNvZGlnbz86IG51bWJlcjtcclxuICAgIHRpcG8/OiBzdHJpbmc7XHJcbiAgICB0aXBvVGVsZWZvbmVDb2RpZ28/OiBudW1iZXI7XHJcbiAgICBkZGk/OiBzdHJpbmc7XHJcbiAgICBkZGQ/OiBzdHJpbmc7XHJcbiAgICBudW1lcm8/OiBzdHJpbmc7XHJcbiAgICByYW1hbD86IHN0cmluZztcclxuICAgIGF1dG9yaXphU01TPzogYm9vbGVhbjtcclxuICAgIG9yZGVtPzogbnVtYmVyO1xyXG4gICAgbm9tZVJlc3BvbnNhdmVsPzogc3RyaW5nO1xyXG4gICAgXHRcclxuICAgIC8vIHVzYWRvIHBlbG8gY29tcG9uZW50ZSB1bmItcGVzb2EtZm9ybSwgcHJhIGluZGljYXIgcXVlIG8gdXN1YXJpbyBlc3RhaCBlZGl0YW5kb1xyXG4gICAgbW9kb0VkaWNhbyA9IGZhbHNlOyBcclxuICB9XHJcblxyXG4gIGV4cG9ydCBjbGFzcyBVbmJQZXNzb2FUZWxlZm9uZVRpcG8ge1xyXG4gICAgY29kaWdvPzogbnVtYmVyO1xyXG4gICAgZGVub21pbmFjYW8/OiBzdHJpbmc7XHJcbiAgfSJdfQ==
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Essa eh uma classe base, com propriedades comum a todas as outras pessoas.
3
+ * */
4
+ export class UnbPessoaModel {
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5iLXBlc3NvYS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuYi1saWItY29tcG9uZW50cy9zcmMvbGliL3VuYi1wZXNzb2EvdW5iLXBlc3NvYS1tb2RlbHMvdW5iLXBlc3NvYS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQTs7S0FFSztBQUNMLE1BQU0sT0FBTyxjQUFjO0NBbUUxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRpcG9QZXNzb2FFbnVtIH0gZnJvbSBcIi4uL3VuYi10aXBvLXBlc3NvYS5lbnVtXCI7XHJcbmltcG9ydCB7IFVuYlBlc3NvYUVtYWlsIH0gZnJvbSBcIi4vdW5iLXBlc3NvYS1lbWFpbC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBVbmJQZXNzb2FFbmRlcmVjbyB9IGZyb20gXCIuL3VuYi1wZXNzb2EtZW5kZXJlY28ubW9kZWxcIjtcclxuaW1wb3J0IHsgVW5iUGVzc29hUGFpcyB9IGZyb20gXCIuL3VuYi1wZXNzb2EtcGFpc1wiO1xyXG5pbXBvcnQgeyBVbmJQZXNzb2FUZWxlZm9uZSB9IGZyb20gXCIuL3VuYi1wZXNzb2EtdGVsZWZvbmUubW9kZWxcIjtcclxuXHJcbi8qKiBcclxuICogRXNzYSBlaCB1bWEgY2xhc3NlIGJhc2UsIGNvbSBwcm9wcmllZGFkZXMgY29tdW0gYSB0b2RhcyBhcyBvdXRyYXMgcGVzc29hcy4gXHJcbiAqICovXHJcbmV4cG9ydCBjbGFzcyBVbmJQZXNzb2FNb2RlbCB7XHJcbiAgaWRQZXNzb2EhOiBudW1iZXI7XHJcbiAgY29kaWdvUGVzc29hITogbnVtYmVyOyAgIFxyXG4gIGVuZGVyZWNvcyE6IFVuYlBlc3NvYUVuZGVyZWNvW107XHJcbiAgdGVsZWZvbmVzITogVW5iUGVzc29hVGVsZWZvbmVbXTtcclxuICBlbWFpbHMhOiBVbmJQZXNzb2FFbWFpbFtdO1xyXG4gIHRpcG9QZXNzb2EhOiBUaXBvUGVzc29hRW51bTsgLy8gaW5pY2lhbGl6YSBjb20gbyBmaXNpY2Egc2VsZWNpb25hZG9cclxuXHJcbiAgLy8gQXRyaWJ1dG9zIGRhIFBlc3NvYSBGw61zaWNhXHJcbiAgaWRTZXJ2aWRvciE6IG51bWJlcjtcclxuICBtYXRyaWN1bGFTaXBlcyE6IG51bWJlcjtcclxuICBtYXRyaWN1bGFTaWFwZSE6IG51bWJlcjtcclxuICBub21lITogc3RyaW5nO1xyXG4gIGNwZiE6IHN0cmluZztcclxuICByZyE6IHN0cmluZztcclxuICByZ09yZ2FvITogc3RyaW5nO1xyXG4gIHJnVWYhOiBzdHJpbmc7XHJcbiAgcmdEYXRhRW1pc3NhbyE6IHN0cmluZztcclxuICBudW1lcm9UaXR1bG9FbGVpdG9yITogc3RyaW5nO1xyXG4gIGRhdGFFbWlzc2FvVGl0dWxvRWxlaXRvciE6IHN0cmluZztcclxuICB6b25hVGl0dWxvRWxlaXRvciE6IHN0cmluZztcclxuICBzZWNhb1RpdHVsb0VsZWl0b3IhOiBzdHJpbmc7XHJcbiAgdWZUaXR1bG9FbGVpdG9yITogc3RyaW5nO1xyXG4gIG51bWVyb1Jlc2VydmlzdGEhOiBzdHJpbmc7XHJcbiAgc2VyaWVSZXNlcnZpc3RhITogc3RyaW5nO1xyXG4gIG9yZ2FvUmVzZXJ2aXN0YSE6IHN0cmluZztcclxuICBkYXRhTmFzY2ltZW50byE6IHN0cmluZztcclxuICBwYWlzTmFzY2ltZW50byE6IHN0cmluZztcclxuICB1Zk5hc2NpbWVudG8hOiBzdHJpbmc7XHJcbiAgbmF0dXJhbGlkYWRlITogc3RyaW5nO1xyXG4gIGNvZGlnb1BhaXNOYXNjaW1lbnRvITogbnVtYmVyO1xyXG4gIGNvZGlnb1BhaXNQYXNzYXBvcnRlITogbnVtYmVyO1xyXG4gIGNvZGlnb0VzdGFkb0NpdmlsITogbnVtYmVyO1xyXG4gIG5hY2lvbmFsaWRhZGUhOiBzdHJpbmc7XHJcbiAgZXN0YWRvQ2l2aWwhOiBzdHJpbmc7XHJcbiAgbm9tZVBhaSE6IHN0cmluZztcclxuICBub21lTWFlITogc3RyaW5nO1xyXG4gIHRpcG9TYW5ndWluZW8hOiBzdHJpbmc7XHJcbiAgZXNjb2xhcmlkYWRlITogc3RyaW5nO1xyXG4gIG51bWVyb0NhcnRlaXJhVHJhYmFsaG8hOiBzdHJpbmc7XHJcbiAgc2VyaWVDYXJ0ZWlyYVRyYWJhbGhvITogc3RyaW5nO1xyXG4gIHVmQ2FydGVpcmFUcmFiYWxobyE6IHN0cmluZztcclxuICBwaXNQYXNlcCE6IHN0cmluZztcclxuICBudW1lcm9IYWJpbGl0YWNhbyE6IHN0cmluZztcclxuICByZWdpc3Ryb0hhYmlsaXRhY2FvITogc3RyaW5nO1xyXG4gIGRhdGFFbWlzc2FvSGFiaWxpdGFjYW8hOiBzdHJpbmc7XHJcbiAgZGF0YVZhbGlkYWRlSGFiaWxpdGFjYW8hOiBzdHJpbmc7XHJcbiAgY2F0ZWdvcmlhSGFiaWxpdGFjYW8hOiBzdHJpbmc7XHJcbiAgZGVmaWNpZW5jaWFGaXNpY2FIYWJpbGl0YWNhbyE6IHN0cmluZztcclxuICBwcmltZWlyYUhhYmlsaXRhY2FvITogc3RyaW5nO1xyXG4gIGF1dG9DYWRhc3RybyE6IGJvb2xlYW47XHJcbiAgbm9tZVNvY2lhbCE6IHN0cmluZztcclxuICBzZXhvITogc3RyaW5nOyAgXHJcbiAgY29kaWdvU2V4byE6IG51bWJlcjtcclxuXHJcbiAgLy8gQXRyaWJ1dG9zIGRhIFBlc3NvYSBFc3RyYW5nZWlyYVxyXG4gIHBhc3NhcG9ydGUhOiBzdHJpbmc7XHJcbiAgcGFpc09yaWdlbSE6IHN0cmluZztcclxuXHJcbiAgLy8gQXRyaWJ1dG9zIGRhIFBlc3NvYSBKdXLDrWRpY2FcclxuICBjbnBqITogc3RyaW5nO1xyXG4gIHJhemFvU29jaWFsITogc3RyaW5nO1xyXG4gIG5vbWVGYW50YXNpYSE6IHN0cmluZztcclxuICBzaWdsYSE6IHN0cmluZztcclxuICBwYWlzITogVW5iUGVzc29hUGFpcztcclxuICBwYWdpbmFXZWIhOiBzdHJpbmc7XHJcbiAgXHJcbn0iXX0=