@credithub/harlan-components 1.92.1 → 1.94.0

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.
@@ -5,17 +5,16 @@ export type { Contact, ContactsState } from '@/@types/domain/contactsTypes';
5
5
  export type { Divida, DividasPublicasState } from '@/@types/domain/dividasTypes';
6
6
  export type { DocumentHistoryData } from '@/@types/domain/documentHistoryData';
7
7
  export type { CarouselState, DossieState, SummaryState, TransactionTableState } from '@/@types/domain/dossieTypes';
8
- export type { IPTUItem, ImoveisConsultaResponse } from '@/@types/domain/imoveisTypes';
8
+ export type { ImoveisConsultaResponse, IPTUItem } from '@/@types/domain/imoveisTypes';
9
9
  export type { LiminarResponse } from '@/@types/domain/liminarTypes';
10
10
  export type { Partner, PartnersState } from '@/@types/domain/partnersTypes';
11
11
  export type { PepData, PepState } from '@/@types/domain/pepTypes';
12
12
  export type { EnvolvidoUltimaMovimentacao, ProcessoJuridicoResume, ProcessosJuridicosState } from '@/@types/domain/processosJuridicosTypes';
13
+ export type { ProtestoHistoricoItem, ProtestoHistoricoResponse, ProtestosPagosBaixadosState } from '@/@types/domain/protestosPagosBaixadosTypes';
13
14
  export type { ProtestoData, ProtestosState } from '@/@types/domain/protestosTypes';
14
15
  export type { ReclameAquiResponse, ReclameAquiState } from '@/@types/domain/reclameAquiTypes';
15
16
  export type { RefinBoaVistaResponse, RefinBoaVistaState, Spc } from '@/@types/domain/refinBoaVistaTypes';
16
17
  export type { PefinRefinSerasaResponse, RefinSerasaState } from '@/@types/domain/refinSerasaTypes';
17
- export type { ScoreResponse, ScoreState } from '@/@types/domain/scoreTypes';
18
- export type { RegistroVeiculo, VeiculosState } from '@/@types/domain/veiculosTypes';
18
+ export type { ScoreResponse, ScoreSerasaState, ScoreState } from '@/@types/domain/scoreTypes';
19
19
  export type { SCRState } from '@/@types/domain/scrTypes';
