@credithub/harlan-components 1.85.1 → 1.85.3
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.
- package/dist/components/adresses/addresses.js +30 -50
- package/dist/components/consultaRfb.js +1 -1
- package/lib/cjs/index.js +31 -51
- package/lib/esm/index.js +31 -51
- package/package.json +1 -1
|
@@ -9,76 +9,56 @@ var __assign = (this && this.__assign) || function () {
|
|
|
9
9
|
};
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
13
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
14
|
-
if (ar || !(i in from)) {
|
|
15
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
16
|
-
ar[i] = from[i];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
20
|
-
};
|
|
21
12
|
import EnderecoIcon from '../../assets/icones/endereco';
|
|
22
13
|
import { useGlobalData } from '../../contexts/globalDataContext';
|
|
23
14
|
import { useConsultaRfb } from '../../hooks/useConsultaRfb';
|
|
24
15
|
import XPathUtils from '../../utils/xpath';
|
|
25
|
-
import React, { useContext, useEffect, useState } from 'react';
|
|
16
|
+
import React, { useContext, useEffect, useMemo, useState } from 'react';
|
|
26
17
|
import { uniq } from 'underscore';
|
|
27
18
|
import AddItemField from '../common/addItem';
|
|
28
19
|
import { Result, ResultContent } from '../interface/result';
|
|
29
20
|
import Section from '../section';
|
|
30
21
|
import { Queries, RequestStatus } from '../webservice';
|
|
22
|
+
function getAddressNodes(finderDoc, rfbDoc) {
|
|
23
|
+
var fromFinder = finderDoc
|
|
24
|
+
? XPathUtils.select('//enderecos/enderecos', finderDoc) || []
|
|
25
|
+
: [];
|
|
26
|
+
var fromRfb = rfbDoc
|
|
27
|
+
? XPathUtils.select('//RFB/enderecos/endereco', rfbDoc) || []
|
|
28
|
+
: [];
|
|
29
|
+
return fromFinder.length > 0 ? fromFinder : fromRfb;
|
|
30
|
+
}
|
|
31
|
+
function parseAddresses(finderDoc, rfbDoc) {
|
|
32
|
+
var nodes = getAddressNodes(finderDoc, rfbDoc);
|
|
33
|
+
return uniq(nodes.map(function (node) { return ({
|
|
34
|
+
type: XPathUtils.select('string(tipoLogradouro)', node),
|
|
35
|
+
address: XPathUtils.select('string(logradouro)', node),
|
|
36
|
+
number: XPathUtils.select('string(numero)', node),
|
|
37
|
+
zipcode: XPathUtils.select('string(cep)', node),
|
|
38
|
+
district: XPathUtils.select('string(bairro)', node),
|
|
39
|
+
city: XPathUtils.select('string(cidade)', node) ||
|
|
40
|
+
XPathUtils.select('string(municipio)', node),
|
|
41
|
+
state: XPathUtils.select('string(uf)', node),
|
|
42
|
+
urlImage: '',
|
|
43
|
+
urlMaps: ''
|
|
44
|
+
}); }), function (e) { return e.address + e.district; });
|
|
45
|
+
}
|
|
31
46
|
var Addresses = function () {
|
|
32
47
|
var ctx = useContext(Queries.Finder);
|
|
33
48
|
var setData = useGlobalData().setData;
|
|
34
49
|
var rfbResponse = useConsultaRfb().rfbResponse;
|
|
35
50
|
var _a = useState(false), dataUpdated = _a[0], setDataUpdated = _a[1];
|
|
51
|
+
var addresses = useMemo(function () { return parseAddresses(ctx.document, rfbResponse); }, [ctx.document, rfbResponse]);
|
|
36
52
|
useEffect(function () {
|
|
37
53
|
if (ctx.type === RequestStatus.Success && !dataUpdated && ctx.document) {
|
|
38
|
-
var data = ctx.document;
|
|
39
|
-
var _addresses = __spreadArray(__spreadArray([], ((data &&
|
|
40
|
-
XPathUtils.select('//enderecos/enderecos', data)) ||
|
|
41
|
-
[]), true), ((!data &&
|
|
42
|
-
rfbResponse &&
|
|
43
|
-
XPathUtils.select('//RFB/enderecos/endereco', rfbResponse)) ||
|
|
44
|
-
[]), true);
|
|
45
|
-
var addresses = uniq(_addresses.map(function (address) { return ({
|
|
46
|
-
type: XPathUtils.select('string(tipoLogradouro)', address),
|
|
47
|
-
address: XPathUtils.select('string(logradouro)', address),
|
|
48
|
-
number: XPathUtils.select('string(numero)', address),
|
|
49
|
-
zipcode: XPathUtils.select('string(cep)', address),
|
|
50
|
-
district: XPathUtils.select('string(bairro)', address),
|
|
51
|
-
city: XPathUtils.select('string(cidade)', address),
|
|
52
|
-
state: XPathUtils.select('string(uf)', address),
|
|
53
|
-
urlImage: '',
|
|
54
|
-
urlMaps: ''
|
|
55
|
-
}); }), function (e) { return e.address + e.district; });
|
|
56
54
|
if (addresses.length > 0) {
|
|
57
|
-
var addressState_1 = {
|
|
58
|
-
addresses: addresses
|
|
59
|
-
};
|
|
55
|
+
var addressState_1 = { addresses: addresses };
|
|
60
56
|
setData(function (prevState) { return (__assign(__assign({}, prevState), { addresses: addressState_1 })); });
|
|
61
57
|
setDataUpdated(true);
|
|
62
58
|
}
|
|
63
59
|
}
|
|
64
|
-
}, [ctx, rfbResponse, dataUpdated, setData]);
|
|
65
|
-
var response = function (
|
|
66
|
-
var _addresses = __spreadArray(__spreadArray([], ((data && XPathUtils.select('//enderecos/enderecos', data)) ||
|
|
67
|
-
[]), true), ((!data &&
|
|
68
|
-
rfbResponse &&
|
|
69
|
-
XPathUtils.select('//RFB/enderecos/endereco', rfbResponse)) ||
|
|
70
|
-
[]), true);
|
|
71
|
-
var addresses = uniq(_addresses.map(function (address) { return ({
|
|
72
|
-
type: XPathUtils.select('string(tipoLogradouro)', address),
|
|
73
|
-
address: XPathUtils.select('string(logradouro)', address),
|
|
74
|
-
number: XPathUtils.select('string(numero)', address),
|
|
75
|
-
zipcode: XPathUtils.select('string(cep)', address),
|
|
76
|
-
district: XPathUtils.select('string(bairro)', address),
|
|
77
|
-
city: XPathUtils.select('string(cidade)', address),
|
|
78
|
-
state: XPathUtils.select('string(uf)', address),
|
|
79
|
-
urlImage: '',
|
|
80
|
-
urlMaps: ''
|
|
81
|
-
}); }), function (e) { return e.address + e.district; });
|
|
60
|
+
}, [ctx, rfbResponse, dataUpdated, setData, addresses]);
|
|
61
|
+
var response = function () {
|
|
82
62
|
return (React.createElement(Result, { resultContentStriped: true, className: "address" }, addresses === null || addresses === void 0 ? void 0 : addresses.map(function (address, index) { return (React.createElement(ResultContent, { desktop: "repeat(7, 1fr)", tablet: "repeat(4, 1fr)", mobile: "repeat(2, 1fr)", key: index },
|
|
83
63
|
React.createElement(AddItemField, { name: "Tipo", value: address.type, style: { display: 'inline-block' } }),
|
|
84
64
|
React.createElement(AddItemField, { name: "Endere\u00E7o", value: address.address, style: { display: 'inline-block' } }),
|
|
@@ -88,6 +68,6 @@ var Addresses = function () {
|
|
|
88
68
|
React.createElement(AddItemField, { name: "Cidade", value: address.city, style: { display: 'inline-block' } }),
|
|
89
69
|
React.createElement(AddItemField, { name: "Estado", value: address.state, style: { display: 'inline-block' } }))); })));
|
|
90
70
|
};
|
|
91
|
-
return (React.createElement(Section, { title: "Endere\u00E7os", subtitle: "Informa\u00E7\u00F5es de endere\u00E7os do documento pesquisado.", icon: EnderecoIcon, minimized: false, ctx: ctx, onError: function () { return response(
|
|
71
|
+
return (React.createElement(Section, { title: "Endere\u00E7os", subtitle: "Informa\u00E7\u00F5es de endere\u00E7os do documento pesquisado.", icon: EnderecoIcon, minimized: false, ctx: ctx, onError: function () { return response(); }, onSuccess: response }));
|
|
92
72
|
};
|
|
93
73
|
export default Addresses;
|
|
@@ -28,7 +28,7 @@ export var ConsultaRfbProvider = function (_a) {
|
|
|
28
28
|
var query = useQuery("SELECT FROM 'RFB'.'CERTIDAO'", { documento: documento });
|
|
29
29
|
/* fallback ReceitaWS – apenas se CNPJ */
|
|
30
30
|
var queryFallback = isCnpj
|
|
31
|
-
? useQuery("SELECT FROM '
|
|
31
|
+
? useQuery("SELECT FROM 'RFB'.'ATUALIZARCERTIDAO'", { documento: documento }, enableFallback)
|
|
32
32
|
: undefined;
|
|
33
33
|
/** clique no botão “Atualizar Dados RFB” */
|
|
34
34
|
var executeFallback = function () {
|