validation-br 2.0.0-next-12 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/cnh.d.ts CHANGED
@@ -28,7 +28,7 @@
28
28
  * - O somatório encontrado é dividido por 11. O DV1 é 11 subtraído do resto da divisão. Se o
29
29
  * resto for 10, o DV1 é 0.
30
30
  *
31
- * 2.1) 294 / 11 tem resto igual a 8. 11-7 = 3
31
+ * 2.1) 294 / 11 tem resto igual a 8. 11-8 = 3
32
32
  * DV1 = 3
33
33
  *
34
34
  * 3) Cálculo do segundo DV
package/dist/cjs/cnh.js CHANGED
@@ -29,7 +29,7 @@
29
29
  * - O somatório encontrado é dividido por 11. O DV1 é 11 subtraído do resto da divisão. Se o
30
30
  * resto for 10, o DV1 é 0.
31
31
  *
32
- * 2.1) 294 / 11 tem resto igual a 8. 11-7 = 3
32
+ * 2.1) 294 / 11 tem resto igual a 8. 11-8 = 3
33
33
  * DV1 = 3
34
34
  *
35
35
  * 3) Cálculo do segundo DV
@@ -54,7 +54,7 @@
54
54
  * = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
55
55
  *
56
56
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
57
- * 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
57
+ * 102 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
58
58
  * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
59
59
  *
60
60
  * 3) Cálculo do segundo DV.
package/dist/cjs/cnpj.js CHANGED
@@ -55,7 +55,7 @@
55
55
  * = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
56
56
  *
57
57
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
58
- * 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
58
+ * 102 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
59
59
  * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
60
60
  *
61
61
  * 3) Cálculo do segundo DV.
@@ -1,3 +1,6 @@
1
+ import { PixKeys } from './pix-key';
2
+ import { CertidaoTipoLivro, CertidaoServico } from './certidao';
3
+ export { PixKeys, CertidaoTipoLivro, CertidaoServico };
1
4
  export declare function isCNH(value: string): boolean;
2
5
  export declare function isCNPJ(value: string): boolean;
3
6
  export declare function isCPF(value: string): boolean;
package/dist/cjs/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CertidaoServico = exports.CertidaoTipoLivro = exports.PixKeys = void 0;
3
4
  exports.isCNH = isCNH;
4
5
  exports.isCNPJ = isCNPJ;
5
6
  exports.isCPF = isCPF;
@@ -30,6 +31,7 @@ const renavam_1 = require("./renavam");
30
31
  const carplate_1 = require("./carplate");
31
32
  const phone_1 = require("./phone");
32
33
  const pix_key_1 = require("./pix-key");
34
+ Object.defineProperty(exports, "PixKeys", { enumerable: true, get: function () { return pix_key_1.PixKeys; } });
33
35
  const pix_copy_paste_1 = require("./pix-copy-paste");
34
36
  const judicial_process_1 = require("./judicial-process");
35
37
  const postal_track_code_1 = require("./postal-track-code");
@@ -40,6 +42,8 @@ const boleto_1 = require("./boleto");
40
42
  const caepf_1 = require("./caepf");
41
43
  const cep_1 = require("./cep");
42
44
  const certidao_1 = require("./certidao");
45
+ Object.defineProperty(exports, "CertidaoTipoLivro", { enumerable: true, get: function () { return certidao_1.CertidaoTipoLivro; } });
46
+ Object.defineProperty(exports, "CertidaoServico", { enumerable: true, get: function () { return certidao_1.CertidaoServico; } });
43
47
  const cbi_sinter_1 = require("./cbi_sinter");
44
48
  const uf_1 = require("./uf");
