validation-br 0.8.3 → 1.0.0-b

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 (109) hide show
  1. package/.eslintignore +2 -0
  2. package/.eslintrc.js +76 -11
  3. package/.github/workflows/test.yml +39 -0
  4. package/.prettierignore +1 -0
  5. package/.prettierrc.js +7 -0
  6. package/dist/cnh.js +123 -0
  7. package/dist/cnh.js.map +1 -0
  8. package/dist/cnh.test.js +117 -0
  9. package/dist/cnh.test.js.map +1 -0
  10. package/dist/cnpj.js +112 -0
  11. package/dist/cnpj.js.map +1 -0
  12. package/dist/cnpj.test.js +141 -0
  13. package/dist/cnpj.test.js.map +1 -0
  14. package/dist/cpf.js +134 -0
  15. package/dist/cpf.js.map +1 -0
  16. package/dist/cpf.test.js +130 -0
  17. package/dist/cpf.test.js.map +1 -0
  18. package/dist/index.js +24 -0
  19. package/dist/index.js.map +1 -0
  20. package/dist/index.test.js +33 -0
  21. package/dist/index.test.js.map +1 -0
  22. package/dist/judicialProcess.js +153 -0
  23. package/dist/judicialProcess.js.map +1 -0
  24. package/dist/judicialProcess.test.js +123 -0
  25. package/dist/judicialProcess.test.js.map +1 -0
  26. package/dist/pisPasep.js +113 -0
  27. package/dist/pisPasep.js.map +1 -0
  28. package/dist/pisPasep.test.js +129 -0
  29. package/dist/pisPasep.test.js.map +1 -0
  30. package/dist/postalCode.js +150 -0
  31. package/dist/postalCode.js.map +1 -0
  32. package/dist/postalCode.test.js +135 -0
  33. package/dist/postalCode.test.js.map +1 -0
  34. package/dist/renavam.js +108 -0
  35. package/dist/renavam.js.map +1 -0
  36. package/dist/renavam.test.js +113 -0
  37. package/dist/renavam.test.js.map +1 -0
  38. package/dist/tituloEleitor.js +130 -0
  39. package/dist/tituloEleitor.js.map +1 -0
  40. package/dist/tituloEleitor.test.js +132 -0
  41. package/dist/tituloEleitor.test.js.map +1 -0
  42. package/dist/utils-applyMask.test.js +17 -0
  43. package/dist/utils-applyMask.test.js.map +1 -0
  44. package/dist/utils-clearValue.test.js +50 -0
  45. package/dist/utils-clearValue.test.js.map +1 -0
  46. package/dist/utils-fakeNumber.test.js +17 -0
  47. package/dist/utils-fakeNumber.test.js.map +1 -0
  48. package/dist/utils-insertAtPosition.test.js +16 -0
  49. package/dist/utils-insertAtPosition.test.js.map +1 -0
  50. package/dist/utils-invalidListGenerator.test.js +23 -0
  51. package/dist/utils-invalidListGenerator.test.js.map +1 -0
  52. package/dist/utils-removeFromPosition.test.js +16 -0
  53. package/dist/utils-removeFromPosition.test.js.map +1 -0
  54. package/dist/utils-sumElementsByMultipliers.test.js +32 -0
  55. package/dist/utils-sumElementsByMultipliers.test.js.map +1 -0
  56. package/dist/utils-sumToDV.test.js +16 -0
  57. package/dist/utils-sumToDV.test.js.map +1 -0
  58. package/dist/utils.js +167 -0
  59. package/dist/utils.js.map +1 -0
  60. package/jest.config.js +14 -0
  61. package/package.json +40 -48
  62. package/readme.md +243 -88
  63. package/src/cnh.test.ts +114 -0
  64. package/src/cnh.ts +140 -0
  65. package/src/cnpj.test.ts +136 -0
  66. package/{dist/documents/cnpj.js → src/cnpj.ts} +74 -21
  67. package/src/cpf.test.ts +125 -0
  68. package/src/cpf.ts +150 -0
  69. package/src/index.test.ts +35 -0
  70. package/src/index.ts +19 -0
  71. package/src/judicialProcess.test.ts +118 -0
  72. package/src/judicialProcess.ts +167 -0
  73. package/src/pisPasep.test.ts +124 -0
  74. package/src/pisPasep.ts +128 -0
  75. package/src/postalCode.test.ts +132 -0
  76. package/src/postalCode.ts +164 -0
  77. package/src/renavam.test.ts +110 -0
  78. package/src/renavam.ts +122 -0
  79. package/src/tituloEleitor.test.ts +129 -0
  80. package/src/tituloEleitor.ts +146 -0
  81. package/src/utils-applyMask.test.ts +17 -0
  82. package/src/utils-clearValue.test.ts +55 -0
  83. package/src/utils-fakeNumber.test.ts +19 -0
  84. package/src/utils-insertAtPosition.test.ts +15 -0
  85. package/src/utils-invalidListGenerator.test.ts +27 -0
  86. package/src/utils-removeFromPosition.test.ts +15 -0
  87. package/src/utils-sumElementsByMultipliers.test.ts +34 -0
  88. package/src/utils-sumToDV.test.ts +16 -0
  89. package/src/utils.ts +172 -0
  90. package/tsconfig.json +23 -0
  91. package/.babelrc +0 -15
  92. package/.prettierrc +0 -9
  93. package/dist/documents/cnh.js +0 -77
  94. package/dist/documents/cnh.js.map +0 -1
  95. package/dist/documents/cnpj.js.map +0 -1
  96. package/dist/documents/cpf.js +0 -83
  97. package/dist/documents/cpf.js.map +0 -1
  98. package/dist/documents/index.js +0 -23
  99. package/dist/documents/index.js.map +0 -1
  100. package/dist/documents/pis-pasep.js +0 -71
  101. package/dist/documents/pis-pasep.js.map +0 -1
  102. package/dist/documents/postal-code.js +0 -72
  103. package/dist/documents/postal-code.js.map +0 -1
  104. package/dist/documents/titulo-eleitor.js +0 -74
  105. package/dist/documents/titulo-eleitor.js.map +0 -1
  106. package/dist/lib/utils.js +0 -60
  107. package/dist/lib/utils.js.map +0 -1
  108. package/docs.md +0 -0
  109. package/index.js +0 -3
