@stiunb/unb-lib-components 18.0.28 → 18.0.29

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 (37) hide show
  1. package/esm2022/lib/services/unb-auth.service.mjs +4 -4
  2. package/esm2022/lib/unb-mensagem/unb-mensagem.component.mjs +4 -4
  3. package/esm2022/lib/unb-mensagem/unb-mensagem.module.mjs +5 -5
  4. package/esm2022/lib/unb-mensagem/unb-mensagem.service.mjs +4 -4
  5. package/esm2022/lib/unb-nav-bar/unb-nav-bar.component.mjs +4 -4
  6. package/esm2022/lib/unb-nav-bar/unb-nav-bar.module.mjs +5 -5
  7. package/esm2022/lib/unb-pessoa/unb-pessoa-crud/unb-pessoa-crud.component.mjs +100 -0
  8. package/esm2022/lib/unb-pessoa/unb-pessoa-crud-modal/unb-pessoa-crud-modal.component.mjs +144 -0
  9. package/esm2022/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-form.mjs +4 -4
  10. package/esm2022/lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-list.mjs +4 -4
  11. package/esm2022/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-form.mjs +24 -7
  12. package/esm2022/lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-list.mjs +4 -4
  13. package/esm2022/lib/unb-pessoa/unb-pessoa-form/unb-pessoa-form.component.mjs +54 -178
  14. package/esm2022/lib/unb-pessoa/unb-pessoa-form-dialog/unb-pessoa-form-dialog.component.mjs +60 -0
  15. package/esm2022/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-config.model.mjs +35 -0
  16. package/esm2022/lib/unb-pessoa/unb-pessoa-pesquisar/unb-pessoa-pesquisar.component.mjs +32 -191
  17. package/esm2022/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-form.mjs +4 -4
  18. package/esm2022/lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-list.mjs +4 -4
  19. package/esm2022/lib/unb-pessoa/unb-pessoa.module.mjs +61 -11
  20. package/esm2022/lib/unb-pessoa/unb-pessoa.service.mjs +278 -26
  21. package/esm2022/lib/unb-usuario/oidc-decoded-token.mjs +1 -1
  22. package/esm2022/lib/unb-usuario/oidc-user-data.mjs +1 -1
  23. package/esm2022/lib/unb-usuario/unb-usuario.component.mjs +4 -4
  24. package/esm2022/lib/unb-usuario/unb-usuario.module.mjs +5 -5
  25. package/esm2022/public-api.mjs +6 -2
  26. package/fesm2022/stiunb-unb-lib-components.mjs +1102 -767
  27. package/fesm2022/stiunb-unb-lib-components.mjs.map +1 -1
  28. package/lib/unb-pessoa/unb-pessoa-crud/unb-pessoa-crud.component.d.ts +33 -0
  29. package/lib/unb-pessoa/unb-pessoa-crud-modal/unb-pessoa-crud-modal.component.d.ts +39 -0
  30. package/lib/unb-pessoa/unb-pessoa-form/unb-pessoa-form.component.d.ts +13 -29
  31. package/lib/unb-pessoa/unb-pessoa-form-dialog/unb-pessoa-form-dialog.component.d.ts +21 -0
  32. package/lib/unb-pessoa/unb-pessoa-models/unb-pessoa-config.model.d.ts +26 -0
  33. package/lib/unb-pessoa/unb-pessoa-pesquisar/unb-pessoa-pesquisar.component.d.ts +3 -23
  34. package/lib/unb-pessoa/unb-pessoa.module.d.ts +51 -32
  35. package/lib/unb-pessoa/unb-pessoa.service.d.ts +23 -3
  36. package/package.json +1 -1
  37. package/public-api.d.ts +5 -1