45
49
  function validate(fn) {
package/dist/cjs/nup17.js CHANGED
@@ -116,8 +116,11 @@ class NUP17 extends base_1.Base {
116
116
  *
117
117
  */
118
118
  static fake() {
119
- const fake = random_1.Random.number(15, true);
120
- return new NUP17(`${fake}${NUP17.checksum(String(fake))}`);
119
+ const orgao = random_1.Random.number(5, true);
120
+ const sequencial = random_1.Random.number(6, true);
121
+ const ano = random_1.Random.between(2020, new Date().getFullYear());
122
+ const fake = `${orgao}${sequencial}${ano}`;
123
+ return new NUP17(`${fake}${NUP17.checksum(fake)}`);
121
124
  }
122
125
  /**
123
126
  * checksum()
@@ -19,17 +19,16 @@
19
19
  *
20
20
  * 2) Cálculo do DV.
21
21
  *
22
- * - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
22
+ * - Soma-se o produto dos 10 algarismos pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
23
23
  *
24
24
  * 2 6 8 2 7 6 4 9 9 6
25
25
  * x x x x x x x x x x
26
26
  * 3 2 9 8 7 6 5 4 3 2
27
- * = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
27
+ * = 6 +12 +72 +16 +49 +36 +20 +36 +27 +12 = 286
28
28
  *
29
29
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
30
- * 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
31
- * Obs.: Caso o cálculo de DV1 retorne 0, o resultado será 5.
32
- * Caso retorne 1, o resto será 0
30
+ * 286 / 11 tem resto 0. DV é 0.
31
+ * Obs.: Se o resto da divisão for 0 ou 1, o DV é 0.
33
32
  *
34
33
  *
35
34
  *
@@ -20,17 +20,16 @@
20
20
  *
21
21
  * 2) Cálculo do DV.
22
22
  *
23
- * - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
23
+ * - Soma-se o produto dos 10 algarismos pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
24
24
  *
25
25
  * 2 6 8 2 7 6 4 9 9 6
26
26
  * x x x x x x x x x x
27
27
  * 3 2 9 8 7 6 5 4 3 2
28
- * = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
28
+ * = 6 +12 +72 +16 +49 +36 +20 +36 +27 +12 = 286
29
29
  *
30
30
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
31
- * 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
32
- * Obs.: Caso o cálculo de DV1 retorne 0, o resultado será 5.
33
- * Caso retorne 1, o resto será 0
31
+ * 286 / 11 tem resto 0. DV é 0.
32
+ * Obs.: Se o resto da divisão for 0 ou 1, o DV é 0.
34
33
  *
35
34
  *
36
35
  *
@@ -26,7 +26,7 @@
26
26
  * 1 9 4 6 9 0 6 9
27
27
  * x x x x x x x x
28
28
  * 8 6 4 2 3 5 9 7
29
- * = 8 +54 +16 +12 +18 +0 +54 +63 = 234
29
+ * = 8 +54 +16 +12 +27 +0 +54 +63 = 234
30
30
  *
31
31
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
32
32
  * 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
@@ -27,7 +27,7 @@
27
27
  * 1 9 4 6 9 0 6 9
28
28
  * x x x x x x x x
29
29
  * 8 6 4 2 3 5 9 7
30
- * = 8 +54 +16 +12 +18 +0 +54 +63 = 234
30
+ * = 8 +54 +16 +12 +27 +0 +54 +63 = 234
31
31
  *
32
32
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
33
33
  * 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
@@ -21,17 +21,17 @@ exports.Renavam = void 0;
21
21
  *
22
22
  * 2) Cálculo do DV.
23
23
  *
24
- * - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
24
+ * - Soma-se o produto dos 10 algarismos pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
25
25
  *
26
26
  * 2 6 8 2 7 6 4 9 9 6
27
27
  * x x x x x x x x x x
28
28
  * 3 2 9 8 7 6 5 4 3 2
29
- * = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
29
+ * = 6 +12 +72 +16 +49 +36 +20 +36 +27 +12 = 286
30
30
  *
31
31
  * - O somatório encontrado é multiplicado por 10 e ao resultado
32
32
  * é aplicado o cálculo do MOD 11.
33
33
  *
34
- * ( 234 * 10 ) / 11 tem resto 8. DV = 8. Caso o resto seja maior ou igual a
34
+ * ( 286 * 10 ) / 11 tem resto 0. DV = 0. Caso o resto seja maior ou igual a
35
35
  * 10, DV será 0.
36
36
  *
37
37
  *
package/dist/esm/cnh.d.ts CHANGED
@@ -28,7 +28,7 @@
28
28
  * - O somatório encontrado é dividido por 11. O DV1 é 11 subtraído do resto da divisão. Se o
29
29
  * resto for 10, o DV1 é 0.
30
30
  *
31
- * 2.1) 294 / 11 tem resto igual a 8. 11-7 = 3
31
+ * 2.1) 294 / 11 tem resto igual a 8. 11-8 = 3
32
32
  * DV1 = 3
33
33
  *
34
34
  * 3) Cálculo do segundo DV
package/dist/esm/cnh.js CHANGED
@@ -28,7 +28,7 @@
28
28
  * - O somatório encontrado é dividido por 11. O DV1 é 11 subtraído do resto da divisão. Se o
29
29
  * resto for 10, o DV1 é 0.
30
30
  *
31
- * 2.1) 294 / 11 tem resto igual a 8. 11-7 = 3
31
+ * 2.1) 294 / 11 tem resto igual a 8. 11-8 = 3
32
32
  * DV1 = 3
33
33
  *
34
34
  * 3) Cálculo do segundo DV
@@ -54,7 +54,7 @@
54
54
  * = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
55
55
  *
56
56
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
57
- * 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
57
+ * 102 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
58
58
  * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
59
59
  *
60
60
  * 3) Cálculo do segundo DV.
package/dist/esm/cnpj.js CHANGED
@@ -54,7 +54,7 @@
54
54
  * = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
55
55
  *
56
56
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
57
- * 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
57
+ * 102 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
58
58
  * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
59
59
  *
60
60
  * 3) Cálculo do segundo DV.
@@ -1,3 +1,6 @@
1
+ import { PixKeys } from './pix-key';
2
+ import { CertidaoTipoLivro, CertidaoServico } from './certidao';
3
+ export { PixKeys, CertidaoTipoLivro, CertidaoServico };
1
4
  export declare function isCNH(value: string): boolean;
2
5
  export declare function isCNPJ(value: string): boolean;
3
6
  export declare function isCPF(value: string): boolean;
package/dist/esm/index.js CHANGED
@@ -6,7 +6,7 @@ import { PIS } from './pis-pasep.js';
6
6
  import { Renavam } from './renavam.js';
7
7
  import { CarPlate } from './carplate.js';
8
8
  import { Phone } from './phone.js';
9
- import { PixKey } from './pix-key.js';
9
+ import { PixKey, PixKeys } from './pix-key.js';
10
10
  import { PixCopyPaste } from './pix-copy-paste.js';
11
11
  import { JudicialProcess } from './judicial-process.js';
12
12
  import { PostalTrackCode } from './postal-track-code.js';
@@ -16,9 +16,10 @@ import { Email } from './email.js';
16
16
  import { Boleto } from './boleto.js';
17
17
  import { CAEPF } from './caepf.js';
18
18
  import { CEP } from './cep.js';
19
- import { Certidao } from './certidao.js';
19
+ import { Certidao, CertidaoTipoLivro, CertidaoServico } from './certidao.js';
20
20
  import { CBISinter } from './cbi_sinter.js';
21
21
  import { UF } from './uf.js';
22
+ export { PixKeys, CertidaoTipoLivro, CertidaoServico };
22
23
  function validate(fn) {
23
24
  try {
24
25
  fn();
package/dist/esm/nup17.js CHANGED
@@ -113,8 +113,11 @@ export class NUP17 extends Base {
113
113
  *
114
114
  */
115
115
  static fake() {
116
- const fake = Random.number(15, true);
117
- return new NUP17(`${fake}${NUP17.checksum(String(fake))}`);
116
+ const orgao = Random.number(5, true);
117
+ const sequencial = Random.number(6, true);
118
+ const ano = Random.between(2020, new Date().getFullYear());
119
+ const fake = `${orgao}${sequencial}${ano}`;
120
+ return new NUP17(`${fake}${NUP17.checksum(fake)}`);
118
121
  }
119
122
  /**
120
123
  * checksum()
@@ -19,17 +19,16 @@
19
19
  *
20
20
  * 2) Cálculo do DV.
21
21
  *
22
- * - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
22
+ * - Soma-se o produto dos 10 algarismos pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
23
23
  *
24
24
  * 2 6 8 2 7 6 4 9 9 6
25
25
  * x x x x x x x x x x
26
26
  * 3 2 9 8 7 6 5 4 3 2
27
- * = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
27
+ * = 6 +12 +72 +16 +49 +36 +20 +36 +27 +12 = 286
28
28
  *
29
29
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
30
- * 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
31
- * Obs.: Caso o cálculo de DV1 retorne 0, o resultado será 5.
32
- * Caso retorne 1, o resto será 0
30
+ * 286 / 11 tem resto 0. DV é 0.
31
+ * Obs.: Se o resto da divisão for 0 ou 1, o DV é 0.
33
32
  *
34
33
  *
35
34
  *
@@ -19,17 +19,16 @@
19
19
  *
20
20
  * 2) Cálculo do DV.
21
21
  *
22
- * - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
22
+ * - Soma-se o produto dos 10 algarismos pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
23
23
  *
24
24
  * 2 6 8 2 7 6 4 9 9 6
25
25
  * x x x x x x x x x x
26
26
  * 3 2 9 8 7 6 5 4 3 2
27
- * = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
27
+ * = 6 +12 +72 +16 +49 +36 +20 +36 +27 +12 = 286
28
28
  *
29
29
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
30
- * 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
31
- * Obs.: Caso o cálculo de DV1 retorne 0, o resultado será 5.
32
- * Caso retorne 1, o resto será 0
30
+ * 286 / 11 tem resto 0. DV é 0.
31
+ * Obs.: Se o resto da divisão for 0 ou 1, o DV é 0.
33
32
  *
34
33
  *
35
34
  *
@@ -26,7 +26,7 @@
26
26
  * 1 9 4 6 9 0 6 9
27
27
  * x x x x x x x x
28
28
  * 8 6 4 2 3 5 9 7
29
- * = 8 +54 +16 +12 +18 +0 +54 +63 = 234
29
+ * = 8 +54 +16 +12 +27 +0 +54 +63 = 234
30
30
  *
31
31
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
32
32
  * 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
@@ -26,7 +26,7 @@
26
26
  * 1 9 4 6 9 0 6 9
27
27
  * x x x x x x x x
28
28
  * 8 6 4 2 3 5 9 7
29
- * = 8 +54 +16 +12 +18 +0 +54 +63 = 234
29
+ * = 8 +54 +16 +12 +27 +0 +54 +63 = 234
30
30
  *
31
31
  * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
32
32
  * 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
@@ -18,17 +18,17 @@
18
18
  *
19
19
  * 2) Cálculo do DV.
20
20
  *
21
- * - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
21
+ * - Soma-se o produto dos 10 algarismos pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
22
22
  *
23
23
  * 2 6 8 2 7 6 4 9 9 6
24
24
  * x x x x x x x x x x
25
25
  * 3 2 9 8 7 6 5 4 3 2
26
- * = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
26
+ * = 6 +12 +72 +16 +49 +36 +20 +36 +27 +12 = 286
27
27
  *
28
28
  * - O somatório encontrado é multiplicado por 10 e ao resultado
29
29
  * é aplicado o cálculo do MOD 11.
30
30
  *
31
- * ( 234 * 10 ) / 11 tem resto 8. DV = 8. Caso o resto seja maior ou igual a
31
+ * ( 286 * 10 ) / 11 tem resto 0. DV = 0. Caso o resto seja maior ou igual a
32
32
  * 10, DV será 0.
33
33
  *
34
34
  *
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "validation-br",
3
3
  "description": "Brazilian personal documents validation - cpf, cnpj, titulo, pis/pasep, cnh, renavam, processos judiciais, protocolo federal, código de rastreamento dos correios",
4
- "version": "2.0.0-next-12",
4
+ "version": "2.0.0",
5
5
  "author": "Cláudio Medeiros <klawdyo@gmail.com>",
6
6
  "license": "MIT",
7
7
  "sideEffects": false,
package/readme.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # validation-br
2
2
 
3
+ > Procurando a versão 1? Veja a [documentação da v1](https://validation-br.js.org/v1/) ou a [branch `v1`](https://github.com/klawdyo/validation-br/tree/v1) no GitHub.
4
+
3
5
  Biblioteca de validação de documentos pessoais do Brasil com suporte a CPF, CNPJ (numérico e alfanumérico), CAEPF, Título Eleitoral, PIS/PASEP, CNH, Telefone, E-mail, UUID, Placa de Veículo (padrão antigo e Mercosul), Chave Pix e Pix Copia e Cola. Também valida numerações de outros tipos de registros como RENAVAM, Processos Judiciais, Número de Protocolo do Governo Federal, Objetos registrados de Rastreamento dos Correios, CEP, Certidões (matrícula CNJ), Código Imobiliário Brasileiro (CIB/SINTER) e Boleto Bancário (linha digitável e código de barras).
4
6
 
5
7
  Validation-BR também permite criação de números fake para facilitar o desenvolvimento e testes, além de aplicar máscaras e calcular somente os dígitos verificadores.
@@ -514,6 +516,14 @@ key.type // -> 'cpf'
514
516
  // Chave fake (aceita { type: 'cpf' | 'cnpj' | 'email' | 'phone' | 'evp' })
515
517
  PixKey.fake() // -> PixKey { value: '...' }
516
518
  PixKey.fake({ type: 'email' }).value // -> 'wqdbzdhkmp@hotmail.com'
519
+
520
+ // Enum com os tipos de chave Pix
521
+ import { PixKeys } from 'validation-br'
522
+ // ou
523
+ import { PixKeys } from 'validation-br/pix-key'
524
+
525
+ key.type === PixKeys.cpf // -> true
526
+ PixKey.fake({ type: PixKeys.email })
517
527
  ```
518
528
 
519
529
  ### isPixCopyPaste( `value` )
@@ -662,6 +672,13 @@ Certidao.fake() // -> Certidao { value: '...' }
662
672
 
663
673
  // Calcula o DV a partir dos 30 primeiros dígitos
664
674
  Certidao.checksum('827660015520261654035919727867') // -> '31'
675
+
676
+ // Enums com os tipos de livro e de serviço usados em Certidao.fake()
677
+ import { CertidaoTipoLivro, CertidaoServico } from 'validation-br'
678
+ // ou
679
+ import { CertidaoTipoLivro, CertidaoServico } from 'validation-br/certidao'
680
+
681
+ Certidao.fake({ tipoLivro: CertidaoTipoLivro.Nascimento, servico: CertidaoServico.RegistroCivilPessoasNaturais })
665
682
  ```
666
683
 
667
684
  ### isCBISinter( `value` )