sunat-engine-nest 2.0.2 → 2.0.4
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.
|
@@ -27,6 +27,18 @@ let CdrParserService = class CdrParserService {
|
|
|
27
27
|
}
|
|
28
28
|
parseXml(xml) {
|
|
29
29
|
const response = {};
|
|
30
|
+
const cdrIdMatch = xml.match(/<cbc:ID[^>]*>([\s\S]*?)<\/cbc:ID>/i);
|
|
31
|
+
if (cdrIdMatch?.[1]) {
|
|
32
|
+
response.cdrId = cdrIdMatch[1].trim();
|
|
33
|
+
}
|
|
34
|
+
const responseDateMatch = xml.match(/<cbc:ResponseDate[^>]*>([\s\S]*?)<\/cbc:ResponseDate>/i);
|
|
35
|
+
if (responseDateMatch?.[1]) {
|
|
36
|
+
response.responseDate = responseDateMatch[1].trim();
|
|
37
|
+
}
|
|
38
|
+
const responseTimeMatch = xml.match(/<cbc:ResponseTime[^>]*>([\s\S]*?)<\/cbc:ResponseTime>/i);
|
|
39
|
+
if (responseTimeMatch?.[1]) {
|
|
40
|
+
response.responseTime = responseTimeMatch[1].trim();
|
|
41
|
+
}
|
|
30
42
|
const codeMatch = xml.match(/<cbc:ResponseCode[^>]*>([\s\S]*?)<\/cbc:ResponseCode>/i);
|
|
31
43
|
if (codeMatch?.[1]) {
|
|
32
44
|
response.code = codeMatch[1].trim();
|
|
@@ -35,6 +47,30 @@ let CdrParserService = class CdrParserService {
|
|
|
35
47
|
if (descMatch?.[1]) {
|
|
36
48
|
response.description = descMatch[1].trim();
|
|
37
49
|
}
|
|
50
|
+
const docRefIdMatch = xml.match(/<cac:DocumentResponse>[\s\S]*?<cac:DocumentReference>[\s\S]*?<cbc:ID[^>]*>([\s\S]*?)<\/cbc:ID>/i);
|
|
51
|
+
if (docRefIdMatch?.[1]) {
|
|
52
|
+
response.documentId = docRefIdMatch[1].trim();
|
|
53
|
+
}
|
|
54
|
+
const docTypeCodeMatch = xml.match(/<cbc:DocumentTypeCode[^>]*>([\s\S]*?)<\/cbc:DocumentTypeCode>/i);
|
|
55
|
+
if (docTypeCodeMatch?.[1]) {
|
|
56
|
+
response.documentTypeCode = docTypeCodeMatch[1].trim();
|
|
57
|
+
}
|
|
58
|
+
const issuerMatch = xml.match(/<cac:IssuerParty>[\s\S]*?<cbc:ID[^>]*>([\s\S]*?)<\/cbc:ID>/i);
|
|
59
|
+
if (issuerMatch?.[1]) {
|
|
60
|
+
response.issuerId = issuerMatch[1].trim();
|
|
61
|
+
}
|
|
62
|
+
const receiverMatch = xml.match(/<cac:ReceiverParty>[\s\S]*?<cbc:ID[^>]*>([\s\S]*?)<\/cbc:ID>/i);
|
|
63
|
+
if (receiverMatch?.[1]) {
|
|
64
|
+
response.receiverId = receiverMatch[1].trim();
|
|
65
|
+
}
|
|
66
|
+
const statusReasonCodeMatch = xml.match(/<cbc:StatusReasonCode[^>]*>([\s\S]*?)<\/cbc:StatusReasonCode>/i);
|
|
67
|
+
if (statusReasonCodeMatch?.[1]) {
|
|
68
|
+
response.statusReasonCode = statusReasonCodeMatch[1].trim();
|
|
69
|
+
}
|
|
70
|
+
const statusReasonMatch = xml.match(/<cbc:StatusReason[^>]*>([\s\S]*?)<\/cbc:StatusReason>/i);
|
|
71
|
+
if (statusReasonMatch?.[1]) {
|
|
72
|
+
response.statusReason = statusReasonMatch[1].trim();
|
|
73
|
+
}
|
|
38
74
|
const notes = [];
|
|
39
75
|
const noteRegex = /<cbc:Note[^>]*>([\s\S]*?)<\/cbc:Note>/gi;
|
|
40
76
|
let match;
|
|
@@ -45,6 +81,21 @@ let CdrParserService = class CdrParserService {
|
|
|
45
81
|
if (notes.length > 0) {
|
|
46
82
|
response.notes = notes;
|
|
47
83
|
}
|
|
84
|
+
const additionalInfo = [];
|
|
85
|
+
const infoRegex = /<sac:AdditionalInformation[\s\S]*?<\/sac:AdditionalInformation>/gi;
|
|
86
|
+
const additionalInfoRegex = /<cbc:Information[^>]*>([\s\S]*?)<\/cbc:Information>/gi;
|
|
87
|
+
while ((match = infoRegex.exec(xml)) !== null) {
|
|
88
|
+
const block = match[0];
|
|
89
|
+
let infoMatch;
|
|
90
|
+
while ((infoMatch = additionalInfoRegex.exec(block)) !== null) {
|
|
91
|
+
if (infoMatch[1]?.trim())
|
|
92
|
+
additionalInfo.push(infoMatch[1].trim());
|
|
93
|
+
}
|
|
94
|
+
additionalInfoRegex.lastIndex = 0;
|
|
95
|
+
}
|
|
96
|
+
if (additionalInfo.length > 0) {
|
|
97
|
+
response.additionalInfo = additionalInfo;
|
|
98
|
+
}
|
|
48
99
|
return response;
|
|
49
100
|
}
|
|
50
101
|
resolveEstado(code) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdr-parser.service.js","sourceRoot":"","sources":["../../src/cdr/cdr-parser.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAC5C,+BAA+B;AAQxB,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAE3B,KAAK,CAAC,KAAK,CAAC,YAAoB;QAC9B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YACnD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAE1C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAC7C,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CACzD,CAAC;YAEF,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;YAC9E,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,wBAAwB,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC;IAEO,QAAQ,CAAC,GAAW;QAC1B,MAAM,QAAQ,GAAgB,EAAE,CAAC;QAGjC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACtF,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;QAED,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACpF,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,yCAAyC,CAAC;QAC5D,IAAI,KAA6B,CAAC;QAClC,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC9C,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE;gBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QACzB,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAQD,aAAa,CAAC,IAAa;QACzB,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QAC5B,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7B,IAAI,KAAK,CAAC,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,UAAU,CAAC;QAC/B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI;YAAE,OAAO,WAAW,CAAC;QAC9C,IAAI,CAAC,IAAI,IAAI;YAAE,OAAO,cAAc,CAAC;QACrC,OAAO,SAAS,CAAC;IACnB,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"cdr-parser.service.js","sourceRoot":"","sources":["../../src/cdr/cdr-parser.service.ts"],"names":[],"mappings":"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"}
|