20
- export type { ScoreSerasaState } from '@/@types/domain/scoreTypes';
21
- export type { ProtestosPagosBaixadosState } from '@/@types/domain/protestosPagosBaixadosTypes';
20
+ export type { RegistroVeiculo, VeiculosState } from '@/@types/domain/veiculosTypes';
@@ -95,13 +95,12 @@ function deepCleanData(data) {
95
95
  // Main normaliser --------------------------------------------------------------
96
96
  // -----------------------------------------------------------------------------
97
97
  export var selectRelevantData = function (data) {
98
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
99
- var _l = data || {}, protestosNumero = _l.protestos, ccfNumero = _l.ccf, dividasPublicas = _l.dividasPublicas, contasBancarias = _l.bankAccounts, ccfData = _l.ccfData, dividas = _l.divida, _m = _l.dossie, dossie = _m === void 0 ? {} : _m, liminar = _l.liminar, socios = _l.partners, dadosPessoasExpostasPoliticamente = _l.pepData, detalhesProcessosJuridicos = _l.processosJuridicosData, dadosReclameAqui = _l.reclameAqui, refinBoaVista = _l.refinBoaVista, refinSerasa = _l.refinSerasa, dadosScore = _l.scoreData, _o = _l.scr, scr = _o === void 0 ? { isLoaded: false } : _o, _p = _l.veiculos, veiculos = _p === void 0 ? [] : _p, ResumoDosDados = _l.documentHistory, insolvencia = _l.insolvencia // novo
100
- ;
98
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
99
+ var _m = data || {}, protestosNumero = _m.protestos, ccfNumero = _m.ccf, dividasPublicas = _m.dividasPublicas, contasBancarias = _m.bankAccounts, ccfData = _m.ccfData, dividas = _m.divida, _o = _m.dossie, dossie = _o === void 0 ? {} : _o, liminar = _m.liminar, socios = _m.partners, dadosPessoasExpostasPoliticamente = _m.pepData, detalhesProcessosJuridicos = _m.processosJuridicosData, dadosReclameAqui = _m.reclameAqui, refinBoaVista = _m.refinBoaVista, refinSerasa = _m.refinSerasa, dadosScore = _m.scoreData, _p = _m.scr, scr = _p === void 0 ? { isLoaded: false } : _p, _q = _m.veiculos, veiculos = _q === void 0 ? [] : _q, ResumoDosDados = _m.documentHistory, insolvencia = _m.insolvencia, consulta = _m.protestosPagosBaixados;
101
100
  // ────────────────────────────────────────────────
102
101
  // 1. Protestos – somente a entrada mais recente
103
102
  // ────────────────────────────────────────────────
104
- var _q = ResumoDosDados !== null && ResumoDosDados !== void 0 ? ResumoDosDados : {}, _omit = _q.protestoLiminar, ResumoSafe = __rest(_q, ["protestoLiminar"]);
103
+ var _r = ResumoDosDados !== null && ResumoDosDados !== void 0 ? ResumoDosDados : {}, _omit = _r.protestoLiminar, ResumoSafe = __rest(_r, ["protestoLiminar"]);
105
104
  var protestosData = [];
106
105
  if (Array.isArray(ResumoSafe === null || ResumoSafe === void 0 ? void 0 : ResumoSafe.protestoHistory) &&
107
106
  ResumoSafe.protestoHistory.length) {
@@ -169,12 +168,31 @@ export var selectRelevantData = function (data) {
169
168
  ? 'Registro de falência encontrado'
170
169
  : undefined;
171
170
  // ────────────────────────────────────────────────
171
+ // 5. Protestos pagos e baixados
172
+ // ────────────────────────────────────────────────
173
+ var protestosPagosBaixadosResumo = ((_j = consulta === null || consulta === void 0 ? void 0 : consulta.protestos) === null || _j === void 0 ? void 0 : _j.length)
174
+ ? (function () {
175
+ var _a, _b;
176
+ var qtd = consulta.protestos.length;
177
+ var total = consulta.protestos.reduce(function (s, p) {
178
+ return s + (Number(p.valor) || Number(p.valorProtestado) || 0);
179
+ }, 0);
180
+ var datas = consulta.protestos
181
+ .map(function (p) { return new Date(p.dataProtesto || p.data); })
182
+ .filter(function (d) { return !isNaN(d.getTime()); })
183
+ .sort(function (a, b) { return a.getTime() - b.getTime(); });
184
+ var inicio = (_a = datas[0]) === null || _a === void 0 ? void 0 : _a.toISOString().slice(0, 10);
185
+ var fim = (_b = datas[datas.length - 1]) === null || _b === void 0 ? void 0 : _b.toISOString().slice(0, 10);
186
+ return "Foram encontrados ".concat(qtd, " protestos pagos/baixados, total aproximado R$ ").concat(total.toFixed(2), ", entre ").concat(inicio, " e ").concat(fim);
187
+ })()
188
+ : undefined;
189
+ // ────────────────────────────────────────────────
172
190
  // 6. Construção final
173
191
  // ────────────────────────────────────────────────
174
192
  var dadosOrganizados = {
175
193
  protestosData: protestosData,
176
- quantidadeProtestos: (_j = ResumoSafe === null || ResumoSafe === void 0 ? void 0 : ResumoSafe.quantidadeProtestos) !== null && _j !== void 0 ? _j : protestosData.length,
177
- ccf: (_k = ccfNumero !== null && ccfNumero !== void 0 ? ccfNumero : ResumoSafe === null || ResumoSafe === void 0 ? void 0 : ResumoSafe.quantidadeChequesSemFundos) !== null && _k !== void 0 ? _k : 0,
194
+ quantidadeProtestos: (_k = ResumoSafe === null || ResumoSafe === void 0 ? void 0 : ResumoSafe.quantidadeProtestos) !== null && _k !== void 0 ? _k : protestosData.length,
195
+ ccf: (_l = ccfNumero !== null && ccfNumero !== void 0 ? ccfNumero : ResumoSafe === null || ResumoSafe === void 0 ? void 0 : ResumoSafe.quantidadeChequesSemFundos) !== null && _l !== void 0 ? _l : 0,
178
196
  ccfData: ccfData !== null && ccfData !== void 0 ? ccfData : {},
179
197
  dividasPublicas: dividasPublicas,
180
198
  liminar: liminarInfo,
@@ -192,7 +210,8 @@ export var selectRelevantData = function (data) {
192
210
  dadosScore: dadosScore,
193
211
  ResumoDosDados: ResumoSafe,
194
212
  tipoPessoa: tipoPessoa,
195
- insolvencia: insolvenciaInfo
213
+ insolvencia: insolvenciaInfo,
214
+ protestosPagosBaixados: protestosPagosBaixadosResumo
196
215
  };
197
216
  var dadosFiltrados = deepCleanData(dadosOrganizados);
198
217
  return { dadosFiltrados: dadosFiltrados };
@@ -2,24 +2,6 @@ interface LiminarProtestosDoPassadoProps {
2
2
  /** CNPJ/CPF analisado para detectar instrumentos de protesto que sumiram do CENPROT */
3
3
  documento: string;
4
4
  }
5
- export interface ProtestoHistoricoItem {
6
- cpfCnpj: string;
7
- data: string;
8
- dataProtesto: string;
9
- valor: number;
10
- valorProtestado: number;
11
- temAnuencia: boolean;
12
- nomeApresentante: string | null;
13
- nomeCedente: string | null;
14
- chave: string;
15
- creation: string;
16
- custas: number;
17
- missingAt: string;
18
- protestoProvavelmenteExpirado: boolean;
19
- }
20
- export interface ProtestoHistoricoResponse {
21
- [key: string]: ProtestoHistoricoItem[];
22
- }
23
5
  /**
24
6
  * Hook que identifica indícios de liminar de sustação de protesto.
25
7
  *
@@ -45,11 +45,11 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
45
45
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
46
  }
47
47
  };
48
+ import { useGlobalData } from '../../contexts/globalDataContext';
49
+ import PostHogContext from '../../contexts/PostHogContext';
48
50
  import { Client } from '@credithub/webservice';
49
51
  import { useCallback, useContext } from 'react';
50
52
  import { WebService } from '../webservice';
51
- import { useGlobalData } from '../../contexts/globalDataContext';
52
- import PostHogContext from '../../contexts/PostHogContext';
53
53
  /**
54
54
  * Hook que identifica indícios de liminar de sustação de protesto.
55
55
  *
@@ -101,7 +101,7 @@ var useLiminarProtestosDoPassado = function (_a) {
101
101
  });
102
102
  }); };
103
103
  var fetch = useCallback(function () { return __awaiter(void 0, void 0, void 0, function () {
104
- var data, parsedData, _a, _b, numerosChave, ocultos, running, idx, launch, _loop_1;
104
+ var data, parsedData, _a, _b, numerosChave, ocultos, running, idx, launch, _loop_1, protestosDoPassado;
105
105
  return __generator(this, function (_c) {
106
106
  switch (_c.label) {
107
107
  case 0: return [4 /*yield*/, client.request("SELECT FROM 'Protestos'.'History'", {
@@ -113,7 +113,9 @@ var useLiminarProtestosDoPassado = function (_a) {
113
113
  return [4 /*yield*/, Client.WebService.parse(data)];
114
114
  case 2:
115
115
  parsedData = _b.apply(_a, [(_c.sent())]).flat();
116
- numerosChave = parsedData.filter(function (item) { return item.missingAt; }).map(function (item) { return item.chave; });
116
+ numerosChave = parsedData
117
+ .filter(function (item) { return item.missingAt; })
118
+ .map(function (item) { return item.chave; });
117
119
  ocultos = [];
118
120
  running = [];
119
121
  idx = 0;
@@ -149,9 +151,12 @@ var useLiminarProtestosDoPassado = function (_a) {
149
151
  _c.label = 5;
150
152
  case 5: return [3 /*break*/, 3];
151
153
  case 6:
154
+ protestosDoPassado = parsedData
155
+ .filter(function (item) { return item.missingAt; })
156
+ .filter(function (item) { return !ocultos.includes(item.chave); });
152
157
  setData(function (prev) { return (__assign(__assign({}, prev), { protestosPagosBaixados: {
153
158
  isLoaded: true,
154
- protestos: parsedData.filter(function (item) { return item.missingAt; }).filter(function (item) { return !ocultos.includes(item.chave); })
159
+ protestos: protestosDoPassado
155
160
  } })); });
156
161
  if (ocultos.length > 0 && posthog) {
157
162
  posthog.capture('liminar_protestos_ocultos', {
@@ -0,0 +1,4 @@
1
+ import type { ProtestoHistoricoItem } from '@/@types/domain/protestosPagosBaixadosTypes';
2
+ import type { Consulta } from '../../components/chart/types/iChart';
3
+ export declare function adaptToUI(items: ProtestoHistoricoItem[]): ProtestoHistoricoItem[];
4
+ export declare function buildChartSeries(items: ProtestoHistoricoItem[]): Consulta[];
@@ -0,0 +1,86 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ // Pré-compila regexes fora do hot path
13
+ var ISO_RE = /^\d{4}-\d{2}-\d{2}/;
14
+ var BR_RE = /^(\d{2})\/(\d{2})\/(\d{4})/;
15
+ export function adaptToUI(items) {
16
+ // Se realmente não quiser adaptar nada, pode remover esta função e usar items direto.
17
+ // Aqui normalizo datas vazias para string vazia e default para campos opcionais.
18
+ return items.map(function (i) {
19
+ var _a, _b, _c, _d, _e;
20
+ return (__assign(__assign({}, i), { dataProtesto: (_b = (_a = i.dataProtesto) !== null && _a !== void 0 ? _a : i.data) !== null && _b !== void 0 ? _b : '', nomeCedente: (_c = i.nomeCedente) !== null && _c !== void 0 ? _c : '', nomeApresentante: (_d = i.nomeApresentante) !== null && _d !== void 0 ? _d : '', valor: Number.isFinite(i.valor)
21
+ ? i.valor
22
+ : safeNumber((_e = i.valor) !== null && _e !== void 0 ? _e : i.valorProtestado), custas: Number.isFinite(i.custas)
23
+ ? i.custas
24
+ : safeNumber(i.custas) }));
25
+ });
26
+ }
27
+ export function buildChartSeries(items) {
28
+ var bucket = items.reduce(function (acc, item) {
29
+ var _a;
30
+ var date = toYMD(item.dataProtesto);
31
+ if (!date)
32
+ return acc;
33
+ var valor = safeNumber((_a = item.valor) !== null && _a !== void 0 ? _a : item.valorProtestado);
34
+ var curr = acc.get(date);
35
+ if (curr) {
36
+ curr.quantidade += 1;
37
+ curr.valorTotal += valor;
38
+ }
39
+ else {
40
+ acc.set(date, { quantidade: 1, valorTotal: valor });
41
+ }
42
+ return acc;
43
+ }, new Map());
44
+ return Array.from(bucket.entries())
45
+ .map(function (_a) {
46
+ var data = _a[0], _b = _a[1], quantidade = _b.quantidade, valorTotal = _b.valorTotal;
47
+ return ({
48
+ data: data,
49
+ quantidade: quantidade,
50
+ valorTotal: valorTotal
51
+ });
52
+ })
53
+ .sort(function (a, b) { return a.data.localeCompare(b.data); });
54
+ }
55
+ /** Converte várias entradas de data para 'YYYY-MM-DD' em UTC sem viés de timezone local. */
56
+ function toYMD(input) {
57
+ if (!input)
58
+ return null;
59
+ if (ISO_RE.test(input)) {
60
+ // Evita variação de timezone ao reinterpretar; corta direto yyyy-mm-dd
61
+ return input.slice(0, 10);
62
+ }
63
+ var br = input.match(BR_RE);
64
+ if (br) {
65
+ var dd = br[1], mm = br[2], yyyy = br[3];
66
+ var ts_1 = Date.UTC(Number(yyyy), Number(mm) - 1, Number(dd));
67
+ return Number.isNaN(ts_1) ? null : new Date(ts_1).toISOString().slice(0, 10);
68
+ }
69
+ // Fallback: tenta Date.parse em UTC padronizando com 'Z' quando faltar
70
+ var ts = Date.parse(input.endsWith('Z') ? input : "".concat(input, "Z"));
71
+ return Number.isNaN(ts) ? null : new Date(ts).toISOString().slice(0, 10);
72
+ }
73
+ function safeNumber(value) {
74
+ if (typeof value === 'number' && Number.isFinite(value))
75
+ return value;
76
+ if (typeof value === 'string') {
77
+ // Remove moeda, espaços, separador de milhar e normaliza vírgula para ponto
78
+ var cleaned = value
79
+ .replace(/[^\d,.-]/g, '') // mantém dígitos, vírgula, ponto, sinal
80
+ .replace(/\.(?=\d{3}(?:\D|$))/g, '') // remove ponto de milhar
81
+ .replace(',', '.'); // vírgula decimal
82
+ var n = Number(cleaned);
83
+ return Number.isFinite(n) ? n : 0;
84
+ }
85
+ return 0;
86
+ }
@@ -1,3 +1,9 @@
1
1
  import React from 'react';
2
- declare const ProtestosPagosBaixados: React.FC;
2
+ interface ProtestosPagosBaixadosProps {
3
+ /**
4
+ * Se verdadeiro, exibe apenas para instituições financeiras
5
+ */
6
+ isFinancial?: boolean;
7
+ }
8
+ declare const ProtestosPagosBaixados: React.FC<ProtestosPagosBaixadosProps>;
3
9
  export default ProtestosPagosBaixados;
@@ -1,38 +1,85 @@
1
- import React from 'react';
2
- import Section from "../section";
3
- import { RequestStatus } from '../webservice';
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
4
12
  import ProtestosIcon from '../../assets/icones/protestos';
5
13
  import { useGlobalData } from '../../contexts/globalDataContext';
6
- import { ResultContent } from '../interface/result';
7
- import AddItemField from '../common/addItem';
8
- import { formatDocument } from '../../utils/string';
9
14
  import { formatMoney } from '../../utils/number';
15
+ import { formatDocument } from '../../utils/string';
16
+ import React, { useEffect, useMemo, useRef } from 'react';
17
+ import AddItemField from '../common/addItem';
18
+ import { ResultContent } from '../interface/result';
10
19
  import StatusMessage from '../interface/statusMessage';
11
- var ProtestosPagosBaixados = function () {
12
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
13
- var data = useGlobalData().data;
20
+ import Section from '../section';
21
+ import { RequestStatus } from '../webservice';
22
+ import { adaptToUI, buildChartSeries } from './adaptToChart';
23
+ var ProtestosPagosBaixados = function (_a) {
24
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
25
+ var _p = _a.isFinancial, isFinancial = _p === void 0 ? false : _p;
26
+ var _q = useGlobalData(), data = _q.data, setData = _q.setData;
27
+ if (!isFinancial)
28
+ return null;
29
+ var items = ((_b = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _b === void 0 ? void 0 : _b.protestos) || [];
30
+ var signature = useMemo(function () {
31
+ if (!items.length)
32
+ return '';
33
+ return items
34
+ .map(function (i) {
35
+ var _a, _b, _c, _d;
36
+ var dataKey = (_b = (_a = i.dataProtesto) !== null && _a !== void 0 ? _a : i.data) !== null && _b !== void 0 ? _b : '';
37
+ var v = String((_d = (_c = i.valor) !== null && _c !== void 0 ? _c : i.valorProtestado) !== null && _d !== void 0 ? _d : '');
38
+ return "".concat(i.chave, "|").concat(dataKey, "|").concat(v);
39
+ })
40
+ .join(';');
41
+ }, [items]);
42
+ var series = useMemo(function () { return (items.length ? buildChartSeries(items) : []); }, [items]);
43
+ var lastSignatureRef = useRef('');
44
+ useEffect(function () {
45
+ if (!items.length)
46
+ return;
47
+ if (signature === lastSignatureRef.current)
48
+ return;
49
+ setData(function (prev) {
50
+ var _a, _b, _c, _d;
51
+ return (__assign(__assign({}, prev), { protestosPagosBaixados: {
52
+ isLoaded: (_b = (_a = prev === null || prev === void 0 ? void 0 : prev.protestosPagosBaixados) === null || _a === void 0 ? void 0 : _a.isLoaded) !== null && _b !== void 0 ? _b : true,
53
+ protestos: ((_d = (_c = prev === null || prev === void 0 ? void 0 : prev.protestosPagosBaixados) === null || _c === void 0 ? void 0 : _c.protestos) === null || _d === void 0 ? void 0 : _d.length)
54
+ ? prev.protestosPagosBaixados.protestos
55
+ : items,
56
+ consulta: series
57
+ } }));
58
+ });
59
+ lastSignatureRef.current = signature;
60
+ }, [items, series, setData, signature]);
14
61
  return (React.createElement(Section, { ctx: {
15
- type: ((_a = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _a === void 0 ? void 0 : _a.isLoaded) ? RequestStatus.Success : RequestStatus.Loading,
62
+ type: ((_c = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _c === void 0 ? void 0 : _c.isLoaded)
63
+ ? RequestStatus.Success
64
+ : RequestStatus.Loading,
16
65
  error: null,
17
66
  response: undefined,
18
67
  refetch: function () { },
19
68
  document: '',
20
69
  Section: Section,
21
- progress: 90,
22
- }, title: "Protestos pagos e/ou baixados", subtitle: "Protestos pagos e/ou baixados", description: React.createElement(StatusMessage, { type: ((_c = (_b = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _b === void 0 ? void 0 : _b.protestos) === null || _c === void 0 ? void 0 : _c.length) ? 'error' : 'default' }, !((_e = (_d = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _d === void 0 ? void 0 : _d.protestos) === null || _e === void 0 ? void 0 : _e.length)
70
+ progress: 90
71
+ }, title: "Protestos pagos e/ou baixados", subtitle: "Protestos pagos e/ou baixados", description: React.createElement(StatusMessage, { type: ((_e = (_d = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _d === void 0 ? void 0 : _d.protestos) === null || _e === void 0 ? void 0 : _e.length)
72
+ ? 'error'
73
+ : 'default' }, !((_g = (_f = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _f === void 0 ? void 0 : _f.protestos) === null || _g === void 0 ? void 0 : _g.length)
23
74
  ? 'Não foram encontradas ocorrências'
24
- : ((_g = (_f = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _f === void 0 ? void 0 : _f.protestos) === null || _g === void 0 ? void 0 : _g.length) === 1
75
+ : ((_j = (_h = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _h === void 0 ? void 0 : _h.protestos) === null || _j === void 0 ? void 0 : _j.length) === 1
25
76
  ? 'Foi encontrado um protesto'
26
- : "Foram encontrados ".concat((_j = (_h = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _h === void 0 ? void 0 : _h.protestos) === null || _j === void 0 ? void 0 : _j.length, " protestos")), variant: ((_l = (_k = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _k === void 0 ? void 0 : _k.protestos) === null || _l === void 0 ? void 0 : _l.length) ? 'error' : 'default', icon: ProtestosIcon, onSuccess: function () {
27
- var _a, _b;
28
- return (React.createElement("div", null, (_b = (_a = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _a === void 0 ? void 0 : _a.protestos) === null || _b === void 0 ? void 0 : _b.map(function (protesto) { return (React.createElement(ResultContent, { key: protesto.chave, print: "repeat(7, 1fr)", desktop: "repeat(8, 1fr)", tablet: "repeat(4, 1fr)", mobile: "repeat(2, 1fr)" },
29
- React.createElement(AddItemField, { name: "Quem Protestou", value: protesto.nomeCedente }),
30
- React.createElement(AddItemField, { name: "Atrav\u00E9s De", value: protesto.nomeApresentante }),
31
- React.createElement(AddItemField, { name: "CPF/CNPJ Protestado", value: formatDocument(protesto.cpfCnpj) }),
32
- React.createElement(AddItemField, { name: "Data Do Protesto", value: protesto.dataProtesto }),
33
- React.createElement(AddItemField, { name: "Possui Anu\u00EAncia / Protesto Pago", value: protesto.temAnuencia ? 'Sim' : 'Não' }),
34
- React.createElement(AddItemField, { name: "Valor Do Protesto", value: formatMoney(protesto.valor) }),
35
- protesto.custas && (React.createElement(AddItemField, { name: "Custas de Cart\u00F3rio para Baixa", value: formatMoney(protesto.custas) })))); })));
36
- } }));
77
+ : "Foram encontrados ".concat((_l = (_k = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _k === void 0 ? void 0 : _k.protestos) === null || _l === void 0 ? void 0 : _l.length, " protestos")), variant: ((_o = (_m = data === null || data === void 0 ? void 0 : data.protestosPagosBaixados) === null || _m === void 0 ? void 0 : _m.protestos) === null || _o === void 0 ? void 0 : _o.length) ? 'error' : 'default', icon: ProtestosIcon, onSuccess: function () { return (React.createElement("div", null, adaptToUI(items).map(function (protesto) { return (React.createElement(ResultContent, { key: protesto.chave, print: "repeat(7, 1fr)", desktop: "repeat(8, 1fr)", tablet: "repeat(4, 1fr)", mobile: "repeat(2, 1fr)" },
78
+ React.createElement(AddItemField, { name: "Quem Protestou", value: protesto.nomeCedente }),
79
+ React.createElement(AddItemField, { name: "Atrav\u00E9s De", value: protesto.nomeApresentante }),
80
+ React.createElement(AddItemField, { name: "CPF/CNPJ Protestado", value: formatDocument(protesto.cpfCnpj) }),
81
+ React.createElement(AddItemField, { name: "Data Do Protesto", value: protesto.dataProtesto }),
82
+ React.createElement(AddItemField, { name: "Possui Anu\u00EAncia / Protesto Pago", value: protesto.temAnuencia ? 'Sim' : 'Não' }),
83
+ React.createElement(AddItemField, { name: "Valor Do Protesto", value: formatMoney(protesto.valor) }))); }))); } }));
37
84
  };
38
85
  export default ProtestosPagosBaixados;
@@ -3,8 +3,15 @@ import { Client } from '@credithub/webservice';
3
3
  import React, { ComponentProps, ComponentType, Context, FC, PropsWithChildren, ReactNode } from 'react';
4
4
  import Header from './interface/header';
5
5
  export declare const WebService: React.Context<Client.WebService>;
6
+ type RequestDefaults = {
7
+ data?: Client.Form;
8
+ urlData?: Client.Form;
9
+ };
10
+ export declare const RequestDefaultsContext: React.Context<RequestDefaults>;
6
11
  export declare const WebServiceProvider: FC<PropsWithChildren<{
7
12
  credential: string;
13
+ defaultData?: Client.Form;
14
+ defaultUrlData?: Client.Form;
8
15
  }>>;
9
16
  export declare enum RequestStatus {
10
17
  Empty = 0,
@@ -169,3 +176,4 @@ export declare const Queries: {
169
176
  }>>;
170
177
  };
171
178
  };
179
+ export {};
@@ -1,3 +1,14 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
1
12
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
13
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
14
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -38,9 +49,11 @@ import { Client } from '@credithub/webservice';
38
49
  import React, { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';
39
50
  import Section from './section';
40
51
  export var WebService = createContext(new Client.WebService());
52
+ export var RequestDefaultsContext = createContext({});
41
53
  export var WebServiceProvider = function (_a) {
42
- var credential = _a.credential, children = _a.children;
43
- return (React.createElement(WebService.Provider, { value: new Client.WebService(credential) }, children));
54
+ var credential = _a.credential, defaultData = _a.defaultData, defaultUrlData = _a.defaultUrlData, children = _a.children;
55
+ return (React.createElement(WebService.Provider, { value: new Client.WebService(credential) },
56
+ React.createElement(RequestDefaultsContext.Provider, { value: { data: defaultData, urlData: defaultUrlData } }, children)));
44
57
  };
45
58
  export var RequestStatus;
46
59
  (function (RequestStatus) {
@@ -53,14 +66,15 @@ export function CustomProvider(Provider, query) {
53
66
  return function (_a) {
54
67
  var children = _a.children, data = _a.data, urlData = _a.urlData, _b = _a.depends, depends = _b === void 0 ? [] : _b;
55
68
  var client = useContext(WebService);
56
- var _c = useState(null), response = _c[0], setResponse = _c[1];
57
- var _d = useState(null), error = _d[0], setError = _d[1];
58
- var _e = useState(false), loading = _e[0], setLoading = _e[1];
59
- var _f = useState(0), progress = _f[0], setProgress = _f[1];
60
- var _g = useState(new Map()), requestsMap = _g[0], setRequestsMap = _g[1];
61
- var _h = useState(false), showLoadingBar = _h[0], setShowLoadingBar = _h[1];
62
- var _j = useState(false), shouldRetry = _j[0], setShouldRetry = _j[1];
63
- var _k = useState(false), requestCompleted = _k[0], setRequestCompleted = _k[1];
69
+ var _c = useContext(RequestDefaultsContext), defaultData = _c.data, defaultUrlData = _c.urlData;
70
+ var _d = useState(null), response = _d[0], setResponse = _d[1];
71
+ var _e = useState(null), error = _e[0], setError = _e[1];
72
+ var _f = useState(false), loading = _f[0], setLoading = _f[1];
73
+ var _g = useState(0), progress = _g[0], setProgress = _g[1];
74
+ var _h = useState(new Map()), requestsMap = _h[0], setRequestsMap = _h[1];
75
+ var _j = useState(false), showLoadingBar = _j[0], setShowLoadingBar = _j[1];
76
+ var _k = useState(false), shouldRetry = _k[0], setShouldRetry = _k[1];
77
+ var _l = useState(false), requestCompleted = _l[0], setRequestCompleted = _l[1];
64
78
  var dependentRequestsCompleted = useMemo(function () {
65
79
  return depends === null || depends === void 0 ? void 0 : depends.every(function (request) {
66
80
  return (request === null || request === void 0 ? void 0 : request.type) === RequestStatus.Success ||
@@ -79,6 +93,8 @@ export function CustomProvider(Provider, query) {
79
93
  }, 300);
80
94
  return function () { return clearInterval(interval); };
81
95
  }, []);
96
+ var mergedData = useMemo(function () { return (__assign(__assign({}, (defaultData !== null && defaultData !== void 0 ? defaultData : {})), (data !== null && data !== void 0 ? data : {}))); }, [defaultData, data]);
97
+ var mergedUrlData = useMemo(function () { return (__assign(__assign({}, (defaultUrlData !== null && defaultUrlData !== void 0 ? defaultUrlData : {})), (urlData !== null && urlData !== void 0 ? urlData : {}))); }, [defaultUrlData, urlData]);
82
98
  var fetchData = useCallback(function () {
83
99
  if (loading || requestCompleted || !dependentRequestsCompleted)
84
100
  return;
@@ -90,7 +106,7 @@ export function CustomProvider(Provider, query) {
90
106
  setRequestsMap(function (prev) { return new Map(prev.set(requestId, true)); });
91
107
  var abortController = new AbortController();
92
108
  client
93
- .request(query, data, urlData, abortController.signal)
109
+ .request(query, mergedData, mergedUrlData, abortController.signal)
94
110
  .then(function (response) {
95
111
  return Client.WebService.parse(response).then(function (document) { return ({
96
112
  response: response,
@@ -133,8 +149,8 @@ export function CustomProvider(Provider, query) {
133
149
  }, [
134
150
  client,
135
151
  query,
136
- data,
137
- urlData,
152
+ mergedData,
153
+ mergedUrlData,
138
154
  loading,
139
155
  simulateProgress,
140
156
  requestCompleted,
@@ -174,8 +190,8 @@ export function CustomProvider(Provider, query) {
174
190
  ? RequestStatus.Loading
175
191
  : RequestStatus.Empty,
176
192
  error: error,
177
- data: data,
178
- urlData: urlData,
193
+ data: mergedData,
194
+ urlData: mergedUrlData,
179
195
  response: response === null || response === void 0 ? void 0 : response.response,
180
196
  document: response === null || response === void 0 ? void 0 : response.document,
181
197
  Section: Section,
@@ -190,8 +206,8 @@ export function CustomProvider(Provider, query) {
190
206
  }, [
191
207
  error,
192
208
  response,
193
- data,
194
- urlData,
209
+ mergedData,
210
+ mergedUrlData,
195
211
  loading,
196
212
  progress,
197
213
  requestsMap,
@@ -203,12 +219,14 @@ export function CustomProvider(Provider, query) {
203
219
  export function useQuery(query, data, enabled) {
204
220
  if (enabled === void 0) { enabled = true; }
205
221
  var client = useContext(WebService);
206
- var _a = useState(null), response = _a[0], setResponse = _a[1];
207
- var _b = useState(null), error = _b[0], setError = _b[1];
208
- var _c = useState(false), isLoading = _c[0], setIsLoading = _c[1];
209
- var _d = useState(true), shouldFetch = _d[0], setShouldFetch = _d[1];
210
- var _e = useState(0), loadingProgress = _e[0], setProgress = _e[1];
222
+ var _a = useContext(RequestDefaultsContext), defaultData = _a.data, defaultUrlData = _a.urlData;
223
+ var _b = useState(null), response = _b[0], setResponse = _b[1];
224
+ var _c = useState(null), error = _c[0], setError = _c[1];
225
+ var _d = useState(false), isLoading = _d[0], setIsLoading = _d[1];
226
+ var _e = useState(true), shouldFetch = _e[0], setShouldFetch = _e[1];
227
+ var _f = useState(0), loadingProgress = _f[0], setProgress = _f[1];
211
228
  var memoizedData = useMemo(function () { return data; }, [JSON.stringify(data)]);
229
+ var mergedData = useMemo(function () { return (__assign(__assign({}, (defaultData !== null && defaultData !== void 0 ? defaultData : {})), (memoizedData !== null && memoizedData !== void 0 ? memoizedData : {}))); }, [defaultData, memoizedData]);
212
230
  var simulateProgress = useCallback(function () {
213
231
  setProgress(0);
214
232
  var p = 0;
@@ -227,7 +245,7 @@ export function useQuery(query, data, enabled) {
227
245
  simulateProgress();
228
246
  var abortController = new AbortController();
229
247
  client
230
- .request(query, memoizedData, undefined, abortController.signal)
248
+ .request(query, mergedData, defaultUrlData, abortController.signal)
231
249
  .then(function (response) {
232
250
  return Client.WebService.parse(response).then(function (document) { return ({
233
251
  response: response,
@@ -252,7 +270,15 @@ export function useQuery(query, data, enabled) {
252
270
  setShouldFetch(false);
253
271
  });
254
272
  return function () { return abortController.abort(); };
255
- }, [shouldFetch, isLoading, client, query, memoizedData, simulateProgress]);
273
+ }, [
274
+ shouldFetch,
275
+ isLoading,
276
+ client,
277
+ query,
278
+ mergedData,
279
+ defaultUrlData,
280
+ simulateProgress
281
+ ]);
256
282
  useEffect(function () {
257
283
  if (enabled && !response && !error && !isLoading && !shouldFetch) {
258
284
  setShouldFetch(true);
@@ -276,14 +302,16 @@ export function useQuery(query, data, enabled) {
276
302
  }
277
303
  export function useMutation(query, data) {
278
304
  var client = useContext(WebService);
305
+ var _a = useContext(RequestDefaultsContext), defaultData = _a.data, defaultUrlData = _a.urlData;
279
306
  var abortController = useMemo(function () { return new AbortController(); }, []);
280
- var _a = useState(null), response = _a[0], setResponse = _a[1];
281
- var _b = useState(null), error = _b[0], setError = _b[1];
282
- var _c = useState(true), isLoading = _c[0], setIsLoading = _c[1];
307
+ var _b = useState(null), response = _b[0], setResponse = _b[1];
308
+ var _c = useState(null), error = _c[0], setError = _c[1];
309
+ var _d = useState(true), isLoading = _d[0], setIsLoading = _d[1];
310
+ var mergedData = useMemo(function () { return (__assign(__assign({}, (defaultData !== null && defaultData !== void 0 ? defaultData : {})), (data !== null && data !== void 0 ? data : {}))); }, [defaultData, data]);
283
311
  var mutate = useCallback(function () {
284
312
  setIsLoading(true);
285
313
  client
286
- .request(query, data, undefined, abortController.signal)
314
+ .request(query, mergedData, defaultUrlData, abortController.signal)
287
315
  .then(function (response) {
288
316
  return Client.WebService.parse(response).then(function (document) { return ({
289
317
  response: response,
@@ -297,7 +325,7 @@ export function useMutation(query, data) {
297
325
  : new Error(requestError));
298
326
  })
299
327
  .finally(function () { return setIsLoading(false); });
300
- }, []);
328
+ }, [client, query, mergedData, defaultUrlData, abortController]);
301
329
  return {
302
330
  isLoading: isLoading,
303
331
  error: error,
@@ -308,16 +336,17 @@ export function useMutation(query, data) {
308
336
  export function useFetch(query) {
309
337
  var _this = this;
310
338
  var client = useContext(WebService);
339
+ var _a = useContext(RequestDefaultsContext), defaultData = _a.data, defaultUrlData = _a.urlData;
311
340
  var abortController = useMemo(function () { return new AbortController(); }, []);
312
- var _a = useState(null), response = _a[0], setResponse = _a[1];
313
- var _b = useState(null), error = _b[0], setError = _b[1];
314
- var _c = useState(false), isLoading = _c[0], setIsLoading = _c[1];
341
+ var _b = useState(null), response = _b[0], setResponse = _b[1];
342
+ var _c = useState(null), error = _c[0], setError = _c[1];
343
+ var _d = useState(false), isLoading = _d[0], setIsLoading = _d[1];
315
344
  var fetch = useCallback(function (data) { return __awaiter(_this, void 0, void 0, function () {
316
345
  return __generator(this, function (_a) {
317
346
  setIsLoading(true);
318
347
  setError(null);
319
348
  return [2 /*return*/, client
320
- .request(query, data, undefined, abortController.signal)
349
+ .request(query, __assign(__assign({}, (defaultData !== null && defaultData !== void 0 ? defaultData : {})), (data !== null && data !== void 0 ? data : {})), defaultUrlData, abortController.signal)
321
350
  .then(function (document) {
322
351
  setResponse(document);
323
352
  return document;
@@ -329,7 +358,7 @@ export function useFetch(query) {
329
358
  })
330
359
  .finally(function () { return setIsLoading(false); })];
331
360
  });
332
- }); }, []);
361
+ }); }, [client, query, defaultData, defaultUrlData, abortController]);
333
362
  return {
334
363
  isLoading: isLoading,
335
364
  error: error,
@@ -7,6 +7,10 @@ type ConsultaSimplesProps = {
7
7
  posthog?: ConsultaSimplesPosthog;
8
8
  documento: string;
9
9
  apiKey: string;
10
+ queryParams?: {
11
+ data?: Record<string, string>;
12
+ urlData?: Record<string, string>;
13
+ };
10
14
  onClose?: () => void;
11
15
  hasCredits?: HasCreditsType;
12
16
  onClickPrint: () => void;