validation-br 0.21.3 → 1.2.0-rc1

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 (84) hide show
  1. package/.eslintcache +1 -0
  2. package/.eslintignore +2 -0
  3. package/.eslintrc.js +76 -11
  4. package/.github/workflows/test.yml +39 -0
  5. package/.prettierignore +1 -0
  6. package/.prettierrc.js +7 -0
  7. package/dist/cnh.d.ts +91 -0
  8. package/dist/cnh.js +128 -0
  9. package/dist/cnh.js.map +1 -0
  10. package/dist/cnh.test.d.ts +1 -0
  11. package/dist/cnpj.d.ts +82 -0
  12. package/dist/{documents/cnpj.js → cnpj.js} +116 -138
  13. package/dist/cnpj.js.map +1 -0
  14. package/dist/cnpj.test.d.ts +1 -0
  15. package/dist/cpf.d.ts +99 -0
  16. package/dist/{documents/cpf.js → cpf.js} +135 -160
  17. package/dist/cpf.js.map +1 -0
  18. package/dist/cpf.test.d.ts +1 -0
  19. package/dist/index.d.ts +12 -0
  20. package/dist/index.js +26 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/index.test.d.ts +1 -0
  23. package/dist/judicialProcess.d.ts +114 -0
  24. package/dist/judicialProcess.js +160 -0
  25. package/dist/judicialProcess.js.map +1 -0
  26. package/dist/judicialProcess.test.d.ts +1 -0
  27. package/dist/nup17.d.ts +102 -0
  28. package/dist/nup17.js +145 -0
  29. package/dist/nup17.js.map +1 -0
  30. package/dist/nup17.test.d.ts +1 -0
  31. package/dist/pisPasep.d.ts +81 -0
  32. package/dist/{documents/pis-pasep.js → pisPasep.js} +115 -140
  33. package/dist/pisPasep.js.map +1 -0
  34. package/dist/pisPasep.test.d.ts +1 -0
  35. package/dist/postalCode.d.ts +83 -0
  36. package/dist/postalCode.js +152 -0
  37. package/dist/postalCode.js.map +1 -0
  38. package/dist/postalCode.test.d.ts +1 -0
  39. package/dist/renavam.d.ts +75 -0
  40. package/dist/renavam.js +110 -0
  41. package/dist/renavam.js.map +1 -0
  42. package/dist/renavam.test.d.ts +1 -0
  43. package/dist/tituloEleitor.d.ts +93 -0
  44. package/dist/{documents/titulo-eleitor.js → tituloEleitor.js} +132 -155
  45. package/dist/tituloEleitor.js.map +1 -0
  46. package/dist/tituloEleitor.test.d.ts +1 -0
  47. package/dist/utils-applyMask.test.d.ts +1 -0
  48. package/dist/utils-clearValue.test.d.ts +1 -0
  49. package/dist/utils-fakeNumber.test.d.ts +1 -0
  50. package/dist/utils-insertAtPosition.test.d.ts +1 -0
  51. package/dist/utils-invalidListGenerator.test.d.ts +1 -0
  52. package/dist/utils-removeFromPosition.test.d.ts +1 -0
  53. package/dist/utils-sumElementsByMultipliers.test.d.ts +1 -0
  54. package/dist/utils-sumToDV.test.d.ts +1 -0
  55. package/dist/utils.d.ts +111 -0
  56. package/dist/{lib/utils.js → utils.js} +166 -175
  57. package/dist/utils.js.map +1 -0
  58. package/dist/vuelidate.d.ts +36 -0
  59. package/dist/vuelidate.js +31 -0
  60. package/dist/vuelidate.js.map +1 -0
  61. package/jest.config.js +14 -0
  62. package/package.json +44 -27
  63. package/readme.md +170 -111
  64. package/tsconfig.json +24 -0
  65. package/.babelrc +0 -15
  66. package/.prettierrc +0 -9
  67. package/LICENSE +0 -21
  68. package/dist/documents/cnh.js +0 -154
  69. package/dist/documents/cnh.js.map +0 -1
  70. package/dist/documents/cnpj.js.map +0 -1
  71. package/dist/documents/cpf.js.map +0 -1
  72. package/dist/documents/index.js +0 -29
  73. package/dist/documents/index.js.map +0 -1
  74. package/dist/documents/judicial-process.js +0 -177
  75. package/dist/documents/judicial-process.js.map +0 -1
  76. package/dist/documents/pis-pasep.js.map +0 -1
  77. package/dist/documents/postal-code.js +0 -151
  78. package/dist/documents/postal-code.js.map +0 -1
  79. package/dist/documents/renavam.js +0 -97
  80. package/dist/documents/renavam.js.map +0 -1
  81. package/dist/documents/titulo-eleitor.js.map +0 -1
  82. package/dist/lib/utils.js.map +0 -1
  83. package/docs.md +0 -0
  84. package/index.js +0 -3
