@plasoft/boletos 1.0.51 → 1.0.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.mjs CHANGED
@@ -358,9 +358,25 @@ var Arquivo = class {
358
358
  }
359
359
  };
360
360
 
361
- // src/utils/removerAcentos.ts
362
- function removerAcentos(texto) {
363
- return texto.normalize("NFD").replace(/[\u0300-\u036f.]/g, "");
361
+ // src/utils/removerCaracterEspecial.ts
362
+ function removerCaracterEspecial(texto) {
363
+ if (!texto)
364
+ return "";
365
+ let textoFormatado = texto.replace(/[`~!@#$°%^&*()_+=?;'"<>{}[\]\\]/gi, "");
366
+ textoFormatado = textoFormatado.replace(/[áàãâä]/g, "a");
367
+ textoFormatado = textoFormatado.replace(/[ÁÀÃÂÄ]/g, "A");
368
+ textoFormatado = textoFormatado.replace(/[éèêë]/g, "e");
369
+ textoFormatado = textoFormatado.replace(/[ÉÈÊË]/g, "E");
370
+ textoFormatado = textoFormatado.replace(/[íìîï]/g, "i");
371
+ textoFormatado = textoFormatado.replace(/[ÍÌÎÏ]/g, "I");
372
+ textoFormatado = textoFormatado.replace(/[óòõôö]/g, "o");
373
+ textoFormatado = textoFormatado.replace(/[ÓÒÔÕÖ]/g, "O");
374
+ textoFormatado = textoFormatado.replace(/[úùûü]/g, "u");
375
+ textoFormatado = textoFormatado.replace(/[ÚÙÛÜ]/g, "U");
376
+ textoFormatado = textoFormatado.replace(/ç/g, "c");
377
+ textoFormatado = textoFormatado.replace(/Ç/g, "C");
378
+ textoFormatado = textoFormatado.replace(/[^a-zA-Z0-9|/,-]/g, " ");
379
+ return textoFormatado;
364
380
  }
365
381
 
366
382
  // src/banks/ailos/gerarRemessa.ts
@@ -386,7 +402,7 @@ function gerarRemessa({ dados }) {
386
402
  arquivo.add(dadosBancario.conta.padStart(12, "0"));
387
403
  arquivo.add(dadosBancario.contaDigito);
388
404
  arquivo.add(" ");
389
- arquivo.add(removerAcentos(beneficiario.nome).substring(0, 30).padEnd(30, " "));
405
+ arquivo.add(removerCaracterEspecial(beneficiario.nome).substring(0, 30).padEnd(30, " "));
390
406
  arquivo.add("AILOS".padEnd(30, " "));
391
407
  arquivo.add(" ");
392
408
  arquivo.add("1");
@@ -415,7 +431,7 @@ function gerarRemessa({ dados }) {
415
431
  arquivo.add(dadosBancario.conta.padStart(12, "0"));
416
432
  arquivo.add(dadosBancario.contaDigito);
417
433
  arquivo.add(" ");
418
- arquivo.add(removerAcentos(beneficiario.nome).substring(0, 30).padEnd(30, " "));
434
+ arquivo.add(removerCaracterEspecial(beneficiario.nome).substring(0, 30).padEnd(30, " "));
419
435
  arquivo.add(" ".padEnd(40, " "));
420
436
  arquivo.add(" ".padEnd(40, " "));
421
437
  arquivo.add(dadosBancario.numeroRemessa.padStart(8, "0"));
@@ -509,7 +525,7 @@ function gerarRemessa({ dados }) {
509
525
  } else {
510
526
  tipoInscricao = "2";
511
527
  }
512
- pagador.endereco.logradouro = `${removerAcentos(pagador.endereco.logradouro).substring(0, 32).padEnd(32, " ")}${pagador.endereco.numero.padEnd(8, " ")}`;
528
+ pagador.endereco.logradouro = `${removerCaracterEspecial(pagador.endereco.logradouro).substring(0, 32).padEnd(32, " ")}${pagador.endereco.numero.padEnd(8, " ")}`;
513
529
  arquivo.add("085");
514
530
  arquivo.add("0001");
515
531
  arquivo.add("3");
@@ -519,13 +535,13 @@ function gerarRemessa({ dados }) {
519
535
  arquivo.add("01");
520
536
  arquivo.add(tipoInscricao);
521
537
  arquivo.add(pagador.cpfCnpj.padStart(15, "0"));
522
- arquivo.add(removerAcentos(pagador.nome).substring(0, 40).padEnd(40, " "));
523
- arquivo.add(removerAcentos(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
524
- arquivo.add(removerAcentos(pagador.endereco.bairro).substring(0, 15).padEnd(15, " "));
538
+ arquivo.add(removerCaracterEspecial(pagador.nome).substring(0, 40).padEnd(40, " "));
539
+ arquivo.add(removerCaracterEspecial(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
540
+ arquivo.add(removerCaracterEspecial(pagador.endereco.bairro).substring(0, 15).padEnd(15, " "));
525
541
  arquivo.add(pagador.endereco.cep.substring(0, 5).padStart(5, "0"));
526
542
  arquivo.add(pagador.endereco.cep.substring(5, 7).padStart(3, "0"));
527
- arquivo.add(removerAcentos(pagador.endereco.municipio).substring(0, 15).padEnd(15, " "));
528
- arquivo.add(removerAcentos(pagador.endereco.uf).padEnd(2, " "));
543
+ arquivo.add(removerCaracterEspecial(pagador.endereco.municipio).substring(0, 15).padEnd(15, " "));
544
+ arquivo.add(removerCaracterEspecial(pagador.endereco.uf).padEnd(2, " "));
529
545
  arquivo.add("0");
530
546
  arquivo.add("000000000000000");
531
547
  arquivo.add(" ".padEnd(40, " "));
@@ -1459,8 +1475,8 @@ function gerarRemessa3({ dados }) {
1459
1475
  arquivo.add(tipoInscricao);
1460
1476
  arquivo.add("0");
1461
1477
  arquivo.add(pagador.cpfCnpj.padStart(14, "0"));
1462
- arquivo.add(removerAcentos(pagador.nome).substring(0, 40).padEnd(40, " "));
1463
- arquivo.add(removerAcentos(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
1478
+ arquivo.add(removerCaracterEspecial(pagador.nome).substring(0, 40).padEnd(40, " "));
1479
+ arquivo.add(removerCaracterEspecial(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
1464
1480
  arquivo.add("0".padEnd(11, "0"));
1465
1481
  arquivo.add(" ");
1466
1482
  arquivo.add(pagador.endereco.cep.padEnd(8, " "));
@@ -1694,7 +1710,7 @@ function gerarRemessa4({ dados }) {
1694
1710
  arquivo.add(dadosBancario.conta.padStart(12, "0"));
1695
1711
  arquivo.add(dadosBancario.contaDigito);
1696
1712
  arquivo.add("0");
1697
- arquivo.add(removerAcentos(beneficiario.nome).substring(0, 30).padEnd(30, " "));
1713
+ arquivo.add(removerCaracterEspecial(beneficiario.nome).substring(0, 30).padEnd(30, " "));
1698
1714
  arquivo.add("SICOOB".padEnd(30, " "));
1699
1715
  arquivo.add(" ".padEnd(10, " "));
1700
1716
  arquivo.add("1");
@@ -1721,7 +1737,7 @@ function gerarRemessa4({ dados }) {
1721
1737
  arquivo.add(dadosBancario.conta.padStart(12, "0"));
1722
1738
  arquivo.add(dadosBancario.contaDigito);
1723
1739
  arquivo.add(" ");
1724
- arquivo.add(removerAcentos(beneficiario.nome).substring(0, 30).padEnd(30, " "));
1740
+ arquivo.add(removerCaracterEspecial(beneficiario.nome).substring(0, 30).padEnd(30, " "));
1725
1741
  arquivo.add(" ".padEnd(80, " "));
1726
1742
  arquivo.add(dadosBancario.numeroRemessa.padStart(8, "0"));
1727
1743
  arquivo.add(data);
@@ -1799,7 +1815,7 @@ function gerarRemessa4({ dados }) {
1799
1815
  } else {
1800
1816
  tipoInscricao = "2";
1801
1817
  }
1802
- pagador.endereco.logradouro = `${removerAcentos(pagador.endereco.logradouro).substring(0, 32).padEnd(32, " ")}${pagador.endereco.numero.padEnd(8, " ")}`;
1818
+ pagador.endereco.logradouro = `${removerCaracterEspecial(pagador.endereco.logradouro).substring(0, 32).padEnd(32, " ")}${pagador.endereco.numero.padEnd(8, " ")}`;
1803
1819
  arquivo.add("756");
1804
1820
  arquivo.add("0001");
1805
1821
  arquivo.add("3");
@@ -1809,12 +1825,12 @@ function gerarRemessa4({ dados }) {
1809
1825
  arquivo.add("01");
1810
1826
  arquivo.add(tipoInscricao);
1811
1827
  arquivo.add(pagador.cpfCnpj.padStart(15, "0"));
1812
- arquivo.add(removerAcentos(pagador.nome).substring(0, 40).padEnd(40, " "));
1813
- arquivo.add(removerAcentos(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
1814
- arquivo.add(removerAcentos(pagador.endereco.bairro).substring(0, 15).padEnd(15, " "));
1828
+ arquivo.add(removerCaracterEspecial(pagador.nome).substring(0, 40).padEnd(40, " "));
1829
+ arquivo.add(removerCaracterEspecial(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
1830
+ arquivo.add(removerCaracterEspecial(pagador.endereco.bairro).substring(0, 15).padEnd(15, " "));
1815
1831
  arquivo.add(pagador.endereco.cep.padEnd(8, " "));
1816
- arquivo.add(removerAcentos(pagador.endereco.municipio).substring(0, 15).padEnd(15, " "));
1817
- arquivo.add(removerAcentos(pagador.endereco.uf).padEnd(2, " "));
1832
+ arquivo.add(removerCaracterEspecial(pagador.endereco.municipio).substring(0, 15).padEnd(15, " "));
1833
+ arquivo.add(removerCaracterEspecial(pagador.endereco.uf).padEnd(2, " "));
1818
1834
  arquivo.add("0");
1819
1835
  arquivo.add("000000000000000");
1820
1836
  arquivo.add(" ".padEnd(40, " "));
@@ -2092,11 +2108,31 @@ function gerarDadosBoleto5({ dados }) {
2092
2108
  let numeroDocumento = "";
2093
2109
  let campoLivre = "";
2094
2110
  if (convenio.length === 6) {
2095
- numeroDocumento = padLeft(`${parcela.id_boleto}2`, 5);
2096
- nossoNumero = getNossoNumero3(`${convenio}${numeroDocumento}2`);
2111
+ switch (parcela.tipoDocumento) {
2112
+ case "NFE":
2113
+ numeroDocumento = padLeft(`${parcela.id_boleto}2`, 5);
2114
+ break;
2115
+ case "FAT":
2116
+ numeroDocumento = padLeft(`${parcela.id_boleto}4`, 5);
2117
+ break;
2118
+ case "FIN":
2119
+ numeroDocumento = padLeft(`${parcela.id_boleto}5`, 5);
2120
+ break;
2121
+ }
2122
+ nossoNumero = getNossoNumero3(`${convenio}${numeroDocumento}`);
2097
2123
  campoLivre = copy(nossoNumero, 1, 11) + padLeft(bancario.agencia, 4) + padLeft(`${bancario.numero}${bancario.numero_dv}`, 8) + padLeft(bancario.carteira, 2);
2098
2124
  } else if (convenio.length === 7) {
2099
- numeroDocumento = padLeft(`${parcela.id_boleto}2`, 10);
2125
+ switch (parcela.tipoDocumento) {
2126
+ case "NFE":
2127
+ numeroDocumento = padLeft(`${parcela.id_boleto}2`, 10);
2128
+ break;
2129
+ case "FAT":
2130
+ numeroDocumento = padLeft(`${parcela.id_boleto}4`, 10);
2131
+ break;
2132
+ case "FIN":
2133
+ numeroDocumento = padLeft(`${parcela.id_boleto}5`, 10);
2134
+ break;
2135
+ }
2100
2136
  nossoNumero = `${convenio}${numeroDocumento}`;
2101
2137
  campoLivre = `000000${nossoNumero}${padLeft(bancario.carteira, 2)}`;
2102
2138
  }
@@ -2320,7 +2356,7 @@ function gerarRemessa5({ dados }) {
2320
2356
  arquivo.add("00000");
2321
2357
  arquivo.add(`${dadosBancario.conta}${dadosBancario.contaDigito}`.padStart(8, "0"));
2322
2358
  arquivo.add(" ");
2323
- arquivo.add(removerAcentos(beneficiario.nome).substring(0, 30).padEnd(30, " "));
2359
+ arquivo.add(removerCaracterEspecial(beneficiario.nome).substring(0, 30).padEnd(30, " "));
2324
2360
  arquivo.add("BANCO DO BRASIL S.A.".padEnd(30, " "));
2325
2361
  arquivo.add(" ".padEnd(10, " "));
2326
2362
  arquivo.add("1");
@@ -2355,7 +2391,7 @@ function gerarRemessa5({ dados }) {
2355
2391
  arquivo.add("00000");
2356
2392
  arquivo.add(`${dadosBancario.conta}${dadosBancario.contaDigito}`.padStart(8, "0"));
2357
2393
  arquivo.add(" ");
2358
- arquivo.add(removerAcentos(beneficiario.nome).substring(0, 30).padEnd(30, " "));
2394
+ arquivo.add(removerCaracterEspecial(beneficiario.nome).substring(0, 30).padEnd(30, " "));
2359
2395
  arquivo.add(" ".padEnd(80, " "));
2360
2396
  arquivo.add(dadosBancario.numeroRemessa.padStart(8, "0"));
2361
2397
  arquivo.add(data);
@@ -2434,10 +2470,6 @@ function gerarRemessa5({ dados }) {
2434
2470
  diasBaixa = "000";
2435
2471
  break;
2436
2472
  }
2437
- console.log("Protesto:", protesto);
2438
- console.log("Dias Protesto:", diasProtesto);
2439
- console.log("Baixar/Devolver:", baixarDevolver);
2440
- console.log("Dias Baixa:", diasBaixa);
2441
2473
  arquivo.add("001");
2442
2474
  arquivo.add("0001");
2443
2475
  arquivo.add("3");
@@ -2479,7 +2511,7 @@ function gerarRemessa5({ dados }) {
2479
2511
  arquivo.add("0000000000");
2480
2512
  arquivo.add(" ");
2481
2513
  arquivo.addLine();
2482
- pagador.endereco.logradouro = `${removerAcentos(pagador.endereco.logradouro).substring(0, 32).padEnd(32, " ")}${pagador.endereco.numero.padEnd(8, " ")}`;
2514
+ pagador.endereco.logradouro = `${removerCaracterEspecial(pagador.endereco.logradouro).substring(0, 32).padEnd(32, " ")}${pagador.endereco.numero.padEnd(8, " ")}`;
2483
2515
  arquivo.add("001");
2484
2516
  arquivo.add("0001");
2485
2517
  arquivo.add("3");
@@ -2489,12 +2521,12 @@ function gerarRemessa5({ dados }) {
2489
2521
  arquivo.add("01");
2490
2522
  arquivo.add(tipoInscricao);
2491
2523
  arquivo.add(pagador.cpfCnpj.padStart(15, "0"));
2492
- arquivo.add(removerAcentos(pagador.nome).substring(0, 40).padEnd(40, " "));
2493
- arquivo.add(removerAcentos(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
2494
- arquivo.add(removerAcentos(pagador.endereco.bairro).substring(0, 15).padEnd(15, " "));
2524
+ arquivo.add(removerCaracterEspecial(pagador.nome).substring(0, 40).padEnd(40, " "));
2525
+ arquivo.add(removerCaracterEspecial(pagador.endereco.logradouro).substring(0, 40).padEnd(40, " "));
2526
+ arquivo.add(removerCaracterEspecial(pagador.endereco.bairro).substring(0, 15).padEnd(15, " "));
2495
2527
  arquivo.add(pagador.endereco.cep);
2496
- arquivo.add(removerAcentos(pagador.endereco.municipio).substring(0, 15).padEnd(15, " "));
2497
- arquivo.add(removerAcentos(pagador.endereco.uf).padEnd(2, " "));
2528
+ arquivo.add(removerCaracterEspecial(pagador.endereco.municipio).substring(0, 15).padEnd(15, " "));
2529
+ arquivo.add(removerCaracterEspecial(pagador.endereco.uf).padEnd(2, " "));
2498
2530
  arquivo.add("0");
2499
2531
  arquivo.add("000000000000000");
2500
2532
  arquivo.add(" ".padEnd(40, " "));