@credithub/harlan-components 1.39.9 → 1.40.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.
@@ -44,6 +44,7 @@ export type ISectionProps<R> = {
44
44
  export type ISection<R> = React.FC<ISectionProps<R>>;
45
45
  export declare function CustomProvider<T extends Client.Form = Client.Form, R = unknown>(Provider: Context<RequestContext<R>>, query: string): FC<PropsWithChildren<{
46
46
  data?: T;
47
+ depends?: RequestContext<unknown>[];
47
48
  urlData?: Client.Form;
48
49
  }>>;
49
50
  export declare function useQuery<R = unknown, T extends Client.Form = Client.Form>(query: string, data?: T, enabled?: boolean): {
@@ -62,6 +63,7 @@ export declare function useMutation<R = unknown, T extends Client.Form = Client.
62
63
  export declare function query<T extends Client.Form = Client.Form, R = unknown>(query: string): React.Context<RequestContext<R>> & {
63
64
  Request: React.FC<React.PropsWithChildren<{
64
65
  data?: T | undefined;
66
+ depends?: RequestContext<unknown>[];
65
67
  urlData?: Client.Form;
66
68
  }>>;
67
69
  };
@@ -71,6 +73,7 @@ export declare const Queries: {
71
73
  data?: {
72
74
  documento: string;
73
75
  } | undefined;
76
+ depends?: RequestContext<unknown>[];
74
77
  urlData?: Client.Form;
75
78
  }>>;
76
79
  };
@@ -79,6 +82,7 @@ export declare const Queries: {
79
82
  data?: {
80
83
  documento: string;
81
84
  } | undefined;
85
+ depends?: RequestContext<unknown>[];
82
86
  urlData?: Client.Form;
83
87
  }>>;
84
88
  };
@@ -87,6 +91,7 @@ export declare const Queries: {
87
91
  data?: {
88
92
  documento: string;
89
93
  } | undefined;
94
+ depends?: RequestContext<unknown>[];
90
95
  urlData?: Client.Form;
91
96
  }>>;
92
97
  };
@@ -98,6 +103,7 @@ export declare const Queries: {
98
103
  estado?: string;
99
104
  pf?: string;
100
105
  } | undefined;
106
+ depends?: RequestContext<unknown>[];
101
107
  urlData?: Client.Form;
102
108
  }>>;
103
109
  };
@@ -106,6 +112,7 @@ export declare const Queries: {
106
112
  data?: {
107
113
  documento: string;
108
114
  } | undefined;
115
+ depends?: RequestContext<unknown>[];
109
116
  urlData?: Client.Form;
110
117
  }>>;
111
118
  };
@@ -114,6 +121,7 @@ export declare const Queries: {
114
121
  data?: {
115
122
  documento: string;
116
123
  } | undefined;
124
+ depends?: RequestContext<unknown>[];
117
125
  urlData?: Client.Form;
118
126
  }>>;
119
127
  };
@@ -123,6 +131,7 @@ export declare const Queries: {
123
131
  documento: string;
124
132
  cnpj: string;
125
133
  } | undefined;
134
+ depends?: RequestContext<unknown>[];
126
135
  urlData?: Client.Form;
127
136
  }>>;
128
137
  };
@@ -131,6 +140,7 @@ export declare const Queries: {
131
140
  data?: {
132
141
  documento: string;
133
142
  } | undefined;
143
+ depends?: RequestContext<unknown>[];
134
144
  urlData?: Client.Form;
135
145
  }>>;
136
146
  };
@@ -15,16 +15,17 @@ export var RequestStatus;
15
15
  })(RequestStatus || (RequestStatus = {}));