@@ -1,139 +1,117 @@
1
- "use strict";
2
-
3
- /**
4
- * isCNPJ()
5
- * Calcula se um CNPJ é válido
6
- *
7
- * @doc
8
- * - CNPJ deve possuir 14 dígitos no formato 00.000.000/0000-00
9
- *
10
- * - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
11
- *
12
- * - Os caracteres 9 a 12 são a identificação das filiais da empresa.
13
- *
14
- * - Os caracteres 13 e 14 são os dígitos verificadores
15
- *
16
- * 1) Partes do número
17
- * _______________________________ _______________ _______
18
- * | Número | Filiais | DV |
19
- * | 1 1 . 2 2 2 . 3 3 3 / 0 0 0 1 - X Y |
20
- * |_______________________________|_______________|_______|
21
- *
22
- * 2) Cálculo do primeiro DV.
23
- *
24
- * - Soma-se o produto das algarismos 1 a 12 pelos números 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
25
- *
26
- * 1 1 2 2 2 3 3 3 0 0 0 1
27
- * x x x x x x x x x x x x
28
- * 5 4 3 2 9 8 7 6 5 4 3 2
29
- * = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
30
- *
31
- * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
32
- * 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
33
- * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
34
- *
35
- * 3) Cálculo do segundo DV.
36
- *
37
- * - Soma-se o produto das algarismos 1 a 13 (incluindo o DV1 calculado) pelos
38
- * números 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2.
39
- *
40
- * 1 1 2 2 2 3 3 3 0 0 0 1 8
41
- * x x x x x x x x x x x x x
42
- * 6 5 4 3 2 9 8 7 6 5 4 3 2
43
- * = 6 +5 +8 +6 +4 +27 +24 +21 +0 +0 +0 +3 +16 = 120
44
- *
45
- * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
46
- * 120 / 11 tem resto 10. 11 - 10 = 1. DV2 é 1.
47
- * Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
48
- *
49
- * Fonte: http://www.macoratti.net/alg_cnpj.htm
50
- *
51
- * @param {String} value Título eleitoral
52
- * @returns {Boolean}
53
- */
54
- var _require = require('../lib/utils'),
55
- invalidListGenerator = _require.invalidListGenerator,
56
- sumElementsByMultipliers = _require.sumElementsByMultipliers,
57
- sumToDV = _require.sumToDV,
58
- clearValue = _require.clearValue,
59
- fakeNumber = _require.fakeNumber,
60
- applyMask = _require.applyMask;
61
-
62
- var dv = function dv() {
63
- var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
64
- var cnpj = clearValue(value, 12);
65
- var blackList = invalidListGenerator(12);
66
-
67
- if (blackList.includes(cnpj)) {
68
- throw new Error('CNPJ é obrigatório');
69
- }
70
-
71
- var sum1 = sumElementsByMultipliers(cnpj.substring(0, 12), '543298765432');
72
- var dv1 = sumToDV(sum1);
73
- var sum2 = sumElementsByMultipliers(cnpj.substring(0, 12) + dv1, '6543298765432');
74
- var dv2 = sumToDV(sum2);
75
- return "".concat(dv1).concat(dv2);
76
- };
77
- /**
78
- * Aplica uma máscara ao número informado
79
- *
80
- * @param {String} value Número de Processo
81
- * @returns {String} Valor com a máscara
82
- */
83
-
84
-
85
- var mask = function mask(value) {
86
- return applyMask(value, '00.000.000/0000-00');
87
- };
88
- /**
89
- *
90
- *
91
- */
92
-
93
-
94
- var fake = function fake() {
95
- var withMask = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
96
- var num = fakeNumber(12, true);
97
- var cnpj = "".concat(num).concat(dv(num));
98
- if (withMask) return mask(cnpj);
99
- return cnpj;
100
- };
101
- /**
102
- * validate()
103
- * Valida se um número de processo está correto
104
- *
105
- */
106
-
107
-
108
- var validateOrFail = function validateOrFail(value) {
109
- var cnpj = clearValue(value, 14);
110
-
111
- if (dv(cnpj) !== cnpj.substring(12, 14)) {
112
- throw new Error('Dígito verificador inválido');
113
- }
114
-
115
- return true;
116
- };
117
- /**
118
- * validate()
119
- * Valida se um número de processo está correto
120
- *
121
- */
122
-
123
-
124
- var validate = function validate(value) {
125
- try {
126
- return validateOrFail(value);
127
- } catch (error) {
128
- return false;
129
- }
130
- };
131
-
132
- module.exports = {
133
- dv: dv,
134
- fake: fake,
135
- mask: mask,
136
- validate: validate,
137
- validateOrFail: validateOrFail
138
- };
1
+ "use strict";
2
+ /**
3
+ * isCNPJ()
4
+ * Calcula se um CNPJ é válido
5
+ *
6
+ * @doc
7
+ * - CNPJ deve possuir 14 dígitos no formato 00.000.000/0000-00
8
+ *
9
+ * - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
10
+ *
11
+ * - Os caracteres 9 a 12 são a identificação das filiais da empresa.
12
+ *
13
+ * - Os caracteres 13 e 14 são os dígitos verificadores
14
+ *
15
+ * 1) Partes do número
16
+ * _______________________________ _______________ _______
17
+ * | Número | Filiais | DV |
18
+ * | 1 1 . 2 2 2 . 3 3 3 / 0 0 0 1 - X Y |
19
+ * |_______________________________|_______________|_______|
20
+ *
21
+ * 2) Cálculo do primeiro DV.
22
+ *
23
+ * - Soma-se o produto das algarismos 1 a 12 pelos números 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
24
+ *
25
+ * 1 1 2 2 2 3 3 3 0 0 0 1
26
+ * x x x x x x x x x x x x
27
+ * 5 4 3 2 9 8 7 6 5 4 3 2
28
+ * = 5 +4 +6 +4 +18 +24 +21 +18 +0 +0 +0 +2 = 102
29
+ *
30
+ * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
31
+ * 102 / 11 tem resto 8. 11 - 3 = 8. DV1 é 8.
32
+ * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
33
+ *
34
+ * 3) Cálculo do segundo DV.
35
+ *
36
+ * - Soma-se o produto das algarismos 1 a 13 (incluindo o DV1 calculado) pelos
37
+ * números 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2.
38
+ *
39
+ * 1 1 2 2 2 3 3 3 0 0 0 1 8
40
+ * x x x x x x x x x x x x x
41
+ * 6 5 4 3 2 9 8 7 6 5 4 3 2
42
+ * = 6 +5 +8 +6 +4 +27 +24 +21 +0 +0 +0 +3 +16 = 120
43
+ *
44
+ * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
45
+ * 120 / 11 tem resto 10. 11 - 10 = 1. DV2 é 1.
46
+ * Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
47
+ *
48
+ * Fonte: http://www.macoratti.net/alg_cnpj.htm
49
+ *
50
+ * @param {String} value Título eleitoral
51
+ * @returns {Boolean}
52
+ */
53
+ Object.defineProperty(exports, "__esModule", { value: true });
54
+ exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
55
+ const utils_1 = require("./utils");
56
+ exports.dv = (value) => {
57
+ const cnpj = utils_1.clearValue(value, 12);
58
+ const blackList = utils_1.invalidListGenerator(12);
59
+ if (blackList.includes(cnpj)) {
60
+ throw new Error('CNPJ é obrigatório');
61
+ }
62
+ const sum1 = utils_1.sumElementsByMultipliers(cnpj.substring(0, 12), '543298765432');
63
+ const dv1 = utils_1.sumToDV(sum1);
64
+ const sum2 = utils_1.sumElementsByMultipliers(cnpj.substring(0, 12) + dv1, '6543298765432');
65
+ const dv2 = utils_1.sumToDV(sum2);
66
+ return `${dv1}${dv2}`;
67
+ };
68
+ /**
69
+ * Aplica uma máscara ao número informado
70
+ *
71
+ * @param {String} value Número de Processo
72
+ * @returns {String} Valor com a máscara
73
+ */
74
+ exports.mask = (value) => utils_1.applyMask(value, '00.000.000/0000-00');
75
+ /**
76
+ *
77
+ *
78
+ */
79
+ exports.fake = (withMask = false) => {
80
+ const num = utils_1.fakeNumber(12, true);
81
+ const cnpj = `${num}${exports.dv(num)}`;
82
+ if (withMask)
83
+ return exports.mask(cnpj);
84
+ return cnpj;
85
+ };
86
+ /**
87
+ * validateOrFail()
88
+ * Valida se um número é válido e
89
+ * retorna uma exceção se não estiver
90
+ *
91
+ * @param {String|Number} value Número a ser validado
92
+ * @returns {Boolean}
93
+ */
94
+ exports.validateOrFail = (value) => {
95
+ const cnpj = utils_1.clearValue(value, 14);
96
+ if (exports.dv(cnpj) !== cnpj.substring(12, 14)) {
97
+ throw new Error('Dígito verificador inválido');
98
+ }
99
+ return true;
100
+ };
101
+ /**
102
+ * validate()
103
+ * Valida se um número é válido
104
+ *
105
+ * @param {String|Number} value Número a ser validado
106
+ * @returns {Boolean}
107
+ */
108
+ exports.validate = (value) => {
109
+ try {
110
+ return exports.validateOrFail(value);
111
+ }
112
+ catch (error) {
113
+ return false;
114
+ }
115
+ };
116
+ exports.default = exports.validate;
139
117
  //# sourceMappingURL=cnpj.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cnpj.js","sourceRoot":"","sources":["../src/cnpj.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;;;AAEH,mCAOgB;AAEH,QAAA,EAAE,GAAG,CAAC,KAAsB,EAAU,EAAE;IACnD,MAAM,IAAI,GAAG,kBAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAElC,MAAM,SAAS,GAAG,4BAAoB,CAAC,EAAE,CAAC,CAAA;IAC1C,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QAC5B,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;KACtC;IAED,MAAM,IAAI,GAAG,gCAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,cAAc,CAAC,CAAA;IAC5E,MAAM,GAAG,GAAG,eAAO,CAAC,IAAI,CAAC,CAAA;IAEzB,MAAM,IAAI,GAAG,gCAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,eAAe,CAAC,CAAA;IACnF,MAAM,GAAG,GAAG,eAAO,CAAC,IAAI,CAAC,CAAA;IAEzB,OAAO,GAAG,GAAG,GAAG,GAAG,EAAE,CAAA;AACvB,CAAC,CAAA;AAED;;;;;GAKG;AACU,QAAA,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,iBAAS,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAA;AAE9F;;;GAGG;AACU,QAAA,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,GAAG,GAAG,kBAAU,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAEhC,MAAM,IAAI,GAAG,GAAG,GAAG,GAAG,UAAE,CAAC,GAAG,CAAC,EAAE,CAAA;IAE/B,IAAI,QAAQ;QAAE,OAAO,YAAI,CAAC,IAAI,CAAC,CAAA;IAC/B,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED;;;;;;;GAOG;AACU,QAAA,cAAc,GAAG,CAAC,KAAsB,EAAW,EAAE;IAChE,MAAM,IAAI,GAAG,kBAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAElC,IAAI,UAAE,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;QACvC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;KAC/C;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED;;;;;;GAMG;AACU,QAAA,QAAQ,GAAG,CAAC,KAAsB,EAAW,EAAE;IAC1D,IAAI;QACF,OAAO,sBAAc,CAAC,KAAK,CAAC,CAAA;KAC7B;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,KAAK,CAAA;KACb;AACH,CAAC,CAAA;AAED,kBAAe,gBAAQ,CAAA"}