@@ -0,0 +1,33 @@
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
+ import { MatSnackBar } from '@angular/material/snack-bar';
3
+ import { UnbPessoaModel } from '../unb-pessoa-models/unb-pessoa.model';
4
+ import { UnBPessoaService } from '../unb-pessoa.service';
5
+ import { UnbPessoaFormConfig, UnbPessoaPesquisaConfig } from '../unb-pessoa-models/unb-pessoa-config.model';
6
+ import { UnbMensagemService } from '../../unb-mensagem/unb-mensagem.service';
7
+ import { MatDialog } from '@angular/material/dialog';
8
+ import * as i0 from "@angular/core";
9
+ /**
10
+ * Esse é um componente Wrapper utilitário. Ele encapsula a logica de procurar e exibir o formulario de cadastro/alteração inline.
11
+ * Isso economiza o ciclo de mostrar a pesquisa do pessoa, e depois mostrar o formulário.
12
+ */
13
+ export declare class UnbPessoaCrudComponent implements OnInit {
14
+ private snackBar;
15
+ private pessoaService;
16
+ private alertService;
17
+ dialog: MatDialog;
18
+ isLoading: boolean;
19
+ pesquisaConfig: UnbPessoaPesquisaConfig;
20
+ showFormOnModal: boolean;
21
+ maxWidthPesquisa: string;
22
+ pessoaEmitted: EventEmitter<UnbPessoaModel>;
23
+ pessoaSelecionada: UnbPessoaModel;
24
+ pessoaEncontrada: boolean;
25
+ formConfig: UnbPessoaFormConfig;
26
+ constructor(snackBar: MatSnackBar, pessoaService: UnBPessoaService, alertService: UnbMensagemService, dialog: MatDialog);
27
+ ngOnInit(): void;
28
+ loadingPesquisa($event: boolean): void;
29
+ pessoaPesquisaRecebida(pessoa: UnbPessoaModel): void;
30
+ openSnackBar(message: string): void;
31
+ static ɵfac: i0.ɵɵFactoryDeclaration<UnbPessoaCrudComponent, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<UnbPessoaCrudComponent, "lib-unb-pessoa-crud", never, { "pesquisaConfig": { "alias": "pesquisaConfig"; "required": true; }; "showFormOnModal": { "alias": "showFormOnModal"; "required": false; }; "maxWidthPesquisa": { "alias": "maxWidthPesquisa"; "required": false; }; }, { "pessoaEmitted": "pessoaEmitted"; }, never, never, false, never>;
33
+ }
@@ -0,0 +1,39 @@
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
+ import { MatSnackBar } from '@angular/material/snack-bar';
3
+ import { UnbPessoaModel } from '../unb-pessoa-models/unb-pessoa.model';
4
+ import { UnBPessoaService } from '../unb-pessoa.service';
5
+ import { UnbPessoaFormConfig, UnbPessoaPesquisaConfig } from '../unb-pessoa-models/unb-pessoa-config.model';
6
+ import { UnbMensagemService } from '../../unb-mensagem/unb-mensagem.service';
7
+ import { MatDialog } from '@angular/material/dialog';
8
+ import * as i0 from "@angular/core";
9
+ /**
10
+ * Esse é um componetne Wrapper utilitário. Ele encapsula a logica de procurar e se nao achar iniciar o formulario de cadastro em um modal.
11
+ * Também, se achar, ele permite alterar a pessoa encontrada.
12
+ * O SGI usa para cadastro de Inquilino no formulario. La tem a pesquisa de Pessoa, se nao achar, abre o formulario de cadastro em modal. Assim, nao precisa ir em outra tela pra cadastrar
13
+ * Eh possivel configurar se quer mostrar o botao de Novo (se nao achar) e Alterar (se achar). No SGI, por exemplo eu soh deixo incluir novo, pq nao faz sentido alterar a pessoa no meio do cadastro do inquilino.
14
+ */
15
+ export declare class UnbPessoaCrudModalComponent implements OnInit {
16
+ private snackBar;
17
+ private pessoaService;
18
+ private alertService;
19
+ dialog: MatDialog;
20
+ isLoading: boolean;
21
+ pesquisaConfig: UnbPessoaPesquisaConfig;
22
+ incluirBotaoNovo: boolean;
23
+ incluirBotaoAlterar: boolean;
24
+ pessoaEmitted: EventEmitter<UnbPessoaModel>;
25
+ pessoaSelecionada: UnbPessoaModel;
26
+ mostrarBotaoNovo: boolean;
27
+ formConfig: UnbPessoaFormConfig;
28
+ constructor(snackBar: MatSnackBar, pessoaService: UnBPessoaService, alertService: UnbMensagemService, dialog: MatDialog);
29
+ ngOnInit(): void;
30
+ pessoaPesquisaRecebida(pessoa: UnbPessoaModel): void;
31
+ limparSelecao(): void;
32
+ getDocumentoFormatado(pessoa: UnbPessoaModel): string | undefined;
33
+ openModal(): void;
34
+ openSnackBar(message: string): void;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<UnbPessoaCrudModalComponent, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<UnbPessoaCrudModalComponent, "lib-unb-pessoa-crud-modal", never, { "pesquisaConfig": { "alias": "pesquisaConfig"; "required": true; }; "incluirBotaoNovo": { "alias": "incluirBotaoNovo"; "required": false; }; "incluirBotaoAlterar": { "alias": "incluirBotaoAlterar"; "required": false; }; }, { "pessoaEmitted": "pessoaEmitted"; }, never, never, false, never>;
37
+ static ngAcceptInputType_incluirBotaoNovo: unknown;
38
+ static ngAcceptInputType_incluirBotaoAlterar: unknown;
39
+ }
@@ -12,38 +12,33 @@ import { UnbPessoaTelefone } from '../unb-pessoa-models/unb-pessoa-telefone.mode
12
12
  import { UnbPessoaModel } from '../unb-pessoa-models/unb-pessoa.model';
