@linkiez/boleto-sdk 1.0.0 → 1.1.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.
- package/LICENSE +190 -190
- package/README.md +185 -168
- package/dist/adapters/IBankAdapter.d.ts +9 -0
- package/dist/adapters/IBankAdapter.d.ts.map +1 -0
- package/dist/adapters/IBankAdapter.js +3 -0
- package/dist/adapters/IBankAdapter.js.map +1 -0
- package/dist/adapters/bradesco/BradescoAdapter.d.ts +27 -0
- package/dist/adapters/bradesco/BradescoAdapter.d.ts.map +1 -0
- package/dist/adapters/bradesco/BradescoAdapter.js +130 -0
- package/dist/adapters/bradesco/BradescoAdapter.js.map +1 -0
- package/dist/adapters/bradesco/BradescoFieldParser.d.ts +4 -0
- package/dist/adapters/bradesco/BradescoFieldParser.d.ts.map +1 -0
- package/dist/adapters/bradesco/BradescoFieldParser.js +46 -0
- package/dist/adapters/bradesco/BradescoFieldParser.js.map +1 -0
- package/dist/adapters/bradesco/BradescoOccurrenceMapper.d.ts +5 -0
- package/dist/adapters/bradesco/BradescoOccurrenceMapper.d.ts.map +1 -0
- package/dist/adapters/bradesco/BradescoOccurrenceMapper.js +47 -0
- package/dist/adapters/bradesco/BradescoOccurrenceMapper.js.map +1 -0
- package/dist/adapters/bradesco/BradescoOurNumberCalculator.d.ts +5 -0
- package/dist/adapters/bradesco/BradescoOurNumberCalculator.d.ts.map +1 -0
- package/dist/adapters/bradesco/BradescoOurNumberCalculator.js +40 -0
- package/dist/adapters/bradesco/BradescoOurNumberCalculator.js.map +1 -0
- package/dist/adapters/bradesco/BradescoValidator.d.ts +7 -0
- package/dist/adapters/bradesco/BradescoValidator.d.ts.map +1 -0
- package/dist/adapters/bradesco/BradescoValidator.js +103 -0
- package/dist/adapters/bradesco/BradescoValidator.js.map +1 -0
- package/dist/adapters/bradesco/BradescoWalletValidator.d.ts +8 -0
- package/dist/adapters/bradesco/BradescoWalletValidator.d.ts.map +1 -0
- package/dist/adapters/bradesco/BradescoWalletValidator.js +55 -0
- package/dist/adapters/bradesco/BradescoWalletValidator.js.map +1 -0
- package/dist/adapters/bradesco/index.d.ts +7 -0
- package/dist/adapters/bradesco/index.d.ts.map +1 -0
- package/dist/adapters/bradesco/index.js +23 -0
- package/dist/adapters/bradesco/index.js.map +1 -0
- package/dist/adapters/index.d.ts +4 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +20 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/itau/ItauAdapter.d.ts +31 -0
- package/dist/adapters/itau/ItauAdapter.d.ts.map +1 -0
- package/dist/adapters/itau/ItauAdapter.js +158 -0
- package/dist/adapters/itau/ItauAdapter.js.map +1 -0
- package/dist/adapters/itau/ItauFieldParser.d.ts +4 -0
- package/dist/adapters/itau/ItauFieldParser.d.ts.map +1 -0
- package/dist/adapters/itau/ItauFieldParser.js +52 -0
- package/dist/adapters/itau/ItauFieldParser.js.map +1 -0
- package/dist/adapters/itau/ItauInstructionMapper.d.ts +5 -0
- package/dist/adapters/itau/ItauInstructionMapper.d.ts.map +1 -0
- package/dist/adapters/itau/ItauInstructionMapper.js +54 -0
- package/dist/adapters/itau/ItauInstructionMapper.js.map +1 -0
- package/dist/adapters/itau/ItauOccurrenceMapper.d.ts +5 -0
- package/dist/adapters/itau/ItauOccurrenceMapper.d.ts.map +1 -0
- package/dist/adapters/itau/ItauOccurrenceMapper.js +52 -0
- package/dist/adapters/itau/ItauOccurrenceMapper.js.map +1 -0
- package/dist/adapters/itau/ItauOurNumberCalculator.d.ts +5 -0
- package/dist/adapters/itau/ItauOurNumberCalculator.d.ts.map +1 -0
- package/dist/adapters/itau/ItauOurNumberCalculator.js +28 -0
- package/dist/adapters/itau/ItauOurNumberCalculator.js.map +1 -0
- package/dist/adapters/itau/ItauReturnMapper.d.ts +6 -0
- package/dist/adapters/itau/ItauReturnMapper.d.ts.map +1 -0
- package/dist/adapters/itau/ItauReturnMapper.js +71 -0
- package/dist/adapters/itau/ItauReturnMapper.js.map +1 -0
- package/dist/adapters/itau/ItauValidator.d.ts +7 -0
- package/dist/adapters/itau/ItauValidator.d.ts.map +1 -0
- package/dist/adapters/itau/ItauValidator.js +94 -0
- package/dist/adapters/itau/ItauValidator.js.map +1 -0
- package/dist/adapters/itau/ItauWalletValidator.d.ts +7 -0
- package/dist/adapters/itau/ItauWalletValidator.d.ts.map +1 -0
- package/dist/adapters/itau/ItauWalletValidator.js +57 -0
- package/dist/adapters/itau/ItauWalletValidator.js.map +1 -0
- package/dist/adapters/itau/index.d.ts +9 -0
- package/dist/adapters/itau/index.d.ts.map +1 -0
- package/dist/adapters/itau/index.js +25 -0
- package/dist/adapters/itau/index.js.map +1 -0
- package/dist/constants/bancos/ItauRejectionCodes.d.ts +2 -0
- package/dist/constants/bancos/ItauRejectionCodes.d.ts.map +1 -0
- package/dist/constants/bancos/ItauRejectionCodes.js +13 -0
- package/dist/constants/bancos/ItauRejectionCodes.js.map +1 -0
- package/dist/constants/bancos/index.d.ts +1 -0
- package/dist/constants/bancos/index.d.ts.map +1 -1
- package/dist/constants/bancos/index.js +1 -0
- package/dist/constants/bancos/index.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/templates/HtmlTemplateBuilder.js +182 -182
- package/dist/types/adapters/bradesco/index.d.ts +73 -0
- package/dist/types/adapters/bradesco/index.d.ts.map +1 -0
- package/dist/types/adapters/bradesco/index.js +3 -0
- package/dist/types/adapters/bradesco/index.js.map +1 -0
- package/dist/types/adapters/index.d.ts +3 -0
- package/dist/types/adapters/index.d.ts.map +1 -0
- package/dist/types/adapters/index.js +19 -0
- package/dist/types/adapters/index.js.map +1 -0
- package/dist/types/adapters/itau/index.d.ts +102 -0
- package/dist/types/adapters/itau/index.d.ts.map +1 -0
- package/dist/types/adapters/itau/index.js +3 -0
- package/dist/types/adapters/itau/index.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/utils/email/EmailTemplateGenerator.js +27 -27
- package/package.json +105 -105
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BRADESCO_OCCURRENCE_CODE_MAP = void 0;
|
|
4
|
+
exports.isValidBradescoOccurrenceCode = isValidBradescoOccurrenceCode;
|
|
5
|
+
exports.mapBradescoOccurrenceCode = mapBradescoOccurrenceCode;
|
|
6
|
+
exports.BRADESCO_OCCURRENCE_CODE_MAP = {
|
|
7
|
+
'02': { code: '02', category: 'entry', description: 'Entry confirmed' },
|
|
8
|
+
'03': { code: '03', category: 'rejection', description: 'Entry rejected' },
|
|
9
|
+
'06': { code: '06', category: 'settlement', description: 'Payment liquidation' },
|
|
10
|
+
'09': { code: '09', category: 'settlement', description: 'Protested and settled' },
|
|
11
|
+
'10': { code: '10', category: 'maintenance', description: 'Low requested' },
|
|
12
|
+
'11': { code: '11', category: 'maintenance', description: 'Title in portfolio' },
|
|
13
|
+
'12': { code: '12', category: 'instruction', description: 'Abatement granted' },
|
|
14
|
+
'13': { code: '13', category: 'instruction', description: 'Abatement canceled' },
|
|
15
|
+
'14': { code: '14', category: 'instruction', description: 'Due date change' },
|
|
16
|
+
'15': {
|
|
17
|
+
code: '15',
|
|
18
|
+
category: 'settlement',
|
|
19
|
+
description: 'Payment liquidation after low',
|
|
20
|
+
},
|
|
21
|
+
'16': {
|
|
22
|
+
code: '16',
|
|
23
|
+
category: 'instruction',
|
|
24
|
+
description: 'Instruction change confirmation',
|
|
25
|
+
},
|
|
26
|
+
'17': { code: '17', category: 'payer', description: 'Payer alteration' },
|
|
27
|
+
'18': { code: '18', category: 'rejection', description: 'Instruction rejected' },
|
|
28
|
+
'19': { code: '19', category: 'instruction', description: 'Instruction confirmation' },
|
|
29
|
+
'20': { code: '20', category: 'charge', description: 'Debited' },
|
|
30
|
+
'23': { code: '23', category: 'settlement', description: 'Bank transfer settlement' },
|
|
31
|
+
'24': { code: '24', category: 'rejection', description: 'Title rejected by CEP/UF' },
|
|
32
|
+
'25': { code: '25', category: 'rejection', description: 'Protest instruction rejected' },
|
|
33
|
+
'26': { code: '26', category: 'rejection', description: 'Protest title rejected' },
|
|
34
|
+
'27': { code: '27', category: 'rejection', description: 'Low instruction rejected' },
|
|
35
|
+
'28': { code: '28', category: 'charge', description: 'Tariff debit' },
|
|
36
|
+
'30': { code: '30', category: 'maintenance', description: 'Occurrence alteration' },
|
|
37
|
+
};
|
|
38
|
+
function isValidBradescoOccurrenceCode(occurrenceCode) {
|
|
39
|
+
return /^\d{2}$/.test(occurrenceCode) && occurrenceCode in exports.BRADESCO_OCCURRENCE_CODE_MAP;
|
|
40
|
+
}
|
|
41
|
+
function mapBradescoOccurrenceCode(occurrenceCode) {
|
|
42
|
+
if (!isValidBradescoOccurrenceCode(occurrenceCode)) {
|
|
43
|
+
throw new Error(`Unsupported Bradesco occurrence code: ${occurrenceCode}`);
|
|
44
|
+
}
|
|
45
|
+
return exports.BRADESCO_OCCURRENCE_CODE_MAP[occurrenceCode];
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=BradescoOccurrenceMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BradescoOccurrenceMapper.js","sourceRoot":"","sources":["../../../src/adapters/bradesco/BradescoOccurrenceMapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { BradescoOurNumberCheckDigit, BradescoOurNumberResult } from '../../types/adapters';
|
|
2
|
+
export declare function calculateBradescoOurNumberCheckDigit(baseNumber: string): BradescoOurNumberCheckDigit;
|
|
3
|
+
export declare function formatBradescoOurNumber(baseNumber: string): string;
|
|
4
|
+
export declare function buildBradescoOurNumber(baseNumber: string): BradescoOurNumberResult;
|
|
5
|
+
//# sourceMappingURL=BradescoOurNumberCalculator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BradescoOurNumberCalculator.d.ts","sourceRoot":"","sources":["../../../src/adapters/bradesco/BradescoOurNumberCalculator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAcjG,wBAAgB,oCAAoC,CAClD,UAAU,EAAE,MAAM,GACjB,2BAA2B,CA4B7B;AAQD,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGlE;AAQD,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,uBAAuB,CAQlF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calculateBradescoOurNumberCheckDigit = calculateBradescoOurNumberCheckDigit;
|
|
4
|
+
exports.formatBradescoOurNumber = formatBradescoOurNumber;
|
|
5
|
+
exports.buildBradescoOurNumber = buildBradescoOurNumber;
|
|
6
|
+
function calculateBradescoOurNumberCheckDigit(baseNumber) {
|
|
7
|
+
if (!baseNumber) {
|
|
8
|
+
throw new Error('Base number is required');
|
|
9
|
+
}
|
|
10
|
+
if (!/^\d+$/.test(baseNumber)) {
|
|
11
|
+
throw new Error('Base number must contain only digits');
|
|
12
|
+
}
|
|
13
|
+
let weight = 2;
|
|
14
|
+
let sum = 0;
|
|
15
|
+
for (let index = baseNumber.length - 1; index >= 0; index -= 1) {
|
|
16
|
+
sum += Number(baseNumber[index]) * weight;
|
|
17
|
+
weight = weight === 7 ? 2 : weight + 1;
|
|
18
|
+
}
|
|
19
|
+
const remainder = sum % 11;
|
|
20
|
+
if (remainder === 0) {
|
|
21
|
+
return '0';
|
|
22
|
+
}
|
|
23
|
+
if (remainder === 1) {
|
|
24
|
+
return 'P';
|
|
25
|
+
}
|
|
26
|
+
return String(11 - remainder);
|
|
27
|
+
}
|
|
28
|
+
function formatBradescoOurNumber(baseNumber) {
|
|
29
|
+
const checkDigit = calculateBradescoOurNumberCheckDigit(baseNumber);
|
|
30
|
+
return `${baseNumber}-${checkDigit}`;
|
|
31
|
+
}
|
|
32
|
+
function buildBradescoOurNumber(baseNumber) {
|
|
33
|
+
const checkDigit = calculateBradescoOurNumberCheckDigit(baseNumber);
|
|
34
|
+
return {
|
|
35
|
+
baseNumber,
|
|
36
|
+
checkDigit,
|
|
37
|
+
formatted: `${baseNumber}-${checkDigit}`,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=BradescoOurNumberCalculator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BradescoOurNumberCalculator.js","sourceRoot":"","sources":["../../../src/adapters/bradesco/BradescoOurNumberCalculator.ts"],"names":[],"mappings":";;AAcA,oFA8BC;AAQD,0DAGC;AAQD,wDAQC;AAzDD,SAAgB,oCAAoC,CAClD,UAAkB;IAElB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,KAAK,IAAI,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC/D,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC;QAC1C,MAAM,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,SAAS,GAAG,GAAG,GAAG,EAAE,CAAC;IAE3B,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,MAAM,CAAC,EAAE,GAAG,SAAS,CAAgC,CAAC;AAC/D,CAAC;AAQD,SAAgB,uBAAuB,CAAC,UAAkB;IACxD,MAAM,UAAU,GAAG,oCAAoC,CAAC,UAAU,CAAC,CAAC;IACpE,OAAO,GAAG,UAAU,IAAI,UAAU,EAAE,CAAC;AACvC,CAAC;AAQD,SAAgB,sBAAsB,CAAC,UAAkB;IACvD,MAAM,UAAU,GAAG,oCAAoC,CAAC,UAAU,CAAC,CAAC;IAEpE,OAAO;QACL,UAAU;QACV,UAAU;QACV,SAAS,EAAE,GAAG,UAAU,IAAI,UAAU,EAAE;KACzC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ValidationResult } from '../../validators/common';
|
|
2
|
+
import type { BradescoRemittanceFields, BradescoReturnFields } from '../../types/adapters';
|
|
3
|
+
export declare function validateBradescoRemittanceFields(fields: BradescoRemittanceFields): ValidationResult;
|
|
4
|
+
export declare function validateBradescoReturnFields(fields: BradescoReturnFields): ValidationResult;
|
|
5
|
+
export declare function assertValidBradescoRemittanceFields(fields: BradescoRemittanceFields): void;
|
|
6
|
+
export declare function assertValidBradescoReturnFields(fields: BradescoReturnFields): void;
|
|
7
|
+
//# sourceMappingURL=BradescoValidator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BradescoValidator.d.ts","sourceRoot":"","sources":["../../../src/adapters/bradesco/BradescoValidator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AA0F3F,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,wBAAwB,GAAG,gBAAgB,CA8BnG;AAQD,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,oBAAoB,GAAG,gBAAgB,CAS3F;AAQD,wBAAgB,mCAAmC,CAAC,MAAM,EAAE,wBAAwB,GAAG,IAAI,CAM1F;AAQD,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAMlF"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateBradescoRemittanceFields = validateBradescoRemittanceFields;
|
|
4
|
+
exports.validateBradescoReturnFields = validateBradescoReturnFields;
|
|
5
|
+
exports.assertValidBradescoRemittanceFields = assertValidBradescoRemittanceFields;
|
|
6
|
+
exports.assertValidBradescoReturnFields = assertValidBradescoReturnFields;
|
|
7
|
+
const BradescoOurNumberCalculator_1 = require("./BradescoOurNumberCalculator");
|
|
8
|
+
const BradescoOccurrenceMapper_1 = require("./BradescoOccurrenceMapper");
|
|
9
|
+
const BradescoWalletValidator_1 = require("./BradescoWalletValidator");
|
|
10
|
+
function createValidationResult(errors) {
|
|
11
|
+
return {
|
|
12
|
+
isValid: errors.length === 0,
|
|
13
|
+
errors,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
function isTwoDigitCode(value) {
|
|
17
|
+
return /^\d{2}$/.test(value);
|
|
18
|
+
}
|
|
19
|
+
function isValidBradescoCheckDigit(value) {
|
|
20
|
+
return value === undefined || /^[0-9P]$/.test(value);
|
|
21
|
+
}
|
|
22
|
+
function validateBradescoWalletAndOccurrence(fields, errors) {
|
|
23
|
+
if (fields.walletNumber && !(0, BradescoWalletValidator_1.isValidBradescoWallet)(fields.walletNumber)) {
|
|
24
|
+
errors.push(`Unsupported Bradesco wallet code: ${fields.walletNumber}`);
|
|
25
|
+
}
|
|
26
|
+
if (fields.walletType !== undefined && fields.walletType !== 'R') {
|
|
27
|
+
errors.push(`Invalid Bradesco wallet type: ${fields.walletType}`);
|
|
28
|
+
}
|
|
29
|
+
if (fields.occurrenceCode && !(0, BradescoOccurrenceMapper_1.isValidBradescoOccurrenceCode)(fields.occurrenceCode)) {
|
|
30
|
+
errors.push(`Unsupported Bradesco occurrence code: ${fields.occurrenceCode}`);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
function validateBradescoRawCheckDigits(fields, errors) {
|
|
34
|
+
if (!isValidBradescoCheckDigit(fields.ourNumberCheckDigit)) {
|
|
35
|
+
errors.push(`Invalid Bradesco our-number check digit: ${fields.ourNumberCheckDigit ?? ''}`.trim());
|
|
36
|
+
}
|
|
37
|
+
if (!isValidBradescoCheckDigit(fields.confirmedOurNumberCheckDigit)) {
|
|
38
|
+
errors.push(`Invalid Bradesco confirmed our-number check digit: ${fields.confirmedOurNumberCheckDigit ?? ''}`.trim());
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function validateBradescoCalculatedCheckDigits(fields, errors) {
|
|
42
|
+
if (fields.ourNumber && fields.ourNumberCheckDigit && isValidBradescoCheckDigit(fields.ourNumberCheckDigit)) {
|
|
43
|
+
const expectedCheckDigit = (0, BradescoOurNumberCalculator_1.calculateBradescoOurNumberCheckDigit)(fields.ourNumber);
|
|
44
|
+
if (fields.ourNumberCheckDigit !== expectedCheckDigit) {
|
|
45
|
+
errors.push(`Invalid Bradesco our-number check digit for ${fields.ourNumber}: expected ${expectedCheckDigit}, got ${fields.ourNumberCheckDigit}`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (fields.confirmedOurNumber &&
|
|
49
|
+
fields.confirmedOurNumberCheckDigit &&
|
|
50
|
+
isValidBradescoCheckDigit(fields.confirmedOurNumberCheckDigit)) {
|
|
51
|
+
const expectedConfirmedCheckDigit = (0, BradescoOurNumberCalculator_1.calculateBradescoOurNumberCheckDigit)(fields.confirmedOurNumber);
|
|
52
|
+
if (fields.confirmedOurNumberCheckDigit !== expectedConfirmedCheckDigit) {
|
|
53
|
+
errors.push(`Invalid Bradesco confirmed our-number check digit for ${fields.confirmedOurNumber}: expected ${expectedConfirmedCheckDigit}, got ${fields.confirmedOurNumberCheckDigit}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function validateBradescoOurNumberConsistency(fields, errors) {
|
|
58
|
+
if (fields.ourNumber && fields.confirmedOurNumber && fields.ourNumber !== fields.confirmedOurNumber) {
|
|
59
|
+
errors.push('Our-number does not match confirmed our-number');
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
function validateBradescoRemittanceFields(fields) {
|
|
63
|
+
const errors = [];
|
|
64
|
+
if (!isTwoDigitCode(fields.instructionCode)) {
|
|
65
|
+
errors.push(`Invalid Bradesco instruction code: ${fields.instructionCode}`);
|
|
66
|
+
}
|
|
67
|
+
if (!fields.walletNumber || !(0, BradescoWalletValidator_1.isValidBradescoWallet)(fields.walletNumber)) {
|
|
68
|
+
errors.push(`Unsupported Bradesco wallet code: ${fields.walletNumber ?? ''}`.trim());
|
|
69
|
+
}
|
|
70
|
+
if (fields.walletType !== 'R') {
|
|
71
|
+
errors.push(`Invalid Bradesco wallet type: ${fields.walletType ?? ''}`);
|
|
72
|
+
}
|
|
73
|
+
if (!fields.occurrenceCode ||
|
|
74
|
+
(fields.occurrenceCode !== '01' && !(0, BradescoOccurrenceMapper_1.isValidBradescoOccurrenceCode)(fields.occurrenceCode))) {
|
|
75
|
+
errors.push(`Unsupported Bradesco occurrence code: ${fields.occurrenceCode ?? ''}`);
|
|
76
|
+
}
|
|
77
|
+
if (fields.daysCount !== undefined &&
|
|
78
|
+
(!Number.isInteger(fields.daysCount) || fields.daysCount < 0 || fields.daysCount > 99)) {
|
|
79
|
+
errors.push(`Invalid Bradesco days count: ${fields.daysCount}`);
|
|
80
|
+
}
|
|
81
|
+
return createValidationResult(errors);
|
|
82
|
+
}
|
|
83
|
+
function validateBradescoReturnFields(fields) {
|
|
84
|
+
const errors = [];
|
|
85
|
+
validateBradescoWalletAndOccurrence(fields, errors);
|
|
86
|
+
validateBradescoRawCheckDigits(fields, errors);
|
|
87
|
+
validateBradescoCalculatedCheckDigits(fields, errors);
|
|
88
|
+
validateBradescoOurNumberConsistency(fields, errors);
|
|
89
|
+
return createValidationResult(errors);
|
|
90
|
+
}
|
|
91
|
+
function assertValidBradescoRemittanceFields(fields) {
|
|
92
|
+
const result = validateBradescoRemittanceFields(fields);
|
|
93
|
+
if (!result.isValid) {
|
|
94
|
+
throw new Error('Invalid Bradesco remittance fields');
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
function assertValidBradescoReturnFields(fields) {
|
|
98
|
+
const result = validateBradescoReturnFields(fields);
|
|
99
|
+
if (!result.isValid) {
|
|
100
|
+
throw new Error('Invalid Bradesco return fields');
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=BradescoValidator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BradescoValidator.js","sourceRoot":"","sources":["../../../src/adapters/bradesco/BradescoValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BradescoWalletCode, BradescoWalletConfig } from '../../types/adapters';
|
|
2
|
+
export declare const BRADESCO_SUPPORTED_WALLETS: readonly BradescoWalletCode[];
|
|
3
|
+
export declare const BRADESCO_WALLET_CONFIG_MAP: Record<BradescoWalletCode, BradescoWalletConfig>;
|
|
4
|
+
export declare function normalizeBradescoWalletCode(walletCode: string): BradescoWalletCode | undefined;
|
|
5
|
+
export declare function isValidBradescoWallet(walletCode: string): boolean;
|
|
6
|
+
export declare function getBradescoWalletConfig(walletCode: string): BradescoWalletConfig | undefined;
|
|
7
|
+
export declare function assertValidBradescoWallet(walletCode: string): void;
|
|
8
|
+
//# sourceMappingURL=BradescoWalletValidator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BradescoWalletValidator.d.ts","sourceRoot":"","sources":["../../../src/adapters/bradesco/BradescoWalletValidator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAKrF,eAAO,MAAM,0BAA0B,EAAE,SAAS,kBAAkB,EAAgC,CAAC;AAKrG,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,kBAAkB,EAAE,oBAAoB,CAsBvF,CAAC;AAQF,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAY9F;AAQD,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEjE;AAQD,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAQ5F;AAQD,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAIlE"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BRADESCO_WALLET_CONFIG_MAP = exports.BRADESCO_SUPPORTED_WALLETS = void 0;
|
|
4
|
+
exports.normalizeBradescoWalletCode = normalizeBradescoWalletCode;
|
|
5
|
+
exports.isValidBradescoWallet = isValidBradescoWallet;
|
|
6
|
+
exports.getBradescoWalletConfig = getBradescoWalletConfig;
|
|
7
|
+
exports.assertValidBradescoWallet = assertValidBradescoWallet;
|
|
8
|
+
exports.BRADESCO_SUPPORTED_WALLETS = ['09', '19', '26'];
|
|
9
|
+
exports.BRADESCO_WALLET_CONFIG_MAP = {
|
|
10
|
+
'09': {
|
|
11
|
+
code: '09',
|
|
12
|
+
description: 'Simple collection portfolio',
|
|
13
|
+
cnab240PortfolioCode: '09',
|
|
14
|
+
cnab400WalletType: 'R',
|
|
15
|
+
aliases: ['09', '009'],
|
|
16
|
+
},
|
|
17
|
+
'19': {
|
|
18
|
+
code: '19',
|
|
19
|
+
description: 'Registered collection portfolio',
|
|
20
|
+
cnab240PortfolioCode: '19',
|
|
21
|
+
cnab400WalletType: 'R',
|
|
22
|
+
aliases: ['19', '019'],
|
|
23
|
+
},
|
|
24
|
+
'26': {
|
|
25
|
+
code: '26',
|
|
26
|
+
description: 'Guaranteed collection portfolio',
|
|
27
|
+
cnab240PortfolioCode: '26',
|
|
28
|
+
cnab400WalletType: 'R',
|
|
29
|
+
aliases: ['26', '026'],
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
function normalizeBradescoWalletCode(walletCode) {
|
|
33
|
+
if (!walletCode) {
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
const normalized = walletCode.trim();
|
|
37
|
+
const match = Object.values(exports.BRADESCO_WALLET_CONFIG_MAP).find((config) => config.aliases.includes(normalized));
|
|
38
|
+
return match?.code;
|
|
39
|
+
}
|
|
40
|
+
function isValidBradescoWallet(walletCode) {
|
|
41
|
+
return normalizeBradescoWalletCode(walletCode) !== undefined;
|
|
42
|
+
}
|
|
43
|
+
function getBradescoWalletConfig(walletCode) {
|
|
44
|
+
const normalized = normalizeBradescoWalletCode(walletCode);
|
|
45
|
+
if (!normalized) {
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
return exports.BRADESCO_WALLET_CONFIG_MAP[normalized];
|
|
49
|
+
}
|
|
50
|
+
function assertValidBradescoWallet(walletCode) {
|
|
51
|
+
if (!isValidBradescoWallet(walletCode)) {
|
|
52
|
+
throw new Error(`Unsupported Bradesco wallet code: ${walletCode}`);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=BradescoWalletValidator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BradescoWalletValidator.js","sourceRoot":"","sources":["../../../src/adapters/bradesco/BradescoWalletValidator.ts"],"names":[],"mappings":";;;AAwCA,kEAYC;AAQD,sDAEC;AAQD,0DAQC;AAQD,8DAIC;AArFY,QAAA,0BAA0B,GAAkC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAC;AAKxF,QAAA,0BAA0B,GAAqD;IAC1F,IAAI,EAAE;QACJ,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,6BAA6B;QAC1C,oBAAoB,EAAE,IAAI;QAC1B,iBAAiB,EAAE,GAAG;QACtB,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;KACvB;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,iCAAiC;QAC9C,oBAAoB,EAAE,IAAI;QAC1B,iBAAiB,EAAE,GAAG;QACtB,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;KACvB;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,iCAAiC;QAC9C,oBAAoB,EAAE,IAAI;QAC1B,iBAAiB,EAAE,GAAG;QACtB,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;KACvB;CACF,CAAC;AAQF,SAAgB,2BAA2B,CAAC,UAAkB;IAC5D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;IAErC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,kCAA0B,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CACtE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CACpC,CAAC;IAEF,OAAO,KAAK,EAAE,IAAI,CAAC;AACrB,CAAC;AAQD,SAAgB,qBAAqB,CAAC,UAAkB;IACtD,OAAO,2BAA2B,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC;AAC/D,CAAC;AAQD,SAAgB,uBAAuB,CAAC,UAAkB;IACxD,MAAM,UAAU,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAC;IAE3D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,kCAA0B,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC;AAQD,SAAgB,yBAAyB,CAAC,UAAkB;IAC1D,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,qCAAqC,UAAU,EAAE,CAAC,CAAC;IACrE,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './BradescoAdapter';
|
|
2
|
+
export * from './BradescoFieldParser';
|
|
3
|
+
export * from './BradescoOccurrenceMapper';
|
|
4
|
+
export * from './BradescoOurNumberCalculator';
|
|
5
|
+
export * from './BradescoValidator';
|
|
6
|
+
export * from './BradescoWalletValidator';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/bradesco/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./BradescoAdapter"), exports);
|
|
18
|
+
__exportStar(require("./BradescoFieldParser"), exports);
|
|
19
|
+
__exportStar(require("./BradescoOccurrenceMapper"), exports);
|
|
20
|
+
__exportStar(require("./BradescoOurNumberCalculator"), exports);
|
|
21
|
+
__exportStar(require("./BradescoValidator"), exports);
|
|
22
|
+
__exportStar(require("./BradescoWalletValidator"), exports);
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/bradesco/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,wDAAsC;AACtC,6DAA2C;AAC3C,gEAA8C;AAC9C,sDAAoC;AACpC,4DAA0C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./IBankAdapter"), exports);
|
|
18
|
+
__exportStar(require("./itau"), exports);
|
|
19
|
+
__exportStar(require("./bradesco"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,yCAAuB;AACvB,6CAA2B"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ItauCnab240Segment, ItauCnab400RemittanceDetail, ItauCnab400ReturnDetail, ItauInstructionMapping, ItauLiquidationMapping, ItauOccurrenceMapping, ItauOurNumberResult, ItauRejectionMessageMapping, ItauRemittanceFields, ItauWalletConfig, ItauReturnFields } from '../../types/adapters';
|
|
2
|
+
import type { Batch as Cnab240Batch, Cnab240File, DetailRecord as Cnab240DetailRecord } from '../../types/cnab240';
|
|
3
|
+
import type { IBankAdapter } from '../IBankAdapter';
|
|
4
|
+
export declare class ItauAdapter implements IBankAdapter<ItauWalletConfig, ItauCnab400RemittanceDetail, ItauCnab400ReturnDetail, ItauCnab240Segment> {
|
|
5
|
+
private buildCnab240Validation;
|
|
6
|
+
private static extractDetailLines;
|
|
7
|
+
isSupportedWallet(walletCode: string): boolean;
|
|
8
|
+
assertSupportedWallet(walletCode: string): void;
|
|
9
|
+
getWalletConfig(walletCode: string): ItauWalletConfig | undefined;
|
|
10
|
+
formatOurNumber(baseNumber: string): string;
|
|
11
|
+
buildOurNumber(baseNumber: string): ItauOurNumberResult;
|
|
12
|
+
mapOccurrenceCode(occurrenceCode: string): ItauOccurrenceMapping;
|
|
13
|
+
mapLiquidationCode(liquidationCode: string): ItauLiquidationMapping;
|
|
14
|
+
mapRejectionMessage(rejectionMessage: string | undefined): ItauRejectionMessageMapping | undefined;
|
|
15
|
+
mapInstructionCode(instructionCode: string): ItauInstructionMapping;
|
|
16
|
+
parseRemittanceFields(line: string): ItauRemittanceFields;
|
|
17
|
+
parseReturnFields(line: string): ItauReturnFields;
|
|
18
|
+
validateRemittanceFields(fields: ItauRemittanceFields): import("../..").ValidationResult;
|
|
19
|
+
validateReturnFields(fields: ItauReturnFields): import("../..").ValidationResult;
|
|
20
|
+
buildRemittanceDetail(line: string): ItauCnab400RemittanceDetail;
|
|
21
|
+
buildReturnDetail(line: string): ItauCnab400ReturnDetail;
|
|
22
|
+
buildRemittanceDetailsFromContent(content: string): ItauCnab400RemittanceDetail[];
|
|
23
|
+
buildReturnDetailsFromContent(content: string): ItauCnab400ReturnDetail[];
|
|
24
|
+
buildCnab240Detail(detail: Cnab240DetailRecord): ItauCnab240Segment;
|
|
25
|
+
buildCnab240Details(details: Cnab240DetailRecord[]): ItauCnab240Segment[];
|
|
26
|
+
buildCnab240DetailsFromBatch(batch: Cnab240Batch): ItauCnab240Segment[];
|
|
27
|
+
buildCnab240DetailsFromFile(file: Cnab240File): ItauCnab240Segment[];
|
|
28
|
+
buildCnab240DetailsFromContent(content: string): ItauCnab240Segment[];
|
|
29
|
+
}
|
|
30
|
+
export declare function createItauAdapter(): ItauAdapter;
|
|
31
|
+
//# sourceMappingURL=ItauAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ItauAdapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/itau/ItauAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC3B,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,2BAA2B,EAC3B,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,KAAK,IAAI,YAAY,EACrB,WAAW,EACX,YAAY,IAAI,mBAAmB,EACpC,MAAM,qBAAqB,CAAC;AAkB7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAKpD,qBAAa,WAAY,YAAW,YAAY,CAC9C,gBAAgB,EAChB,2BAA2B,EAC3B,uBAAuB,EACvB,kBAAkB,CACnB;IACC,OAAO,CAAC,sBAAsB;IAgB9B,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAiB1B,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAU9C,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAU/C,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAUjE,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAU3C,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,mBAAmB;IAUvD,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,qBAAqB;IAUhE,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,sBAAsB;IAUnE,mBAAmB,CACxB,gBAAgB,EAAE,MAAM,GAAG,SAAS,GACnC,2BAA2B,GAAG,SAAS;IAUnC,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,sBAAsB;IAUnE,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB;IAUzD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB;IAUjD,wBAAwB,CAAC,MAAM,EAAE,oBAAoB;IAUrD,oBAAoB,CAAC,MAAM,EAAE,gBAAgB;IAU7C,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,2BAA2B;IAgChE,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB;IAmCxD,iCAAiC,CAAC,OAAO,EAAE,MAAM,GAAG,2BAA2B,EAAE;IAUjF,6BAA6B,CAAC,OAAO,EAAE,MAAM,GAAG,uBAAuB,EAAE;IAUzE,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,kBAAkB;IAyBnE,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,kBAAkB,EAAE;IAUzE,4BAA4B,CAAC,KAAK,EAAE,YAAY,GAAG,kBAAkB,EAAE;IAUvE,2BAA2B,CAAC,IAAI,EAAE,WAAW,GAAG,kBAAkB,EAAE;IAUpE,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB,EAAE;CAI7E;AAYD,wBAAgB,iBAAiB,IAAI,WAAW,CAE/C"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ItauAdapter = void 0;
|
|
4
|
+
exports.createItauAdapter = createItauAdapter;
|
|
5
|
+
const cnab240_1 = require("../../parsers/cnab240");
|
|
6
|
+
const cnab400_1 = require("../../parsers/cnab400");
|
|
7
|
+
const ItauFieldParser_1 = require("./ItauFieldParser");
|
|
8
|
+
const ItauInstructionMapper_1 = require("./ItauInstructionMapper");
|
|
9
|
+
const ItauOurNumberCalculator_1 = require("./ItauOurNumberCalculator");
|
|
10
|
+
const ItauOccurrenceMapper_1 = require("./ItauOccurrenceMapper");
|
|
11
|
+
const ItauReturnMapper_1 = require("./ItauReturnMapper");
|
|
12
|
+
const ItauValidator_1 = require("./ItauValidator");
|
|
13
|
+
const ItauWalletValidator_1 = require("./ItauWalletValidator");
|
|
14
|
+
class ItauAdapter {
|
|
15
|
+
buildCnab240Validation(walletNumber) {
|
|
16
|
+
const errors = [];
|
|
17
|
+
if (!walletNumber || !this.getWalletConfig(walletNumber)) {
|
|
18
|
+
errors.push(`Unsupported Itau wallet code: ${walletNumber ?? ''}`.trim());
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
isValid: errors.length === 0,
|
|
22
|
+
errors,
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
static extractDetailLines(content) {
|
|
26
|
+
if (!content || content.trim().length === 0) {
|
|
27
|
+
return [];
|
|
28
|
+
}
|
|
29
|
+
return content
|
|
30
|
+
.replaceAll('\r', '')
|
|
31
|
+
.split('\n')
|
|
32
|
+
.filter((line) => line.length > 0 && line.startsWith('1'));
|
|
33
|
+
}
|
|
34
|
+
isSupportedWallet(walletCode) {
|
|
35
|
+
return (0, ItauWalletValidator_1.isValidItauWallet)(walletCode);
|
|
36
|
+
}
|
|
37
|
+
assertSupportedWallet(walletCode) {
|
|
38
|
+
(0, ItauWalletValidator_1.assertValidItauWallet)(walletCode);
|
|
39
|
+
}
|
|
40
|
+
getWalletConfig(walletCode) {
|
|
41
|
+
return (0, ItauWalletValidator_1.getItauWalletConfig)(walletCode);
|
|
42
|
+
}
|
|
43
|
+
formatOurNumber(baseNumber) {
|
|
44
|
+
return (0, ItauOurNumberCalculator_1.formatItauOurNumber)(baseNumber);
|
|
45
|
+
}
|
|
46
|
+
buildOurNumber(baseNumber) {
|
|
47
|
+
return (0, ItauOurNumberCalculator_1.buildItauOurNumber)(baseNumber);
|
|
48
|
+
}
|
|
49
|
+
mapOccurrenceCode(occurrenceCode) {
|
|
50
|
+
return (0, ItauOccurrenceMapper_1.mapItauOccurrenceCode)(occurrenceCode);
|
|
51
|
+
}
|
|
52
|
+
mapLiquidationCode(liquidationCode) {
|
|
53
|
+
return (0, ItauReturnMapper_1.mapItauLiquidationCode)(liquidationCode);
|
|
54
|
+
}
|
|
55
|
+
mapRejectionMessage(rejectionMessage) {
|
|
56
|
+
return (0, ItauReturnMapper_1.mapItauRejectionMessage)(rejectionMessage);
|
|
57
|
+
}
|
|
58
|
+
mapInstructionCode(instructionCode) {
|
|
59
|
+
return (0, ItauInstructionMapper_1.mapItauInstructionCode)(instructionCode);
|
|
60
|
+
}
|
|
61
|
+
parseRemittanceFields(line) {
|
|
62
|
+
return (0, ItauFieldParser_1.parseItauRemittanceFields)(line);
|
|
63
|
+
}
|
|
64
|
+
parseReturnFields(line) {
|
|
65
|
+
return (0, ItauFieldParser_1.parseItauReturnFields)(line);
|
|
66
|
+
}
|
|
67
|
+
validateRemittanceFields(fields) {
|
|
68
|
+
return (0, ItauValidator_1.validateItauRemittanceFields)(fields);
|
|
69
|
+
}
|
|
70
|
+
validateReturnFields(fields) {
|
|
71
|
+
return (0, ItauValidator_1.validateItauReturnFields)(fields);
|
|
72
|
+
}
|
|
73
|
+
buildRemittanceDetail(line) {
|
|
74
|
+
const detail = (0, cnab400_1.parseDetailRecord)(line);
|
|
75
|
+
const fields = this.parseRemittanceFields(line);
|
|
76
|
+
const wallet = fields.walletNumber ? (0, ItauWalletValidator_1.getItauWalletConfig)(fields.walletNumber) : undefined;
|
|
77
|
+
const validation = this.validateRemittanceFields(fields);
|
|
78
|
+
const instructionCode1 = detail.instructionCode1 && (0, ItauInstructionMapper_1.isValidItauInstructionCode)(detail.instructionCode1)
|
|
79
|
+
? this.mapInstructionCode(detail.instructionCode1)
|
|
80
|
+
: undefined;
|
|
81
|
+
const instructionCode2 = detail.instructionCode2 && (0, ItauInstructionMapper_1.isValidItauInstructionCode)(detail.instructionCode2)
|
|
82
|
+
? this.mapInstructionCode(detail.instructionCode2)
|
|
83
|
+
: undefined;
|
|
84
|
+
return {
|
|
85
|
+
movementType: 'remittance',
|
|
86
|
+
detail,
|
|
87
|
+
fields,
|
|
88
|
+
wallet,
|
|
89
|
+
instructionCode1,
|
|
90
|
+
instructionCode2,
|
|
91
|
+
validation,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
buildReturnDetail(line) {
|
|
95
|
+
const detail = (0, cnab400_1.parseReturnDetailRecord)(line);
|
|
96
|
+
const fields = this.parseReturnFields(line);
|
|
97
|
+
const wallet = fields.walletNumber ? (0, ItauWalletValidator_1.getItauWalletConfig)(fields.walletNumber) : undefined;
|
|
98
|
+
const validation = this.validateReturnFields(fields);
|
|
99
|
+
const occurrence = (0, ItauOccurrenceMapper_1.isValidItauOccurrenceCode)(detail.occurrenceCode)
|
|
100
|
+
? this.mapOccurrenceCode(detail.occurrenceCode)
|
|
101
|
+
: undefined;
|
|
102
|
+
const liquidation = fields.liquidationCode && (0, ItauReturnMapper_1.isValidItauLiquidationCode)(fields.liquidationCode)
|
|
103
|
+
? this.mapLiquidationCode(fields.liquidationCode)
|
|
104
|
+
: undefined;
|
|
105
|
+
const rejection = this.mapRejectionMessage(fields.rejectionMessage);
|
|
106
|
+
return {
|
|
107
|
+
movementType: 'return',
|
|
108
|
+
detail,
|
|
109
|
+
fields,
|
|
110
|
+
wallet,
|
|
111
|
+
occurrence,
|
|
112
|
+
liquidation,
|
|
113
|
+
rejection,
|
|
114
|
+
validation,
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
buildRemittanceDetailsFromContent(content) {
|
|
118
|
+
return ItauAdapter.extractDetailLines(content).map((line) => this.buildRemittanceDetail(line));
|
|
119
|
+
}
|
|
120
|
+
buildReturnDetailsFromContent(content) {
|
|
121
|
+
return ItauAdapter.extractDetailLines(content).map((line) => this.buildReturnDetail(line));
|
|
122
|
+
}
|
|
123
|
+
buildCnab240Detail(detail) {
|
|
124
|
+
const walletNumber = detail.segmentP.portfolioCode;
|
|
125
|
+
const wallet = (0, ItauWalletValidator_1.getItauWalletConfig)(walletNumber);
|
|
126
|
+
const occurrenceCode = detail.segmentP.occurrenceCode;
|
|
127
|
+
const occurrence = (0, ItauOccurrenceMapper_1.isValidItauOccurrenceCode)(occurrenceCode)
|
|
128
|
+
? this.mapOccurrenceCode(occurrenceCode)
|
|
129
|
+
: undefined;
|
|
130
|
+
return {
|
|
131
|
+
movementType: 'cnab240',
|
|
132
|
+
detail,
|
|
133
|
+
walletNumber,
|
|
134
|
+
wallet,
|
|
135
|
+
occurrenceCode,
|
|
136
|
+
occurrence,
|
|
137
|
+
validation: this.buildCnab240Validation(walletNumber),
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
buildCnab240Details(details) {
|
|
141
|
+
return details.map((detail) => this.buildCnab240Detail(detail));
|
|
142
|
+
}
|
|
143
|
+
buildCnab240DetailsFromBatch(batch) {
|
|
144
|
+
return this.buildCnab240Details(batch.details);
|
|
145
|
+
}
|
|
146
|
+
buildCnab240DetailsFromFile(file) {
|
|
147
|
+
return file.batches.flatMap((batch) => this.buildCnab240DetailsFromBatch(batch));
|
|
148
|
+
}
|
|
149
|
+
buildCnab240DetailsFromContent(content) {
|
|
150
|
+
const file = (0, cnab240_1.parseCnab240)(content);
|
|
151
|
+
return this.buildCnab240DetailsFromFile(file);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
exports.ItauAdapter = ItauAdapter;
|
|
155
|
+
function createItauAdapter() {
|
|
156
|
+
return new ItauAdapter();
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=ItauAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ItauAdapter.js","sourceRoot":"","sources":["../../../src/adapters/itau/ItauAdapter.ts"],"names":[],"mappings":";;;AAiXA,8CAEC;AAjWD,mDAAqD;AACrD,mDAAmF;AACnF,uDAAqF;AACrF,mEAA6F;AAC7F,uEAAoF;AACpF,iEAA0F;AAC1F,yDAI4B;AAC5B,mDAAyF;AACzF,+DAI+B;AAM/B,MAAa,WAAW;IAMd,sBAAsB,CAAC,YAAgC;QAI7D,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,iCAAiC,YAAY,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC5B,MAAM;SACP,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,kBAAkB,CAAC,OAAe;QAC/C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5C,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,OAAO;aACX,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;aACpB,KAAK,CAAC,IAAI,CAAC;aACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;IAQM,iBAAiB,CAAC,UAAkB;QACzC,OAAO,IAAA,uCAAiB,EAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAQM,qBAAqB,CAAC,UAAkB;QAC7C,IAAA,2CAAqB,EAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAQM,eAAe,CAAC,UAAkB;QACvC,OAAO,IAAA,yCAAmB,EAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAQM,eAAe,CAAC,UAAkB;QACvC,OAAO,IAAA,6CAAmB,EAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAQM,cAAc,CAAC,UAAkB;QACtC,OAAO,IAAA,4CAAkB,EAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAQM,iBAAiB,CAAC,cAAsB;QAC7C,OAAO,IAAA,4CAAqB,EAAC,cAAc,CAAC,CAAC;IAC/C,CAAC;IAQM,kBAAkB,CAAC,eAAuB;QAC/C,OAAO,IAAA,yCAAsB,EAAC,eAAe,CAAC,CAAC;IACjD,CAAC;IAQM,mBAAmB,CACxB,gBAAoC;QAEpC,OAAO,IAAA,0CAAuB,EAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC;IAQM,kBAAkB,CAAC,eAAuB;QAC/C,OAAO,IAAA,8CAAsB,EAAC,eAAe,CAAC,CAAC;IACjD,CAAC;IAQM,qBAAqB,CAAC,IAAY;QACvC,OAAO,IAAA,2CAAyB,EAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAQM,iBAAiB,CAAC,IAAY;QACnC,OAAO,IAAA,uCAAqB,EAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAQM,wBAAwB,CAAC,MAA4B;QAC1D,OAAO,IAAA,4CAA4B,EAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAQM,oBAAoB,CAAC,MAAwB;QAClD,OAAO,IAAA,wCAAwB,EAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAQM,qBAAqB,CAAC,IAAY;QACvC,MAAM,MAAM,GAAG,IAAA,2BAAiB,EAAC,IAAI,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAA,yCAAmB,EAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1F,MAAM,UAAU,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;QAEzD,MAAM,gBAAgB,GACpB,MAAM,CAAC,gBAAgB,IAAI,IAAA,kDAA0B,EAAC,MAAM,CAAC,gBAAgB,CAAC;YAC5E,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAClD,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,gBAAgB,GACpB,MAAM,CAAC,gBAAgB,IAAI,IAAA,kDAA0B,EAAC,MAAM,CAAC,gBAAgB,CAAC;YAC5E,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAClD,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO;YACL,YAAY,EAAE,YAAY;YAC1B,MAAM;YACN,MAAM;YACN,MAAM;YACN,gBAAgB;YAChB,gBAAgB;YAChB,UAAU;SACX,CAAC;IACJ,CAAC;IAQM,iBAAiB,CAAC,IAAY;QACnC,MAAM,MAAM,GAAG,IAAA,iCAAuB,EAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAA,yCAAmB,EAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1F,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAErD,MAAM,UAAU,GAAG,IAAA,gDAAyB,EAAC,MAAM,CAAC,cAAc,CAAC;YACjE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,cAAc,CAAC;YAC/C,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,WAAW,GACf,MAAM,CAAC,eAAe,IAAI,IAAA,6CAA0B,EAAC,MAAM,CAAC,eAAe,CAAC;YAC1E,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,eAAe,CAAC;YACjD,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,SAAS,GAA4C,IAAI,CAAC,mBAAmB,CACjF,MAAM,CAAC,gBAAgB,CACxB,CAAC;QAEF,OAAO;YACL,YAAY,EAAE,QAAQ;YACtB,MAAM;YACN,MAAM;YACN,MAAM;YACN,UAAU;YACV,WAAW;YACX,SAAS;YACT,UAAU;SACX,CAAC;IACJ,CAAC;IAQM,iCAAiC,CAAC,OAAe;QACtD,OAAO,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IACjG,CAAC;IAQM,6BAA6B,CAAC,OAAe;QAClD,OAAO,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7F,CAAC;IAQM,kBAAkB,CAAC,MAA2B;QACnD,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;QACnD,MAAM,MAAM,GAAG,IAAA,yCAAmB,EAAC,YAAY,CAAC,CAAC;QACjD,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;QACtD,MAAM,UAAU,GAAG,IAAA,gDAAyB,EAAC,cAAc,CAAC;YAC1D,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC;YACxC,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO;YACL,YAAY,EAAE,SAAS;YACvB,MAAM;YACN,YAAY;YACZ,MAAM;YACN,cAAc;YACd,UAAU;YACV,UAAU,EAAE,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC;SACtD,CAAC;IACJ,CAAC;IAQM,mBAAmB,CAAC,OAA8B;QACvD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;IAClE,CAAC;IAQM,4BAA4B,CAAC,KAAmB;QACrD,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAQM,2BAA2B,CAAC,IAAiB;QAClD,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC;IACnF,CAAC;IAQM,8BAA8B,CAAC,OAAe;QACnD,MAAM,IAAI,GAAG,IAAA,sBAAY,EAAC,OAAO,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;CACF;AA7TD,kCA6TC;AAYD,SAAgB,iBAAiB;IAC/B,OAAO,IAAI,WAAW,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ItauRemittanceFields, ItauReturnFields } from '../../types/adapters';
|
|
2
|
+
export declare function parseItauRemittanceFields(line: string): ItauRemittanceFields;
|
|
3
|
+
export declare function parseItauReturnFields(line: string): ItauReturnFields;
|
|
4
|
+
//# sourceMappingURL=ItauFieldParser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ItauFieldParser.d.ts","sourceRoot":"","sources":["../../../src/adapters/itau/ItauFieldParser.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAmBnF,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAsD5E;AASD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CA0BpE"}
|