@@ -0,0 +1 @@
1
+ export {};
package/dist/cpf.d.ts ADDED
@@ -0,0 +1,99 @@
1
+ /**
2
+ * isCPF()
3
+ * Calcula se um CPF é válido
4
+ *
5
+ * @doc
6
+ * CPF deve possuir 11 dígitos.
7
+ *
8
+ * - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
9
+ *
10
+ * - O caractere 9 refere-se à região fiscal emissora do documento
11
+ * 1 – DF, GO, MS, MT e TO
12
+ * 2 – AC, AM, AP, PA, RO e RR
13
+ * 3 – CE, MA e PI
14
+ * 4 – AL, PB, PE, RN
15
+ * 5 – BA e SE
16
+ * 6 – MG
17
+ * 7 – ES e RJ
18
+ * 8 – SP
19
+ * 9 – PR e SC
20
+ * 0 – RS
21
+ *
22
+ * - Os caracteres 10 e 11 são dígitos verificadores.
23
+ *
24
+ * 1) Partes do número
25
+ * ------------------------------------------------
26
+ * | Número | R | DV |
27
+ * 2 8 0 . 0 1 2 . 3 8 9 - 3 8
28
+ *
29
+ * 2) Cálculo do primeiro DV.
30
+ *
31
+ * - Soma-se o produto das algarismos 1 a 9 pelos números 10, 9, 8, 7, 6, 5, 4, 3, 2
32
+ *
33
+ * 2 8 0 0 1 2 3 8 9
34
+ * x x x x x x x x x
35
+ * 10 9 8 7 6 5 4 3 2
36
+ * = 20 +72 +0 +0 +6 +10 +12 +24 +18 = 162
37
+ *
38
+ * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
39
+ * 162 / 11 tem resto 8. 11 - 8 = 3. DV1 é 3.
40
+ * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
41
+ *
42
+ * 3) Cálculo do segundo DV.
43
+ *
44
+ * - Soma-se o produto das algarismos 1 a 10 pelos números 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
45
+ *
46
+ * 2 8 0 0 1 2 3 8 9 3
47
+ * x x x x x x x x x x
48
+ * 11 10 9 8 7 6 5 4 3 2
49
+ * = 22 +80 +0 +0 +7 +12 +15 +32 +27 = 201
50
+ *
51
+ * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
52
+ * 201 / 11 tem resto 3. 11 - 3 = 8. DV2 é 8.
53
+ * Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
54
+ *
55
+ * Fonte: http://clubes.obmep.org.br/blog/a-matematica-nos-documentos-cpf/
56
+ *
57
+ * @param {String} value Título eleitoral
58
+ * @returns {Boolean}
59
+ */
60
+ /**
61
+ * dv()
62
+ * Calcula o dígito verificador
63
+ *
64
+ * @param {Number|String} value
65
+ * @returns {String}
66
+ */
67
+ export declare const dv: (value: string | number) => string;
68
+ /**
69
+ * Aplica uma máscara ao número informado
70
+ *
71
+ * @param {String} value Número de Processo
72
+ * @returns {String} Valor com a máscara
73
+ */
74
+ export declare const mask: (value: string | number) => string;
75
+ /**
76
+ * fake()
77
+ * Gera um número válido
78
+ *
79
+ * @returns {String}
80
+ */
81
+ export declare const fake: (withMask?: boolean) => string;
82
+ /**
83
+ * validateOrFail()
84
+ * Valida se um número é válido e
85
+ * retorna uma exceção se não estiver
86
+ *
87
+ * @param {String|Number} value Número a ser validado
88
+ * @returns {Boolean}
89
+ */
90
+ export declare const validateOrFail: (value: string | number) => boolean;
91
+ /**
92
+ * validate()
93
+ * Valida se um número é válido
94
+ *
95
+ * @param {String|Number} value Número a ser validado
96
+ * @returns {Boolean}
97
+ */
98
+ export declare const validate: (value: string | number) => boolean;
99
+ export default validate;