@credithub/harlan-components 1.83.1 → 1.83.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -57,7 +57,7 @@ import { areModulesLoaded } from '../../utils/isGlobalReady';
57
57
  import { formatMoney } from '../../utils/number';
58
58
  import { isCpf } from '../../utils/string';
59
59
  import { Spinner } from 'phosphor-react';
60
- import React, { useContext, useEffect, useMemo, useState } from 'react';
60
+ import React, { useContext, useEffect, useMemo, useRef, useState } from 'react';
61
61
  import styled from 'styled-components';
62
62
  import useToggle from '../../hooks/useToggle';
63
63
  import { ConsultasComplementaresContext } from '../consultasComplementares';
@@ -87,16 +87,17 @@ function calcularProtestoLiminar(history) {
87
87
  return reducao >= 0.8;
88
88
  }
89
89
  var ChartSystem = function (_a) {
90
- var _b, _c, _d, _e, _f, _g, _h, _j;
90
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
91
91
  var documento = _a.documento;
92
92
  var ctxConsultasComplementares = useContext(ConsultasComplementaresContext);
93
- var _k = useConsultasComplementares(), consultasComplementares = _k.consultasComplementares, setConsultasComplementares = _k.setConsultasComplementares, hasCredits = _k.hasCredits;
94
- var _l = useGlobalData(), globalData = _l.data, setGlobalState = _l.setData;
95
- var _m = useState(false), dataUpdated = _m[0], setDataUpdated = _m[1];
93
+ var _m = useConsultasComplementares(), consultasComplementares = _m.consultasComplementares, setConsultasComplementares = _m.setConsultasComplementares, hasCredits = _m.hasCredits;
94
+ var _o = useGlobalData(), globalData = _o.data, setGlobalState = _o.setData;
95
+ var _p = useState(false), dataUpdated = _p[0], setDataUpdated = _p[1];
96
96
  var ultimaOcorrenciaCCF = useUltimaOcorrenciaCCF();
97
97
  var consultaSerasa = (_c = (_b = ctxConsultasComplementares === null || ctxConsultasComplementares === void 0 ? void 0 : ctxConsultasComplementares.consultasComplementares) === null || _b === void 0 ? void 0 : _b.refinSerasa) === null || _c === void 0 ? void 0 : _c.data;
98
98
  var consultaBoaVista = (_e = (_d = ctxConsultasComplementares === null || ctxConsultasComplementares === void 0 ? void 0 : ctxConsultasComplementares.consultasComplementares) === null || _d === void 0 ? void 0 : _d.refinBoaVista) === null || _e === void 0 ? void 0 : _e.data;
99
- var _o = useState({}), loadingButtons = _o[0], setLoadingButtons = _o[1];
99
+ var _q = useState({}), loadingButtons = _q[0], setLoadingButtons = _q[1];
100
+ var refetchTimer = useRef(null);
100
101
  var productsPrices = getProductsPrices(isCpf(documento));
101
102
  var handleOnClick = function (key) {
102
103
  return function () { return __awaiter(void 0, void 0, void 0, function () {
@@ -140,19 +141,44 @@ var ChartSystem = function (_a) {
140
141
  });
141
142
  }); };
142
143
  };
143
- var _p = useChartData(consultaSerasa, consultaBoaVista), chartData = _p.data, isLoadingChart = _p.isLoading, errorChart = _p.error, refetchChart = _p.refetch, chartDataProgress = _p.loadingProgress;
144
- var _q = useDividasPublicas(), quantidadeDividas = _q.quantidade, valorTotalDividas = _q.valorTotal, ultimaOcorrenciaDividas = _q.ultimaOcorrencia, dividasProgress = _q.loadingProgress;
144
+ var _r = useChartData(consultaSerasa, consultaBoaVista), chartData = _r.data, isLoadingChart = _r.isLoading, errorChart = _r.error, refetchChart = _r.refetch, chartDataProgress = _r.loadingProgress;
145
+ var _s = useDividasPublicas(), quantidadeDividas = _s.quantidade, valorTotalDividas = _s.valorTotal, ultimaOcorrenciaDividas = _s.ultimaOcorrencia, dividasProgress = _s.loadingProgress;
146
+ var protestosLoaded = ((_f = globalData.protestosData) === null || _f === void 0 ? void 0 : _f.isLoaded) === true;
147
+ var ccfLoaded = ((_g = globalData.ccfData) === null || _g === void 0 ? void 0 : _g.isLoaded) === true;
148
+ var _t = useState(false), chartFetched = _t[0], setChartFetched = _t[1];
145
149
  useEffect(function () {
146
- if (consultaSerasa || consultaBoaVista) {
147
- refetchChart();
150
+ if (protestosLoaded &&
151
+ ccfLoaded &&
152
+ !chartFetched &&
153
+ (consultaSerasa || consultaBoaVista)) {
154
+ if (!refetchTimer.current) {
155
+ refetchTimer.current = setTimeout(function () {
156
+ refetchChart();
157
+ setChartFetched(true);
158
+ refetchTimer.current = null;
159
+ }, 1000);
160
+ }
148
161
  }
149
- }, [consultaSerasa, consultaBoaVista, refetchChart]);
162
+ return function () {
163
+ if (refetchTimer.current) {
164
+ clearTimeout(refetchTimer.current);
165
+ refetchTimer.current = null;
166
+ }
167
+ };
168
+ }, [
169
+ protestosLoaded,
170
+ ccfLoaded,
171
+ chartFetched,
172
+ consultaSerasa,
173
+ consultaBoaVista,
174
+ refetchChart
175
+ ]);
150
176
  var errorMessage = typeof errorChart === 'string' ? new Error(errorChart) : errorChart;