13
13
  import { UnBPessoaService, UnbPessoaErroPadrao } from '../unb-pessoa.service';
14
14
  import { UnbTipoPessoaEnum } from '../unb-tipo-pessoa.enum';
15
+ import { UnbPessoaFormConfig } from '../unb-pessoa-models/unb-pessoa-config.model';
15
16
  import * as i0 from "@angular/core";
16
17
  export declare class UnbPessoaFormComponent implements OnInit {
17
18
  private service;
18
19
  private snackBar;
19
20
  private alertService;
20
- isLoading: boolean;
21
- buscaRealizada: boolean;
22
- endereco: UnbPessoaEndereco;
23
- email: UnbPessoaEmail;
24
- tiposPessoa: typeof UnbTipoPessoaEnum;
25
- pessoa: UnbPessoaModel;
26
- dadosSalvos: {
27
- [key: string]: any;
28
- };
29
- isReadonlyFromSiape: boolean;
30
21
  pessoaForm: NgForm;
31
- backendURL: string;
32
- pesquisarPorCPF: boolean;
33
- pesquisarPorCNPJ: boolean;
34
- pesquisarPorEstrangeiro: boolean;
35
- defaultTipoPessoa: UnbTipoPessoaEnum | 'FISICA' | 'JURIDICA' | 'ESTRANGEIRA';
36
- campoPesquisaMaxWidth: string;
22
+ config: UnbPessoaFormConfig;
23
+ hideSalvarButton: boolean;
37
24
  pessoaEmitted: EventEmitter<UnbPessoaModel>;
38
25
  isLoadingChange: EventEmitter<boolean>;
39
- constructor(service: UnBPessoaService, snackBar: MatSnackBar, alertService: UnbMensagemService);
40
26
  escolaridade: Observable<UnbPessoaEscolaridade[]>;
41
27
  paises: Observable<UnbPessoaPais[]>;
42
28
  estadosCivil: Observable<UnbPessoaEstadoCivil[]>;
29
+ isLoading: boolean;
30
+ endereco: UnbPessoaEndereco;
31
+ email: UnbPessoaEmail;
32
+ isReadyOnly: boolean;
33
+ dadosSalvos: {
34
+ [key: string]: any;
35
+ };
43
36
  idMensagemService: string;
44
37
  documentoPesquisado: string;
45
38
  incluindoNovaPessoa: boolean;
46
39
  editandoPessoa: boolean;
40
+ pessoa: UnbPessoaModel;
41
+ constructor(service: UnBPessoaService, snackBar: MatSnackBar, alertService: UnbMensagemService);
47
42
  ngOnInit(): void;
48
43
  pessoaRecebida(pessoaRecebida: UnbPessoaModel): void;
49
44
  salvar(form: NgForm): void;
@@ -58,20 +53,9 @@ export declare class UnbPessoaFormComponent implements OnInit {
58
53
  identificador: string;
59
54
  descricao: string;
60
55
  }[];
61
- /**
62
- * Converte uma instância (ou objeto) de UnbPessoaModel para o payload esperado pelo backend.
63
- */
64
- private convertPessoaToPayload;
65
- /**
66
- * Formata a data no padrão DD/MM/YYYY para o backend.
67
- */
68
- private formatarDataParaBackend;
69
56
  handleErrorPrintConsole(erro: any): void;
70
57
  handleError(erro: UnbPessoaErroPadrao): void;
71
58
  getLabelDocumento(): string;
72
59
  static ɵfac: i0.ɵɵFactoryDeclaration<UnbPessoaFormComponent, never>;
73
- static ɵcmp: i0.ɵɵComponentDeclaration<UnbPessoaFormComponent, "lib-unb-pessoa-form", never, { "backendURL": { "alias": "backendURL"; "required": true; }; "pesquisarPorCPF": { "alias": "pesquisarPorCPF"; "required": false; }; "pesquisarPorCNPJ": { "alias": "pesquisarPorCNPJ"; "required": false; }; "pesquisarPorEstrangeiro": { "alias": "pesquisarPorEstrangeiro"; "required": false; }; "defaultTipoPessoa": { "alias": "defaultTipoPessoa"; "required": false; }; "campoPesquisaMaxWidth": { "alias": "campoPesquisaMaxWidth"; "required": false; }; }, { "pessoaEmitted": "pessoaEmitted"; "isLoadingChange": "isLoadingChange"; }, never, never, false, never>;
74
- static ngAcceptInputType_pesquisarPorCPF: unknown;
75
- static ngAcceptInputType_pesquisarPorCNPJ: unknown;
76
- static ngAcceptInputType_pesquisarPorEstrangeiro: unknown;
60
+ static ɵcmp: i0.ɵɵComponentDeclaration<UnbPessoaFormComponent, "lib-unb-pessoa-form", never, { "config": { "alias": "config"; "required": false; }; "hideSalvarButton": { "alias": "hideSalvarButton"; "required": false; }; }, { "pessoaEmitted": "pessoaEmitted"; "isLoadingChange": "isLoadingChange"; }, never, never, false, never>;
77
61
  }
