@credithub/harlan-components 1.119.0 → 1.120.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.
- package/dist/@types/domain/index.d.ts +3 -2
- package/dist/components/common/ModalDadosCartorio.d.ts +9 -0
- package/dist/components/common/ModalDadosCartorio.js +38 -0
- package/dist/components/protestos/instrumento/useInstrumento.js +19 -7
- package/dist/components/protestos/protestos.js +32 -24
- package/dist/components/protestos/protestosList.d.ts +2 -1
- package/dist/components/protestos/protestosList.js +28 -12
- package/dist/components/protestosPagosBaixados/index.js +1 -3
- package/dist/utils/parseCartorio.d.ts +6 -0
- package/dist/utils/parseCartorio.js +34 -0
- package/lib/cjs/index.js +336 -233
- package/lib/esm/index.js +336 -233
- package/package.json +1 -1
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
export type { Address, AddressesState } from '@/@types/domain/addressesTypes';
|
|
2
2
|
export type { BankAccount, BankAccountsState } from '@/@types/domain/bankAccountTypes';
|
|
3
|
+
export type { Cartorio } from '@/@types/domain/cartorioTypes';
|
|
3
4
|
export type { CCFData, CCFState } from '@/@types/domain/ccfTypes';
|
|
4
5
|
export type { Contact, ContactsState } from '@/@types/domain/contactsTypes';
|
|
5
6
|
export type { Divida, DividasPublicasState } from '@/@types/domain/dividasTypes';
|
|
6
7
|
export type { DocumentHistoryData } from '@/@types/domain/documentHistoryData';
|
|
7
8
|
export type { CarouselState, DossieState, SummaryState, TransactionTableState } from '@/@types/domain/dossieTypes';
|
|
9
|
+
export type { EditalEletronico, EditalItem, EditalResponse } from '@/@types/domain/editalTypes';
|
|
8
10
|
export type { IPTUItem, ImoveisConsultaResponse } from '@/@types/domain/imoveisTypes';
|
|
9
11
|
export type { LiminarResponse } from '@/@types/domain/liminarTypes';
|
|
10
12
|
export type { LiteError } from '@/@types/domain/liteError';
|
|
11
13
|
export type { Partner, PartnersState } from '@/@types/domain/partnersTypes';
|
|
14
|
+
export type { PDFProtestoDiscoverResponse } from '@/@types/domain/pdfProtestoTypes';
|
|
12
15
|
export type { PepData, PepState } from '@/@types/domain/pepTypes';
|
|
13
16
|
export type { EnvolvidoUltimaMovimentacao, ProcessoJuridicoResume, ProcessosJuridicosState } from '@/@types/domain/processosJuridicosTypes';
|
|
14
17
|
export type { ProtestoHistoricoItem, ProtestoHistoricoResponse, ProtestosPagosBaixadosState } from '@/@types/domain/protestosPagosBaixadosTypes';
|
|
@@ -19,5 +22,3 @@ export type { PefinRefinSerasaResponse, RefinSerasaState } from '@/@types/domain
|
|
|
19
22
|
export type { ScoreResponse, ScoreSerasaState, ScoreState } from '@/@types/domain/scoreTypes';
|
|
20
23
|
export type { SCRState } from '@/@types/domain/scrTypes';
|
|
21
24
|
export type { RegistroVeiculo, VeiculosState } from '@/@types/domain/veiculosTypes';
|
|
22
|
-
export type { EditalItem, EditalEletronico, EditalResponse } from '@/@types/domain/editalTypes';
|
|
23
|
-
export type { PDFProtestoDiscoverResponse } from '@/@types/domain/pdfProtestoTypes';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Cartorio } from '@/@types/domain/cartorioTypes';
|
|
2
|
+
import { FC } from 'react';
|
|
3
|
+
interface ModalDadosCartorioProps {
|
|
4
|
+
isOpen: boolean;
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
cartorio: Cartorio | null;
|
|
7
|
+
}
|
|
8
|
+
declare const ModalDadosCartorio: FC<ModalDadosCartorioProps>;
|
|
9
|
+
export default ModalDadosCartorio;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { phoneMask } from '../../utils/number';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import Modal from './modal';
|
|
4
|
+
var FIELD_LABELS = {
|
|
5
|
+
nome: 'Nome',
|
|
6
|
+
endereco: 'Endereço',
|
|
7
|
+
bairro: 'Bairro',
|
|
8
|
+
cidade: 'Cidade',
|
|
9
|
+
uf: 'UF',
|
|
10
|
+
telefone: 'Telefone',
|
|
11
|
+
codigo_cartorio: 'Código do cartório',
|
|
12
|
+
codigo_cidade: 'Código da cidade',
|
|
13
|
+
email: 'E-mail'
|
|
14
|
+
};
|
|
15
|
+
var FIELDS_ORDER = [
|
|
16
|
+
'nome',
|
|
17
|
+
'endereco',
|
|
18
|
+
'bairro',
|
|
19
|
+
'cidade',
|
|
20
|
+
'uf',
|
|
21
|
+
'telefone',
|
|
22
|
+
'codigo_cartorio',
|
|
23
|
+
'codigo_cidade',
|
|
24
|
+
'email'
|
|
25
|
+
];
|
|
26
|
+
var ModalDadosCartorio = function (_a) {
|
|
27
|
+
var isOpen = _a.isOpen, onClose = _a.onClose, cartorio = _a.cartorio;
|
|
28
|
+
var isEmpty = !cartorio || Object.keys(cartorio).length === 0;
|
|
29
|
+
return (React.createElement(Modal, { isOpen: isOpen, onClose: onClose, title: "Dados do cart\u00F3rio", footer: React.createElement("button", { type: "button", onClick: onClose }, "Fechar") }, isEmpty ? (React.createElement("p", null, "Dados do cart\u00F3rio n\u00E3o dispon\u00EDveis.")) : (React.createElement("dl", { style: { textAlign: 'left', margin: 0 } }, FIELDS_ORDER.map(function (key) {
|
|
30
|
+
var value = cartorio[key];
|
|
31
|
+
var raw = value != null && String(value).trim() !== '' ? String(value).trim() : '';
|
|
32
|
+
var display = key === 'telefone' && raw ? phoneMask(raw) : raw || '—';
|
|
33
|
+
return (React.createElement("div", { key: key, style: { marginBottom: '8px' } },
|
|
34
|
+
React.createElement("dt", { style: { fontWeight: 600, margin: 0 } }, FIELD_LABELS[key]),
|
|
35
|
+
React.createElement("dd", { style: { margin: '2px 0 0 0' } }, display)));
|
|
36
|
+
})))));
|
|
37
|
+
};
|
|
38
|
+
export default ModalDadosCartorio;
|
|
@@ -65,14 +65,15 @@ export var useInstrumento = function (_a) {
|
|
|
65
65
|
setIsSuccess(false);
|
|
66
66
|
}, []);
|
|
67
67
|
var handleEnviarEmail = useCallback(function (livro, folha) { return __awaiter(void 0, void 0, void 0, function () {
|
|
68
|
-
var res, error_1;
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
var res, error_1, errorMessage, isSolicitacaoEmProcessamento;
|
|
69
|
+
var _a;
|
|
70
|
+
return __generator(this, function (_b) {
|
|
71
|
+
switch (_b.label) {
|
|
71
72
|
case 0:
|
|
72
73
|
setIsEnviandoEmail(true);
|
|
73
|
-
|
|
74
|
+
_b.label = 1;
|
|
74
75
|
case 1:
|
|
75
|
-
|
|
76
|
+
_b.trys.push([1, 3, 4, 5]);
|
|
76
77
|
return [4 /*yield*/, sendInstrumentoManualEmail(client, {
|
|
77
78
|
documento: cpfCnpj,
|
|
78
79
|
nm_chave: nmChave,
|
|
@@ -80,7 +81,7 @@ export var useInstrumento = function (_a) {
|
|
|
80
81
|
folha: folha
|
|
81
82
|
})];
|
|
82
83
|
case 2:
|
|
83
|
-
res =
|
|
84
|
+
res = _b.sent();
|
|
84
85
|
setEmailTitle('Instrumento solicitado por e-mail');
|
|
85
86
|
setEmailMessage((res === null || res === void 0 ? void 0 : res.message) ||
|
|
86
87
|
'Pedido registrado.\n\nAgora é só aguardar: vamos tentar obter o instrumento e enviar por e-mail. Isso pode levar algum tempo.\n\nApós identificar o instrumento, também vamos identificar o credor (quem protestou).');
|
|
@@ -89,7 +90,18 @@ export var useInstrumento = function (_a) {
|
|
|
89
90
|
setIsModalSPOpen(false);
|
|
90
91
|
return [3 /*break*/, 5];
|
|
91
92
|
case 3:
|
|
92
|
-
error_1 =
|
|
93
|
+
error_1 = _b.sent();
|
|
94
|
+
errorMessage = String((_a = error_1 === null || error_1 === void 0 ? void 0 : error_1.message) !== null && _a !== void 0 ? _a : error_1);
|
|
95
|
+
isSolicitacaoEmProcessamento = errorMessage
|
|
96
|
+
.toLocaleLowerCase()
|
|
97
|
+
.includes('já existe um processamento para este instrumento');
|
|
98
|
+
if (isSolicitacaoEmProcessamento) {
|
|
99
|
+
setEmailTitle('Solicitação em processamento');
|
|
100
|
+
setEmailMessage('Já existe uma solicitação em processamento para este instrumento.\n\nAguarde alguns instantes e tente novamente. Se preferir, aguarde o e-mail com o instrumento assim que estiver disponível.');
|
|
101
|
+
setIsSuccess(false);
|
|
102
|
+
setIsEmailModalOpen(true);
|
|
103
|
+
return [2 /*return*/];
|
|
104
|
+
}
|
|
93
105
|
setEmailTitle('Erro ao Enviar E-mail');
|
|
94
106
|
setEmailMessage('Não foi possível solicitar o instrumento por e-mail agora. Tente novamente em instantes.');
|
|
95
107
|
setIsSuccess(false);
|
|
@@ -29,11 +29,13 @@ import ProtestosImpostosIcon from '../../assets/icones/protestosImpostos';
|
|
|
29
29
|
import { useGlobalData } from '../../contexts/globalDataContext';
|
|
30
30
|
import { classifyProtestos, useProtestosClassification } from '../../hooks/useProtestosClassification';
|
|
31
31
|
import { parseMoneyValue } from '../../utils/number';
|
|
32
|
+
import { parseCartorio } from '../../utils/parseCartorio';
|
|
32
33
|
import { parseProtesto } from '../../utils/parseProtesto';
|
|
33
34
|
import XPathUtils from '../../utils/xpath';
|
|
34
35
|
import React, { useCallback, useContext, useEffect, useMemo, useState } from 'react';
|
|
35
36
|
import styled from 'styled-components';
|
|
36
37
|
import Button from '../common/button';
|
|
38
|
+
import ModalDadosCartorio from '../common/ModalDadosCartorio';
|
|
37
39
|
import StatusMessage from '../interface/statusMessage';
|
|
38
40
|
import Section from '../section';
|
|
39
41
|
import { Queries, RequestStatus } from '../webservice';
|
|
@@ -45,14 +47,15 @@ var BtnWrapper = styled.div(templateObject_2 || (templateObject_2 = __makeTempla
|
|
|
45
47
|
// Função utilitária para extrair as chaves dos protestos
|
|
46
48
|
var getChaves = function (arr) { return arr.map(function (p) { return p.nm_chave; }); };
|
|
47
49
|
var PROTESTOS_ERROR_SUMMARY = 'Falha ao consultar protestos, tente novamente mais tarde.';
|
|
48
|
-
var clearProtestosCollections = function (state) { return (__assign(__assign({}, (state || {})), { protestosDeCredito: undefined, protestosDeImposto: undefined, protestosGerais: undefined, totalProtestos: undefined, valorTotalProtestos: undefined, nmChaves: undefined })); };
|
|
50
|
+
var clearProtestosCollections = function (state) { return (__assign(__assign({}, (state || {})), { protestosDeCredito: undefined, protestosDeImposto: undefined, protestosGerais: undefined, totalProtestos: undefined, valorTotalProtestos: undefined, nmChaves: undefined, cartorio: undefined })); };
|
|
49
51
|
var Protestos = function (_a) {
|
|
50
|
-
var _b, _c;
|
|
52
|
+
var _b, _c, _d, _e;
|
|
51
53
|
var tags = _a.tags;
|
|
52
54
|
var ctx = useContext(Queries.Protestos);
|
|
53
55
|
var ctxLiminar = useContext(Queries.Liminar);
|
|
54
|
-
var
|
|
55
|
-
var
|
|
56
|
+
var _f = useGlobalData(), globalData = _f.data, setData = _f.setData;
|
|
57
|
+
var _g = useState(false), dataUpdated = _g[0], setDataUpdated = _g[1];
|
|
58
|
+
var _h = useState(false), isModalCartorioOpen = _h[0], setIsModalCartorioOpen = _h[1];
|
|
56
59
|
var showInstrumento = !hasOneOfTags(tags, [/flex/, 'bronze']);
|
|
57
60
|
var protestosAll = useMemo(function () {
|
|
58
61
|
if (!ctx.document)
|
|
@@ -60,7 +63,7 @@ var Protestos = function (_a) {
|
|
|
60
63
|
return XPathUtils.selectArray('//body//protesto', ctx.document).map(parseProtesto);
|
|
61
64
|
}, [ctx.document]);
|
|
62
65
|
var iaOverrides = (_b = globalData.protestosData) === null || _b === void 0 ? void 0 : _b.iaOverrides;
|
|
63
|
-
var
|
|
66
|
+
var _j = useProtestosClassification(protestosAll, iaOverrides), protestosDeCredito = _j.protestosDeCredito, protestosDeImposto = _j.protestosDeImposto, protestosGerais = _j.protestosGerais;
|
|
64
67
|
useEffect(function () {
|
|
65
68
|
var _a;
|
|
66
69
|
var prevProtestos = globalData.protestosData;
|
|
@@ -101,6 +104,9 @@ var Protestos = function (_a) {
|
|
|
101
104
|
setDataUpdated(true);
|
|
102
105
|
return;
|
|
103
106
|
}
|
|
107
|
+
var cartorioNodes = XPathUtils.selectArray('//body//conteudo/cartorio', ctx.document);
|
|
108
|
+
var cartorioNode = Array.isArray(cartorioNodes) ? cartorioNodes[0] : undefined;
|
|
109
|
+
var cartorio = parseCartorio(cartorioNode);
|
|
104
110
|
var nmChave = Array.from(new Set(__spreadArray(__spreadArray(__spreadArray([], getChaves(protestosDeCredito), true), getChaves(protestosDeImposto), true), getChaves(protestosGerais), true)));
|
|
105
111
|
// Calcula valorTotalProtestos uma única vez somando todos os valores
|
|
106
112
|
var todosProtestos = __spreadArray(__spreadArray(__spreadArray([], protestosDeCredito, true), protestosDeImposto, true), protestosGerais, true);
|
|
@@ -110,7 +116,7 @@ var Protestos = function (_a) {
|
|
|
110
116
|
}, 0);
|
|
111
117
|
setData(function (prevState) {
|
|
112
118
|
var prevProtestos = prevState.protestosData;
|
|
113
|
-
return __assign(__assign({}, prevState), { protestos: registros, protestosData: __assign(__assign({}, clearProtestosCollections(prevProtestos)), { protestosDeCredito: protestosDeCredito, protestosDeImposto: protestosDeImposto, protestosGerais: protestosGerais, totalProtestos: registros, valorTotalProtestos: valorTotalProtestos, isLoaded: true, isLoading: false, error: undefined, iaOverrides: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.iaOverrides, nmChaves: nmChave, failedInstruments: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.failedInstruments, failedInstrumentReasons: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.failedInstrumentReasons, instrumentCache: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.instrumentCache, checkedInstruments: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.checkedInstruments }) });
|
|
119
|
+
return __assign(__assign({}, prevState), { protestos: registros, protestosData: __assign(__assign({}, clearProtestosCollections(prevProtestos)), { protestosDeCredito: protestosDeCredito, protestosDeImposto: protestosDeImposto, protestosGerais: protestosGerais, totalProtestos: registros, valorTotalProtestos: valorTotalProtestos, cartorio: cartorio, isLoaded: true, isLoading: false, error: undefined, iaOverrides: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.iaOverrides, nmChaves: nmChave, failedInstruments: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.failedInstruments, failedInstrumentReasons: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.failedInstrumentReasons, instrumentCache: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.instrumentCache, checkedInstruments: prevProtestos === null || prevProtestos === void 0 ? void 0 : prevProtestos.checkedInstruments }) });
|
|
114
120
|
});
|
|
115
121
|
setDataUpdated(true);
|
|
116
122
|
}, [
|
|
@@ -143,15 +149,15 @@ var Protestos = function (_a) {
|
|
|
143
149
|
var elements = [
|
|
144
150
|
{
|
|
145
151
|
total: protestosDeCredito.length,
|
|
146
|
-
element: (React.createElement(ProtestosCategory, { title: "Protestos de Cr\u00E9dito", subtitle: "Protestos de cr\u00E9dito em geral.", registros: protestosDeCredito.length, icon: ProtestosCreditoIcon }, protestosDeCredito.map(function (protesto, i) { return (React.createElement(ProtestoItem, { protesto: protesto, key: i, showInstrumento: showInstrumento })); })))
|
|
152
|
+
element: (React.createElement(ProtestosCategory, { title: "Protestos de Cr\u00E9dito", subtitle: "Protestos de cr\u00E9dito em geral.", registros: protestosDeCredito.length, icon: ProtestosCreditoIcon }, protestosDeCredito.map(function (protesto, i) { return (React.createElement(ProtestoItem, { protesto: protesto, key: i, showInstrumento: showInstrumento, onOpenCartorioModal: function () { return setIsModalCartorioOpen(true); } })); })))
|
|
147
153
|
},
|
|
148
154
|
{
|
|
149
155
|
total: protestosDeImposto.length,
|
|
150
|
-
element: (React.createElement(ProtestosCategory, { title: "Protestos de Imposto", subtitle: "Protestos de impostos federais, estaduais e municipais.", registros: protestosDeImposto.length, icon: ProtestosImpostosIcon }, protestosDeImposto.map(function (protesto, i) { return (React.createElement(ProtestoItem, { protesto: protesto, key: i, showInstrumento: showInstrumento })); })))
|
|
156
|
+
element: (React.createElement(ProtestosCategory, { title: "Protestos de Imposto", subtitle: "Protestos de impostos federais, estaduais e municipais.", registros: protestosDeImposto.length, icon: ProtestosImpostosIcon }, protestosDeImposto.map(function (protesto, i) { return (React.createElement(ProtestoItem, { protesto: protesto, key: i, showInstrumento: showInstrumento, onOpenCartorioModal: function () { return setIsModalCartorioOpen(true); } })); })))
|
|
151
157
|
},
|
|
152
158
|
{
|
|
153
159
|
total: protestosGerais.length,
|
|
154
|
-
element: (React.createElement(ProtestosCategory, { title: "Protestos Gerais", subtitle: "Protestos de outros tipos.", registros: protestosGerais.length, icon: ProtestosGeraisIcon }, protestosGerais.map(function (protesto, i) { return (React.createElement(ProtestoItem, { protesto: protesto, key: i, showInstrumento: showInstrumento })); })))
|
|
160
|
+
element: (React.createElement(ProtestosCategory, { title: "Protestos Gerais", subtitle: "Protestos de outros tipos.", registros: protestosGerais.length, icon: ProtestosGeraisIcon }, protestosGerais.map(function (protesto, i) { return (React.createElement(ProtestoItem, { protesto: protesto, key: i, showInstrumento: showInstrumento, onOpenCartorioModal: function () { return setIsModalCartorioOpen(true); } })); })))
|
|
155
161
|
}
|
|
156
162
|
].sort(function (a, b) { return b.total - a.total; });
|
|
157
163
|
var children = registros ? (React.createElement(ResultProtestos, null, elements.map(function (_a, i) {
|
|
@@ -180,21 +186,23 @@ var Protestos = function (_a) {
|
|
|
180
186
|
}
|
|
181
187
|
return ctx;
|
|
182
188
|
}, [ctx, (_c = globalData === null || globalData === void 0 ? void 0 : globalData.protestosData) === null || _c === void 0 ? void 0 : _c.isLoading]);
|
|
183
|
-
return (React.createElement(
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
var
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
189
|
+
return (React.createElement(React.Fragment, null,
|
|
190
|
+
React.createElement(Section, { ctx: effectiveCtx, title: "Apontamentos na Central de Protestos (CENPROT)", subtitle: "Consulta de protestos de cr\u00E9dito, imposto e gerais.", icon: ProtestosIcon, onSuccess: handleSuccess, actions: typeof harlan !== 'undefined' ? (React.createElement(BtnWrapper, null,
|
|
191
|
+
React.createElement(Button, { onClick: function () {
|
|
192
|
+
var _a;
|
|
193
|
+
// Obtém o documento do contexto e formata adequadamente
|
|
194
|
+
var documento = ((_a = ctx === null || ctx === void 0 ? void 0 : ctx.data) === null || _a === void 0 ? void 0 : _a.documento) || '';
|
|
195
|
+
var formattedDoc = (function () {
|
|
196
|
+
var cleanDoc = documento.replace(/\D+/g, '');
|
|
197
|
+
return cleanDoc.length === 14
|
|
198
|
+
? "".concat(cleanDoc.slice(0, 2), ".").concat(cleanDoc.slice(2, 5), ".").concat(cleanDoc.slice(5, 8), "/").concat(cleanDoc.slice(8, 12), "-").concat(cleanDoc.slice(12))
|
|
199
|
+
: "".concat(cleanDoc.slice(0, 3), ".").concat(cleanDoc.slice(3, 6), ".").concat(cleanDoc.slice(6, 9), "-").concat(cleanDoc.slice(9));
|
|
200
|
+
})();
|
|
201
|
+
harlan === null || harlan === void 0 ? void 0 : harlan.call('creditHub::addLiminar', {
|
|
202
|
+
document: formattedDoc
|
|
203
|
+
});
|
|
204
|
+
} }, "Apontar Protesto"))) : null }),
|
|
205
|
+
React.createElement(ModalDadosCartorio, { isOpen: isModalCartorioOpen, onClose: function () { return setIsModalCartorioOpen(false); }, cartorio: (_e = (_d = globalData === null || globalData === void 0 ? void 0 : globalData.protestosData) === null || _d === void 0 ? void 0 : _d.cartorio) !== null && _e !== void 0 ? _e : null })));
|
|
198
206
|
};
|
|
199
207
|
export default React.memo(Protestos);
|
|
200
208
|
var templateObject_1, templateObject_2;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Protesto } from '../../utils/parseProtesto';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
export declare const ProtestoItem: React.MemoExoticComponent<({ protesto, showInstrumento }: {
|
|
3
|
+
export declare const ProtestoItem: React.MemoExoticComponent<({ protesto, showInstrumento, onOpenCartorioModal }: {
|
|
4
4
|
protesto: Protesto;
|
|
5
5
|
showInstrumento: boolean;
|
|
6
|
+
onOpenCartorioModal?: () => void;
|
|
6
7
|
}) => React.JSX.Element>;
|
|
7
8
|
export declare const Instrumento: ({ nm_chave, cpfCnpj }: {
|
|
8
9
|
nm_chave?: string;
|
|
@@ -37,7 +37,6 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
import { useGlobalData } from '../../contexts/globalDataContext';
|
|
38
38
|
import { formatMoney } from '../../utils/number';
|
|
39
39
|
import { isProtestoSPByNmChave } from '../../utils/protestoUf';
|
|
40
|
-
import { formatDocument } from '../../utils/string';
|
|
41
40
|
import React, { memo, useCallback, useContext, useEffect, useMemo, useState } from 'react';
|
|
42
41
|
import AddItemField from '../common/addItem';
|
|
43
42
|
import Button from '../common/button';
|
|
@@ -127,17 +126,34 @@ var AIIndicator = function () { return (React.createElement("span", { title: "In
|
|
|
127
126
|
fontSize: '0.8em',
|
|
128
127
|
cursor: 'help'
|
|
129
128
|
} }, "*")); };
|
|
129
|
+
var UfCell = function (_a) {
|
|
130
|
+
var uf = _a.uf, hasCartorio = _a.hasCartorio, onOpenCartorio = _a.onOpenCartorio;
|
|
131
|
+
var display = uf && uf.trim() !== '' ? uf : '—';
|
|
132
|
+
if (hasCartorio && onOpenCartorio) {
|
|
133
|
+
return (React.createElement("button", { type: "button", onClick: onOpenCartorio, title: "Ver dados do cart\u00F3rio", style: {
|
|
134
|
+
background: 'none',
|
|
135
|
+
border: 'none',
|
|
136
|
+
padding: 0,
|
|
137
|
+
cursor: 'pointer',
|
|
138
|
+
textDecoration: 'underline',
|
|
139
|
+
color: 'inherit',
|
|
140
|
+
font: 'inherit'
|
|
141
|
+
} }, display));
|
|
142
|
+
}
|
|
143
|
+
return (React.createElement("span", { title: !hasCartorio ? 'Dados do cartório não disponíveis' : undefined }, display));
|
|
144
|
+
};
|
|
130
145
|
export var ProtestoItem = memo(function (_a) {
|
|
131
|
-
var _b, _c;
|
|
132
|
-
var protesto = _a.protesto, showInstrumento = _a.showInstrumento;
|
|
146
|
+
var _b, _c, _d;
|
|
147
|
+
var protesto = _a.protesto, showInstrumento = _a.showInstrumento, onOpenCartorioModal = _a.onOpenCartorioModal;
|
|
133
148
|
var client = useContext(WebService);
|
|
134
|
-
var
|
|
135
|
-
var
|
|
136
|
-
var
|
|
137
|
-
var
|
|
138
|
-
var _f = useState(
|
|
139
|
-
var _g = useState(false),
|
|
140
|
-
var _h = useState(false),
|
|
149
|
+
var _e = useGlobalData(), setData = _e.setData, globalData = _e.data;
|
|
150
|
+
var cartorio = (_b = globalData === null || globalData === void 0 ? void 0 : globalData.protestosData) === null || _b === void 0 ? void 0 : _b.cartorio;
|
|
151
|
+
var iaOverrides = ((_c = globalData === null || globalData === void 0 ? void 0 : globalData.protestosData) === null || _c === void 0 ? void 0 : _c.iaOverrides) || {};
|
|
152
|
+
var refreshToken = ((_d = globalData === null || globalData === void 0 ? void 0 : globalData.protestosData) === null || _d === void 0 ? void 0 : _d.refreshToken) || 0;
|
|
153
|
+
var _f = useState(null), quemApresentou = _f[0], setQuemApresentou = _f[1];
|
|
154
|
+
var _g = useState(false), loading = _g[0], setLoading = _g[1];
|
|
155
|
+
var _h = useState(false), queued = _h[0], setQueued = _h[1];
|
|
156
|
+
var _j = useState(false), isAIData = _j[0], setIsAIData = _j[1];
|
|
141
157
|
var documento = protesto.cpfCnpj;
|
|
142
158
|
var nm_chave = protesto.nm_chave;
|
|
143
159
|
var formatBooleanField = function (value) {
|
|
@@ -213,11 +229,11 @@ export var ProtestoItem = memo(function (_a) {
|
|
|
213
229
|
return (React.createElement(ResultContent, { print: "repeat(7, 1fr)", desktop: "repeat(8, 1fr)", tablet: "repeat(4, 1fr)", mobile: "repeat(2, 1fr)" },
|
|
214
230
|
React.createElement(AddItemField, { name: "Quem Protestou", value: getQuemProtestouDisplay() }),
|
|
215
231
|
React.createElement(AddItemField, { name: "Atrav\u00E9s De", value: protesto.nomeApresentante }),
|
|
216
|
-
React.createElement(AddItemField, { name: "CPF/CNPJ Protestado", value: formatDocument(protesto.cpfCnpj) }),
|
|
217
232
|
React.createElement(AddItemField, { name: "Data Do Protesto", value: protesto.dataProtesto }),
|
|
218
233
|
React.createElement(AddItemField, { name: "Possui Anu\u00EAncia / Protesto Pago", value: formatBooleanField(String(protesto.temAnuencia)) }),
|
|
219
234
|
React.createElement(AddItemField, { name: "Valor Do Protesto", value: formatMoney(protesto.valor) }),
|
|
220
|
-
|
|
235
|
+
React.createElement(AddItemField, { name: "Custas de Cart\u00F3rio para Baixa", value: protesto.vl_custas ? formatMoney(protesto.vl_custas) : '—' }),
|
|
236
|
+
React.createElement(AddItemField, { name: "UF", value: React.createElement(UfCell, { uf: cartorio === null || cartorio === void 0 ? void 0 : cartorio.uf, hasCartorio: Boolean(cartorio), onOpenCartorio: onOpenCartorioModal }) }),
|
|
221
237
|
showInstrumento && React.createElement(Instrumento, { nm_chave: nm_chave, cpfCnpj: documento })));
|
|
222
238
|
});
|
|
223
239
|
export var Instrumento = function (_a) {
|
|
@@ -12,7 +12,6 @@ var __assign = (this && this.__assign) || function () {
|
|
|
12
12
|
import ProtestosIcon from '../../assets/icones/protestos';
|
|
13
13
|
import { useGlobalData } from '../../contexts/globalDataContext';
|
|
14
14
|
import { formatMoney } from '../../utils/number';
|
|
15
|
-
import { formatDocument } from '../../utils/string';
|
|
16
15
|
import React, { memo, useEffect, useMemo, useRef } from 'react';
|
|
17
16
|
import AddItemField from '../common/addItem';
|
|
18
17
|
import { Result, ResultContent } from '../interface/result';
|
|
@@ -23,10 +22,9 @@ import { adaptToUI, buildChartSeries } from './adaptToChart';
|
|
|
23
22
|
// Componente individual para cada protesto pago/baixado
|
|
24
23
|
var ProtestoHistoricoItemComponent = memo(function (_a) {
|
|
25
24
|
var protesto = _a.protesto;
|
|
26
|
-
return (React.createElement(ResultContent, { print: "repeat(
|
|
25
|
+
return (React.createElement(ResultContent, { print: "repeat(6, 1fr)", desktop: "repeat(7, 1fr)", tablet: "repeat(4, 1fr)", mobile: "repeat(2, 1fr)" },
|
|
27
26
|
React.createElement(AddItemField, { name: "Quem Protestou", value: protesto.nomeCedente }),
|
|
28
27
|
React.createElement(AddItemField, { name: "Atrav\u00E9s De", value: protesto.nomeApresentante }),
|
|
29
|
-
React.createElement(AddItemField, { name: "CPF/CNPJ Protestado", value: formatDocument(protesto.cpfCnpj) }),
|
|
30
28
|
React.createElement(AddItemField, { name: "Data Do Protesto", value: protesto.dataProtesto }),
|
|
31
29
|
React.createElement(AddItemField, { name: "Possui Anu\u00EAncia / Protesto Pago", value: protesto.temAnuencia ? 'Sim' : 'Não' }),
|
|
32
30
|
React.createElement(AddItemField, { name: "Valor Do Protesto", value: formatMoney(protesto.valor) })));
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Cartorio } from '@/@types/domain/cartorioTypes';
|
|
2
|
+
/**
|
|
3
|
+
* Parseia o nó `<cartorio>` do XML IEPTB e retorna um objeto Cartorio.
|
|
4
|
+
* XPaths relativos ao nó cartório (./nome, ./uf, etc.).
|
|
5
|
+
*/
|
|
6
|
+
export declare function parseCartorio(cartorioNode: Node | null | undefined): Cartorio | undefined;
|
|
@@ -0,0 +1,34 @@
|
|
|
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
|
+
import XPathUtils from '../utils/xpath';
|
|
13
|
+
/**
|
|
14
|
+
* Parseia o nó `<cartorio>` do XML IEPTB e retorna um objeto Cartorio.
|
|
15
|
+
* XPaths relativos ao nó cartório (./nome, ./uf, etc.).
|
|
16
|
+
*/
|
|
17
|
+
export function parseCartorio(cartorioNode) {
|
|
18
|
+
if (!cartorioNode)
|
|
19
|
+
return undefined;
|
|
20
|
+
var $ = function (xp) { return XPathUtils.select(xp, cartorioNode); };
|
|
21
|
+
var nome = $('string(./nome)');
|
|
22
|
+
var endereco = $('string(./endereco)');
|
|
23
|
+
var bairro = $('string(./bairro)');
|
|
24
|
+
var cidade = $('string(./cidade)');
|
|
25
|
+
var uf = $('string(./uf)');
|
|
26
|
+
var telefone = $('string(./telefone)');
|
|
27
|
+
var codigo_cartorio = $('string(./codigo_cartorio)');
|
|
28
|
+
var codigo_cidade = $('string(./codigo_cidade)');
|
|
29
|
+
var email = $('string(./email)');
|
|
30
|
+
var hasAny = [nome, endereco, bairro, cidade, uf, telefone, codigo_cartorio, codigo_cidade, email].some(function (v) { return v != null && String(v).trim() !== ''; });
|
|
31
|
+
if (!hasAny)
|
|
32
|
+
return undefined;
|
|
33
|
+
return __assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign({}, ((nome === null || nome === void 0 ? void 0 : nome.trim()) && { nome: nome.trim() })), ((endereco === null || endereco === void 0 ? void 0 : endereco.trim()) && { endereco: endereco.trim() })), ((bairro === null || bairro === void 0 ? void 0 : bairro.trim()) && { bairro: bairro.trim() })), ((cidade === null || cidade === void 0 ? void 0 : cidade.trim()) && { cidade: cidade.trim() })), ((uf === null || uf === void 0 ? void 0 : uf.trim()) && { uf: uf.trim() })), ((telefone === null || telefone === void 0 ? void 0 : telefone.trim()) && { telefone: telefone.trim() })), ((codigo_cartorio === null || codigo_cartorio === void 0 ? void 0 : codigo_cartorio.trim()) && { codigo_cartorio: codigo_cartorio.trim() })), ((codigo_cidade === null || codigo_cidade === void 0 ? void 0 : codigo_cidade.trim()) && { codigo_cidade: codigo_cidade.trim() })), ((email === null || email === void 0 ? void 0 : email.trim()) && { email: email.trim() }));
|
|
34
|
+
}
|