151
177
  var isOpen = useToggle(true)[0];
152
- var quantidadeProtestos = ((_g = (_f = chartData === null || chartData === void 0 ? void 0 : chartData.protestos) === null || _f === void 0 ? void 0 : _f[(chartData === null || chartData === void 0 ? void 0 : chartData.protestos.length) - 1]) === null || _g === void 0 ? void 0 : _g.quantidade) || 0;
153
- var valorTotalProtestos = ((_j = (_h = chartData === null || chartData === void 0 ? void 0 : chartData.protestos) === null || _h === void 0 ? void 0 : _h[(chartData === null || chartData === void 0 ? void 0 : chartData.protestos.length) - 1]) === null || _j === void 0 ? void 0 : _j.valorTotal) || 0;
154
- var _r = useCalculation((chartData === null || chartData === void 0 ? void 0 : chartData.serasa) || []), quantidadeSerasa = _r.quantidade, valorTotalSerasa = _r.valorTotal, ultimaOcorrenciaSerasa = _r.dataMaisRecente;
155
- var _s = useCalculation((chartData === null || chartData === void 0 ? void 0 : chartData.boaVista) || []), quantidadeBoaVista = _s.quantidade, valorTotalBoaVista = _s.valorTotal, ultimaOcorrenciaBoaVista = _s.dataMaisRecente;
178
+ var quantidadeProtestos = ((_j = (_h = chartData === null || chartData === void 0 ? void 0 : chartData.protestos) === null || _h === void 0 ? void 0 : _h[(chartData === null || chartData === void 0 ? void 0 : chartData.protestos.length) - 1]) === null || _j === void 0 ? void 0 : _j.quantidade) || 0;
179
+ var valorTotalProtestos = ((_l = (_k = chartData === null || chartData === void 0 ? void 0 : chartData.protestos) === null || _k === void 0 ? void 0 : _k[(chartData === null || chartData === void 0 ? void 0 : chartData.protestos.length) - 1]) === null || _l === void 0 ? void 0 : _l.valorTotal) || 0;
180
+ var _u = useCalculation((chartData === null || chartData === void 0 ? void 0 : chartData.serasa) || []), quantidadeSerasa = _u.quantidade, valorTotalSerasa = _u.valorTotal, ultimaOcorrenciaSerasa = _u.dataMaisRecente;
181
+ var _v = useCalculation((chartData === null || chartData === void 0 ? void 0 : chartData.boaVista) || []), quantidadeBoaVista = _v.quantidade, valorTotalBoaVista = _v.valorTotal, ultimaOcorrenciaBoaVista = _v.dataMaisRecente;
156
182
  var quantidadeCCFs = useCalculation((chartData === null || chartData === void 0 ? void 0 : chartData.ccfs) || []).quantidade;
157
183
  var ultimaOcorrenciaProtestos = '';
158
184
  if ((chartData === null || chartData === void 0 ? void 0 : chartData.protestosCategory) && chartData.protestosCategory.length > 0) {
@@ -226,9 +252,10 @@ var ChartSystem = function (_a) {
226
252
  setGlobalState,
227
253
  ultimaOcorrenciaCCF
228
254
  ]);
255
+ var effectiveLoading = isLoadingChart || !protestosLoaded || !ccfLoaded;
229
256
  return (React.createElement(Section, { ctx: {
230
257
  response: undefined,
231
- type: isLoadingChart
258
+ type: effectiveLoading
232
259
  ? RequestStatus.Loading
233
260
  : errorChart
234
261
  ? RequestStatus.Error
@@ -241,8 +268,8 @@ var ChartSystem = function (_a) {
241
268
  }, title: "Resumo de Negativa\u00E7\u00F5es", subtitle: "Veja a quantidade de ocorr\u00EAncias conforme o documento foi consultado ao longo do tempo", icon: ResumoDeNegativacoesIcon, onSuccess: function () {
242
269
  var _a, _b, _c;
243
270
  return (React.createElement(Content, { isOpen: isOpen },
244
- chartData && React.createElement(ChartContent, { dataInput: chartData }),
245
- React.createElement(QuantidadeResultados, { data: chartData, consultarSerasa: React.createElement(ButtonsSummary, { style: {
271
+ chartData && protestosLoaded && ccfLoaded ? (React.createElement(ChartContent, { dataInput: chartData })) : (React.createElement(Spinner, null)),
272
+ chartData && protestosLoaded && ccfLoaded && (React.createElement(QuantidadeResultados, { data: chartData, consultarSerasa: React.createElement(ButtonsSummary, { style: {
246
273
  display: loadingButtons['refinSerasa'] ||
247
274
  ((_a = consultasComplementares === null || consultasComplementares === void 0 ? void 0 : consultasComplementares.refinSerasa) === null || _a === void 0 ? void 0 : _a.consultaRealizada)
248
275
  ? 'none'
@@ -265,7 +292,7 @@ var ChartSystem = function (_a) {
265
292
  ? (ultimaOcorrenciaBoaVista !== null && ultimaOcorrenciaBoaVista !== void 0 ? ultimaOcorrenciaBoaVista : undefined)
266
293
  : undefined, ultimaOcorrenciaPefinSerasa: Array.isArray(chartData === null || chartData === void 0 ? void 0 : chartData.serasa) && chartData.serasa.length > 0
267
294
  ? (ultimaOcorrenciaSerasa !== null && ultimaOcorrenciaSerasa !== void 0 ? ultimaOcorrenciaSerasa : undefined)
268
- : undefined })));
295
+ : undefined }))));
269
296
  }, isError: function (err) { return ({
270
297
  children: React.createElement(React.Fragment, null),
271
298
  description: (React.createElement(StatusMessage, { type: "error" },