@@ -0,0 +1,21 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { UnbPessoaModel } from '../unb-pessoa-models/unb-pessoa.model';
3
+ import { UnbPessoaFormConfig } from '../unb-pessoa-models/unb-pessoa-config.model';
4
+ import { MatDialogRef } from '@angular/material/dialog';
5
+ import { UnbPessoaFormComponent } from '../unb-pessoa-form/unb-pessoa-form.component';
6
+ import * as i0 from "@angular/core";
7
+ export declare class UnbPessoaFormDialogComponent {
8
+ private dialogRef;
9
+ config: UnbPessoaFormConfig;
10
+ pessoaEmitted: EventEmitter<UnbPessoaModel>;
11
+ pessoaFormComponent: UnbPessoaFormComponent;
12
+ isLoading: boolean;
13
+ titulo: string;
14
+ constructor(dialogRef: MatDialogRef<UnbPessoaFormComponent>, data: any);
15
+ onLoadingChange($event: boolean): void;
16
+ fechar(): void;
17
+ onSalvarSucesso($event: UnbPessoaModel): void;
18
+ submitForm(): void;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<UnbPessoaFormDialogComponent, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<UnbPessoaFormDialogComponent, "lib-unb-pessoa-form-dialog", never, { "config": { "alias": "config"; "required": false; }; }, { "pessoaEmitted": "pessoaEmitted"; }, never, never, false, never>;
21
+ }
@@ -0,0 +1,26 @@
1
+ import { UnbTipoPessoaEnum } from "../unb-tipo-pessoa.enum";
2
+ import { UnbPessoaModel } from "./unb-pessoa.model";
3
+ /**
4
+ * Essa eh uma classe base, com propriedades comum ao componente de pesquisa de pesssoa. Porque tem vários campos que são usados para configurar o comportamento do componente.
5
+ * */
6
+ export declare class UnbPessoaPesquisaConfig {
7
+ backendURL: string;
8
+ token: string;
9
+ defaultTipoPessoa: UnbTipoPessoaEnum | 'FISICA' | 'JURIDICA' | 'ESTRANGEIRA';
10
+ pesquisarPorCPF: boolean;
11
+ pesquisarPorCNPJ: boolean;
12
+ pesquisarPorEstrangeiro: boolean;
13
+ mostrarPesquisa: boolean;
14
+ limparAposPesquisa: boolean;
15
+ label: string;
16
+ placeholder: string;
17
+ hint: string;
18
+ constructor(init?: Partial<UnbPessoaPesquisaConfig>);
19
+ }
20
+ export declare class UnbPessoaFormConfig {
21
+ backendURL: string;
22
+ token: string;
23
+ isReadyOnly: boolean;
24
+ pessoa: UnbPessoaModel;
25
+ constructor(init?: Partial<UnbPessoaFormConfig>);
26
+ }
@@ -7,24 +7,15 @@ import { UnbPessoaTelefoneTipo } from '../unb-pessoa-models/unb-pessoa-telefone.
7
7
  import { UnbPessoaModel } from '../unb-pessoa-models/unb-pessoa.model';
8
8
  import { UnbPessoaErroPadrao, UnBPessoaService } from '../unb-pessoa.service';
9
9
  import { UnbTipoPessoaEnum } from '../unb-tipo-pessoa.enum';
10
+ import { UnbPessoaPesquisaConfig } from '../unb-pessoa-models/unb-pessoa-config.model';
10
11
  import * as i0 from "@angular/core";
