@linkiez/boleto-sdk 1.1.0 → 1.1.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.
Files changed (738) hide show
  1. package/README.md +10 -3
  2. package/dist/adapters/IBankAdapter.d.ts +9 -0
  3. package/dist/adapters/IBankAdapter.d.ts.map +1 -0
  4. package/dist/adapters/IBankAdapter.js +3 -0
  5. package/dist/adapters/IBankAdapter.js.map +1 -0
  6. package/dist/adapters/bradesco/BradescoAdapter.d.ts +27 -0
  7. package/dist/adapters/bradesco/BradescoAdapter.d.ts.map +1 -0
  8. package/dist/adapters/bradesco/BradescoAdapter.js +130 -0
  9. package/dist/adapters/bradesco/BradescoAdapter.js.map +1 -0
  10. package/dist/adapters/bradesco/BradescoFieldParser.d.ts +4 -0
  11. package/dist/adapters/bradesco/BradescoFieldParser.d.ts.map +1 -0
  12. package/dist/adapters/bradesco/BradescoFieldParser.js +46 -0
  13. package/dist/adapters/bradesco/BradescoFieldParser.js.map +1 -0
  14. package/dist/adapters/bradesco/BradescoOccurrenceMapper.d.ts +5 -0
  15. package/dist/adapters/bradesco/BradescoOccurrenceMapper.d.ts.map +1 -0
  16. package/dist/adapters/bradesco/BradescoOccurrenceMapper.js +47 -0
  17. package/dist/adapters/bradesco/BradescoOccurrenceMapper.js.map +1 -0
  18. package/dist/adapters/bradesco/BradescoOurNumberCalculator.d.ts +5 -0
  19. package/dist/adapters/bradesco/BradescoOurNumberCalculator.d.ts.map +1 -0
  20. package/dist/adapters/bradesco/BradescoOurNumberCalculator.js +40 -0
  21. package/dist/adapters/bradesco/BradescoOurNumberCalculator.js.map +1 -0
  22. package/dist/adapters/bradesco/BradescoValidator.d.ts +7 -0
  23. package/dist/adapters/bradesco/BradescoValidator.d.ts.map +1 -0
  24. package/dist/adapters/bradesco/BradescoValidator.js +107 -0
  25. package/dist/adapters/bradesco/BradescoValidator.js.map +1 -0
  26. package/dist/adapters/bradesco/BradescoWalletValidator.d.ts +8 -0
  27. package/dist/adapters/bradesco/BradescoWalletValidator.d.ts.map +1 -0
  28. package/dist/adapters/bradesco/BradescoWalletValidator.js +59 -0
  29. package/dist/adapters/bradesco/BradescoWalletValidator.js.map +1 -0
  30. package/dist/adapters/bradesco/index.d.ts +7 -0
  31. package/dist/adapters/bradesco/index.d.ts.map +1 -0
  32. package/dist/adapters/bradesco/index.js +23 -0
  33. package/dist/adapters/bradesco/index.js.map +1 -0
  34. package/dist/adapters/index.d.ts +4 -0
  35. package/dist/adapters/index.d.ts.map +1 -0
  36. package/dist/adapters/index.js +20 -0
  37. package/dist/adapters/index.js.map +1 -0
  38. package/dist/adapters/itau/ItauAdapter.d.ts +31 -0
  39. package/dist/adapters/itau/ItauAdapter.d.ts.map +1 -0
  40. package/dist/adapters/itau/ItauAdapter.js +158 -0
  41. package/dist/adapters/itau/ItauAdapter.js.map +1 -0
  42. package/dist/adapters/itau/ItauFieldParser.d.ts +4 -0
  43. package/dist/adapters/itau/ItauFieldParser.d.ts.map +1 -0
  44. package/dist/adapters/itau/ItauFieldParser.js +52 -0
  45. package/dist/adapters/itau/ItauFieldParser.js.map +1 -0
  46. package/dist/adapters/itau/ItauInstructionMapper.d.ts +5 -0
  47. package/dist/adapters/itau/ItauInstructionMapper.d.ts.map +1 -0
  48. package/dist/adapters/itau/ItauInstructionMapper.js +54 -0
  49. package/dist/adapters/itau/ItauInstructionMapper.js.map +1 -0
  50. package/dist/adapters/itau/ItauOccurrenceMapper.d.ts +5 -0
  51. package/dist/adapters/itau/ItauOccurrenceMapper.d.ts.map +1 -0
  52. package/dist/adapters/itau/ItauOccurrenceMapper.js +52 -0
  53. package/dist/adapters/itau/ItauOccurrenceMapper.js.map +1 -0
  54. package/dist/adapters/itau/ItauOurNumberCalculator.d.ts +5 -0
  55. package/dist/adapters/itau/ItauOurNumberCalculator.d.ts.map +1 -0
  56. package/dist/adapters/itau/ItauOurNumberCalculator.js +28 -0
  57. package/dist/adapters/itau/ItauOurNumberCalculator.js.map +1 -0
  58. package/dist/adapters/itau/ItauReturnMapper.d.ts +6 -0
  59. package/dist/adapters/itau/ItauReturnMapper.d.ts.map +1 -0
  60. package/dist/adapters/itau/ItauReturnMapper.js +71 -0
  61. package/dist/adapters/itau/ItauReturnMapper.js.map +1 -0
  62. package/dist/adapters/itau/ItauValidator.d.ts +7 -0
  63. package/dist/adapters/itau/ItauValidator.d.ts.map +1 -0
  64. package/dist/adapters/itau/ItauValidator.js +94 -0
  65. package/dist/adapters/itau/ItauValidator.js.map +1 -0
  66. package/dist/adapters/itau/ItauWalletValidator.d.ts +7 -0
  67. package/dist/adapters/itau/ItauWalletValidator.d.ts.map +1 -0
  68. package/dist/adapters/itau/ItauWalletValidator.js +57 -0
  69. package/dist/adapters/itau/ItauWalletValidator.js.map +1 -0
  70. package/dist/adapters/itau/index.d.ts +9 -0
  71. package/dist/adapters/itau/index.d.ts.map +1 -0
  72. package/dist/adapters/itau/index.js +25 -0
  73. package/dist/adapters/itau/index.js.map +1 -0
  74. package/dist/constants/bancos/BankRegistry.d.ts +14 -0
  75. package/dist/constants/bancos/BankRegistry.d.ts.map +1 -0
  76. package/dist/constants/bancos/BankRegistry.js +68 -0
  77. package/dist/constants/bancos/BankRegistry.js.map +1 -0
  78. package/dist/constants/bancos/ItauRejectionCodes.d.ts +2 -0
  79. package/dist/constants/bancos/ItauRejectionCodes.d.ts.map +1 -0
  80. package/dist/constants/bancos/ItauRejectionCodes.js +13 -0
  81. package/dist/constants/bancos/ItauRejectionCodes.js.map +1 -0
  82. package/dist/constants/bancos/index.d.ts +3 -0
  83. package/dist/constants/bancos/index.d.ts.map +1 -0
  84. package/dist/constants/bancos/index.js +19 -0
  85. package/dist/constants/bancos/index.js.map +1 -0
  86. package/dist/constants/cnab240/FIELD_SIZES.d.ts +111 -0
  87. package/dist/constants/cnab240/FIELD_SIZES.d.ts.map +1 -0
  88. package/dist/constants/cnab240/FIELD_SIZES.js +114 -0
  89. package/dist/constants/cnab240/FIELD_SIZES.js.map +1 -0
  90. package/dist/constants/cnab240/LAYOUT_VERSION.d.ts +17 -0
  91. package/dist/constants/cnab240/LAYOUT_VERSION.d.ts.map +1 -0
  92. package/dist/constants/cnab240/LAYOUT_VERSION.js +20 -0
  93. package/dist/constants/cnab240/LAYOUT_VERSION.js.map +1 -0
  94. package/dist/constants/cnab240/SEGMENT_POSITIONS.d.ts +659 -0
  95. package/dist/constants/cnab240/SEGMENT_POSITIONS.d.ts.map +1 -0
  96. package/dist/constants/cnab240/SEGMENT_POSITIONS.js +195 -0
  97. package/dist/constants/cnab240/SEGMENT_POSITIONS.js.map +1 -0
  98. package/dist/constants/cnab240/index.d.ts +4 -0
  99. package/dist/constants/cnab240/index.d.ts.map +1 -0
  100. package/dist/constants/cnab240/index.js +20 -0
  101. package/dist/constants/cnab240/index.js.map +1 -0
  102. package/dist/constants/cnab400/FIELD_SIZES.d.ts +68 -0
  103. package/dist/constants/cnab400/FIELD_SIZES.d.ts.map +1 -0
  104. package/dist/constants/cnab400/FIELD_SIZES.js +71 -0
  105. package/dist/constants/cnab400/FIELD_SIZES.js.map +1 -0
  106. package/dist/constants/cnab400/LAYOUT_VERSION.d.ts +11 -0
  107. package/dist/constants/cnab400/LAYOUT_VERSION.d.ts.map +1 -0
  108. package/dist/constants/cnab400/LAYOUT_VERSION.js +14 -0
  109. package/dist/constants/cnab400/LAYOUT_VERSION.js.map +1 -0
  110. package/dist/constants/cnab400/RECORD_POSITIONS.d.ts +545 -0
  111. package/dist/constants/cnab400/RECORD_POSITIONS.d.ts.map +1 -0
  112. package/dist/constants/cnab400/RECORD_POSITIONS.js +147 -0
  113. package/dist/constants/cnab400/RECORD_POSITIONS.js.map +1 -0
  114. package/dist/constants/cnab400/index.d.ts +4 -0
  115. package/dist/constants/cnab400/index.d.ts.map +1 -0
  116. package/dist/constants/cnab400/index.js +20 -0
  117. package/dist/constants/cnab400/index.js.map +1 -0
  118. package/dist/constants/index.d.ts +4 -0
  119. package/dist/constants/index.d.ts.map +1 -0
  120. package/dist/constants/index.js +43 -0
  121. package/dist/constants/index.js.map +1 -0
  122. package/dist/enums/cnab240/OccurrenceCode.d.ts +57 -0
  123. package/dist/enums/cnab240/OccurrenceCode.d.ts.map +1 -0
  124. package/dist/enums/cnab240/OccurrenceCode.js +62 -0
  125. package/dist/enums/cnab240/OccurrenceCode.js.map +1 -0
  126. package/dist/enums/cnab240/OperationType.d.ts +7 -0
  127. package/dist/enums/cnab240/OperationType.d.ts.map +1 -0
  128. package/dist/enums/cnab240/OperationType.js +11 -0
  129. package/dist/enums/cnab240/OperationType.js.map +1 -0
  130. package/dist/enums/cnab240/RecordType.d.ts +8 -0
  131. package/dist/enums/cnab240/RecordType.d.ts.map +1 -0
  132. package/dist/enums/cnab240/RecordType.js +12 -0
  133. package/dist/enums/cnab240/RecordType.js.map +1 -0
  134. package/dist/enums/cnab240/SegmentCode.d.ts +10 -0
  135. package/dist/enums/cnab240/SegmentCode.d.ts.map +1 -0
  136. package/dist/enums/cnab240/SegmentCode.js +14 -0
  137. package/dist/enums/cnab240/SegmentCode.js.map +1 -0
  138. package/dist/enums/cnab240/ServiceType.d.ts +8 -0
  139. package/dist/enums/cnab240/ServiceType.d.ts.map +1 -0
  140. package/dist/enums/cnab240/ServiceType.js +12 -0
  141. package/dist/enums/cnab240/ServiceType.js.map +1 -0
  142. package/dist/enums/cnab240/index.d.ts +6 -0
  143. package/dist/enums/cnab240/index.d.ts.map +1 -0
  144. package/dist/enums/cnab240/index.js +15 -0
  145. package/dist/enums/cnab240/index.js.map +1 -0
  146. package/dist/enums/cnab400/Cnab400Enums.d.ts +121 -0
  147. package/dist/enums/cnab400/Cnab400Enums.d.ts.map +1 -0
  148. package/dist/enums/cnab400/Cnab400Enums.js +133 -0
  149. package/dist/enums/cnab400/Cnab400Enums.js.map +1 -0
  150. package/dist/enums/cnab400/index.d.ts +2 -0
  151. package/dist/enums/cnab400/index.d.ts.map +1 -0
  152. package/dist/enums/cnab400/index.js +18 -0
  153. package/dist/enums/cnab400/index.js.map +1 -0
  154. package/dist/enums/common/CommonEnums.d.ts +52 -0
  155. package/dist/enums/common/CommonEnums.d.ts.map +1 -0
  156. package/dist/enums/common/CommonEnums.js +63 -0
  157. package/dist/enums/common/CommonEnums.js.map +1 -0
  158. package/dist/enums/common/index.d.ts +2 -0
  159. package/dist/enums/common/index.d.ts.map +1 -0
  160. package/dist/enums/common/index.js +18 -0
  161. package/dist/enums/common/index.js.map +1 -0
  162. package/dist/enums/index.d.ts +4 -0
  163. package/dist/enums/index.d.ts.map +1 -0
  164. package/dist/enums/index.js +25 -0
  165. package/dist/enums/index.js.map +1 -0
  166. package/dist/errors/CnabErrors.d.ts +26 -0
  167. package/dist/errors/CnabErrors.d.ts.map +1 -0
  168. package/dist/errors/CnabErrors.js +49 -0
  169. package/dist/errors/CnabErrors.js.map +1 -0
  170. package/dist/errors/index.d.ts +2 -0
  171. package/dist/errors/index.d.ts.map +1 -0
  172. package/dist/errors/index.js +18 -0
  173. package/dist/errors/index.js.map +1 -0
  174. package/dist/generators/CnabGeneratorFactory.d.ts +4 -0
  175. package/dist/generators/CnabGeneratorFactory.d.ts.map +1 -0
  176. package/dist/generators/CnabGeneratorFactory.js +16 -0
  177. package/dist/generators/CnabGeneratorFactory.js.map +1 -0
  178. package/dist/generators/barcode/BarcodeGenerator.d.ts +16 -0
  179. package/dist/generators/barcode/BarcodeGenerator.d.ts.map +1 -0
  180. package/dist/generators/barcode/BarcodeGenerator.js +20 -0
  181. package/dist/generators/barcode/BarcodeGenerator.js.map +1 -0
  182. package/dist/generators/barcode/BarcodeRenderer.d.ts +10 -0
  183. package/dist/generators/barcode/BarcodeRenderer.d.ts.map +1 -0
  184. package/dist/generators/barcode/BarcodeRenderer.js +110 -0
  185. package/dist/generators/barcode/BarcodeRenderer.js.map +1 -0
  186. package/dist/generators/barcode/BarcodeUtils.d.ts +11 -0
  187. package/dist/generators/barcode/BarcodeUtils.d.ts.map +1 -0
  188. package/dist/generators/barcode/BarcodeUtils.js +81 -0
  189. package/dist/generators/barcode/BarcodeUtils.js.map +1 -0
  190. package/dist/generators/barcode/BarcodeValidator.d.ts +3 -0
  191. package/dist/generators/barcode/BarcodeValidator.d.ts.map +1 -0
  192. package/dist/generators/barcode/BarcodeValidator.js +41 -0
  193. package/dist/generators/barcode/BarcodeValidator.js.map +1 -0
  194. package/dist/generators/barcode/DigitableLineGenerator.d.ts +2 -0
  195. package/dist/generators/barcode/DigitableLineGenerator.d.ts.map +1 -0
  196. package/dist/generators/barcode/DigitableLineGenerator.js +26 -0
  197. package/dist/generators/barcode/DigitableLineGenerator.js.map +1 -0
  198. package/dist/generators/barcode/index.d.ts +6 -0
  199. package/dist/generators/barcode/index.d.ts.map +1 -0
  200. package/dist/generators/barcode/index.js +22 -0
  201. package/dist/generators/barcode/index.js.map +1 -0
  202. package/dist/generators/cnab240/BatchHeaderGenerator.d.ts +6 -0
  203. package/dist/generators/cnab240/BatchHeaderGenerator.d.ts.map +1 -0
  204. package/dist/generators/cnab240/BatchHeaderGenerator.js +77 -0
  205. package/dist/generators/cnab240/BatchHeaderGenerator.js.map +1 -0
  206. package/dist/generators/cnab240/BatchTrailerGenerator.d.ts +6 -0
  207. package/dist/generators/cnab240/BatchTrailerGenerator.d.ts.map +1 -0
  208. package/dist/generators/cnab240/BatchTrailerGenerator.js +46 -0
  209. package/dist/generators/cnab240/BatchTrailerGenerator.js.map +1 -0
  210. package/dist/generators/cnab240/Cnab240Generator.d.ts +14 -0
  211. package/dist/generators/cnab240/Cnab240Generator.d.ts.map +1 -0
  212. package/dist/generators/cnab240/Cnab240Generator.js +68 -0
  213. package/dist/generators/cnab240/Cnab240Generator.js.map +1 -0
  214. package/dist/generators/cnab240/FileHeaderGenerator.d.ts +6 -0
  215. package/dist/generators/cnab240/FileHeaderGenerator.d.ts.map +1 -0
  216. package/dist/generators/cnab240/FileHeaderGenerator.js +63 -0
  217. package/dist/generators/cnab240/FileHeaderGenerator.js.map +1 -0
  218. package/dist/generators/cnab240/FileTrailerGenerator.d.ts +6 -0
  219. package/dist/generators/cnab240/FileTrailerGenerator.d.ts.map +1 -0
  220. package/dist/generators/cnab240/FileTrailerGenerator.js +44 -0
  221. package/dist/generators/cnab240/FileTrailerGenerator.js.map +1 -0
  222. package/dist/generators/cnab240/GenerateCnab240.d.ts +3 -0
  223. package/dist/generators/cnab240/GenerateCnab240.d.ts.map +1 -0
  224. package/dist/generators/cnab240/GenerateCnab240.js +9 -0
  225. package/dist/generators/cnab240/GenerateCnab240.js.map +1 -0
  226. package/dist/generators/cnab240/LineGenerator.d.ts +6 -0
  227. package/dist/generators/cnab240/LineGenerator.d.ts.map +1 -0
  228. package/dist/generators/cnab240/LineGenerator.js +45 -0
  229. package/dist/generators/cnab240/LineGenerator.js.map +1 -0
  230. package/dist/generators/cnab240/SegmentPGenerator.d.ts +6 -0
  231. package/dist/generators/cnab240/SegmentPGenerator.d.ts.map +1 -0
  232. package/dist/generators/cnab240/SegmentPGenerator.js +76 -0
  233. package/dist/generators/cnab240/SegmentPGenerator.js.map +1 -0
  234. package/dist/generators/cnab240/SegmentQGenerator.d.ts +6 -0
  235. package/dist/generators/cnab240/SegmentQGenerator.d.ts.map +1 -0
  236. package/dist/generators/cnab240/SegmentQGenerator.js +82 -0
  237. package/dist/generators/cnab240/SegmentQGenerator.js.map +1 -0
  238. package/dist/generators/cnab240/SegmentRGenerator.d.ts +6 -0
  239. package/dist/generators/cnab240/SegmentRGenerator.d.ts.map +1 -0
  240. package/dist/generators/cnab240/SegmentRGenerator.js +86 -0
  241. package/dist/generators/cnab240/SegmentRGenerator.js.map +1 -0
  242. package/dist/generators/cnab240/index.d.ts +11 -0
  243. package/dist/generators/cnab240/index.d.ts.map +1 -0
  244. package/dist/generators/cnab240/index.js +27 -0
  245. package/dist/generators/cnab240/index.js.map +1 -0
  246. package/dist/generators/cnab400/Cnab400Generator.d.ts +3 -0
  247. package/dist/generators/cnab400/Cnab400Generator.d.ts.map +1 -0
  248. package/dist/generators/cnab400/Cnab400Generator.js +44 -0
  249. package/dist/generators/cnab400/Cnab400Generator.js.map +1 -0
  250. package/dist/generators/cnab400/DetailRecordGenerator.d.ts +4 -0
  251. package/dist/generators/cnab400/DetailRecordGenerator.d.ts.map +1 -0
  252. package/dist/generators/cnab400/DetailRecordGenerator.js +132 -0
  253. package/dist/generators/cnab400/DetailRecordGenerator.js.map +1 -0
  254. package/dist/generators/cnab400/FileHeaderGenerator.d.ts +3 -0
  255. package/dist/generators/cnab400/FileHeaderGenerator.d.ts.map +1 -0
  256. package/dist/generators/cnab400/FileHeaderGenerator.js +39 -0
  257. package/dist/generators/cnab400/FileHeaderGenerator.js.map +1 -0
  258. package/dist/generators/cnab400/FileTrailerGenerator.d.ts +3 -0
  259. package/dist/generators/cnab400/FileTrailerGenerator.d.ts.map +1 -0
  260. package/dist/generators/cnab400/FileTrailerGenerator.js +22 -0
  261. package/dist/generators/cnab400/FileTrailerGenerator.js.map +1 -0
  262. package/dist/generators/cnab400/PenaltyRecordGenerator.d.ts +3 -0
  263. package/dist/generators/cnab400/PenaltyRecordGenerator.d.ts.map +1 -0
  264. package/dist/generators/cnab400/PenaltyRecordGenerator.js +30 -0
  265. package/dist/generators/cnab400/PenaltyRecordGenerator.js.map +1 -0
  266. package/dist/generators/cnab400/index.d.ts +6 -0
  267. package/dist/generators/cnab400/index.d.ts.map +1 -0
  268. package/dist/generators/cnab400/index.js +15 -0
  269. package/dist/generators/cnab400/index.js.map +1 -0
  270. package/dist/generators/index.d.ts +7 -0
  271. package/dist/generators/index.d.ts.map +1 -0
  272. package/dist/generators/index.js +23 -0
  273. package/dist/generators/index.js.map +1 -0
  274. package/dist/generators/pdf/BoletoPdfGenerator.d.ts +9 -0
  275. package/dist/generators/pdf/BoletoPdfGenerator.d.ts.map +1 -0
  276. package/dist/generators/pdf/BoletoPdfGenerator.js +20 -0
  277. package/dist/generators/pdf/BoletoPdfGenerator.js.map +1 -0
  278. package/dist/generators/pdf/DirectPdfGenerator.d.ts +9 -0
  279. package/dist/generators/pdf/DirectPdfGenerator.d.ts.map +1 -0
  280. package/dist/generators/pdf/DirectPdfGenerator.js +152 -0
  281. package/dist/generators/pdf/DirectPdfGenerator.js.map +1 -0
  282. package/dist/generators/pdf/PdfRenderer.d.ts +27 -0
  283. package/dist/generators/pdf/PdfRenderer.d.ts.map +1 -0
  284. package/dist/generators/pdf/PdfRenderer.js +99 -0
  285. package/dist/generators/pdf/PdfRenderer.js.map +1 -0
  286. package/dist/generators/pdf/PdfTemplate.d.ts +59 -0
  287. package/dist/generators/pdf/PdfTemplate.d.ts.map +1 -0
  288. package/dist/generators/pdf/PdfTemplate.js +111 -0
  289. package/dist/generators/pdf/PdfTemplate.js.map +1 -0
  290. package/dist/generators/pdf/index.d.ts +5 -0
  291. package/dist/generators/pdf/index.d.ts.map +1 -0
  292. package/dist/generators/pdf/index.js +21 -0
  293. package/dist/generators/pdf/index.js.map +1 -0
  294. package/dist/generators/qrcode/PixPayloadGenerator.d.ts +10 -0
  295. package/dist/generators/qrcode/PixPayloadGenerator.d.ts.map +1 -0
  296. package/dist/generators/qrcode/PixPayloadGenerator.js +97 -0
  297. package/dist/generators/qrcode/PixPayloadGenerator.js.map +1 -0
  298. package/dist/generators/qrcode/PixPayloadValidator.d.ts +2 -0
  299. package/dist/generators/qrcode/PixPayloadValidator.d.ts.map +1 -0
  300. package/dist/generators/qrcode/PixPayloadValidator.js +76 -0
  301. package/dist/generators/qrcode/PixPayloadValidator.js.map +1 -0
  302. package/dist/generators/qrcode/QRCodeGenerator.d.ts +10 -0
  303. package/dist/generators/qrcode/QRCodeGenerator.d.ts.map +1 -0
  304. package/dist/generators/qrcode/QRCodeGenerator.js +14 -0
  305. package/dist/generators/qrcode/QRCodeGenerator.js.map +1 -0
  306. package/dist/generators/qrcode/QRCodeRenderer.d.ts +8 -0
  307. package/dist/generators/qrcode/QRCodeRenderer.d.ts.map +1 -0
  308. package/dist/generators/qrcode/QRCodeRenderer.js +25 -0
  309. package/dist/generators/qrcode/QRCodeRenderer.js.map +1 -0
  310. package/dist/generators/qrcode/index.d.ts +5 -0
  311. package/dist/generators/qrcode/index.d.ts.map +1 -0
  312. package/dist/generators/qrcode/index.js +21 -0
  313. package/dist/generators/qrcode/index.js.map +1 -0
  314. package/dist/index.d.ts +11 -0
  315. package/dist/index.d.ts.map +1 -0
  316. package/dist/index.js +26 -0
  317. package/dist/index.js.map +1 -0
  318. package/dist/parsers/CnabParserFactory.d.ts +4 -0
  319. package/dist/parsers/CnabParserFactory.d.ts.map +1 -0
  320. package/dist/parsers/CnabParserFactory.js +25 -0
  321. package/dist/parsers/CnabParserFactory.js.map +1 -0
  322. package/dist/parsers/cnab240/Cnab240Parser.d.ts +3 -0
  323. package/dist/parsers/cnab240/Cnab240Parser.d.ts.map +1 -0
  324. package/dist/parsers/cnab240/Cnab240Parser.js +143 -0
  325. package/dist/parsers/cnab240/Cnab240Parser.js.map +1 -0
  326. package/dist/parsers/cnab240/FileHeaderParser.d.ts +3 -0
  327. package/dist/parsers/cnab240/FileHeaderParser.d.ts.map +1 -0
  328. package/dist/parsers/cnab240/FileHeaderParser.js +34 -0
  329. package/dist/parsers/cnab240/FileHeaderParser.js.map +1 -0
  330. package/dist/parsers/cnab240/LineParser.d.ts +7 -0
  331. package/dist/parsers/cnab240/LineParser.d.ts.map +1 -0
  332. package/dist/parsers/cnab240/LineParser.js +51 -0
  333. package/dist/parsers/cnab240/LineParser.js.map +1 -0
  334. package/dist/parsers/cnab240/SegmentPParser.d.ts +3 -0
  335. package/dist/parsers/cnab240/SegmentPParser.d.ts.map +1 -0
  336. package/dist/parsers/cnab240/SegmentPParser.js +63 -0
  337. package/dist/parsers/cnab240/SegmentPParser.js.map +1 -0
  338. package/dist/parsers/cnab240/SegmentQParser.d.ts +3 -0
  339. package/dist/parsers/cnab240/SegmentQParser.d.ts.map +1 -0
  340. package/dist/parsers/cnab240/SegmentQParser.js +34 -0
  341. package/dist/parsers/cnab240/SegmentQParser.js.map +1 -0
  342. package/dist/parsers/cnab240/index.d.ts +6 -0
  343. package/dist/parsers/cnab240/index.d.ts.map +1 -0
  344. package/dist/parsers/cnab240/index.js +22 -0
  345. package/dist/parsers/cnab240/index.js.map +1 -0
  346. package/dist/parsers/cnab400/Cnab400Parser.d.ts +3 -0
  347. package/dist/parsers/cnab400/Cnab400Parser.d.ts.map +1 -0
  348. package/dist/parsers/cnab400/Cnab400Parser.js +91 -0
  349. package/dist/parsers/cnab400/Cnab400Parser.js.map +1 -0
  350. package/dist/parsers/cnab400/DetailRecordParser.d.ts +3 -0
  351. package/dist/parsers/cnab400/DetailRecordParser.d.ts.map +1 -0
  352. package/dist/parsers/cnab400/DetailRecordParser.js +65 -0
  353. package/dist/parsers/cnab400/DetailRecordParser.js.map +1 -0
  354. package/dist/parsers/cnab400/FileHeaderParser.d.ts +3 -0
  355. package/dist/parsers/cnab400/FileHeaderParser.d.ts.map +1 -0
  356. package/dist/parsers/cnab400/FileHeaderParser.js +38 -0
  357. package/dist/parsers/cnab400/FileHeaderParser.js.map +1 -0
  358. package/dist/parsers/cnab400/FileTrailerParser.d.ts +3 -0
  359. package/dist/parsers/cnab400/FileTrailerParser.d.ts.map +1 -0
  360. package/dist/parsers/cnab400/FileTrailerParser.js +24 -0
  361. package/dist/parsers/cnab400/FileTrailerParser.js.map +1 -0
  362. package/dist/parsers/cnab400/GuarantorRecordParser.d.ts +3 -0
  363. package/dist/parsers/cnab400/GuarantorRecordParser.d.ts.map +1 -0
  364. package/dist/parsers/cnab400/GuarantorRecordParser.js +27 -0
  365. package/dist/parsers/cnab400/GuarantorRecordParser.js.map +1 -0
  366. package/dist/parsers/cnab400/MessageRecordParser.d.ts +4 -0
  367. package/dist/parsers/cnab400/MessageRecordParser.d.ts.map +1 -0
  368. package/dist/parsers/cnab400/MessageRecordParser.js +40 -0
  369. package/dist/parsers/cnab400/MessageRecordParser.js.map +1 -0
  370. package/dist/parsers/cnab400/PenaltyRecordParser.d.ts +3 -0
  371. package/dist/parsers/cnab400/PenaltyRecordParser.d.ts.map +1 -0
  372. package/dist/parsers/cnab400/PenaltyRecordParser.js +32 -0
  373. package/dist/parsers/cnab400/PenaltyRecordParser.js.map +1 -0
  374. package/dist/parsers/cnab400/ReturnDetailRecordParser.d.ts +3 -0
  375. package/dist/parsers/cnab400/ReturnDetailRecordParser.d.ts.map +1 -0
  376. package/dist/parsers/cnab400/ReturnDetailRecordParser.js +66 -0
  377. package/dist/parsers/cnab400/ReturnDetailRecordParser.js.map +1 -0
  378. package/dist/parsers/cnab400/index.d.ts +9 -0
  379. package/dist/parsers/cnab400/index.d.ts.map +1 -0
  380. package/dist/parsers/cnab400/index.js +21 -0
  381. package/dist/parsers/cnab400/index.js.map +1 -0
  382. package/dist/parsers/index.d.ts +4 -0
  383. package/dist/parsers/index.d.ts.map +1 -0
  384. package/dist/parsers/index.js +30 -0
  385. package/dist/parsers/index.js.map +1 -0
  386. package/dist/schemas/cnab240/BatchHeaderSchema.d.ts +35 -0
  387. package/dist/schemas/cnab240/BatchHeaderSchema.d.ts.map +1 -0
  388. package/dist/schemas/cnab240/BatchHeaderSchema.js +30 -0
  389. package/dist/schemas/cnab240/BatchHeaderSchema.js.map +1 -0
  390. package/dist/schemas/cnab240/BatchSchema.d.ts +160 -0
  391. package/dist/schemas/cnab240/BatchSchema.d.ts.map +1 -0
  392. package/dist/schemas/cnab240/BatchSchema.js +13 -0
  393. package/dist/schemas/cnab240/BatchSchema.js.map +1 -0
  394. package/dist/schemas/cnab240/BatchTrailerSchema.d.ts +17 -0
  395. package/dist/schemas/cnab240/BatchTrailerSchema.d.ts.map +1 -0
  396. package/dist/schemas/cnab240/BatchTrailerSchema.js +21 -0
  397. package/dist/schemas/cnab240/BatchTrailerSchema.js.map +1 -0
  398. package/dist/schemas/cnab240/Cnab240FileSchema.d.ts +206 -0
  399. package/dist/schemas/cnab240/Cnab240FileSchema.d.ts.map +1 -0
  400. package/dist/schemas/cnab240/Cnab240FileSchema.js +13 -0
  401. package/dist/schemas/cnab240/Cnab240FileSchema.js.map +1 -0
  402. package/dist/schemas/cnab240/DetailRecordSchema.d.ts +110 -0
  403. package/dist/schemas/cnab240/DetailRecordSchema.d.ts.map +1 -0
  404. package/dist/schemas/cnab240/DetailRecordSchema.js +13 -0
  405. package/dist/schemas/cnab240/DetailRecordSchema.js.map +1 -0
  406. package/dist/schemas/cnab240/FileHeaderSchema.d.ts +36 -0
  407. package/dist/schemas/cnab240/FileHeaderSchema.d.ts.map +1 -0
  408. package/dist/schemas/cnab240/FileHeaderSchema.js +39 -0
  409. package/dist/schemas/cnab240/FileHeaderSchema.js.map +1 -0
  410. package/dist/schemas/cnab240/FileTrailerSchema.d.ts +12 -0
  411. package/dist/schemas/cnab240/FileTrailerSchema.d.ts.map +1 -0
  412. package/dist/schemas/cnab240/FileTrailerSchema.js +16 -0
  413. package/dist/schemas/cnab240/FileTrailerSchema.js.map +1 -0
  414. package/dist/schemas/cnab240/SegmentPSchema.d.ts +49 -0
  415. package/dist/schemas/cnab240/SegmentPSchema.d.ts.map +1 -0
  416. package/dist/schemas/cnab240/SegmentPSchema.js +53 -0
  417. package/dist/schemas/cnab240/SegmentPSchema.js.map +1 -0
  418. package/dist/schemas/cnab240/SegmentQSchema.d.ts +30 -0
  419. package/dist/schemas/cnab240/SegmentQSchema.d.ts.map +1 -0
  420. package/dist/schemas/cnab240/SegmentQSchema.js +29 -0
  421. package/dist/schemas/cnab240/SegmentQSchema.js.map +1 -0
  422. package/dist/schemas/cnab240/SegmentRSchema.d.ts +33 -0
  423. package/dist/schemas/cnab240/SegmentRSchema.d.ts.map +1 -0
  424. package/dist/schemas/cnab240/SegmentRSchema.js +37 -0
  425. package/dist/schemas/cnab240/SegmentRSchema.js.map +1 -0
  426. package/dist/schemas/cnab240/index.d.ts +12 -0
  427. package/dist/schemas/cnab240/index.d.ts.map +1 -0
  428. package/dist/schemas/cnab240/index.js +28 -0
  429. package/dist/schemas/cnab240/index.js.map +1 -0
  430. package/dist/schemas/cnab240/shared.d.ts +30 -0
  431. package/dist/schemas/cnab240/shared.d.ts.map +1 -0
  432. package/dist/schemas/cnab240/shared.js +29 -0
  433. package/dist/schemas/cnab240/shared.js.map +1 -0
  434. package/dist/schemas/cnab400/Cnab400FileSchema.d.ts +143 -0
  435. package/dist/schemas/cnab400/Cnab400FileSchema.d.ts.map +1 -0
  436. package/dist/schemas/cnab400/Cnab400FileSchema.js +21 -0
  437. package/dist/schemas/cnab400/Cnab400FileSchema.js.map +1 -0
  438. package/dist/schemas/cnab400/Cnab400ReturnFileSchema.d.ts +150 -0
  439. package/dist/schemas/cnab400/Cnab400ReturnFileSchema.d.ts.map +1 -0
  440. package/dist/schemas/cnab400/Cnab400ReturnFileSchema.js +10 -0
  441. package/dist/schemas/cnab400/Cnab400ReturnFileSchema.js.map +1 -0
  442. package/dist/schemas/cnab400/DetailRecordSchema.d.ts +58 -0
  443. package/dist/schemas/cnab400/DetailRecordSchema.d.ts.map +1 -0
  444. package/dist/schemas/cnab400/DetailRecordSchema.js +58 -0
  445. package/dist/schemas/cnab400/DetailRecordSchema.js.map +1 -0
  446. package/dist/schemas/cnab400/FileHeaderSchema.d.ts +27 -0
  447. package/dist/schemas/cnab400/FileHeaderSchema.d.ts.map +1 -0
  448. package/dist/schemas/cnab400/FileHeaderSchema.js +28 -0
  449. package/dist/schemas/cnab400/FileHeaderSchema.js.map +1 -0
  450. package/dist/schemas/cnab400/FileTrailerSchema.d.ts +10 -0
  451. package/dist/schemas/cnab400/FileTrailerSchema.d.ts.map +1 -0
  452. package/dist/schemas/cnab400/FileTrailerSchema.js +14 -0
  453. package/dist/schemas/cnab400/FileTrailerSchema.js.map +1 -0
  454. package/dist/schemas/cnab400/GuarantorRecordSchema.d.ts +25 -0
  455. package/dist/schemas/cnab400/GuarantorRecordSchema.d.ts.map +1 -0
  456. package/dist/schemas/cnab400/GuarantorRecordSchema.js +26 -0
  457. package/dist/schemas/cnab400/GuarantorRecordSchema.js.map +1 -0
  458. package/dist/schemas/cnab400/MessageBackRecordSchema.d.ts +10 -0
  459. package/dist/schemas/cnab400/MessageBackRecordSchema.d.ts.map +1 -0
  460. package/dist/schemas/cnab400/MessageBackRecordSchema.js +14 -0
  461. package/dist/schemas/cnab400/MessageBackRecordSchema.js.map +1 -0
  462. package/dist/schemas/cnab400/MessageFrontRecordSchema.d.ts +10 -0
  463. package/dist/schemas/cnab400/MessageFrontRecordSchema.d.ts.map +1 -0
  464. package/dist/schemas/cnab400/MessageFrontRecordSchema.js +14 -0
  465. package/dist/schemas/cnab400/MessageFrontRecordSchema.js.map +1 -0
  466. package/dist/schemas/cnab400/PenaltyRecordSchema.d.ts +13 -0
  467. package/dist/schemas/cnab400/PenaltyRecordSchema.d.ts.map +1 -0
  468. package/dist/schemas/cnab400/PenaltyRecordSchema.js +13 -0
  469. package/dist/schemas/cnab400/PenaltyRecordSchema.js.map +1 -0
  470. package/dist/schemas/cnab400/ReturnDetailRecordSchema.d.ts +65 -0
  471. package/dist/schemas/cnab400/ReturnDetailRecordSchema.d.ts.map +1 -0
  472. package/dist/schemas/cnab400/ReturnDetailRecordSchema.js +15 -0
  473. package/dist/schemas/cnab400/ReturnDetailRecordSchema.js.map +1 -0
  474. package/dist/schemas/cnab400/index.d.ts +12 -0
  475. package/dist/schemas/cnab400/index.d.ts.map +1 -0
  476. package/dist/schemas/cnab400/index.js +28 -0
  477. package/dist/schemas/cnab400/index.js.map +1 -0
  478. package/dist/schemas/cnab400/shared.d.ts +24 -0
  479. package/dist/schemas/cnab400/shared.d.ts.map +1 -0
  480. package/dist/schemas/cnab400/shared.js +25 -0
  481. package/dist/schemas/cnab400/shared.js.map +1 -0
  482. package/dist/schemas/common/CommonSchemas.d.ts +197 -0
  483. package/dist/schemas/common/CommonSchemas.d.ts.map +1 -0
  484. package/dist/schemas/common/CommonSchemas.js +114 -0
  485. package/dist/schemas/common/CommonSchemas.js.map +1 -0
  486. package/dist/schemas/common/index.d.ts +2 -0
  487. package/dist/schemas/common/index.d.ts.map +1 -0
  488. package/dist/schemas/common/index.js +18 -0
  489. package/dist/schemas/common/index.js.map +1 -0
  490. package/dist/schemas/index.d.ts +4 -0
  491. package/dist/schemas/index.d.ts.map +1 -0
  492. package/dist/schemas/index.js +43 -0
  493. package/dist/schemas/index.js.map +1 -0
  494. package/dist/templates/BBTemplate.d.ts +5 -0
  495. package/dist/templates/BBTemplate.d.ts.map +1 -0
  496. package/dist/templates/BBTemplate.js +15 -0
  497. package/dist/templates/BBTemplate.js.map +1 -0
  498. package/dist/templates/BoletoTemplate.d.ts +35 -0
  499. package/dist/templates/BoletoTemplate.d.ts.map +1 -0
  500. package/dist/templates/BoletoTemplate.js +3 -0
  501. package/dist/templates/BoletoTemplate.js.map +1 -0
  502. package/dist/templates/BradescoTemplate.d.ts +5 -0
  503. package/dist/templates/BradescoTemplate.d.ts.map +1 -0
  504. package/dist/templates/BradescoTemplate.js +15 -0
  505. package/dist/templates/BradescoTemplate.js.map +1 -0
  506. package/dist/templates/GenericTemplate.d.ts +5 -0
  507. package/dist/templates/GenericTemplate.d.ts.map +1 -0
  508. package/dist/templates/GenericTemplate.js +17 -0
  509. package/dist/templates/GenericTemplate.js.map +1 -0
  510. package/dist/templates/HtmlTemplateBuilder.d.ts +16 -0
  511. package/dist/templates/HtmlTemplateBuilder.d.ts.map +1 -0
  512. package/dist/templates/HtmlTemplateBuilder.js +360 -0
  513. package/dist/templates/HtmlTemplateBuilder.js.map +1 -0
  514. package/dist/templates/ItauTemplate.d.ts +5 -0
  515. package/dist/templates/ItauTemplate.d.ts.map +1 -0
  516. package/dist/templates/ItauTemplate.js +15 -0
  517. package/dist/templates/ItauTemplate.js.map +1 -0
  518. package/dist/templates/TemplateRenderer.d.ts +7 -0
  519. package/dist/templates/TemplateRenderer.d.ts.map +1 -0
  520. package/dist/templates/TemplateRenderer.js +14 -0
  521. package/dist/templates/TemplateRenderer.js.map +1 -0
  522. package/dist/templates/index.d.ts +8 -0
  523. package/dist/templates/index.d.ts.map +1 -0
  524. package/dist/templates/index.js +24 -0
  525. package/dist/templates/index.js.map +1 -0
  526. package/dist/types/adapters/bradesco/index.d.ts +73 -0
  527. package/dist/types/adapters/bradesco/index.d.ts.map +1 -0
  528. package/dist/types/adapters/bradesco/index.js +3 -0
  529. package/dist/types/adapters/bradesco/index.js.map +1 -0
  530. package/dist/types/adapters/index.d.ts +3 -0
  531. package/dist/types/adapters/index.d.ts.map +1 -0
  532. package/dist/types/adapters/index.js +19 -0
  533. package/dist/types/adapters/index.js.map +1 -0
  534. package/dist/types/adapters/itau/index.d.ts +102 -0
  535. package/dist/types/adapters/itau/index.d.ts.map +1 -0
  536. package/dist/types/adapters/itau/index.js +3 -0
  537. package/dist/types/adapters/itau/index.js.map +1 -0
  538. package/dist/types/cnab240/Batch.d.ts +16 -0
  539. package/dist/types/cnab240/Batch.d.ts.map +1 -0
  540. package/dist/types/cnab240/Batch.js +3 -0
  541. package/dist/types/cnab240/Batch.js.map +1 -0
  542. package/dist/types/cnab240/BatchHeader.d.ts +25 -0
  543. package/dist/types/cnab240/BatchHeader.d.ts.map +1 -0
  544. package/dist/types/cnab240/BatchHeader.js +3 -0
  545. package/dist/types/cnab240/BatchHeader.js.map +1 -0
  546. package/dist/types/cnab240/BatchTrailer.d.ts +16 -0
  547. package/dist/types/cnab240/BatchTrailer.d.ts.map +1 -0
  548. package/dist/types/cnab240/BatchTrailer.js +3 -0
  549. package/dist/types/cnab240/BatchTrailer.js.map +1 -0
  550. package/dist/types/cnab240/Cnab240File.d.ts +9 -0
  551. package/dist/types/cnab240/Cnab240File.d.ts.map +1 -0
  552. package/dist/types/cnab240/Cnab240File.js +3 -0
  553. package/dist/types/cnab240/Cnab240File.js.map +1 -0
  554. package/dist/types/cnab240/FileHeader.d.ts +28 -0
  555. package/dist/types/cnab240/FileHeader.d.ts.map +1 -0
  556. package/dist/types/cnab240/FileHeader.js +3 -0
  557. package/dist/types/cnab240/FileHeader.js.map +1 -0
  558. package/dist/types/cnab240/FileTrailer.d.ts +11 -0
  559. package/dist/types/cnab240/FileTrailer.d.ts.map +1 -0
  560. package/dist/types/cnab240/FileTrailer.js +3 -0
  561. package/dist/types/cnab240/FileTrailer.js.map +1 -0
  562. package/dist/types/cnab240/SegmentP.d.ts +48 -0
  563. package/dist/types/cnab240/SegmentP.d.ts.map +1 -0
  564. package/dist/types/cnab240/SegmentP.js +3 -0
  565. package/dist/types/cnab240/SegmentP.js.map +1 -0
  566. package/dist/types/cnab240/SegmentQ.d.ts +24 -0
  567. package/dist/types/cnab240/SegmentQ.d.ts.map +1 -0
  568. package/dist/types/cnab240/SegmentQ.js +3 -0
  569. package/dist/types/cnab240/SegmentQ.js.map +1 -0
  570. package/dist/types/cnab240/SegmentR.d.ts +32 -0
  571. package/dist/types/cnab240/SegmentR.d.ts.map +1 -0
  572. package/dist/types/cnab240/SegmentR.js +3 -0
  573. package/dist/types/cnab240/SegmentR.js.map +1 -0
  574. package/dist/types/cnab240/index.d.ts +10 -0
  575. package/dist/types/cnab240/index.d.ts.map +1 -0
  576. package/dist/types/cnab240/index.js +26 -0
  577. package/dist/types/cnab240/index.js.map +1 -0
  578. package/dist/types/cnab400/Cnab400File.d.ts +17 -0
  579. package/dist/types/cnab400/Cnab400File.d.ts.map +1 -0
  580. package/dist/types/cnab400/Cnab400File.js +3 -0
  581. package/dist/types/cnab400/Cnab400File.js.map +1 -0
  582. package/dist/types/cnab400/Cnab400ReturnFile.d.ts +6 -0
  583. package/dist/types/cnab400/Cnab400ReturnFile.d.ts.map +1 -0
  584. package/dist/types/cnab400/Cnab400ReturnFile.js +3 -0
  585. package/dist/types/cnab400/Cnab400ReturnFile.js.map +1 -0
  586. package/dist/types/cnab400/DetailRecord.d.ts +47 -0
  587. package/dist/types/cnab400/DetailRecord.d.ts.map +1 -0
  588. package/dist/types/cnab400/DetailRecord.js +3 -0
  589. package/dist/types/cnab400/DetailRecord.js.map +1 -0
  590. package/dist/types/cnab400/FileHeader.d.ts +23 -0
  591. package/dist/types/cnab400/FileHeader.d.ts.map +1 -0
  592. package/dist/types/cnab400/FileHeader.js +3 -0
  593. package/dist/types/cnab400/FileHeader.js.map +1 -0
  594. package/dist/types/cnab400/FileTrailer.d.ts +9 -0
  595. package/dist/types/cnab400/FileTrailer.d.ts.map +1 -0
  596. package/dist/types/cnab400/FileTrailer.js +3 -0
  597. package/dist/types/cnab400/FileTrailer.js.map +1 -0
  598. package/dist/types/cnab400/GuarantorRecord.d.ts +18 -0
  599. package/dist/types/cnab400/GuarantorRecord.d.ts.map +1 -0
  600. package/dist/types/cnab400/GuarantorRecord.js +3 -0
  601. package/dist/types/cnab400/GuarantorRecord.js.map +1 -0
  602. package/dist/types/cnab400/MessageBackRecord.d.ts +9 -0
  603. package/dist/types/cnab400/MessageBackRecord.d.ts.map +1 -0
  604. package/dist/types/cnab400/MessageBackRecord.js +3 -0
  605. package/dist/types/cnab400/MessageBackRecord.js.map +1 -0
  606. package/dist/types/cnab400/MessageFrontRecord.d.ts +9 -0
  607. package/dist/types/cnab400/MessageFrontRecord.d.ts.map +1 -0
  608. package/dist/types/cnab400/MessageFrontRecord.js +3 -0
  609. package/dist/types/cnab400/MessageFrontRecord.js.map +1 -0
  610. package/dist/types/cnab400/PenaltyRecord.d.ts +8 -0
  611. package/dist/types/cnab400/PenaltyRecord.d.ts.map +1 -0
  612. package/dist/types/cnab400/PenaltyRecord.js +3 -0
  613. package/dist/types/cnab400/PenaltyRecord.js.map +1 -0
  614. package/dist/types/cnab400/ReturnDetailRecord.d.ts +11 -0
  615. package/dist/types/cnab400/ReturnDetailRecord.d.ts.map +1 -0
  616. package/dist/types/cnab400/ReturnDetailRecord.js +3 -0
  617. package/dist/types/cnab400/ReturnDetailRecord.js.map +1 -0
  618. package/dist/types/cnab400/index.d.ts +11 -0
  619. package/dist/types/cnab400/index.d.ts.map +1 -0
  620. package/dist/types/cnab400/index.js +3 -0
  621. package/dist/types/cnab400/index.js.map +1 -0
  622. package/dist/types/common/CommonTypes.d.ts +53 -0
  623. package/dist/types/common/CommonTypes.d.ts.map +1 -0
  624. package/dist/types/common/CommonTypes.js +3 -0
  625. package/dist/types/common/CommonTypes.js.map +1 -0
  626. package/dist/types/common/index.d.ts +2 -0
  627. package/dist/types/common/index.d.ts.map +1 -0
  628. package/dist/types/common/index.js +18 -0
  629. package/dist/types/common/index.js.map +1 -0
  630. package/dist/types/index.d.ts +6 -0
  631. package/dist/types/index.d.ts.map +1 -0
  632. package/dist/types/index.js +21 -0
  633. package/dist/types/index.js.map +1 -0
  634. package/dist/types/json/JsonTypes.d.ts +2 -0
  635. package/dist/types/json/JsonTypes.d.ts.map +1 -0
  636. package/dist/types/json/JsonTypes.js +5 -0
  637. package/dist/types/json/JsonTypes.js.map +1 -0
  638. package/dist/types/json/index.d.ts +2 -0
  639. package/dist/types/json/index.d.ts.map +1 -0
  640. package/dist/types/json/index.js +18 -0
  641. package/dist/types/json/index.js.map +1 -0
  642. package/dist/utils/email/AttachmentHelper.d.ts +8 -0
  643. package/dist/utils/email/AttachmentHelper.d.ts.map +1 -0
  644. package/dist/utils/email/AttachmentHelper.js +15 -0
  645. package/dist/utils/email/AttachmentHelper.js.map +1 -0
  646. package/dist/utils/email/EmailTemplateGenerator.d.ts +19 -0
  647. package/dist/utils/email/EmailTemplateGenerator.d.ts.map +1 -0
  648. package/dist/utils/email/EmailTemplateGenerator.js +78 -0
  649. package/dist/utils/email/EmailTemplateGenerator.js.map +1 -0
  650. package/dist/utils/email/EmailValidator.d.ts +3 -0
  651. package/dist/utils/email/EmailValidator.d.ts.map +1 -0
  652. package/dist/utils/email/EmailValidator.js +15 -0
  653. package/dist/utils/email/EmailValidator.js.map +1 -0
  654. package/dist/utils/email/index.d.ts +6 -0
  655. package/dist/utils/email/index.d.ts.map +1 -0
  656. package/dist/utils/email/index.js +12 -0
  657. package/dist/utils/email/index.js.map +1 -0
  658. package/dist/utils/formatters/Formatters.d.ts +10 -0
  659. package/dist/utils/formatters/Formatters.d.ts.map +1 -0
  660. package/dist/utils/formatters/Formatters.js +48 -0
  661. package/dist/utils/formatters/Formatters.js.map +1 -0
  662. package/dist/utils/formatters/index.d.ts +2 -0
  663. package/dist/utils/formatters/index.d.ts.map +1 -0
  664. package/dist/utils/formatters/index.js +18 -0
  665. package/dist/utils/formatters/index.js.map +1 -0
  666. package/dist/utils/generators/GeneratorUtils.d.ts +10 -0
  667. package/dist/utils/generators/GeneratorUtils.d.ts.map +1 -0
  668. package/dist/utils/generators/GeneratorUtils.js +57 -0
  669. package/dist/utils/generators/GeneratorUtils.js.map +1 -0
  670. package/dist/utils/generators/index.d.ts +2 -0
  671. package/dist/utils/generators/index.d.ts.map +1 -0
  672. package/dist/utils/generators/index.js +18 -0
  673. package/dist/utils/generators/index.js.map +1 -0
  674. package/dist/utils/index.d.ts +7 -0
  675. package/dist/utils/index.d.ts.map +1 -0
  676. package/dist/utils/index.js +23 -0
  677. package/dist/utils/index.js.map +1 -0
  678. package/dist/utils/parsers/ParserUtils.d.ts +6 -0
  679. package/dist/utils/parsers/ParserUtils.d.ts.map +1 -0
  680. package/dist/utils/parsers/ParserUtils.js +63 -0
  681. package/dist/utils/parsers/ParserUtils.js.map +1 -0
  682. package/dist/utils/parsers/index.d.ts +2 -0
  683. package/dist/utils/parsers/index.d.ts.map +1 -0
  684. package/dist/utils/parsers/index.js +18 -0
  685. package/dist/utils/parsers/index.js.map +1 -0
  686. package/dist/utils/validators/TaxIdValidator.d.ts +2 -0
  687. package/dist/utils/validators/TaxIdValidator.d.ts.map +1 -0
  688. package/dist/utils/validators/TaxIdValidator.js +58 -0
  689. package/dist/utils/validators/TaxIdValidator.js.map +1 -0
  690. package/dist/utils/validators/index.d.ts +2 -0
  691. package/dist/utils/validators/index.d.ts.map +1 -0
  692. package/dist/utils/validators/index.js +18 -0
  693. package/dist/utils/validators/index.js.map +1 -0
  694. package/dist/utils/webhooks/WebhookNotification.d.ts +25 -0
  695. package/dist/utils/webhooks/WebhookNotification.d.ts.map +1 -0
  696. package/dist/utils/webhooks/WebhookNotification.js +50 -0
  697. package/dist/utils/webhooks/WebhookNotification.js.map +1 -0
  698. package/dist/utils/webhooks/WebhookValidator.d.ts +3 -0
  699. package/dist/utils/webhooks/WebhookValidator.d.ts.map +1 -0
  700. package/dist/utils/webhooks/WebhookValidator.js +24 -0
  701. package/dist/utils/webhooks/WebhookValidator.js.map +1 -0
  702. package/dist/utils/webhooks/index.d.ts +4 -0
  703. package/dist/utils/webhooks/index.d.ts.map +1 -0
  704. package/dist/utils/webhooks/index.js +10 -0
  705. package/dist/utils/webhooks/index.js.map +1 -0
  706. package/dist/validators/cnab240/Cnab240Validator.d.ts +5 -0
  707. package/dist/validators/cnab240/Cnab240Validator.d.ts.map +1 -0
  708. package/dist/validators/cnab240/Cnab240Validator.js +148 -0
  709. package/dist/validators/cnab240/Cnab240Validator.js.map +1 -0
  710. package/dist/validators/cnab240/index.d.ts +2 -0
  711. package/dist/validators/cnab240/index.d.ts.map +1 -0
  712. package/dist/validators/cnab240/index.js +18 -0
  713. package/dist/validators/cnab240/index.js.map +1 -0
  714. package/dist/validators/cnab400/Cnab400Validator.d.ts +5 -0
  715. package/dist/validators/cnab400/Cnab400Validator.d.ts.map +1 -0
  716. package/dist/validators/cnab400/Cnab400Validator.js +48 -0
  717. package/dist/validators/cnab400/Cnab400Validator.js.map +1 -0
  718. package/dist/validators/cnab400/index.d.ts +2 -0
  719. package/dist/validators/cnab400/index.d.ts.map +1 -0
  720. package/dist/validators/cnab400/index.js +18 -0
  721. package/dist/validators/cnab400/index.js.map +1 -0
  722. package/dist/validators/common/CommonValidators.d.ts +7 -0
  723. package/dist/validators/common/CommonValidators.d.ts.map +1 -0
  724. package/dist/validators/common/CommonValidators.js +26 -0
  725. package/dist/validators/common/CommonValidators.js.map +1 -0
  726. package/dist/validators/common/ValidationResult.d.ts +5 -0
  727. package/dist/validators/common/ValidationResult.d.ts.map +1 -0
  728. package/dist/validators/common/ValidationResult.js +3 -0
  729. package/dist/validators/common/ValidationResult.js.map +1 -0
  730. package/dist/validators/common/index.d.ts +3 -0
  731. package/dist/validators/common/index.d.ts.map +1 -0
  732. package/dist/validators/common/index.js +19 -0
  733. package/dist/validators/common/index.js.map +1 -0
  734. package/dist/validators/index.d.ts +7 -0
  735. package/dist/validators/index.d.ts.map +1 -0
  736. package/dist/validators/index.js +48 -0
  737. package/dist/validators/index.js.map +1 -0
  738. package/package.json +7 -4
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FileTrailerGenerator = void 0;
4
+ const cnab240_1 = require("../../constants/cnab240");
5
+ const LineGenerator_1 = require("./LineGenerator");
6
+ class FileTrailerGenerator {
7
+ generate(trailer) {
8
+ this.validate(trailer);
9
+ const fields = new Map();
10
+ const POS = cnab240_1.FILE_TRAILER_POSITIONS;
11
+ fields.set('bankCode', (0, LineGenerator_1.formatNumericField)(Number(trailer.bankCode), POS.BANK_CODE.start, POS.BANK_CODE.end));
12
+ fields.set('batchNumber', (0, LineGenerator_1.formatField)(cnab240_1.BATCH_TRAILER_BANK, POS.BATCH_NUMBER.start, POS.BATCH_NUMBER.end, 'numeric'));
13
+ fields.set('recordType', (0, LineGenerator_1.formatField)(cnab240_1.RECORD_TYPE.FILE_TRAILER, POS.RECORD_TYPE.start, POS.RECORD_TYPE.end, 'numeric'));
14
+ fields.set('reserved1', (0, LineGenerator_1.formatField)('', POS.RESERVED_1.start, POS.RESERVED_1.end, 'text'));
15
+ fields.set('totalBatches', (0, LineGenerator_1.formatNumericField)(trailer.totalBatches, POS.BATCH_COUNT.start, POS.BATCH_COUNT.end));
16
+ fields.set('totalRecords', (0, LineGenerator_1.formatNumericField)(trailer.totalRecords, POS.RECORD_COUNT.start, POS.RECORD_COUNT.end));
17
+ fields.set('totalAccounts', (0, LineGenerator_1.formatNumericField)(trailer.totalAccounts || 0, POS.ACCOUNT_COUNT.start, POS.ACCOUNT_COUNT.end));
18
+ fields.set('reserved2', (0, LineGenerator_1.formatField)('', POS.RESERVED_2.start, POS.RESERVED_2.end, 'text'));
19
+ const line = (0, LineGenerator_1.buildLine)(fields);
20
+ if (line.length !== cnab240_1.LINE_LENGTH) {
21
+ throw new Error(`Invalid file trailer length: expected ${cnab240_1.LINE_LENGTH}, got ${line.length}`);
22
+ }
23
+ return line;
24
+ }
25
+ validate(trailer) {
26
+ if (!trailer.bankCode) {
27
+ throw new Error('Bank code is required');
28
+ }
29
+ if (!trailer.batchNumber) {
30
+ throw new Error('Batch number is required');
31
+ }
32
+ if (!trailer.recordType) {
33
+ throw new Error('Record type is required');
34
+ }
35
+ if (trailer.totalBatches === undefined || trailer.totalBatches === null) {
36
+ throw new Error('Total batches is required');
37
+ }
38
+ if (trailer.totalRecords === undefined || trailer.totalRecords === null) {
39
+ throw new Error('Total records is required');
40
+ }
41
+ }
42
+ }
43
+ exports.FileTrailerGenerator = FileTrailerGenerator;
44
+ //# sourceMappingURL=FileTrailerGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileTrailerGenerator.js","sourceRoot":"","sources":["../../../src/generators/cnab240/FileTrailerGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Cnab240File } from '../../types/cnab240/Cnab240File';
2
+ export declare function generateCnab240(data: Cnab240File): string;
3
+ //# sourceMappingURL=GenerateCnab240.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateCnab240.d.ts","sourceRoot":"","sources":["../../../src/generators/cnab240/GenerateCnab240.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAS9D,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAGzD"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateCnab240 = generateCnab240;
4
+ const Cnab240Generator_1 = require("./Cnab240Generator");
5
+ function generateCnab240(data) {
6
+ const generator = new Cnab240Generator_1.Cnab240Generator();
7
+ return generator.generate(data);
8
+ }
9
+ //# sourceMappingURL=GenerateCnab240.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateCnab240.js","sourceRoot":"","sources":["../../../src/generators/cnab240/GenerateCnab240.ts"],"names":[],"mappings":";;AASA,0CAGC;AAXD,yDAAsD;AAQtD,SAAgB,eAAe,CAAC,IAAiB;IAC/C,MAAM,SAAS,GAAG,IAAI,mCAAgB,EAAE,CAAC;IACzC,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare function formatField(value: string | number, startPos: number, endPos: number, type: 'text' | 'numeric'): string;
2
+ export declare function formatNumericField(value: number, startPos: number, endPos: number): string;
3
+ export declare function formatDecimalField(value: number, startPos: number, endPos: number, decimals: number): string;
4
+ export declare function formatDateField(date: Date | undefined, startPos: number, endPos: number): string;
5
+ export declare function buildLine(fields: Map<string, string>): string;
6
+ //# sourceMappingURL=LineGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LineGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/cnab240/LineGenerator.ts"],"names":[],"mappings":"AAYA,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,MAAM,CAYR;AASD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAK1F;AAWD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,MAAM,CAMR;AAUD,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAYhG;AAQD,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAE7D"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatField = formatField;
4
+ exports.formatNumericField = formatNumericField;
5
+ exports.formatDecimalField = formatDecimalField;
6
+ exports.formatDateField = formatDateField;
7
+ exports.buildLine = buildLine;
8
+ function formatField(value, startPos, endPos, type) {
9
+ const size = endPos - startPos + 1;
10
+ const strValue = String(value || '').toUpperCase();
11
+ if (type === 'text') {
12
+ return strValue.padEnd(size, ' ').substring(0, size);
13
+ }
14
+ else {
15
+ const numericValue = strValue.replaceAll(/[^\d]/g, '');
16
+ return numericValue.padStart(size, '0').slice(-size);
17
+ }
18
+ }
19
+ function formatNumericField(value, startPos, endPos) {
20
+ const size = endPos - startPos + 1;
21
+ const absValue = Math.abs(value);
22
+ const strValue = String(Math.floor(absValue));
23
+ return strValue.padStart(size, '0').slice(-size);
24
+ }
25
+ function formatDecimalField(value, startPos, endPos, decimals) {
26
+ const size = endPos - startPos + 1;
27
+ const multiplier = Math.pow(10, decimals);
28
+ const intValue = Math.round(value * multiplier);
29
+ const strValue = String(Math.abs(intValue));
30
+ return strValue.padStart(size, '0').slice(-size);
31
+ }
32
+ function formatDateField(date, startPos, endPos) {
33
+ const size = endPos - startPos + 1;
34
+ if (!date) {
35
+ return '0'.repeat(size);
36
+ }
37
+ const day = String(date.getUTCDate()).padStart(2, '0');
38
+ const month = String(date.getUTCMonth() + 1).padStart(2, '0');
39
+ const year = String(date.getUTCFullYear());
40
+ return `${day}${month}${year}`;
41
+ }
42
+ function buildLine(fields) {
43
+ return Array.from(fields.values()).join('');
44
+ }
45
+ //# sourceMappingURL=LineGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LineGenerator.js","sourceRoot":"","sources":["../../../src/generators/cnab240/LineGenerator.ts"],"names":[],"mappings":";;AAYA,kCAiBC;AASD,gDAKC;AAWD,gDAWC;AAUD,0CAYC;AAQD,8BAEC;AArFD,SAAgB,WAAW,CACzB,KAAsB,EACtB,QAAgB,EAChB,MAAc,EACd,IAAwB;IAExB,MAAM,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAEnD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAEpB,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;SAAM,CAAC;QAEN,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACvD,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AASD,SAAgB,kBAAkB,CAAC,KAAa,EAAE,QAAgB,EAAE,MAAc;IAChF,MAAM,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAWD,SAAgB,kBAAkB,CAChC,KAAa,EACb,QAAgB,EAChB,MAAc,EACd,QAAgB;IAEhB,MAAM,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5C,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAUD,SAAgB,eAAe,CAAC,IAAsB,EAAE,QAAgB,EAAE,MAAc;IACtF,MAAM,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC;IAEnC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IAE3C,OAAO,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,EAAE,CAAC;AACjC,CAAC;AAQD,SAAgB,SAAS,CAAC,MAA2B;IACnD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { SegmentP } from '../../types';
2
+ export declare class SegmentPGenerator {
3
+ generate(segment: SegmentP): string;
4
+ private validate;
5
+ }
6
+ //# sourceMappingURL=SegmentPGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentPGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/cnab240/SegmentPGenerator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAcvC,qBAAa,iBAAiB;IAMrB,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,MAAM;IA0U1C,OAAO,CAAC,QAAQ;CAiBjB"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SegmentPGenerator = void 0;
4
+ const cnab240_1 = require("../../constants/cnab240");
5
+ const errors_1 = require("../../errors");
6
+ const LineGenerator_1 = require("./LineGenerator");
7
+ class SegmentPGenerator {
8
+ generate(segment) {
9
+ this.validate(segment);
10
+ const POS = cnab240_1.SEGMENT_P_POSITIONS;
11
+ const fields = new Map();
12
+ fields.set('bankCode', (0, LineGenerator_1.formatNumericField)(Number(segment.bankCode), POS.BANK_CODE.start, POS.BANK_CODE.end));
13
+ fields.set('batchNumber', (0, LineGenerator_1.formatNumericField)(segment.batchNumber, POS.BATCH_NUMBER.start, POS.BATCH_NUMBER.end));
14
+ fields.set('recordType', cnab240_1.RECORD_TYPE.DETAIL);
15
+ fields.set('sequentialNumber', (0, LineGenerator_1.formatNumericField)(segment.sequentialNumber, POS.RECORD_NUMBER.start, POS.RECORD_NUMBER.end));
16
+ fields.set('segmentCode', 'P');
17
+ fields.set('reserved1', ' ');
18
+ fields.set('occurrenceCode', (0, LineGenerator_1.formatField)(segment.occurrenceCode || '01', POS.MOVEMENT_CODE.start, POS.MOVEMENT_CODE.end, 'text'));
19
+ fields.set('agency', (0, LineGenerator_1.formatNumericField)(Number(segment.agency || '0'), POS.AGENCY.start, POS.AGENCY.end));
20
+ fields.set('agencyDigit', (0, LineGenerator_1.formatField)(segment.agencyDigit || ' ', POS.AGENCY_DIGIT.start, POS.AGENCY_DIGIT.end, 'text'));
21
+ fields.set('account', (0, LineGenerator_1.formatNumericField)(Number(segment.account || '0'), POS.ACCOUNT.start, POS.ACCOUNT.end));
22
+ fields.set('accountDigit', (0, LineGenerator_1.formatField)(segment.accountDigit || ' ', POS.ACCOUNT_DIGIT.start, POS.ACCOUNT_DIGIT.end, 'text'));
23
+ fields.set('fullAccountDigit', (0, LineGenerator_1.formatField)(segment.fullAccountDigit || ' ', POS.ACCOUNT_DV.start, POS.ACCOUNT_DV.end, 'text'));
24
+ fields.set('ourNumber', (0, LineGenerator_1.formatField)(segment.ourNumber || '', POS.DOCUMENT_NUMBER.start, POS.DOCUMENT_NUMBER.end, 'text'));
25
+ fields.set('portfolioCode', (0, LineGenerator_1.formatField)(segment.portfolioCode || '', POS.PORTFOLIO.start, POS.PORTFOLIO.end, 'numeric'));
26
+ fields.set('formType', (0, LineGenerator_1.formatField)(segment.formType || '1', POS.REGISTRATION_FORM.start, POS.BOLETO_DISTRIBUTION.end, 'numeric'));
27
+ fields.set('documentNumber', (0, LineGenerator_1.formatField)(segment.documentNumber || '', POS.BILLING_DOCUMENT_NUMBER.start, POS.BILLING_DOCUMENT_NUMBER.end, 'text'));
28
+ fields.set('dueDate', (0, LineGenerator_1.formatDateField)(segment.dueDate, POS.DUE_DATE.start, POS.DUE_DATE.end));
29
+ fields.set('amount', (0, LineGenerator_1.formatDecimalField)(segment.amount || 0, POS.AMOUNT.start, POS.AMOUNT.end, 2));
30
+ fields.set('collectionAgency', (0, LineGenerator_1.formatNumericField)(Number(segment.collectionAgency || '0'), POS.COLLECTION_AGENCY.start, POS.COLLECTION_AGENCY.end));
31
+ fields.set('collectionAgencyDigit', (0, LineGenerator_1.formatField)(segment.collectionAgencyDigit || ' ', POS.COLLECTION_AGENCY_DIGIT.start, POS.COLLECTION_AGENCY_DIGIT.end, 'text'));
32
+ fields.set('speciesCode', (0, LineGenerator_1.formatField)(segment.speciesCode || '01', POS.DOCUMENT_SPECIES.start, POS.DOCUMENT_SPECIES.end, 'text'));
33
+ fields.set('acceptance', (0, LineGenerator_1.formatField)(segment.acceptance || 'N', POS.ACCEPTANCE.start, POS.ACCEPTANCE.end, 'text'));
34
+ fields.set('issueDate', (0, LineGenerator_1.formatDateField)(segment.issueDate, POS.ISSUE_DATE.start, POS.ISSUE_DATE.end));
35
+ fields.set('interestCode', (0, LineGenerator_1.formatField)(segment.interestCode || '0', POS.INTEREST_CODE.start, POS.INTEREST_CODE.end, 'text'));
36
+ fields.set('interestDate', segment.interestDate
37
+ ? (0, LineGenerator_1.formatDateField)(segment.interestDate, POS.INTEREST_DATE.start, POS.INTEREST_DATE.end)
38
+ : '00000000');
39
+ fields.set('interestAmount', (0, LineGenerator_1.formatDecimalField)(segment.interestAmount || 0, POS.INTEREST_AMOUNT.start, POS.INTEREST_AMOUNT.end, 2));
40
+ fields.set('discountCode', (0, LineGenerator_1.formatField)(segment.discountCode || '0', POS.DISCOUNT_CODE.start, POS.DISCOUNT_CODE.end, 'text'));
41
+ fields.set('discountDate', segment.discountDate
42
+ ? (0, LineGenerator_1.formatDateField)(segment.discountDate, POS.DISCOUNT_DATE.start, POS.DISCOUNT_DATE.end)
43
+ : '00000000');
44
+ fields.set('discountAmount', (0, LineGenerator_1.formatDecimalField)(segment.discountAmount || 0, POS.DISCOUNT_AMOUNT.start, POS.DISCOUNT_AMOUNT.end, 2));
45
+ fields.set('iofAmount', (0, LineGenerator_1.formatDecimalField)(segment.iofAmount || 0, POS.IOF_AMOUNT.start, POS.IOF_AMOUNT.end, 2));
46
+ fields.set('rebateAmount', (0, LineGenerator_1.formatDecimalField)(segment.rebateAmount || 0, POS.REBATE_AMOUNT.start, POS.REBATE_AMOUNT.end, 2));
47
+ fields.set('companyIdentification', (0, LineGenerator_1.formatField)(segment.companyIdentification || '', POS.COMPANY_IDENTIFICATION.start, POS.COMPANY_IDENTIFICATION.end, 'text'));
48
+ fields.set('protestCode', (0, LineGenerator_1.formatField)(segment.protestCode || '3', POS.PROTEST_CODE.start, POS.PROTEST_CODE.end, 'text'));
49
+ fields.set('protestDays', (0, LineGenerator_1.formatNumericField)(segment.protestDays || 0, POS.PROTEST_DAYS.start, POS.PROTEST_DAYS.end));
50
+ fields.set('writeOffCode', (0, LineGenerator_1.formatField)(segment.writeOffCode || '2', POS.LOW_RETURN_CODE.start, POS.LOW_RETURN_CODE.end, 'text'));
51
+ fields.set('writeOffDays', (0, LineGenerator_1.formatNumericField)(segment.writeOffDays || 0, POS.LOW_RETURN_DAYS.start, POS.LOW_RETURN_DAYS.end));
52
+ fields.set('currencyCode', (0, LineGenerator_1.formatField)(segment.currencyCode || '09', POS.CURRENCY_CODE.start, POS.CURRENCY_CODE.end, 'text'));
53
+ fields.set('contractNumber', (0, LineGenerator_1.formatField)(segment.contractNumber || '', POS.CONTRACT_NUMBER.start, POS.CONTRACT_NUMBER.end, 'text'));
54
+ fields.set('reserved3', (0, LineGenerator_1.formatField)('', POS.FREE_USE.start, POS.FREE_USE.end, 'text'));
55
+ return (0, LineGenerator_1.buildLine)(fields);
56
+ }
57
+ validate(segment) {
58
+ if (!segment.bankCode) {
59
+ throw new errors_1.CnabError('Bank code is required', 'VALIDATION_ERROR');
60
+ }
61
+ if (segment.batchNumber === undefined || segment.batchNumber === null) {
62
+ throw new errors_1.CnabError('Batch number is required', 'VALIDATION_ERROR');
63
+ }
64
+ if (segment.sequentialNumber === undefined || segment.sequentialNumber === null) {
65
+ throw new errors_1.CnabError('Sequential number is required', 'VALIDATION_ERROR');
66
+ }
67
+ if (!segment.dueDate) {
68
+ throw new errors_1.CnabError('Due date is required', 'VALIDATION_ERROR');
69
+ }
70
+ if (segment.amount === undefined || segment.amount === null) {
71
+ throw new errors_1.CnabError('Amount is required', 'VALIDATION_ERROR');
72
+ }
73
+ }
74
+ }
75
+ exports.SegmentPGenerator = SegmentPGenerator;
76
+ //# sourceMappingURL=SegmentPGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentPGenerator.js","sourceRoot":"","sources":["../../../src/generators/cnab240/SegmentPGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { SegmentQ } from '../../types/cnab240';
2
+ export declare class SegmentQGenerator {
3
+ generate(segment: SegmentQ): string;
4
+ private validate;
5
+ }
6
+ //# sourceMappingURL=SegmentQGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentQGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/cnab240/SegmentQGenerator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AA6B/C,qBAAa,iBAAiB;IA6BrB,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,MAAM;IAsK1C,OAAO,CAAC,QAAQ;CAyDjB"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SegmentQGenerator = void 0;
4
+ const cnab240_1 = require("../../constants/cnab240");
5
+ const LineGenerator_1 = require("./LineGenerator");
6
+ class SegmentQGenerator {
7
+ generate(segment) {
8
+ this.validate(segment);
9
+ const POS = cnab240_1.SEGMENT_Q_POSITIONS;
10
+ const fields = new Map();
11
+ fields.set('bankCode', (0, LineGenerator_1.formatNumericField)(Number(segment.bankCode), POS.BANK_CODE.start, POS.BANK_CODE.end));
12
+ fields.set('batchNumber', (0, LineGenerator_1.formatNumericField)(Number(segment.batchNumber), POS.BATCH_NUMBER.start, POS.BATCH_NUMBER.end));
13
+ fields.set('recordType', (0, LineGenerator_1.formatField)(cnab240_1.RECORD_TYPE.DETAIL, POS.RECORD_TYPE.start, POS.RECORD_TYPE.end, 'numeric'));
14
+ fields.set('sequentialNumber', (0, LineGenerator_1.formatNumericField)(segment.sequentialNumber, POS.RECORD_NUMBER.start, POS.RECORD_NUMBER.end));
15
+ fields.set('segmentCode', (0, LineGenerator_1.formatField)('Q', POS.SEGMENT_CODE.start, POS.SEGMENT_CODE.end, 'text'));
16
+ fields.set('reserved1', (0, LineGenerator_1.formatField)('', POS.RESERVED_1.start, POS.RESERVED_1.end, 'text'));
17
+ fields.set('occurrenceCode', (0, LineGenerator_1.formatField)(segment.occurrenceCode, POS.MOVEMENT_CODE.start, POS.MOVEMENT_CODE.end, 'numeric'));
18
+ fields.set('payerRegistrationType', (0, LineGenerator_1.formatField)(segment.payerRegistrationType, POS.PAYER_PERSON_TYPE.start, POS.PAYER_PERSON_TYPE.end, 'numeric'));
19
+ fields.set('payerTaxId', (0, LineGenerator_1.formatNumericField)(Number(segment.payerTaxId), POS.PAYER_TAX_ID.start, POS.PAYER_TAX_ID.end));
20
+ fields.set('payerName', (0, LineGenerator_1.formatField)(segment.payerName, POS.PAYER_NAME.start, POS.PAYER_NAME.end, 'text'));
21
+ fields.set('payerAddress', (0, LineGenerator_1.formatField)(segment.payerAddress, POS.PAYER_ADDRESS.start, POS.PAYER_ADDRESS.end, 'text'));
22
+ fields.set('payerNeighborhood', (0, LineGenerator_1.formatField)(segment.payerNeighborhood, POS.PAYER_DISTRICT.start, POS.PAYER_DISTRICT.end, 'text'));
23
+ fields.set('payerPostalCode', (0, LineGenerator_1.formatNumericField)(Number(segment.payerPostalCode), POS.PAYER_ZIP_CODE.start, POS.PAYER_ZIP_CODE.end));
24
+ fields.set('payerCity', (0, LineGenerator_1.formatField)(segment.payerCity, POS.PAYER_CITY.start, POS.PAYER_CITY.end, 'text'));
25
+ fields.set('payerState', (0, LineGenerator_1.formatField)(segment.payerState, POS.PAYER_STATE.start, POS.PAYER_STATE.end, 'text'));
26
+ fields.set('guarantorRegistrationType', (0, LineGenerator_1.formatField)(segment.guarantorRegistrationType || '0', POS.GUARANTOR_PERSON_TYPE.start, POS.GUARANTOR_PERSON_TYPE.end, 'numeric'));
27
+ fields.set('guarantorTaxId', (0, LineGenerator_1.formatNumericField)(Number(segment.guarantorTaxId || 0), POS.GUARANTOR_TAX_ID.start, POS.GUARANTOR_TAX_ID.end));
28
+ fields.set('guarantorName', (0, LineGenerator_1.formatField)(segment.guarantorName || '', POS.GUARANTOR_NAME.start, POS.GUARANTOR_NAME.end, 'text'));
29
+ fields.set('reserved2', (0, LineGenerator_1.formatField)('', POS.BANK_CORRESPONDENT_CODE.start, POS.RESERVED_2.end, 'text'));
30
+ const line = (0, LineGenerator_1.buildLine)(fields);
31
+ if (line.length !== cnab240_1.LINE_LENGTH) {
32
+ throw new Error(`Invalid segment Q length: expected ${cnab240_1.LINE_LENGTH}, got ${line.length}`);
33
+ }
34
+ return line;
35
+ }
36
+ validate(segment) {
37
+ if (!segment.bankCode) {
38
+ throw new Error('Bank code is required');
39
+ }
40
+ if (segment.batchNumber === undefined || segment.batchNumber === null) {
41
+ throw new Error('Batch number is required');
42
+ }
43
+ if (!segment.recordType) {
44
+ throw new Error('Record type is required');
45
+ }
46
+ if (segment.sequentialNumber === undefined || segment.sequentialNumber === null) {
47
+ throw new Error('Sequential number is required');
48
+ }
49
+ if (!segment.segmentCode) {
50
+ throw new Error('Segment code is required');
51
+ }
52
+ if (!segment.occurrenceCode) {
53
+ throw new Error('Occurrence code is required');
54
+ }
55
+ if (!segment.payerRegistrationType) {
56
+ throw new Error('Payer registration type is required');
57
+ }
58
+ if (!segment.payerTaxId) {
59
+ throw new Error('Payer tax ID is required');
60
+ }
61
+ if (!segment.payerName) {
62
+ throw new Error('Payer name is required');
63
+ }
64
+ if (!segment.payerAddress) {
65
+ throw new Error('Payer address is required');
66
+ }
67
+ if (!segment.payerNeighborhood) {
68
+ throw new Error('Payer neighborhood is required');
69
+ }
70
+ if (!segment.payerPostalCode) {
71
+ throw new Error('Payer postal code is required');
72
+ }
73
+ if (!segment.payerCity) {
74
+ throw new Error('Payer city is required');
75
+ }
76
+ if (!segment.payerState) {
77
+ throw new Error('Payer state is required');
78
+ }
79
+ }
80
+ }
81
+ exports.SegmentQGenerator = SegmentQGenerator;
82
+ //# sourceMappingURL=SegmentQGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentQGenerator.js","sourceRoot":"","sources":["../../../src/generators/cnab240/SegmentQGenerator.ts"],"names":[],"mappings":";;;AAAA,qDAAwF;AAExF,mDAA6E;AA4B7E,MAAa,iBAAiB;IA6BrB,QAAQ,CAAC,OAAiB;QAC/B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEvB,MAAM,GAAG,GAAG,6BAAmB,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;QAGzC,MAAM,CAAC,GAAG,CACR,UAAU,EACV,IAAA,kCAAkB,EAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CACrF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,aAAa,EACb,IAAA,kCAAkB,EAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAC9F,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,YAAY,EACZ,IAAA,2BAAW,EAAC,qBAAW,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,CACvF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,kBAAkB,EAClB,IAAA,kCAAkB,EAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAC7F,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,aAAa,EACb,IAAA,2BAAW,EAAC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CACvE,CAAC;QAGF,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,IAAA,2BAAW,EAAC,EAAE,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;QAG3F,MAAM,CAAC,GAAG,CACR,gBAAgB,EAChB,IAAA,2BAAW,EACT,OAAO,CAAC,cAAc,EACtB,GAAG,CAAC,aAAa,CAAC,KAAK,EACvB,GAAG,CAAC,aAAa,CAAC,GAAG,EACrB,SAAS,CACV,CACF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,uBAAuB,EACvB,IAAA,2BAAW,EACT,OAAO,CAAC,qBAAqB,EAC7B,GAAG,CAAC,iBAAiB,CAAC,KAAK,EAC3B,GAAG,CAAC,iBAAiB,CAAC,GAAG,EACzB,SAAS,CACV,CACF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,YAAY,EACZ,IAAA,kCAAkB,EAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAC7F,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,WAAW,EACX,IAAA,2BAAW,EAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CACjF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,cAAc,EACd,IAAA,2BAAW,EAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAC1F,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,mBAAmB,EACnB,IAAA,2BAAW,EACT,OAAO,CAAC,iBAAiB,EACzB,GAAG,CAAC,cAAc,CAAC,KAAK,EACxB,GAAG,CAAC,cAAc,CAAC,GAAG,EACtB,MAAM,CACP,CACF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,iBAAiB,EACjB,IAAA,kCAAkB,EAChB,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAC/B,GAAG,CAAC,cAAc,CAAC,KAAK,EACxB,GAAG,CAAC,cAAc,CAAC,GAAG,CACvB,CACF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,WAAW,EACX,IAAA,2BAAW,EAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CACjF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,YAAY,EACZ,IAAA,2BAAW,EAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CACpF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,2BAA2B,EAC3B,IAAA,2BAAW,EACT,OAAO,CAAC,yBAAyB,IAAI,GAAG,EACxC,GAAG,CAAC,qBAAqB,CAAC,KAAK,EAC/B,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAC7B,SAAS,CACV,CACF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,gBAAgB,EAChB,IAAA,kCAAkB,EAChB,MAAM,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC,EACnC,GAAG,CAAC,gBAAgB,CAAC,KAAK,EAC1B,GAAG,CAAC,gBAAgB,CAAC,GAAG,CACzB,CACF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,eAAe,EACf,IAAA,2BAAW,EACT,OAAO,CAAC,aAAa,IAAI,EAAE,EAC3B,GAAG,CAAC,cAAc,CAAC,KAAK,EACxB,GAAG,CAAC,cAAc,CAAC,GAAG,EACtB,MAAM,CACP,CACF,CAAC;QAGF,MAAM,CAAC,GAAG,CACR,WAAW,EACX,IAAA,2BAAW,EAAC,EAAE,EAAE,GAAG,CAAC,uBAAuB,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAC/E,CAAC;QAEF,MAAM,IAAI,GAAG,IAAA,yBAAS,EAAC,MAAM,CAAC,CAAC;QAG/B,IAAI,IAAI,CAAC,MAAM,KAAK,qBAAW,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,sCAAsC,qBAAW,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAQO,QAAQ,CAAC,OAAiB;QAChC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS,IAAI,OAAO,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAChF,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;CACF;AA5PD,8CA4PC"}
@@ -0,0 +1,6 @@
1
+ import { SegmentR } from '../../types';
2
+ export declare class SegmentRGenerator {
3
+ generate(segment: SegmentR): string;
4
+ private validate;
5
+ }
6
+ //# sourceMappingURL=SegmentRGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentRGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/cnab240/SegmentRGenerator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAkBvC,qBAAa,iBAAiB;IAQ5B,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,MAAM;IAuPnC,OAAO,CAAC,QAAQ;CA+CjB"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SegmentRGenerator = void 0;
4
+ const cnab240_1 = require("../../constants/cnab240");
5
+ const LineGenerator_1 = require("./LineGenerator");
6
+ class SegmentRGenerator {
7
+ generate(segment) {
8
+ this.validate(segment);
9
+ const POS = cnab240_1.SEGMENT_R_POSITIONS;
10
+ const fields = new Map();
11
+ fields.set('bankCode', (0, LineGenerator_1.formatNumericField)(Number(segment.bankCode), POS.BANK_CODE.start, POS.BANK_CODE.end));
12
+ fields.set('batchNumber', (0, LineGenerator_1.formatNumericField)(segment.batchNumber, POS.BATCH_NUMBER.start, POS.BATCH_NUMBER.end));
13
+ fields.set('recordType', cnab240_1.RECORD_TYPE.DETAIL);
14
+ fields.set('sequentialNumber', (0, LineGenerator_1.formatNumericField)(segment.sequentialNumber, POS.RECORD_NUMBER.start, POS.RECORD_NUMBER.end));
15
+ fields.set('segmentCode', 'R');
16
+ fields.set('cnabReserved1', ' ');
17
+ fields.set('occurrenceCode', (0, LineGenerator_1.formatField)(segment.occurrenceCode, POS.MOVEMENT_CODE.start, POS.MOVEMENT_CODE.end, 'numeric'));
18
+ fields.set('discount2Code', (0, LineGenerator_1.formatField)(segment.discount2Code || '0', POS.DISCOUNT_2_CODE.start, POS.DISCOUNT_2_CODE.end, 'numeric'));
19
+ fields.set('discount2Date', (0, LineGenerator_1.formatDateField)(segment.discount2Date, POS.DISCOUNT_2_DATE.start, POS.DISCOUNT_2_DATE.end));
20
+ fields.set('discount2Amount', (0, LineGenerator_1.formatDecimalField)(segment.discount2Amount || 0, POS.DISCOUNT_2_AMOUNT.start, POS.DISCOUNT_2_AMOUNT.end, 2));
21
+ fields.set('discount3Code', (0, LineGenerator_1.formatField)(segment.discount3Code || '0', POS.DISCOUNT_3_CODE.start, POS.DISCOUNT_3_CODE.end, 'numeric'));
22
+ fields.set('discount3Date', (0, LineGenerator_1.formatDateField)(segment.discount3Date, POS.DISCOUNT_3_DATE.start, POS.DISCOUNT_3_DATE.end));
23
+ fields.set('discount3Amount', (0, LineGenerator_1.formatDecimalField)(segment.discount3Amount || 0, POS.DISCOUNT_3_AMOUNT.start, POS.DISCOUNT_3_AMOUNT.end, 2));
24
+ fields.set('fineCode', (0, LineGenerator_1.formatField)(segment.fineCode || '0', POS.FINE_CODE.start, POS.FINE_CODE.end, 'numeric'));
25
+ fields.set('fineDate', (0, LineGenerator_1.formatDateField)(segment.fineDate, POS.FINE_DATE.start, POS.FINE_DATE.end));
26
+ fields.set('fineAmount', (0, LineGenerator_1.formatDecimalField)(segment.fineAmount || 0, POS.FINE_AMOUNT.start, POS.FINE_AMOUNT.end, 2));
27
+ fields.set('payerInfo', (0, LineGenerator_1.formatField)(segment.payerInfo || '', POS.PAYER_INFO.start, POS.PAYER_INFO.end, 'text'));
28
+ fields.set('payerInformation', (0, LineGenerator_1.formatField)(segment.payerInformation || '', POS.MESSAGE_3.start, POS.MESSAGE_3.end, 'text'));
29
+ fields.set('payerInformation2', (0, LineGenerator_1.formatField)(segment.payerInformation2 || '', POS.MESSAGE_4.start, POS.MESSAGE_4.end, 'text'));
30
+ fields.set('cnabReserved2', (0, LineGenerator_1.formatField)('', POS.RESERVED_2.start, POS.RESERVED_2.end, 'text'));
31
+ fields.set('occurrenceCodeComplement', (0, LineGenerator_1.formatField)(segment.occurrenceCodeComplement || '', POS.OCCURRENCE_CODE_COMPLEMENT.start, POS.OCCURRENCE_CODE_COMPLEMENT.end, 'text'));
32
+ fields.set('debitBankCode', (0, LineGenerator_1.formatField)(segment.debitBankCode || '', POS.DEBIT_BANK_CODE.start, POS.DEBIT_BANK_CODE.end, 'text'));
33
+ fields.set('debitAgency', (0, LineGenerator_1.formatField)(segment.debitAgency || '', POS.DEBIT_AGENCY.start, POS.DEBIT_AGENCY.end, 'text'));
34
+ fields.set('debitAgencyDigit', (0, LineGenerator_1.formatField)(segment.debitAgencyDigit || '', POS.DEBIT_AGENCY_DIGIT.start, POS.DEBIT_AGENCY_DIGIT.end, 'text'));
35
+ fields.set('debitAccount', (0, LineGenerator_1.formatField)(segment.debitAccount || '', POS.DEBIT_ACCOUNT.start, POS.DEBIT_ACCOUNT.end, 'text'));
36
+ fields.set('debitAccountDigit', (0, LineGenerator_1.formatField)(segment.debitAccountDigit || '', POS.DEBIT_ACCOUNT_DIGIT.start, POS.DEBIT_ACCOUNT_DIGIT.end, 'text'));
37
+ fields.set('debitAccountDV', (0, LineGenerator_1.formatField)(segment.debitAccountDV || '', POS.DEBIT_ACCOUNT_DV.start, POS.DEBIT_ACCOUNT_DV.end, 'text'));
38
+ fields.set('debitNoticeEmission', (0, LineGenerator_1.formatField)(segment.debitNoticeEmission || '', POS.DEBIT_NOTICE_EMISSION.start, POS.DEBIT_NOTICE_EMISSION.end, 'text'));
39
+ fields.set('cnabReserved3', (0, LineGenerator_1.formatField)('', POS.RESERVED_3.start, POS.RESERVED_3.end, 'text'));
40
+ const line = (0, LineGenerator_1.buildLine)(fields);
41
+ if (line.length !== cnab240_1.LINE_LENGTH) {
42
+ throw new Error(`Generated line has invalid length: ${line.length} (expected ${cnab240_1.LINE_LENGTH})`);
43
+ }
44
+ return line;
45
+ }
46
+ validate(segment) {
47
+ if (!segment.bankCode) {
48
+ throw new Error('Bank code is required');
49
+ }
50
+ if (segment.batchNumber === undefined || segment.batchNumber === null) {
51
+ throw new Error('Batch number is required');
52
+ }
53
+ if (segment.sequentialNumber === undefined || segment.sequentialNumber === null) {
54
+ throw new Error('Sequential number is required');
55
+ }
56
+ if (!segment.occurrenceCode) {
57
+ throw new Error('Occurrence code is required');
58
+ }
59
+ if (segment.discount2Code && segment.discount2Code !== '0') {
60
+ if (!segment.discount2Date) {
61
+ throw new Error('Discount 2 date is required when discount 2 code is set');
62
+ }
63
+ if (segment.discount2Amount === undefined || segment.discount2Amount === null) {
64
+ throw new Error('Discount 2 amount is required when discount 2 code is set');
65
+ }
66
+ }
67
+ if (segment.discount3Code && segment.discount3Code !== '0') {
68
+ if (!segment.discount3Date) {
69
+ throw new Error('Discount 3 date is required when discount 3 code is set');
70
+ }
71
+ if (segment.discount3Amount === undefined || segment.discount3Amount === null) {
72
+ throw new Error('Discount 3 amount is required when discount 3 code is set');
73
+ }
74
+ }
75
+ if (segment.fineCode && segment.fineCode !== '0') {
76
+ if (!segment.fineDate) {
77
+ throw new Error('Fine date is required when fine code is set');
78
+ }
79
+ if (segment.fineAmount === undefined || segment.fineAmount === null) {
80
+ throw new Error('Fine amount is required when fine code is set');
81
+ }
82
+ }
83
+ }
84
+ }
85
+ exports.SegmentRGenerator = SegmentRGenerator;
86
+ //# sourceMappingURL=SegmentRGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentRGenerator.js","sourceRoot":"","sources":["../../../src/generators/cnab240/SegmentRGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export * from './BatchHeaderGenerator';
2
+ export * from './BatchTrailerGenerator';
3
+ export * from './Cnab240Generator';
4
+ export * from './FileHeaderGenerator';
5
+ export * from './FileTrailerGenerator';
6
+ export * from './GenerateCnab240';
7
+ export * from './LineGenerator';
8
+ export * from './SegmentPGenerator';
9
+ export * from './SegmentQGenerator';
10
+ export * from './SegmentRGenerator';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generators/cnab240/index.ts"],"names":[],"mappings":"AACA,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,27 @@
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("./BatchHeaderGenerator"), exports);
18
+ __exportStar(require("./BatchTrailerGenerator"), exports);
19
+ __exportStar(require("./Cnab240Generator"), exports);
20
+ __exportStar(require("./FileHeaderGenerator"), exports);
21
+ __exportStar(require("./FileTrailerGenerator"), exports);
22
+ __exportStar(require("./GenerateCnab240"), exports);
23
+ __exportStar(require("./LineGenerator"), exports);
24
+ __exportStar(require("./SegmentPGenerator"), exports);
25
+ __exportStar(require("./SegmentQGenerator"), exports);
26
+ __exportStar(require("./SegmentRGenerator"), exports);
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generators/cnab240/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,yDAAuC;AACvC,0DAAwC;AACxC,qDAAmC;AACnC,wDAAsC;AACtC,yDAAuC;AACvC,oDAAkC;AAClC,kDAAgC;AAChC,sDAAoC;AACpC,sDAAoC;AACpC,sDAAoC"}
@@ -0,0 +1,3 @@
1
+ import type { Cnab400File } from '../../types/cnab400';
2
+ export declare function generateCnab400(file: Cnab400File): string;
3
+ //# sourceMappingURL=Cnab400Generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cnab400Generator.d.ts","sourceRoot":"","sources":["../../../src/generators/cnab400/Cnab400Generator.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAgDvD,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAiDzD"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateCnab400 = generateCnab400;
4
+ const cnab400_1 = require("../../constants/cnab400");
5
+ const errors_1 = require("../../errors");
6
+ const DetailRecordGenerator_1 = require("./DetailRecordGenerator");
7
+ const FileHeaderGenerator_1 = require("./FileHeaderGenerator");
8
+ const FileTrailerGenerator_1 = require("./FileTrailerGenerator");
9
+ const PenaltyRecordGenerator_1 = require("./PenaltyRecordGenerator");
10
+ function generateCnab400(file) {
11
+ if (!file.header) {
12
+ throw new errors_1.GenerationError('File header is required');
13
+ }
14
+ if (!file.trailer) {
15
+ throw new errors_1.GenerationError('File trailer is required');
16
+ }
17
+ if (!Array.isArray(file.details)) {
18
+ throw new errors_1.GenerationError('File details must be an array');
19
+ }
20
+ const lines = [];
21
+ const isRemessa = file.header.operationType === '1';
22
+ lines.push((0, FileHeaderGenerator_1.generateFileHeader)(file.header));
23
+ for (const detail of file.details) {
24
+ if (isRemessa) {
25
+ lines.push((0, DetailRecordGenerator_1.generateDetailRecordRemessa)(detail));
26
+ }
27
+ else {
28
+ lines.push((0, DetailRecordGenerator_1.generateDetailRecord)(detail));
29
+ }
30
+ }
31
+ if (isRemessa && file.penaltyRecords && file.penaltyRecords.length > 0) {
32
+ for (const penalty of file.penaltyRecords) {
33
+ lines.push((0, PenaltyRecordGenerator_1.generatePenaltyRecord)(penalty));
34
+ }
35
+ }
36
+ lines.push((0, FileTrailerGenerator_1.generateFileTrailer)(file.trailer));
37
+ for (let i = 0; i < lines.length; i++) {
38
+ if (lines[i].length !== cnab400_1.LINE_LENGTH) {
39
+ throw new errors_1.GenerationError(`Line ${i + 1} has invalid length: ${lines[i].length} (expected ${cnab400_1.LINE_LENGTH})`, 'lineLength');
40
+ }
41
+ }
42
+ return lines.join('\n');
43
+ }
44
+ //# sourceMappingURL=Cnab400Generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cnab400Generator.js","sourceRoot":"","sources":["../../../src/generators/cnab400/Cnab400Generator.ts"],"names":[],"mappings":";;AA0DA,0CAiDC;AAnGD,qDAAsD;AACtD,yCAA+C;AAE/C,mEAA4F;AAC5F,+DAA2D;AAC3D,iEAA6D;AAC7D,qEAAiE;AA4CjE,SAAgB,eAAe,CAAC,IAAiB;IAC/C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,IAAI,wBAAe,CAAC,yBAAyB,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,IAAI,wBAAe,CAAC,0BAA0B,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,wBAAe,CAAC,+BAA+B,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,KAAK,GAAG,CAAC;IAGpD,KAAK,CAAC,IAAI,CAAC,IAAA,wCAAkB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAG5C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,CAAC,IAAI,CAAC,IAAA,mDAA2B,EAAC,MAAM,CAAC,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,IAAA,4CAAoB,EAAC,MAAM,CAAC,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAGD,IAAI,SAAS,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvE,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,IAAA,8CAAqB,EAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,IAAI,CAAC,IAAA,0CAAmB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAG9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,qBAAW,EAAE,CAAC;YACpC,MAAM,IAAI,wBAAe,CACvB,QAAQ,CAAC,GAAG,CAAC,wBAAwB,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,cAAc,qBAAW,GAAG,EAChF,YAAY,CACb,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { DetailRecord } from '../../types/cnab400';
2
+ export declare function generateDetailRecord(detail: DetailRecord): string;
3
+ export declare function generateDetailRecordRemessa(detail: DetailRecord): string;
4
+ //# sourceMappingURL=DetailRecordGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DetailRecordGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/cnab400/DetailRecordGenerator.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAgCxD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAyJjE;AAsCD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAuJxE"}