package/dist/cpf.js ADDED
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ /**
3
+ * isCPF()
4
+ * Calcula se um CPF é válido
5
+ *
6
+ * @doc
7
+ * CPF deve possuir 11 dígitos.
8
+ *
9
+ * - Os caracteres 1 a 8 são números sequenciais definidos pela Receita Federal
10
+ *
11
+ * - O caractere 9 refere-se à região fiscal emissora do documento
12
+ * 1 – DF, GO, MS, MT e TO
13
+ * 2 – AC, AM, AP, PA, RO e RR
14
+ * 3 – CE, MA e PI
15
+ * 4 – AL, PB, PE, RN
16
+ * 5 – BA e SE
17
+ * 6 – MG
18
+ * 7 – ES e RJ
19
+ * 8 – SP
20
+ * 9 – PR e SC
21
+ * 0 – RS
22
+ *
23
+ * - Os caracteres 10 e 11 são dígitos verificadores.
24
+ *
25
+ * 1) Partes do número
26
+ * ------------------------------------------------
27
+ * | Número | R | DV |
28
+ * 2 8 0 . 0 1 2 . 3 8 9 - 3 8
29
+ *
30
+ * 2) Cálculo do primeiro DV.
31
+ *
32
+ * - Soma-se o produto das algarismos 1 a 9 pelos números 10, 9, 8, 7, 6, 5, 4, 3, 2
33
+ *
34
+ * 2 8 0 0 1 2 3 8 9
35
+ * x x x x x x x x x
36
+ * 10 9 8 7 6 5 4 3 2
37
+ * = 20 +72 +0 +0 +6 +10 +12 +24 +18 = 162
38
+ *
39
+ * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
40
+ * 162 / 11 tem resto 8. 11 - 8 = 3. DV1 é 3.
41
+ * Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0.
42
+ *
43
+ * 3) Cálculo do segundo DV.
44
+ *
45
+ * - Soma-se o produto das algarismos 1 a 10 pelos números 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
46
+ *
47
+ * 2 8 0 0 1 2 3 8 9 3
48
+ * x x x x x x x x x x
49
+ * 11 10 9 8 7 6 5 4 3 2
50
+ * = 22 +80 +0 +0 +7 +12 +15 +32 +27 = 201
51
+ *
52
+ * - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
53
+ * 201 / 11 tem resto 3. 11 - 3 = 8. DV2 é 8.
54
+ * Obs.: Caso o cálculo de DV2 retorne 10, o resultado será 0.
55
+ *
56
+ * Fonte: http://clubes.obmep.org.br/blog/a-matematica-nos-documentos-cpf/
57
+ *
58
+ * @param {String} value Título eleitoral
59
+ * @returns {Boolean}
60
+ */
61
+ Object.defineProperty(exports, "__esModule", { value: true });
62
+ exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
63
+ const utils_1 = require("./utils");
64
+ /**
65
+ * dv()
66
+ * Calcula o dígito verificador de um CPF
67
+ *
68
+ * @param {Number|String} value
69
+ * @returns {String}
70
+ */
71
+ exports.dv = (value) => {
72
+ if (!value)
73
+ throw new Error('CPF não informado');
74
+ const cpf = utils_1.clearValue(value, 9);
75
+ const invalidList = utils_1.invalidListGenerator(9);
76
+ if (invalidList.includes(cpf)) {
77
+ throw new Error('CPF não pode ser uma sequência de números iguais');
78
+ }
79
+ const sum1 = utils_1.sumElementsByMultipliers(cpf, [10, 9, 8, 7, 6, 5, 4, 3, 2]);
80
+ const dv1 = utils_1.sumToDV(sum1);
81
+ const sum2 = utils_1.sumElementsByMultipliers(cpf + dv1, [11, 10, 9, 8, 7, 6, 5, 4, 3, 2]);
82
+ const dv2 = utils_1.sumToDV(sum2);
83
+ return `${dv1}${dv2}`;
84
+ };
85
+ /**
86
+ * Aplica uma máscara ao número informado
87
+ *
88
+ * @param {String} value Número de Processo
89
+ * @returns {String} Valor com a máscara
90
+ */
91
+ exports.mask = (value) => utils_1.applyMask(value, '000.000.000-00');
92
+ /**
93
+ * fake()
94
+ * Gera um número válido
95
+ *
96
+ * @returns {String}
97
+ */
98
+ exports.fake = (withMask = false) => {
99
+ const num = utils_1.fakeNumber(9, true);
100
+ const cpf = `${num}${exports.dv(num)}`;
101
+ if (withMask)
102
+ return exports.mask(cpf);
103
+ return cpf;
104
+ };
105
+ /**
106
+ * validateOrFail()
107
+ * Valida se um número de processo está correto e
108
+ * retorna uma exceção se não estiver
109
+ *
110
+ * @returns {Boolean}
111
+ */
112
+ exports.validateOrFail = (value) => {
113
+ const cpf = utils_1.clearValue(value, 11);
114
+ if (exports.dv(cpf) !== cpf.substring(9, 11)) {
115
+ throw new Error('Dígito verificador inválido');
116
+ }
117
+ return true;
118
+ };
119
+ /**
120
+ * validate()
121
+ * Valida se um número de processo está correto
122
+ *
123
+ * @returns {Boolean}
124
+ */
125
+ exports.validate = (value) => {
126
+ try {
127
+ return exports.validateOrFail(value);
128
+ }
129
+ catch (error) {
130
+ return false;
131
+ }
132
+ };
133
+ exports.default = exports.validate;
134
+ //# sourceMappingURL=cpf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cpf.js","sourceRoot":"","sources":["../src/cpf.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;;;AAEH,mCAOgB;AAEhB;;;;;;GAMG;AACU,QAAA,EAAE,GAAG,CAAC,KAAsB,EAAU,EAAE;IACnD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;IAEhD,MAAM,GAAG,GAAG,kBAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IAEhC,MAAM,WAAW,GAAG,4BAAoB,CAAC,CAAC,CAAC,CAAA;IAC3C,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;KACpE;IAED,MAAM,IAAI,GAAG,gCAAwB,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACxE,MAAM,GAAG,GAAG,eAAO,CAAC,IAAI,CAAC,CAAA;IAEzB,MAAM,IAAI,GAAG,gCAAwB,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAClF,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,gBAAgB,CAAC,CAAA;AAE1F;;;;;GAKG;AACU,QAAA,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,GAAG,GAAG,kBAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAE/B,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,UAAE,CAAC,GAAG,CAAC,EAAE,CAAA;IAE9B,IAAI,QAAQ;QAAE,OAAO,YAAI,CAAC,GAAG,CAAC,CAAA;IAC9B,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED;;;;;;GAMG;AACU,QAAA,cAAc,GAAG,CAAC,KAAsB,EAAW,EAAE;IAChE,MAAM,GAAG,GAAG,kBAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAEjC,IAAI,UAAE,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;QACpC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;KAC/C;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED;;;;;GAKG;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,130 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ const cpf_1 = __importStar(require("./cpf"));
23
+ describe('CPF', () => {
24
+ test('isCPF() - Números válidos', () => {
25
+ const list = [
26
+ // masked
27
+ '133.782.710-00',
28
+ '400.448.260-79',
29
+ // integer
30
+ 8796742020,
31
+ 74172316085,
32
+ // string
33
+ '15886489070',
34
+ '90889477086',
35
+ ];
36
+ list.forEach((cpf) => {
37
+ expect(cpf_1.default(cpf)).toBeTruthy();
38
+ });
39
+ });
40
+ test('validate() - Números válidos', () => {
41
+ const list = [
42
+ // masked
43
+ '133.782.710-00',
44
+ '400.448.260-79',
45
+ // integer
46
+ 8796742020,
47
+ 74172316085,
48
+ // string
49
+ '15886489070',
50
+ '90889477086',
51
+ ];
52
+ list.forEach((cpf) => {
53
+ expect(cpf_1.validate(cpf)).toBeTruthy();
54
+ });
55
+ });
56
+ test('validate() - Números inválidos', () => {
57
+ const list = [
58
+ '287.967.420-20',
59
+ '333.782.710-00',
60
+ '200.448.260-79',
61
+ '24172316085',
62
+ '25886489070',
63
+ '20889477086',
64
+ '11111111111',
65
+ ];
66
+ list.forEach((cpf) => {
67
+ expect(cpf_1.validate(cpf)).toBeFalsy();
68
+ });
69
+ });
70
+ test('validateOrFail() - Números inválidos', () => {
71
+ const list = [
72
+ '287.967.420-20',
73
+ '333.782.710-00',
74
+ '200.448.260-79',
75
+ '24172316085',
76
+ '25886489070',
77
+ '20889477086',
78
+ '11111111111',
79
+ ];
80
+ list.forEach((cpf) => {
81
+ expect(() => cpf_1.validateOrFail(cpf)).toThrow();
82
+ });
83
+ });
84
+ test('Parâmetro não informado', () => {
85
+ expect(cpf_1.default('')).toBeFalsy();
86
+ expect(cpf_1.validate('')).toBeFalsy();
87
+ expect(() => cpf_1.validateOrFail('')).toThrow();
88
+ expect(() => cpf_1.dv('')).toThrow();
89
+ });
90
+ test('fake() - Gera fakes sem máscara', () => {
91
+ for (let i = 0; i < 5; i += 1) {
92
+ const cpf = cpf_1.fake();
93
+ expect(cpf_1.validate(cpf)).toBeTruthy();
94
+ expect(cpf).toHaveLength(11);
95
+ }
96
+ });
97
+ test('fake() - Gera fakes com máscara', () => {
98
+ for (let i = 0; i < 5; i += 1) {
99
+ const cpf = cpf_1.fake(true);
100
+ expect(cpf_1.validate(cpf)).toBeTruthy();
101
+ expect(cpf).toHaveLength(14);
102
+ }
103
+ });
104
+ test('dv() - Verificando se o DV gerado está correto', () => {
105
+ const list = [
106
+ { num: '741723160', expected: '85' },
107
+ { num: 158864890, expected: '70' },
108
+ { num: '908894770', expected: '86' },
109
+ ];
110
+ list.forEach((item) => {
111
+ const calcDv = cpf_1.dv(item.num);
112
+ expect(calcDv).toBe(item.expected);
113
+ expect(typeof calcDv).toBe('string');
114
+ });
115
+ });
116
+ test('mask() - Testando se a máscara foi gerada corretamente', () => {
117
+ const list = [
118
+ { num: '74172316085', expected: '741.723.160-85' },
119
+ { num: 15886489070, expected: '158.864.890-70' },
120
+ { num: '90889477086', expected: '908.894.770-86' },
121
+ { num: 889477086, expected: '008.894.770-86' },
122
+ ];
123
+ list.forEach((item) => {
124
+ const masked = cpf_1.mask(item.num);
125
+ expect(masked).toBe(item.expected);
126
+ expect(masked).toHaveLength(14);
127
+ });
128
+ });
129
+ });
130
+ //# sourceMappingURL=cpf.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cpf.test.js","sourceRoot":"","sources":["../src/cpf.test.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const cnh_1 = __importDefault(require("./cnh"));
7
+ const cnpj_1 = __importDefault(require("./cnpj"));
8
+ const cpf_1 = __importDefault(require("./cpf"));
9
+ const judicialProcess_1 = __importDefault(require("./judicialProcess"));
10
+ const pisPasep_1 = __importDefault(require("./pisPasep"));
11
+ const postalCode_1 = __importDefault(require("./postalCode"));
12
+ const renavam_1 = __importDefault(require("./renavam"));
13
+ const tituloEleitor_1 = __importDefault(require("./tituloEleitor"));
14
+ exports.default = {
15
+ isCNH: cnh_1.default,
16
+ isCNPJ: cnpj_1.default,
17
+ isCPF: cpf_1.default,
18
+ isJudicialProcess: judicialProcess_1.default,
19
+ isPIS: pisPasep_1.default,
20
+ isPostalCode: postalCode_1.default,
21
+ isRenavam: renavam_1.default,
22
+ isTituloEleitor: tituloEleitor_1.default,
23
+ };
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,gDAAyB;AACzB,kDAA2B;AAC3B,gDAAyB;AACzB,wEAAiD;AACjD,0DAA8B;AAC9B,8DAAuC;AACvC,wDAAiC;AACjC,oEAA6C;AAE7C,kBAAe;IACb,KAAK,EAAL,aAAK;IACL,MAAM,EAAN,cAAM;IACN,KAAK,EAAL,aAAK;IACL,iBAAiB,EAAjB,yBAAiB;IACjB,KAAK,EAAL,kBAAK;IACL,YAAY,EAAZ,oBAAY;IACZ,SAAS,EAAT,iBAAS;IACT,eAAe,EAAf,uBAAe;CAChB,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./index"));
7
+ describe('ValidateBR', () => {
8
+ test('Deve importar isCNH', () => {
9
+ expect(index_1.default.isCNH).toBeDefined();
10
+ });
11
+ test('Deve importar isCNPJ', () => {
12
+ expect(index_1.default.isCNPJ).toBeDefined();
13
+ });
14
+ test('Deve importar isCPF', () => {
15
+ expect(index_1.default.isCPF).toBeDefined();
16
+ });
17
+ test('Deve importar isJudicialProcess', () => {
18
+ expect(index_1.default.isJudicialProcess).toBeDefined();
19
+ });
20
+ test('Deve importar isPIS', () => {
21
+ expect(index_1.default.isPIS).toBeDefined();
22
+ });
23
+ test('Deve importar isPostalCode', () => {
24
+ expect(index_1.default.isPostalCode).toBeDefined();
25
+ });
26
+ test('Deve importar isRenavam', () => {
27
+ expect(index_1.default.isRenavam).toBeDefined();
28
+ });
29
+ test('Deve importar isTituloEleitor', () => {
30
+ expect(index_1.default.isTituloEleitor).toBeDefined();
31
+ });
32
+ });
33
+ //# sourceMappingURL=index.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":";;;;;AAAA,oDAAgC;AAEhC,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC/B,MAAM,CAAC,eAAU,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAC,eAAU,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAA;IACzC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC/B,MAAM,CAAC,eAAU,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC3C,MAAM,CAAC,eAAU,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC/B,MAAM,CAAC,eAAU,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACtC,MAAM,CAAC,eAAU,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAA;IAC/C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,eAAU,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAA;IAC5C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,eAAU,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,CAAA;IAClD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ /**
3
+ * judicialProcess
4
+ * Valida, mascara e cria números de processos judiciais
5
+ *
6
+ * @link
7
+ * https://juslaboris.tst.jus.br/bitstream/handle/20.500.12178/30318/2008_res0065_cnj_rep01.pdf?sequence=2
8
+ * http://ghiorzi.org/DVnew.htm#f
9
+ *
10
+ * @doc
11
+ * Os números de processos judiciais são usados a partir de 2010 para unificar a
12
+ * numeração de processos no Brasil e são usados em todos os tribunais.
13
+ *
14
+ * O número do processo, sem os caracteres especiais, devem possuir até 20 números
15
+ * e deve seguir o padrão abaixo:
16
+ *
17
+ * 1) Partes do número
18
+ * 0002080-25.2012.5.15.0049
19
+ * NNNNNNN-DD.AAAA.J.TR.OOOO
20
+ * |______|__|____|_|__|____|
21
+ * | | | | | |----> Unidade de origem do processo com 4 caracteres
22
+ * | | | | |--------> TR=Tribunal do segmento do poder judiciário com 2 caracteres
23
+ * | | | |----------> J=Órgão do poder Judiciário com 1 caractere
24
+ * | | |-------------> Ano do ajuizamento do processo com 4 caracteres
25
+ * | |-----------------> Dígito verificador com 2 caracteres
26
+ * |----------------------> Número sequencial do Processo, por unidade de
27
+ * origem, reiniciado anualmente com 7 caracteres
28
+ *
29
+ * Órgãos do Poder Judiciário
30
+ * 1 - Supremo Tribunal Federal
31
+ * 2 - Conselho Nacional de Justiça
32
+ * 3 - Superior Tribunal de Justiça
33
+ * 4 - Justiça Federal
34
+ * 5 - Justiça do Trabalho
35
+ * 6 - Justiça Eleitoral
36
+ * 7 - Justiça Militar da União
37
+ * 8 - Justiça dos Estados e do Distrito Federal e Territórios
38
+ * 9 - Justiça Militar Estadual
39
+ *
40
+ *
41
+ * 2) Dígito Verificador
42
+ *
43
+ * O algoritmo usado para o cálculo do DV chama-se Módulo 97 de Base 10 (ISO 7064).
44
+ *
45
+ * Nota: O número do processo possui 20 caracteres e ultrapassa o tamanho máximo
46
+ * do inteiro em javascript, impedindo que façamos o cálculo diretamente, desta
47
+ * forma, será nacessária uma fatoração para que o resultado seja o correto.
48
+ *
49
+ * 2.1) Cálculo do DV
50
+ * - Caso o DV seja conhecido, ele precisa ser removido do número e colocado
51
+ * como "00" ao final. Caso não esteja incluso no número, adicione '00' ao final.
52
+ *
53
+ * Ex.: O processo "00020802520125150049", cujo dv é "25", será calculado como
54
+ * "000208020125150049" e receberá "00" ao final. O número usado para o cálculo
55
+ * do DV será "00020802012515004900"
56
+ *
57
+ * 2.2) Etapas de Cálculo
58
+ *
59
+ * 00020802012515004900
60
+ * ↓↓
61
+ * DV ao final como "00"
62
+ *
63
+ * - Aplicamos o MOD 97 aos caracteres de 0 a 7 para calcular a primeira parte
64
+ * part1 = 0002080 % 97 = 43
65
+ *
66
+ * - Concatenamos part1 ao ano, órgão do poder judiciário e tribunal e aplicamos o MOD 97
67
+ * para obtermos o valor da part2
68
+ * part2 = ( part1 +''+ 2012 +''+ 5 +''+ 15 ) % 97 = 26
69
+ *
70
+ * - Concatemos part2 ao código do órgão de origem e ao "00" do final e aplicamos
71
+ * o MOD 97 ao resultado
72
+ * part3 = ( part2 + '0049' + '00') % 97 = 73
73
+ *
74
+ * - Subtraímos o resultado de 98
75
+ * dv = 98 - 73 = 25
76
+ *
77
+ * O Dígito verificador é 25 e deve ser aplicado após o 7º caractere do número do processo
78
+ *
79
+ * Fonte: https://juslaboris.tst.jus.br/bitstream/handle/20.500.12178/30318/2008_res0065_cnj_rep01.pdf?sequence=2
80
+ */
81
+ Object.defineProperty(exports, "__esModule", { value: true });
82
+ exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
83
+ const utils_1 = require("./utils");
84
+ /**
85
+ *
86
+ *
87
+ */
88
+ exports.dv = (value) => {
89
+ if (!value)
90
+ throw new Error('Número do processo é obrigatório');
91
+ // if (typeof value !== 'string') throw new Error('Número do processo precisa ser string')
92
+ const judicialProcess = utils_1.clearValue(value, 18);
93
+ const num = judicialProcess.substring(0, 7);
94
+ const yearAndCourt = judicialProcess.substring(7, 14);
95
+ const origin = judicialProcess.substring(14, 18);
96
+ return String(98 - (Number(`${Number(`${Number(num) % 97}${yearAndCourt}`) % 97}${origin}00`) % 97)).padStart(2, '0');
97
+ };
98
+ /**
99
+ * Aplica uma máscara ao número informado
100
+ *
101
+ * @param {String} value Número de Processo
102
+ * @returns {String} Valor com a máscara
103
+ */
104
+ exports.mask = (value) => utils_1.applyMask(value, '0000000-00.0000.0.00.0000');
105
+ /**
106
+ *
107
+ *
108
+ */
109
+ exports.fake = (withMask = false) => {
110
+ const num = utils_1.fakeNumber(7, true);
111
+ const year = new Date().getFullYear() - +utils_1.fakeNumber(1);
112
+ const courte1 = utils_1.fakeNumber(1, true); // Não pode ser '0'
113
+ const courte2 = utils_1.fakeNumber(2, true);
114
+ const courte = `${courte1 === '0' || courte1 === '10' ? '1' : courte1}${courte2}`;
115
+ const origin = utils_1.fakeNumber(4, true);
116
+ const judicialProcess = `${num}${year}${courte}${origin}`;
117
+ const digits = exports.dv(judicialProcess);
118
+ const finalNumber = utils_1.insertAtPosition(judicialProcess, digits, 7);
119
+ if (withMask)
120
+ return exports.mask(finalNumber);
121
+ return finalNumber;
122
+ };
123
+ /**
124
+ * validate()
125
+ * Valida se um número de processo está correto
126
+ *
127
+ */
128
+ exports.validateOrFail = (value) => {
129
+ const judicialProcess = utils_1.clearValue(value, 20);
130
+ const processWithoutDV = utils_1.removeFromPosition(judicialProcess, 7, 9);
131
+ if (processWithoutDV.substring(11, 12) === '0') {
132
+ throw new Error('Código do Órgão Judiciário não pode ser "0"');
133
+ }
134
+ if (exports.dv(processWithoutDV) !== judicialProcess.substring(7, 9)) {
135
+ throw new Error('Dígito verificador inválido');
136
+ }
137
+ return true;
138
+ };
139
+ /**
140
+ * validate()
141
+ * Valida se um número de processo está correto
142
+ *
143
+ */
144
+ exports.validate = (value) => {
145
+ try {
146
+ return exports.validateOrFail(value);
147
+ }
148
+ catch (error) {
149
+ return false;
150
+ }
151
+ };
152
+ exports.default = exports.validate;
153
+ //# sourceMappingURL=judicialProcess.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"judicialProcess.js","sourceRoot":"","sources":["../src/judicialProcess.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ const judicialProcess_1 = __importStar(require("./judicialProcess"));
23
+ describe('JudicialProcess', () => {
24
+ test('isJudicialProcess() - Números válidos', () => {
25
+ const list = [
26
+ '20802520125150049',
27
+ '61052838320098130024',
28
+ '00110060720168200100',
29
+ '08002785520134058400',
30
+ '08002732820164058400',
31
+ ];
32
+ list.forEach((judicialProcess) => {
33
+ expect(judicialProcess_1.default(judicialProcess)).toBeTruthy();
34
+ });
35
+ });
36
+ test('validate() - Números válidos', () => {
37
+ const list = [
38
+ '20802520125150049',
39
+ '61052838320098130024',
40
+ '00110060720168200100',
41
+ '08002785520134058400',
42
+ '08002732820164058400',
43
+ ];
44
+ list.forEach((judicialProcess) => {
45
+ expect(judicialProcess_1.validate(judicialProcess)).toBeTruthy();
46
+ });
47
+ });
48
+ test('validate() - Números inválidos', () => {
49
+ const list = [
50
+ '20802520125150044',
51
+ '61052838320098130023',
52
+ '00110060720168200102',
53
+ '08002785520134058401',
54
+ '08002732820164058406',
55
+ '08002732820160058400',
56
+ ];
57
+ list.forEach((judicialProcess) => {
58
+ expect(judicialProcess_1.validate(judicialProcess)).toBeFalsy();
59
+ });
60
+ });
61
+ test('validateOrFail() - Números inválidos', () => {
62
+ const list = [
63
+ '20802520125150044',
64
+ '61052838320098130023',
65
+ '00110060720168200102',
66
+ '08002785520134058401',
67
+ '08002732820164058406',
68
+ '08002732820160058400',
69
+ ];
70
+ list.forEach((judicialProcess) => {
71
+ expect(() => judicialProcess_1.validateOrFail(judicialProcess)).toThrow();
72
+ });
73
+ });
74
+ test('Parâmetro não informado', () => {
75
+ expect(judicialProcess_1.default('')).toBeFalsy();
76
+ expect(judicialProcess_1.validate('')).toBeFalsy();
77
+ expect(() => judicialProcess_1.validateOrFail('')).toThrow();
78
+ expect(() => judicialProcess_1.dv('')).toThrow();
79
+ });
80
+ test('fake() - Gera fakes sem máscara', () => {
81
+ for (let i = 0; i < 5; i += 1) {
82
+ const judicialProcess = judicialProcess_1.fake();
83
+ expect(judicialProcess_1.validate(judicialProcess)).toBeTruthy();
84
+ expect(judicialProcess).toHaveLength(20);
85
+ }
86
+ });
87
+ test('fake() - Gera fakes com máscara', () => {
88
+ for (let i = 0; i < 5; i += 1) {
89
+ const judicialProcess = judicialProcess_1.fake(true);
90
+ expect(judicialProcess_1.validate(judicialProcess)).toBeTruthy();
91
+ expect(judicialProcess).toHaveLength(25);
92
+ }
93
+ });
94
+ test('dv() - Verificando se o DV gerado está correto', () => {
95
+ const list = [
96
+ { num: '000208020125150049', expected: '25' },
97
+ { num: '610528320098130024', expected: '83' },
98
+ { num: '001100620168200100', expected: '07' },
99
+ { num: '080027820134058400', expected: '55' },
100
+ { num: '080027320164058400', expected: '28' },
101
+ ];
102
+ list.forEach((item) => {
103
+ const calcDv = judicialProcess_1.dv(item.num);
104
+ expect(calcDv).toBe(item.expected);
105
+ expect(typeof calcDv).toBe('string');
106
+ });
107
+ });
108
+ test('mask() - Testando se a máscara foi gerada corretamente', () => {
109
+ const list = [
110
+ { num: '20802520125150049', expected: '0002080-25.2012.5.15.0049' },
111
+ { num: '61052838320098130024', expected: '6105283-83.2009.8.13.0024' },
112
+ { num: '00110060720168200100', expected: '0011006-07.2016.8.20.0100' },
113
+ { num: '08002785520134058400', expected: '0800278-55.2013.4.05.8400' },
114
+ { num: '08002732820164058400', expected: '0800273-28.2016.4.05.8400' },
115
+ ];
116
+ list.forEach((item) => {
117
+ const masked = judicialProcess_1.mask(item.num);
118
+ expect(masked).toBe(item.expected);
119
+ expect(masked).toHaveLength(25);
120
+ });
121
+ });
122
+ });
123
+ //# sourceMappingURL=judicialProcess.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"judicialProcess.test.js","sourceRoot":"","sources":["../src/judicialProcess.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,qEAA+F;AAE/F,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QACjD,MAAM,IAAI,GAAG;YACX,mBAAmB;YACnB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;SACvB,CAAA;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,eAAe,EAAE,EAAE;YAC/B,MAAM,CAAC,yBAAiB,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACzD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACxC,MAAM,IAAI,GAAG;YACX,mBAAmB;YACnB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;SACvB,CAAA;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,eAAe,EAAE,EAAE;YAC/B,MAAM,CAAC,0BAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QAChD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC1C,MAAM,IAAI,GAAG;YACX,mBAAmB;YACnB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;SACvB,CAAA;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,eAAe,EAAE,EAAE;YAC/B,MAAM,CAAC,0BAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAChD,MAAM,IAAI,GAAG;YACX,mBAAmB;YACnB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;YACtB,sBAAsB;SACvB,CAAA;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,eAAe,EAAE,EAAE;YAC/B,MAAM,CAAC,GAAG,EAAE,CAAC,gCAAc,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;QACzD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,yBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QACzC,MAAM,CAAC,0BAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAChC,MAAM,CAAC,GAAG,EAAE,CAAC,gCAAc,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;QAC1C,MAAM,CAAC,GAAG,EAAE,CAAC,oBAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;IAChC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,eAAe,GAAG,sBAAI,EAAE,CAAA;YAC9B,MAAM,CAAC,0BAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;YAC9C,MAAM,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;SACzC;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,eAAe,GAAG,sBAAI,CAAC,IAAI,CAAC,CAAA;YAClC,MAAM,CAAC,0BAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;YAC9C,MAAM,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;SACzC;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;QAC1D,MAAM,IAAI,GAAG;YACX,EAAE,GAAG,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC7C,EAAE,GAAG,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC7C,EAAE,GAAG,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC7C,EAAE,GAAG,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC7C,EAAE,GAAG,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAE;SAC9C,CAAA;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,oBAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAE3B,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAClC,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACtC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAClE,MAAM,IAAI,GAAG;YACX,EAAE,GAAG,EAAE,mBAAmB,EAAE,QAAQ,EAAE,2BAA2B,EAAE;YACnE,EAAE,GAAG,EAAE,sBAAsB,EAAE,QAAQ,EAAE,2BAA2B,EAAE;YACtE,EAAE,GAAG,EAAE,sBAAsB,EAAE,QAAQ,EAAE,2BAA2B,EAAE;YACtE,EAAE,GAAG,EAAE,sBAAsB,EAAE,QAAQ,EAAE,2BAA2B,EAAE;YACtE,EAAE,GAAG,EAAE,sBAAsB,EAAE,QAAQ,EAAE,2BAA2B,EAAE;SACvE,CAAA;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,sBAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAE7B,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}