11
12
  export declare class UnbPessoaPesquisarComponent implements OnInit {
12
13
  private pessoaService;
13
14
  private snackBar;
14
15
  private alertService;
15
16
  isLoading: boolean;
16
- backendURL: string;
17
- pesquisarPorCPF: boolean;
18
- pesquisarPorCNPJ: boolean;
19
- pesquisarPorEstrangeiro: boolean;
20
- defaultTipoPessoa: UnbTipoPessoaEnum | 'FISICA' | 'JURIDICA' | 'ESTRANGEIRA';
21
- campoPesquisaMaxWidth: string;
22
- mostrarPesquisa: boolean;
23
- limparAposPesquisa: boolean;
24
- label: string;
25
- placeholder: string;
26
- hint: string;
27
17
  pessoa: UnbPessoaModel;
18
+ config: UnbPessoaPesquisaConfig;
28
19
  pessoaEmitted: EventEmitter<UnbPessoaModel>;
29
20
  isLoadingChange: EventEmitter<boolean>;
30
21
  constructor(pessoaService: UnBPessoaService, snackBar: MatSnackBar, alertService: UnbMensagemService);
@@ -43,12 +34,6 @@ export declare class UnbPessoaPesquisarComponent implements OnInit {
43
34
  pesquisar(): void;
44
35
  validar(): boolean;
45
36
  hadleResult(resultado: UnbPessoaModel): void;
46
- private parseCodigo;
47
- /**
48
- * Converte uma string no formato 'dd/MM/yyyy' para um objeto Date.
49
- * Retorna null se o formato for inválido.
50
- */
51
- private parseData;
52
37
  handleError(erro: UnbPessoaErroPadrao | string): void;
53
38
  handleErrorPrintConsole(erro: any): void;
54
39
  openSnackBar(message: string): void;
@@ -62,10 +47,5 @@ export declare class UnbPessoaPesquisarComponent implements OnInit {
62
47
  */
63
48
  formatarCnpj(event: any): void;
64
49
  static ɵfac: i0.ɵɵFactoryDeclaration<UnbPessoaPesquisarComponent, never>;
65
- static ɵcmp: i0.ɵɵComponentDeclaration<UnbPessoaPesquisarComponent, "lib-unb-pessoa-pesquisar", never, { "backendURL": { "alias": "backendURL"; "required": true; }; "pesquisarPorCPF": { "alias": "pesquisarPorCPF"; "required": false; }; "pesquisarPorCNPJ": { "alias": "pesquisarPorCNPJ"; "required": false; }; "pesquisarPorEstrangeiro": { "alias": "pesquisarPorEstrangeiro"; "required": false; }; "defaultTipoPessoa": { "alias": "defaultTipoPessoa"; "required": false; }; "campoPesquisaMaxWidth": { "alias": "campoPesquisaMaxWidth"; "required": false; }; "mostrarPesquisa": { "alias": "mostrarPesquisa"; "required": false; }; "limparAposPesquisa": { "alias": "limparAposPesquisa"; "required": false; }; "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "pessoa": { "alias": "pessoa"; "required": false; }; }, { "pessoaEmitted": "pessoaEmitted"; "isLoadingChange": "isLoadingChange"; }, never, never, false, never>;
66
- static ngAcceptInputType_pesquisarPorCPF: unknown;
67
- static ngAcceptInputType_pesquisarPorCNPJ: unknown;
68
- static ngAcceptInputType_pesquisarPorEstrangeiro: unknown;
69
- static ngAcceptInputType_mostrarPesquisa: unknown;
70
- static ngAcceptInputType_limparAposPesquisa: unknown;
50
+ static ɵcmp: i0.ɵɵComponentDeclaration<UnbPessoaPesquisarComponent, "lib-unb-pessoa-pesquisar", never, { "config": { "alias": "config"; "required": true; }; }, { "pessoaEmitted": "pessoaEmitted"; "isLoadingChange": "isLoadingChange"; }, never, never, false, never>;
71
51
  }
@@ -1,37 +1,56 @@
1
+ import { NativeDateAdapter } from '@angular/material/core';
1
2
  import * as i0 from "@angular/core";
2
- import * as i1 from "./unb-pessoa-form/unb-pessoa-form.component";
3
- import * as i2 from "./unb-pessoa-pesquisar/unb-pessoa-pesquisar.component";
4
- import * as i3 from "./unb-pessoa-endereco-form/unb-pessoa-endereco-form";
5
- import * as i4 from "./unb-pessoa-telefone-form/unb-pessoa-telefone-list";
6
- import * as i5 from "./unb-pessoa-endereco-form/unb-pessoa-endereco-list";
7
- import * as i6 from "./unb-pessoa-telefone-form/unb-pessoa-telefone-form";
8
- import * as i7 from "./unb-pessoa-email-form/unb-pessoa-email-form";
9
- import * as i8 from "./unb-pessoa-email-form/unb-pessoa-email-list";
10
- import * as i9 from "@angular/common";
11
- import * as i10 from "@angular/forms";
12
- import * as i11 from "@angular/platform-browser";
13
- import * as i12 from "@angular/material/icon";
14
- import * as i13 from "@angular/cdk/drag-drop";
15
- import * as i14 from "@angular/material/list";
16
- import * as i15 from "@angular/material/button";
17
- import * as i16 from "../unb-usuario/unb-usuario.module";
18
- import * as i17 from "../unb-mensagem/unb-mensagem.module";
19
- import * as i18 from "@angular/material/card";
20
- import * as i19 from "@angular/material/form-field";
21
- import * as i20 from "@angular/material/input";
22
- import * as i21 from "@angular/material/dialog";
23
- import * as i22 from "@angular/material/select";
24
- import * as i23 from "@angular/material/progress-spinner";
25
- import * as i24 from "@angular/material/progress-bar";
26
- import * as i25 from "@angular/material/core";
27
- import * as i26 from "@angular/material/paginator";
28
- import * as i27 from "@angular/material/expansion";
29
- import * as i28 from "@angular/material/snack-bar";
30
- import * as i29 from "@angular/material/datepicker";
31
- import * as i30 from "@angular/material/radio";
32
- import * as i31 from "@angular/material/divider";
3
+ import * as i1 from "./unb-pessoa-form-dialog/unb-pessoa-form-dialog.component";
4
+ import * as i2 from "./unb-pessoa-crud/unb-pessoa-crud.component";
5
+ import * as i3 from "./unb-pessoa-crud-modal/unb-pessoa-crud-modal.component";
6
+ import * as i4 from "./unb-pessoa-form/unb-pessoa-form.component";
7
+ import * as i5 from "./unb-pessoa-pesquisar/unb-pessoa-pesquisar.component";
8
+ import * as i6 from "./unb-pessoa-endereco-form/unb-pessoa-endereco-form";
9
+ import * as i7 from "./unb-pessoa-telefone-form/unb-pessoa-telefone-list";
10
+ import * as i8 from "./unb-pessoa-endereco-form/unb-pessoa-endereco-list";
11
+ import * as i9 from "./unb-pessoa-telefone-form/unb-pessoa-telefone-form";
12
+ import * as i10 from "./unb-pessoa-email-form/unb-pessoa-email-form";
13
+ import * as i11 from "./unb-pessoa-email-form/unb-pessoa-email-list";
14
+ import * as i12 from "@angular/common";
15
+ import * as i13 from "@angular/forms";
16
+ import * as i14 from "@angular/platform-browser";
17
+ import * as i15 from "@angular/material/icon";
18
+ import * as i16 from "@angular/cdk/drag-drop";
19
+ import * as i17 from "@angular/material/list";
20
+ import * as i18 from "@angular/material/button";
21
+ import * as i19 from "../unb-usuario/unb-usuario.module";
22
+ import * as i20 from "../unb-mensagem/unb-mensagem.module";
23
+ import * as i21 from "@angular/material/card";
24
+ import * as i22 from "@angular/material/form-field";
25
+ import * as i23 from "@angular/material/input";
26
+ import * as i24 from "@angular/material/dialog";
27
+ import * as i25 from "@angular/material/select";
28
+ import * as i26 from "@angular/material/progress-spinner";
29
+ import * as i27 from "@angular/material/progress-bar";
30
+ import * as i28 from "@angular/material/core";
31
+ import * as i29 from "@angular/material/paginator";
32
+ import * as i30 from "@angular/material/expansion";
33
+ import * as i31 from "@angular/material/snack-bar";
34
+ import * as i32 from "@angular/material/datepicker";
35
+ import * as i33 from "@angular/material/radio";
36
+ import * as i34 from "@angular/material/divider";
37
+ export declare class PtBrDateAdapter extends NativeDateAdapter {
38
+ parse(value: any): Date | null;
39
+ format(date: Date): string;
40
+ }
41
+ export declare const PT_BR_DATE_FORMATS: {
42
+ parse: {
43
+ dateInput: string;
44
+ };
45
+ display: {
46
+ dateInput: string;
47
+ monthYearLabel: string;
48
+ dateA11yLabel: string;
49
+ monthYearA11yLabel: string;
50
+ };
51
+ };
33
52
  export declare class UnbPessoaModule {
34
53
  static ɵfac: i0.ɵɵFactoryDeclaration<UnbPessoaModule, never>;
35
- static ɵmod: i0.ɵɵNgModuleDeclaration<UnbPessoaModule, [typeof i1.UnbPessoaFormComponent, typeof i2.UnbPessoaPesquisarComponent, typeof i3.UnbPessoaEnderecoFormComponent, typeof i4.UnbPessoaTelefoneListComponent, typeof i5.UnbPessoaenderecoListComponent, typeof i6.UnbPessoaTelefoneFormComponent, typeof i7.UnbPessoaEmailFormComponent, typeof i8.UnbPessoaEmailListComponent], [typeof i9.CommonModule, typeof i10.FormsModule, typeof i11.BrowserModule, typeof i12.MatIconModule, typeof i13.DragDropModule, typeof i14.MatListModule, typeof i15.MatButtonModule, typeof i16.UnbUsuarioModule, typeof i17.UnbMensagemModule, typeof i18.MatCardModule, typeof i19.MatFormFieldModule, typeof i12.MatIconModule, typeof i20.MatInputModule, typeof i21.MatDialogModule, typeof i22.MatSelectModule, typeof i23.MatProgressSpinnerModule, typeof i15.MatButtonModule, typeof i24.MatProgressBarModule, typeof i25.MatNativeDateModule, typeof i14.MatListModule, typeof i26.MatPaginatorModule, typeof i27.MatExpansionModule, typeof i28.MatSnackBarModule, typeof i29.MatDatepickerModule, typeof i30.MatRadioModule, typeof i18.MatCardModule, typeof i31.MatDividerModule], [typeof i1.UnbPessoaFormComponent, typeof i2.UnbPessoaPesquisarComponent, typeof i3.UnbPessoaEnderecoFormComponent, typeof i4.UnbPessoaTelefoneListComponent, typeof i5.UnbPessoaenderecoListComponent, typeof i6.UnbPessoaTelefoneFormComponent, typeof i7.UnbPessoaEmailFormComponent]>;
54
+ static ɵmod: i0.ɵɵNgModuleDeclaration<UnbPessoaModule, [typeof i1.UnbPessoaFormDialogComponent, typeof i2.UnbPessoaCrudComponent, typeof i3.UnbPessoaCrudModalComponent, typeof i4.UnbPessoaFormComponent, typeof i5.UnbPessoaPesquisarComponent, typeof i6.UnbPessoaEnderecoFormComponent, typeof i7.UnbPessoaTelefoneListComponent, typeof i8.UnbPessoaenderecoListComponent, typeof i9.UnbPessoaTelefoneFormComponent, typeof i10.UnbPessoaEmailFormComponent, typeof i11.UnbPessoaEmailListComponent], [typeof i12.CommonModule, typeof i13.FormsModule, typeof i14.BrowserModule, typeof i15.MatIconModule, typeof i16.DragDropModule, typeof i17.MatListModule, typeof i18.MatButtonModule, typeof i19.UnbUsuarioModule, typeof i20.UnbMensagemModule, typeof i21.MatCardModule, typeof i22.MatFormFieldModule, typeof i15.MatIconModule, typeof i23.MatInputModule, typeof i24.MatDialogModule, typeof i25.MatSelectModule, typeof i26.MatProgressSpinnerModule, typeof i18.MatButtonModule, typeof i27.MatProgressBarModule, typeof i28.MatNativeDateModule, typeof i17.MatListModule, typeof i24.MatDialogModule, typeof i29.MatPaginatorModule, typeof i30.MatExpansionModule, typeof i31.MatSnackBarModule, typeof i32.MatDatepickerModule, typeof i33.MatRadioModule, typeof i21.MatCardModule, typeof i34.MatDividerModule], [typeof i1.UnbPessoaFormDialogComponent, typeof i2.UnbPessoaCrudComponent, typeof i3.UnbPessoaCrudModalComponent, typeof i4.UnbPessoaFormComponent, typeof i5.UnbPessoaPesquisarComponent, typeof i6.UnbPessoaEnderecoFormComponent, typeof i7.UnbPessoaTelefoneListComponent, typeof i8.UnbPessoaenderecoListComponent, typeof i9.UnbPessoaTelefoneFormComponent, typeof i10.UnbPessoaEmailFormComponent]>;
36
55
  static ɵinj: i0.ɵɵInjectorDeclaration<UnbPessoaModule>;
37
56
  }
@@ -17,8 +17,13 @@ export declare class UnBPessoaService {
17
17
  private http;
18
18
  private backendUrlSubject;
19
19
  backendUrl$: Observable<string>;
20
+ private token;
21
+ private tipoEnderecoCache;
22
+ private tipoTelefoneCache;
23
+ private tipoEmailCache;
20
24
  constructor(http: HttpClient);
21
25
  setBackendUrl(url: string): void;
26
+ setToken(token: string): void;
22
27
  getBackendUrl(): string;
23
28
  private getHeaders;
24
29
  findByCpf(cpf: string | undefined): Observable<UnbPessoaModel>;
@@ -30,6 +35,7 @@ export declare class UnBPessoaService {
30
35
  findPessoaJuridica(filtro: UnbPessoaModel, page?: number, size?: number, sort?: string): Observable<UnbPessoaModel[]>;
31
36
  pesquisarCep(cep: string): Observable<UnbPessoaEndereco>;
32
37
  salvar(payload: any, tipoPessoa: UnbTipoPessoaEnum): Observable<UnbPessoaModel | null>;
38
+ salvarPessoa(pessoa: UnbPessoaModel): Observable<UnbPessoaModel | null>;
33
39
  private savePessoaFisica;
34
40
  private savePessoaJuridica;
35
41
  getEscolaridade(): Observable<UnbPessoaEscolaridade[]>;
@@ -40,19 +46,33 @@ export declare class UnBPessoaService {
40
46
  codigo: number;
41
47
  denominacao: string;
42
48
  }[]>;
43
- getTipoEmail(): Observable<{
49
+ getTipoEndereco(): Observable<{
44
50
  codigo: number;
45
51
  denominacao: string;
46
52
  }[]>;
47
- getTipoEndereco(): Observable<{
53
+ getTipoTelefone(): Observable<{
48
54
  codigo: number;
49
55
  denominacao: string;
50
56
  }[]>;
51
- getTipoTelefone(): Observable<{
57
+ getTipoEmail(): Observable<{
52
58
  codigo: number;
53
59
  denominacao: string;
54
60
  }[]>;
55
61
  private formatarLabel;
62
+ /**
63
+ * Normaliza o payload retornado pelo backend para `UnbPessoaModel` pronto para UI.
64
+ */
65
+ private normalizePessoa;
66
+ private parseCodigo;
67
+ private parseData;
68
+ /**
69
+ * Converte uma instância (ou objeto) de UnbPessoaModel para o payload esperado pelo backend.
70
+ */
71
+ private convertPessoaToPayload;
72
+ /**
73
+ * Formata a data no padrão DD/MM/YYYY para o backend.
74
+ */
75
+ private formatarDataParaBackend;
56
76
  private handleError;
57
77
  static ɵfac: i0.ɵɵFactoryDeclaration<UnBPessoaService, never>;
58
78
  static ɵprov: i0.ɵɵInjectableDeclaration<UnBPessoaService>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stiunb/unb-lib-components",
3
- "version": "18.0.28",
3
+ "version": "18.0.29",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^18.1.2",
6
6
  "@angular/core": "^18.1.2",
package/public-api.d.ts CHANGED
@@ -18,11 +18,15 @@ export * from './lib/unb-pessoa/unb-pessoa-models/unb-pessoa-municipio';
18
18
  export * from './lib/unb-pessoa/unb-pessoa-models/unb-pessoa-pais';
19
19
  export * from './lib/unb-pessoa/unb-pessoa-models/unb-pessoa-raca-cor';
20
20
  export * from './lib/unb-pessoa/unb-pessoa-models/unb-pessoa-telefone.model';
21
+ export * from './lib/unb-pessoa/unb-pessoa-models/unb-pessoa-config.model';
21
22
  export * from './lib/unb-pessoa/unb-pessoa-form/unb-pessoa-form.component';
22
- export * from './lib/unb-pessoa/unb-pessoa-pesquisar/unb-pessoa-pesquisar.component';
23
+ export * from './lib/unb-pessoa/unb-pessoa-crud/unb-pessoa-crud.component';
24
+ export * from './lib/unb-pessoa/unb-pessoa-crud-modal/unb-pessoa-crud-modal.component';
23
25
  export * from './lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-form';
24
26
  export * from './lib/unb-pessoa/unb-pessoa-email-form/unb-pessoa-email-list';
25
27
  export * from './lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-form';
26
28
  export * from './lib/unb-pessoa/unb-pessoa-endereco-form/unb-pessoa-endereco-list';
27
29
  export * from './lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-form';
28
30
  export * from './lib/unb-pessoa/unb-pessoa-telefone-form/unb-pessoa-telefone-list';
31
+ export * from './lib/unb-pessoa/unb-pessoa-form-dialog/unb-pessoa-form-dialog.component';
32
+ export * from './lib/unb-pessoa/unb-pessoa-pesquisar/unb-pessoa-pesquisar.component';