16
16
  export function CustomProvider(Provider, query) {
17
17
  return function (_a) {
18
- var children = _a.children, data = _a.data, urlData = _a.urlData;
18
+ var children = _a.children, data = _a.data, urlData = _a.urlData, _b = _a.depends, depends = _b === void 0 ? [] : _b;
19
19
  var client = useContext(WebService);
20
- var _b = useState(null), response = _b[0], setResponse = _b[1];
21
- var _c = useState(null), error = _c[0], setError = _c[1];
22
- var _d = useState(false), loading = _d[0], setLoading = _d[1];
23
- var _e = useState(0), progress = _e[0], setProgress = _e[1];
24
- var _f = useState(new Map()), requestsMap = _f[0], setRequestsMap = _f[1];
25
- var _g = useState(false), showLoadingBar = _g[0], setShowLoadingBar = _g[1];
26
- var _h = useState(false), shouldRetry = _h[0], setShouldRetry = _h[1];
27
- var _j = useState(false), requestCompleted = _j[0], setRequestCompleted = _j[1];
20
+ var _c = useState(null), response = _c[0], setResponse = _c[1];
21
+ var _d = useState(null), error = _d[0], setError = _d[1];
22
+ var _e = useState(false), loading = _e[0], setLoading = _e[1];
23
+ var _f = useState(0), progress = _f[0], setProgress = _f[1];
24
+ var _g = useState(new Map()), requestsMap = _g[0], setRequestsMap = _g[1];
25
+ var _h = useState(false), showLoadingBar = _h[0], setShowLoadingBar = _h[1];
26
+ var _j = useState(false), shouldRetry = _j[0], setShouldRetry = _j[1];
27
+ var _k = useState(false), requestCompleted = _k[0], setRequestCompleted = _k[1];
28
+ var dependentRequestsCompleted = useMemo(function () { return depends === null || depends === void 0 ? void 0 : depends.every(function (request) { return ((request === null || request === void 0 ? void 0 : request.type) === RequestStatus.Success) || ((request === null || request === void 0 ? void 0 : request.type) === (RequestStatus === null || RequestStatus === void 0 ? void 0 : RequestStatus.Error)); }); }, [depends]);
28
29
  var simulateProgress = useCallback(function () {
29
30
  setProgress(0);
30
31
  var currentProgress = 0;
@@ -38,7 +39,7 @@ export function CustomProvider(Provider, query) {
38
39
  return function () { return clearInterval(interval); };
39
40
  }, []);
40
41
  var fetchData = useCallback(function () {
41
- if (loading || requestCompleted)
42
+ if (loading || requestCompleted || !dependentRequestsCompleted)
42
43
  return;
43
44
  setLoading(true);
44
45
  setError(null);
@@ -95,16 +96,18 @@ export function CustomProvider(Provider, query) {
95
96
  urlData,
96
97
  loading,
97
98
  simulateProgress,
98
- requestCompleted
99
+ requestCompleted,
100
+ dependentRequestsCompleted
99
101
  ]);
100
102
  useEffect(function () {
101
103
  if (!response &&
102
104
  !loading &&
103
105
  requestsMap.size === 0 &&
104
- !requestCompleted) {
106
+ !requestCompleted &&
107
+ dependentRequestsCompleted) {
105
108
  fetchData();
106
109
  }
107
- }, [fetchData, response, loading, requestsMap, requestCompleted]);
110
+ }, [fetchData, response, loading, requestsMap, requestCompleted, dependentRequestsCompleted]);
108
111
  useEffect(function () {
109
112
  if (shouldRetry) {
110
113
  setShouldRetry(false);
@@ -3,7 +3,7 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cook
3
3
  return cooked;
4
4
  };
5
5
  import { Chart, registerables } from 'chart.js';
6
- import React from 'react';
6
+ import React, { useContext } from 'react';
7
7
  import styled, { ThemeProvider } from 'styled-components';
8
8
  import { Addresses, BankAccounts, CCF, ChartSystem, Contacts, DividasPublicas, Dossie, Partners, ProcessosJuridicos, Protestos, Queries, RefinBoaVista, RefinSerasa, Veiculos, WebServiceProvider } from './';
9
9
  import { ConsultaRfbProvider } from './components/consultaRfb';
@@ -19,6 +19,12 @@ import GlobalStyle from './styles/globalStyle';
19
19
  import theme from './styles/theme';
20
20
  Chart.register.apply(Chart, registerables);
21
21
  var Wrapper = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-family: 'Open Sans Condensed';\n display: flex;\n flex-direction: column;\n gap: 20px;\n\n * {\n -webkit-print-color-adjust: exact !important;\n print-color-adjust: exact !important;\n }\n\n @media print {\n @page {\n size: auto;\n margin: 5mm;\n }\n }\n"], ["\n font-family: 'Open Sans Condensed';\n display: flex;\n flex-direction: column;\n gap: 20px;\n\n * {\n -webkit-print-color-adjust: exact !important;\n print-color-adjust: exact !important;\n }\n\n @media print {\n @page {\n size: auto;\n margin: 5mm;\n }\n }\n"])));
22
+ var FinderDependency = function (_a) {
23
+ var children = _a.children, documento = _a.documento;
24
+ var ctxFinder = useContext(Queries.Finder);
25
+ return (React.createElement(Queries.CCF.Request, { data: { documento: documento }, depends: [ctxFinder] },
26
+ React.createElement(Queries.Protestos.Request, { data: { documento: documento }, depends: [ctxFinder] }, children)));
27
+ };
22
28
  var ConsultaSimples = function (_a) {
23
29
  var _documento = _a.documento, onClickConsultarProcessoJuridico = _a.onClickConsultarProcessoJuridico, onClickQSA = _a.onClickQSA, onClickPrint = _a.onClickPrint, apiKey = _a.apiKey, onClose = _a.onClose, hasCredits = _a.hasCredits, _b = _a.initRefinBoaVista, initRefinBoaVista = _b === void 0 ? false : _b, _c = _a.initRefinSerasa, initRefinSerasa = _c === void 0 ? false : _c, _d = _a.initVeiculos, initVeiculos = _d === void 0 ? false : _d;
24
30
  var documento = _documento.replace(/\D+/g, '');
@@ -27,33 +33,32 @@ var ConsultaSimples = function (_a) {
27
33
  React.createElement(WebServiceProvider, { credential: apiKey },
28
34
  React.createElement(Queries.Dominios.Request, { data: { documento: documento, cnpj: documento } },
29
35
  React.createElement(Queries.Finder.Request, { data: { documento: documento } },
30
- React.createElement(Queries.CCF.Request, { data: { documento: documento } },
31
- React.createElement(Queries.Protestos.Request, { data: { documento: documento } },
32
- React.createElement(Queries.ProcessosJuridicos.Request, { data: { documento: documento } },
33
- React.createElement(Queries.Liminar.Request, { data: { documento: documento } },
34
- React.createElement(Wrapper, null,
35
- React.createElement(GlobalDataProvider, null,
36
- React.createElement(ConsultaSimplesSection, { documento: documento, onClose: onClose, onClickPrint: onClickPrint },
37
- React.createElement(ConsultaRfbProvider, { documento: documento },
38
- React.createElement(Dossie, { documento: documento }),
39
- React.createElement(Liminar, null),
40
- React.createElement(Addresses, { apiKey: apiKey }),
41
- React.createElement(Contacts, null),
42
- React.createElement(Partners, { onClickQSA: onClickQSA })),
43
- React.createElement(Dominios, null),
44
- React.createElement(BankAccounts, null),
45
- React.createElement(Queries.GraficosAnaliticos.Request, { data: { documento: documento } },
46
- React.createElement(ChartSystem, { documento: documento }),
47
- React.createElement(ConsultaSCR, { documento: documento }),
48
- React.createElement(RefinBoaVista, { documento: documento }),
49
- React.createElement(RefinSerasa, { documento: documento }),
50
- React.createElement(ConsultaScore, { documento: documento }),
51
- React.createElement(ConsultaImoveis, { documento: documento }),
52
- React.createElement(Veiculos, { documento: documento })),
53
- React.createElement(Protestos, null),
54
- React.createElement(CCF, null),
55
- React.createElement(DividasPublicas, null),
56
- React.createElement(ProcessosJuridicos, { onClickConsultarProcessoJuridico: onClickConsultarProcessoJuridico })))))))))))),
36
+ React.createElement(FinderDependency, { documento: documento },
37
+ React.createElement(Queries.ProcessosJuridicos.Request, { data: { documento: documento } },
38
+ React.createElement(Queries.Liminar.Request, { data: { documento: documento } },
39
+ React.createElement(Wrapper, null,
40
+ React.createElement(GlobalDataProvider, null,
41
+ React.createElement(ConsultaSimplesSection, { documento: documento, onClose: onClose, onClickPrint: onClickPrint },
42
+ React.createElement(ConsultaRfbProvider, { documento: documento },
43
+ React.createElement(Dossie, { documento: documento }),
44
+ React.createElement(Liminar, null),
45
+ React.createElement(Addresses, { apiKey: apiKey }),
46
+ React.createElement(Contacts, null),
47
+ React.createElement(Partners, { onClickQSA: onClickQSA })),
48
+ React.createElement(Dominios, null),
49
+ React.createElement(BankAccounts, null),
50
+ React.createElement(Queries.GraficosAnaliticos.Request, { data: { documento: documento } },
51
+ React.createElement(ChartSystem, { documento: documento }),
52
+ React.createElement(ConsultaSCR, { documento: documento }),
53
+ React.createElement(RefinBoaVista, { documento: documento }),
54
+ React.createElement(RefinSerasa, { documento: documento }),
55
+ React.createElement(ConsultaScore, { documento: documento }),
56
+ React.createElement(ConsultaImoveis, { documento: documento }),
57
+ React.createElement(Veiculos, { documento: documento })),
58
+ React.createElement(Protestos, null),
59
+ React.createElement(CCF, null),
60
+ React.createElement(DividasPublicas, null),
61
+ React.createElement(ProcessosJuridicos, { onClickConsultarProcessoJuridico: onClickConsultarProcessoJuridico }))))))))))),
57
62
  React.createElement(GlobalStyle, null)));
58
63
  };
59
64
  export default ConsultaSimples;