validation-br 1.1.2 → 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.
- package/dist/cnh.d.ts +91 -0
- package/dist/cnh.js +9 -4
- package/dist/cnh.js.map +1 -1
- package/dist/cnh.test.d.ts +1 -0
- package/dist/cnpj.d.ts +82 -0
- package/dist/cnpj.js +8 -3
- package/dist/cnpj.js.map +1 -1
- package/dist/cnpj.test.d.ts +1 -0
- package/dist/cpf.d.ts +99 -0
- package/dist/cpf.js +7 -5
- package/dist/cpf.js.map +1 -1
- package/dist/cpf.test.d.ts +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/index.test.d.ts +1 -0
- package/dist/judicialProcess.d.ts +114 -0
- package/dist/judicialProcess.js +13 -6
- package/dist/judicialProcess.js.map +1 -1
- package/dist/judicialProcess.test.d.ts +1 -0
- package/dist/nup17.d.ts +102 -0
- package/dist/nup17.js +145 -0
- package/dist/nup17.js.map +1 -0
- package/dist/nup17.test.d.ts +1 -0
- package/dist/pisPasep.d.ts +81 -0
- package/dist/pisPasep.js +4 -2
- package/dist/pisPasep.js.map +1 -1
- package/dist/pisPasep.test.d.ts +1 -0
- package/dist/postalCode.d.ts +83 -0
- package/dist/postalCode.js +4 -2
- package/dist/postalCode.js.map +1 -1
- package/dist/postalCode.test.d.ts +1 -0
- package/dist/renavam.d.ts +75 -0
- package/dist/renavam.js +4 -2
- package/dist/renavam.js.map +1 -1
- package/dist/renavam.test.d.ts +1 -0
- package/dist/tituloEleitor.d.ts +93 -0
- package/dist/tituloEleitor.js +4 -2
- package/dist/tituloEleitor.js.map +1 -1
- package/dist/tituloEleitor.test.d.ts +1 -0
- package/dist/utils-applyMask.test.d.ts +1 -0
- package/dist/utils-clearValue.test.d.ts +1 -0
- package/dist/utils-fakeNumber.test.d.ts +1 -0
- package/dist/utils-insertAtPosition.test.d.ts +1 -0
- package/dist/utils-invalidListGenerator.test.d.ts +1 -0
- package/dist/utils-removeFromPosition.test.d.ts +1 -0
- package/dist/utils-sumElementsByMultipliers.test.d.ts +1 -0
- package/dist/utils-sumToDV.test.d.ts +1 -0
- package/dist/utils.d.ts +111 -0
- package/dist/utils.js +2 -2
- package/dist/utils.js.map +1 -1
- package/dist/vuelidate.d.ts +36 -0
- package/dist/vuelidate.js +31 -0
- package/dist/vuelidate.js.map +1 -0
- package/package.json +4 -1
- package/tsconfig.json +1 -0
package/dist/nup17.d.ts
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* isFederalProtocol()
|
|
3
|
+
* Calcula se é um número válido de protocolo do Governo Federal Brasileiro
|
|
4
|
+
*
|
|
5
|
+
* @doc
|
|
6
|
+
* O Número Unificado de Protocolo de processos do Governo Federal, também conhecido
|
|
7
|
+
* como NUP17, deve ter 17 caracteres, incluindo o dígito verificador de 2 caracteres.
|
|
8
|
+
*
|
|
9
|
+
* 1) Partes do número
|
|
10
|
+
*
|
|
11
|
+
* - Os caracteres 1 a 5 são um código do órgão que gerou o protocolo.
|
|
12
|
+
*
|
|
13
|
+
* - Os caracteres 6 a 11 são o número sequencial do protocolo, sendo que
|
|
14
|
+
* cada órgão emissor tem sua própria sequência e esta é reiniciada a cada ano.
|
|
15
|
+
*
|
|
16
|
+
* - Os caracteres 12 a 15 são referentes ao ano de protocolo
|
|
17
|
+
*
|
|
18
|
+
* - Os caracteres 16 a 17 são referentes ao Dígito Verificador
|
|
19
|
+
*
|
|
20
|
+
* 1.2) Exemplo
|
|
21
|
+
* ---------------------------------------------------------------
|
|
22
|
+
* | Código do órgão | Número Sequencial | Ano | D V
|
|
23
|
+
* 2 3 0 3 7 . 0 0 1 4 6 2 / 2 0 2 1 - 6 5
|
|
24
|
+
*
|
|
25
|
+
* 2) Cálculo do primeiro DV.
|
|
26
|
+
*
|
|
27
|
+
* - Soma-se o produto das algarismos 1 a 15 pelos números
|
|
28
|
+
* 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
29
|
+
*
|
|
30
|
+
* 2 3 0 3 7 0 0 1 4 6 2 2 0 2 1
|
|
31
|
+
* x x x x x x x x x x x x x x x
|
|
32
|
+
* 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
|
|
33
|
+
* = 32 +45 +0 +39 +84 +0 +0 +9 +32 +42 +12 +10 +0 +6 +2 = 313
|
|
34
|
+
*
|
|
35
|
+
* - O somatório encontrado é dividido por 11. O resto da divisão é subtraído de 11.
|
|
36
|
+
* 313 / 11 tem resto 5. 11 - 5 = 6. DV1 é 6.
|
|
37
|
+
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0. Caso retorne 11, o DV
|
|
38
|
+
* será 1. Ou seja, se for maior ou igual a 10, desconsidere a casa das dezenas
|
|
39
|
+
*
|
|
40
|
+
* 3) Cálculo do segundo DV.
|
|
41
|
+
*
|
|
42
|
+
* - Acrescenta o valor do DV1 ao número e faz o somatório dos produtos pelos números
|
|
43
|
+
* 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
44
|
+
*
|
|
45
|
+
* 2 3 0 3 7 0 0 1 4 6 2 2 0 2 1 6
|
|
46
|
+
* x x x x x x x x x x x x x x x x
|
|
47
|
+
* 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
|
|
48
|
+
* = 34 +48 +0 +42 +91 +0 +0 +10 +36 +48 +14 +12 +0 +8 +3 +12 = 358
|
|
49
|
+
*
|
|
50
|
+
* - O somatório encontrado é dividido por 11. O resto da divisão é subtraído de 11.
|
|
51
|
+
* 358 / 11 tem resto 6. 11 - 6 = 1. DV1 é 5.
|
|
52
|
+
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0. Caso retorne 11, o DV
|
|
53
|
+
* será 1. Ou seja, se for maior ou igual a 10, desconsidere a casa das dezenas.
|
|
54
|
+
*
|
|
55
|
+
* = DV = 65
|
|
56
|
+
*
|
|
57
|
+
* Fonte: https://www.gov.br/compras/pt-br/acesso-a-informacao/legislacao/portarias/portaria-interministerial-no-11-de-25-de-novembro-de-2019
|
|
58
|
+
*
|
|
59
|
+
* @param {String} value Título eleitoral
|
|
60
|
+
* @returns {Boolean}
|
|
61
|
+
*/
|
|
62
|
+
/**
|
|
63
|
+
* dv()
|
|
64
|
+
* Calcula o dígito verificador
|
|
65
|
+
*
|
|
66
|
+
* @param {String} value
|
|
67
|
+
* @returns {String}
|
|
68
|
+
*/
|
|
69
|
+
export declare const dv: (value: string) => string;
|
|
70
|
+
/**
|
|
71
|
+
* Aplica uma máscara ao número informado
|
|
72
|
+
*
|
|
73
|
+
* @param {String} value Número de Processo
|
|
74
|
+
* @returns {String} Valor com a máscara
|
|
75
|
+
*/
|
|
76
|
+
export declare const mask: (value: string) => string;
|
|
77
|
+
/**
|
|
78
|
+
* fake()
|
|
79
|
+
* Gera um número válido
|
|
80
|
+
*
|
|
81
|
+
* @param {Boolean} withMask Define se o número deve ser gerado com ou sem máscara
|
|
82
|
+
* @returns {String}
|
|
83
|
+
*/
|
|
84
|
+
export declare const fake: (withMask?: boolean) => string;
|
|
85
|
+
/**
|
|
86
|
+
* validateOrFail()
|
|
87
|
+
* Valida se um número é válido e
|
|
88
|
+
* retorna uma exceção se não estiver
|
|
89
|
+
*
|
|
90
|
+
* @param {String} value Número a ser validado
|
|
91
|
+
* @returns {Boolean}
|
|
92
|
+
*/
|
|
93
|
+
export declare const validateOrFail: (value: string) => boolean;
|
|
94
|
+
/**
|
|
95
|
+
* validate()
|
|
96
|
+
* Valida se um número é válido
|
|
97
|
+
*
|
|
98
|
+
* @param {String} value Número a ser validado
|
|
99
|
+
* @returns {Boolean}
|
|
100
|
+
*/
|
|
101
|
+
export declare const validate: (value: string) => boolean;
|
|
102
|
+
export default validate;
|
package/dist/nup17.js
ADDED
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* isFederalProtocol()
|
|
4
|
+
* Calcula se é um número válido de protocolo do Governo Federal Brasileiro
|
|
5
|
+
*
|
|
6
|
+
* @doc
|
|
7
|
+
* O Número Unificado de Protocolo de processos do Governo Federal, também conhecido
|
|
8
|
+
* como NUP17, deve ter 17 caracteres, incluindo o dígito verificador de 2 caracteres.
|
|
9
|
+
*
|
|
10
|
+
* 1) Partes do número
|
|
11
|
+
*
|
|
12
|
+
* - Os caracteres 1 a 5 são um código do órgão que gerou o protocolo.
|
|
13
|
+
*
|
|
14
|
+
* - Os caracteres 6 a 11 são o número sequencial do protocolo, sendo que
|
|
15
|
+
* cada órgão emissor tem sua própria sequência e esta é reiniciada a cada ano.
|
|
16
|
+
*
|
|
17
|
+
* - Os caracteres 12 a 15 são referentes ao ano de protocolo
|
|
18
|
+
*
|
|
19
|
+
* - Os caracteres 16 a 17 são referentes ao Dígito Verificador
|
|
20
|
+
*
|
|
21
|
+
* 1.2) Exemplo
|
|
22
|
+
* ---------------------------------------------------------------
|
|
23
|
+
* | Código do órgão | Número Sequencial | Ano | D V
|
|
24
|
+
* 2 3 0 3 7 . 0 0 1 4 6 2 / 2 0 2 1 - 6 5
|
|
25
|
+
*
|
|
26
|
+
* 2) Cálculo do primeiro DV.
|
|
27
|
+
*
|
|
28
|
+
* - Soma-se o produto das algarismos 1 a 15 pelos números
|
|
29
|
+
* 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
30
|
+
*
|
|
31
|
+
* 2 3 0 3 7 0 0 1 4 6 2 2 0 2 1
|
|
32
|
+
* x x x x x x x x x x x x x x x
|
|
33
|
+
* 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
|
|
34
|
+
* = 32 +45 +0 +39 +84 +0 +0 +9 +32 +42 +12 +10 +0 +6 +2 = 313
|
|
35
|
+
*
|
|
36
|
+
* - O somatório encontrado é dividido por 11. O resto da divisão é subtraído de 11.
|
|
37
|
+
* 313 / 11 tem resto 5. 11 - 5 = 6. DV1 é 6.
|
|
38
|
+
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0. Caso retorne 11, o DV
|
|
39
|
+
* será 1. Ou seja, se for maior ou igual a 10, desconsidere a casa das dezenas
|
|
40
|
+
*
|
|
41
|
+
* 3) Cálculo do segundo DV.
|
|
42
|
+
*
|
|
43
|
+
* - Acrescenta o valor do DV1 ao número e faz o somatório dos produtos pelos números
|
|
44
|
+
* 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
|
|
45
|
+
*
|
|
46
|
+
* 2 3 0 3 7 0 0 1 4 6 2 2 0 2 1 6
|
|
47
|
+
* x x x x x x x x x x x x x x x x
|
|
48
|
+
* 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
|
|
49
|
+
* = 34 +48 +0 +42 +91 +0 +0 +10 +36 +48 +14 +12 +0 +8 +3 +12 = 358
|
|
50
|
+
*
|
|
51
|
+
* - O somatório encontrado é dividido por 11. O resto da divisão é subtraído de 11.
|
|
52
|
+
* 358 / 11 tem resto 6. 11 - 6 = 1. DV1 é 5.
|
|
53
|
+
* Obs.: Caso o cálculo de DV1 retorne 10, o resultado será 0. Caso retorne 11, o DV
|
|
54
|
+
* será 1. Ou seja, se for maior ou igual a 10, desconsidere a casa das dezenas.
|
|
55
|
+
*
|
|
56
|
+
* = DV = 65
|
|
57
|
+
*
|
|
58
|
+
* Fonte: https://www.gov.br/compras/pt-br/acesso-a-informacao/legislacao/portarias/portaria-interministerial-no-11-de-25-de-novembro-de-2019
|
|
59
|
+
*
|
|
60
|
+
* @param {String} value Título eleitoral
|
|
61
|
+
* @returns {Boolean}
|
|
62
|
+
*/
|
|
63
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
64
|
+
exports.validate = exports.validateOrFail = exports.fake = exports.mask = exports.dv = void 0;
|
|
65
|
+
const utils_1 = require("./utils");
|
|
66
|
+
/**
|
|
67
|
+
* dv()
|
|
68
|
+
* Calcula o dígito verificador
|
|
69
|
+
*
|
|
70
|
+
* @param {String} value
|
|
71
|
+
* @returns {String}
|
|
72
|
+
*/
|
|
73
|
+
exports.dv = (value) => {
|
|
74
|
+
if (!value)
|
|
75
|
+
throw new Error('Número do protocolo é obrigatório');
|
|
76
|
+
const nup = utils_1.clearValue(value, 15); // não pega os 2 últimos dígitos
|
|
77
|
+
const nupReverse = nup.split('').reverse().join('');
|
|
78
|
+
const sumToDV = (sum) => {
|
|
79
|
+
const rest = 11 - (sum % 11);
|
|
80
|
+
const exceptions = [
|
|
81
|
+
{ rest: 11, dv: 1 },
|
|
82
|
+
{ rest: 10, dv: 0 },
|
|
83
|
+
];
|
|
84
|
+
const inExceptions = exceptions.find((item) => item.rest === rest);
|
|
85
|
+
return !inExceptions ? rest : inExceptions.dv;
|
|
86
|
+
};
|
|
87
|
+
const sum1 = utils_1.sumElementsByMultipliers(nupReverse, [...Array(15)].map((_, i) => i + 2));
|
|
88
|
+
const dv1 = sumToDV(sum1);
|
|
89
|
+
const sum2 = utils_1.sumElementsByMultipliers(dv1 + nupReverse, [...Array(16)].map((_, i) => i + 2));
|
|
90
|
+
const dv2 = sumToDV(sum2);
|
|
91
|
+
return `${dv1}${dv2}`;
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Aplica uma máscara ao número informado
|
|
95
|
+
*
|
|
96
|
+
* @param {String} value Número de Processo
|
|
97
|
+
* @returns {String} Valor com a máscara
|
|
98
|
+
*/
|
|
99
|
+
exports.mask = (value) => utils_1.applyMask(value, '00000.000000/0000-00');
|
|
100
|
+
/**
|
|
101
|
+
* fake()
|
|
102
|
+
* Gera um número válido
|
|
103
|
+
*
|
|
104
|
+
* @param {Boolean} withMask Define se o número deve ser gerado com ou sem máscara
|
|
105
|
+
* @returns {String}
|
|
106
|
+
*/
|
|
107
|
+
exports.fake = (withMask = false) => {
|
|
108
|
+
const num = utils_1.fakeNumber(15, true);
|
|
109
|
+
const nup = `${num}${exports.dv(String(num))}`;
|
|
110
|
+
if (withMask)
|
|
111
|
+
return exports.mask(nup);
|
|
112
|
+
return nup;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* validateOrFail()
|
|
116
|
+
* Valida se um número é válido e
|
|
117
|
+
* retorna uma exceção se não estiver
|
|
118
|
+
*
|
|
119
|
+
* @param {String} value Número a ser validado
|
|
120
|
+
* @returns {Boolean}
|
|
121
|
+
*/
|
|
122
|
+
exports.validateOrFail = (value) => {
|
|
123
|
+
const nup = utils_1.clearValue(value, 17);
|
|
124
|
+
if (exports.dv(nup) !== nup.substr(-2, 2)) {
|
|
125
|
+
throw new Error('Dígito verificador inválido');
|
|
126
|
+
}
|
|
127
|
+
return true;
|
|
128
|
+
};
|
|
129
|
+
/**
|
|
130
|
+
* validate()
|
|
131
|
+
* Valida se um número é válido
|
|
132
|
+
*
|
|
133
|
+
* @param {String} value Número a ser validado
|
|
134
|
+
* @returns {Boolean}
|
|
135
|
+
*/
|
|
136
|
+
exports.validate = (value) => {
|
|
137
|
+
try {
|
|
138
|
+
return exports.validateOrFail(value);
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
return false;
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
exports.default = exports.validate;
|
|
145
|
+
//# sourceMappingURL=nup17.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nup17.js","sourceRoot":"","sources":["../src/nup17.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* isPIS()
|
|
3
|
+
* Calcula se um código de PIS/PASEP/NIS/NIT no formato 268.27649.96-0 é válido. Não
|
|
4
|
+
* valida o formato, portanto, 26827649960 é equivalente a 268.27649.96-0 para efeitos
|
|
5
|
+
* desta validação.
|
|
6
|
+
*
|
|
7
|
+
* @doc
|
|
8
|
+
* - O número de PIS deve possuir 11 caracteres
|
|
9
|
+
*
|
|
10
|
+
* - Os caracteres de 1 a 10 são a numeração documento
|
|
11
|
+
*
|
|
12
|
+
* - O caractere 11 é o dígito verificador.
|
|
13
|
+
*
|
|
14
|
+
* 1) Partes do número
|
|
15
|
+
* _______________________________________________
|
|
16
|
+
* | Número | D V |
|
|
17
|
+
* | 2 6 8 . 2 7 6 4 9 . 9 6 - 0 |
|
|
18
|
+
* |_________________________________________|_____|
|
|
19
|
+
*
|
|
20
|
+
* 2) Cálculo do DV.
|
|
21
|
+
*
|
|
22
|
+
* - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
23
|
+
*
|
|
24
|
+
* 2 6 8 2 7 6 4 9 9 6
|
|
25
|
+
* x x x x x x x x x x
|
|
26
|
+
* 3 2 9 8 7 6 5 4 3 2
|
|
27
|
+
* = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
|
|
28
|
+
*
|
|
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
|
|
33
|
+
*
|
|
34
|
+
*
|
|
35
|
+
*
|
|
36
|
+
*
|
|
37
|
+
* Fonte: http://www.macoratti.net/alg_pis.htm
|
|
38
|
+
*
|
|
39
|
+
* @param {String} value Objeto postal no formato 268.27649.96-0
|
|
40
|
+
* @returns {Boolean}
|
|
41
|
+
*/
|
|
42
|
+
/**
|
|
43
|
+
* dv()
|
|
44
|
+
* Calcula o dígito verificador
|
|
45
|
+
*
|
|
46
|
+
* @param {Number|String} value
|
|
47
|
+
* @returns {String}
|
|
48
|
+
*/
|
|
49
|
+
export declare const dv: (value: string | number) => string;
|
|
50
|
+
/**
|
|
51
|
+
* Aplica uma máscara ao número informado
|
|
52
|
+
*
|
|
53
|
+
* @param {String} value Número de Processo
|
|
54
|
+
* @returns {String} Valor com a máscara
|
|
55
|
+
*/
|
|
56
|
+
export declare const mask: (value: string | number) => string;
|
|
57
|
+
/**
|
|
58
|
+
* fake()
|
|
59
|
+
* Gera um número válido
|
|
60
|
+
*
|
|
61
|
+
* @returns {String}
|
|
62
|
+
*/
|
|
63
|
+
export declare const fake: (withMask?: boolean) => string;
|
|
64
|
+
/**
|
|
65
|
+
* validateOrFail()
|
|
66
|
+
* Valida se um número é válido e
|
|
67
|
+
* retorna uma exceção se não estiver
|
|
68
|
+
*
|
|
69
|
+
* @param {String|Number} value Número a ser validado
|
|
70
|
+
* @returns {Boolean}
|
|
71
|
+
*/
|
|
72
|
+
export declare const validateOrFail: (value: string | number) => boolean;
|
|
73
|
+
/**
|
|
74
|
+
* validate()
|
|
75
|
+
* Valida se um número é válido
|
|
76
|
+
*
|
|
77
|
+
* @param {String|Number} value Número a ser validado
|
|
78
|
+
* @returns {Boolean}
|
|
79
|
+
*/
|
|
80
|
+
export declare const validate: (value: string | number) => boolean;
|
|
81
|
+
export default validate;
|
package/dist/pisPasep.js
CHANGED
|
@@ -83,9 +83,10 @@ exports.fake = (withMask = false) => {
|
|
|
83
83
|
};
|
|
84
84
|
/**
|
|
85
85
|
* validateOrFail()
|
|
86
|
-
* Valida se um número
|
|
86
|
+
* Valida se um número é válido e
|
|
87
87
|
* retorna uma exceção se não estiver
|
|
88
88
|
*
|
|
89
|
+
* @param {String|Number} value Número a ser validado
|
|
89
90
|
* @returns {Boolean}
|
|
90
91
|
*/
|
|
91
92
|
exports.validateOrFail = (value) => {
|
|
@@ -97,8 +98,9 @@ exports.validateOrFail = (value) => {
|
|
|
97
98
|
};
|
|
98
99
|
/**
|
|
99
100
|
* validate()
|
|
100
|
-
* Valida se um número
|
|
101
|
+
* Valida se um número é válido
|
|
101
102
|
*
|
|
103
|
+
* @param {String|Number} value Número a ser validado
|
|
102
104
|
* @returns {Boolean}
|
|
103
105
|
*/
|
|
104
106
|
exports.validate = (value) => {
|
package/dist/pisPasep.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pisPasep.js","sourceRoot":"","sources":["../src/pisPasep.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;;;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,EAAE,CAAC,CAAA;IAEjC,MAAM,WAAW,GAAG,4BAAoB,CAAC,EAAE,CAAC,CAAA;IAC5C,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;KACpE;IAED,MAAM,GAAG,GAAG,gCAAwB,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAEzE,OAAO,MAAM,CAAC,eAAO,CAAC,GAAG,CAAC,CAAC,CAAA;AAC7B,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,EAAE,EAAE,IAAI,CAAC,CAAA;IAEhC,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
|
|
1
|
+
{"version":3,"file":"pisPasep.js","sourceRoot":"","sources":["../src/pisPasep.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;;;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,EAAE,CAAC,CAAA;IAEjC,MAAM,WAAW,GAAG,4BAAoB,CAAC,EAAE,CAAC,CAAA;IAC5C,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;KACpE;IAED,MAAM,GAAG,GAAG,gCAAwB,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAEzE,OAAO,MAAM,CAAC,eAAO,CAAC,GAAG,CAAC,CAAC,CAAA;AAC7B,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,EAAE,EAAE,IAAI,CAAC,CAAA;IAEhC,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;;;;;;;GAOG;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,EAAE,EAAE,EAAE,CAAC,EAAE;QACrC,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 {};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* isPostalCode()
|
|
3
|
+
* Calcula se um código de rastreamento postal no formato JT194690698BR é válido.
|
|
4
|
+
*
|
|
5
|
+
* @doc
|
|
6
|
+
* - O número de registro postal deve possuir 13 caracters no formato JT194690698BR.
|
|
7
|
+
*
|
|
8
|
+
* - Os caracteres 1 e 2 informam o tipo do objeto. Ex.: SX é Sedex, RC é carta registrada etc.
|
|
9
|
+
*
|
|
10
|
+
* - Os caracteres de 3 a 10 são a numeração sequencial do tipo do objeto.
|
|
11
|
+
*
|
|
12
|
+
* - O caractere 11 é o dígito verificador.
|
|
13
|
+
*
|
|
14
|
+
* - Os caracteres 12 e 13 representa o código do País de onde a postagem partiu.
|
|
15
|
+
*
|
|
16
|
+
* 1) Partes do número
|
|
17
|
+
* ______ ___________________________ ______ _______
|
|
18
|
+
* | Tipo | Número | DV | País |
|
|
19
|
+
* | J T 1 9 4 6 9 0 6 9 8 B R |
|
|
20
|
+
* |______|___________________________|______|_______|
|
|
21
|
+
*
|
|
22
|
+
* 2) Cálculo do DV.
|
|
23
|
+
*
|
|
24
|
+
* - Soma-se o produto das algarismos 3 a 10 pelos números 8, 6, 4, 2, 3, 5, 9, 7
|
|
25
|
+
*
|
|
26
|
+
* 1 9 4 6 9 0 6 9
|
|
27
|
+
* x x x x x x x x
|
|
28
|
+
* 8 6 4 2 3 5 9 7
|
|
29
|
+
* = 8 +54 +16 +12 +18 +0 +54 +63 = 234
|
|
30
|
+
*
|
|
31
|
+
* - O somatório encontrado é dividido por 11 e o resultado é subtraído de 11
|
|
32
|
+
* 234 / 11 tem resto 3. 11 - 3 = 8. DV1 é 8.
|
|
33
|
+
* Obs.: Caso o cálculo de DV1 retorne 0, o resultado será 5.
|
|
34
|
+
* Caso retorne 1, o resto será 0
|
|
35
|
+
*
|
|
36
|
+
*
|
|
37
|
+
*
|
|
38
|
+
*
|
|
39
|
+
* Fonte:
|
|
40
|
+
*
|
|
41
|
+
* @param {String} value Objeto postal no formato JT194690698BR
|
|
42
|
+
* @returns {Boolean}
|
|
43
|
+
*/
|
|
44
|
+
/**
|
|
45
|
+
* dv()
|
|
46
|
+
* Calcula o dígito verificador
|
|
47
|
+
*
|
|
48
|
+
* @param {Number|String} value
|
|
49
|
+
* @returns {String}
|
|
50
|
+
*/
|
|
51
|
+
export declare const dv: (value: string | number) => string;
|
|
52
|
+
/**
|
|
53
|
+
* Aplica uma máscara ao número informado
|
|
54
|
+
*
|
|
55
|
+
* @param {String} value Número de Processo
|
|
56
|
+
* @returns {String} Valor com a máscara
|
|
57
|
+
*/
|
|
58
|
+
export declare const mask: (value: string | number) => string;
|
|
59
|
+
/**
|
|
60
|
+
* fake()
|
|
61
|
+
* Gera um número válido
|
|
62
|
+
*
|
|
63
|
+
* @returns {String}
|
|
64
|
+
*/
|
|
65
|
+
export declare const fake: (withMask?: boolean) => string;
|
|
66
|
+
/**
|
|
67
|
+
* validateOrFail()
|
|
68
|
+
* Valida se um número é válido e
|
|
69
|
+
* retorna uma exceção se não estiver
|
|
70
|
+
*
|
|
71
|
+
* @param {String} value Número a ser validado
|
|
72
|
+
* @returns {Boolean}
|
|
73
|
+
*/
|
|
74
|
+
export declare const validateOrFail: (value: string) => boolean;
|
|
75
|
+
/**
|
|
76
|
+
* validate()
|
|
77
|
+
* Valida se um número é válido
|
|
78
|
+
*
|
|
79
|
+
* @param {String} value Número a ser validado
|
|
80
|
+
* @returns {Boolean}
|
|
81
|
+
*/
|
|
82
|
+
export declare const validate: (value: string) => boolean;
|
|
83
|
+
export default validate;
|
package/dist/postalCode.js
CHANGED
|
@@ -117,9 +117,10 @@ exports.fake = (withMask = false) => {
|
|
|
117
117
|
};
|
|
118
118
|
/**
|
|
119
119
|
* validateOrFail()
|
|
120
|
-
* Valida se um número
|
|
120
|
+
* Valida se um número é válido e
|
|
121
121
|
* retorna uma exceção se não estiver
|
|
122
122
|
*
|
|
123
|
+
* @param {String} value Número a ser validado
|
|
123
124
|
* @returns {Boolean}
|
|
124
125
|
*/
|
|
125
126
|
exports.validateOrFail = (value) => {
|
|
@@ -134,8 +135,9 @@ exports.validateOrFail = (value) => {
|
|
|
134
135
|
};
|
|
135
136
|
/**
|
|
136
137
|
* validate()
|
|
137
|
-
* Valida se um número
|
|
138
|
+
* Valida se um número é válido
|
|
138
139
|
*
|
|
140
|
+
* @param {String} value Número a ser validado
|
|
139
141
|
* @returns {Boolean}
|
|
140
142
|
*/
|
|
141
143
|
exports.validate = (value) => {
|
package/dist/postalCode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postalCode.js","sourceRoot":"","sources":["../src/postalCode.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;;;AAEH,mCAA0E;AAE1E;;;;;;GAMG;AACU,QAAA,EAAE,GAAG,CAAC,KAAsB,EAAU,EAAE;IACnD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;IAEhD,MAAM,UAAU,GAAG,kBAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IAEvC,MAAM,GAAG,GAAG,gCAAwB,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAE1E,MAAM,IAAI,GAAG,GAAG,GAAG,EAAE,CAAA;IACrB,uDAAuD;IAEvD,MAAM,aAAa,GAAG;QACpB,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;QAClB,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;KACnB,CAAA;IAED,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;IAElE,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAA;IAE/C,OAAO,MAAM,CAAC,EAAE,CAAC,CAAA;AACnB,CAAC,CAAA;AAED;;;;;GAKG;AACU,QAAA,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,iBAAiB,EAAE,CAAA;AAEzF;;;;;GAKG;AACU,QAAA,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,GAAG,GAAG,kBAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAE/B,MAAM,UAAU,GAAG,GAAW,EAAE,CAC9B;QACE,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;QACH,GAAG;KACJ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAErC,MAAM,UAAU,GAAG,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,GAAG,GAAG,GAAG,UAAE,CAAC,GAAG,CAAC,IAAI,CAAA;IAErE,IAAI,QAAQ;QAAE,OAAO,YAAI,CAAC,UAAU,CAAC,CAAA;IACrC,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAED
|
|
1
|
+
{"version":3,"file":"postalCode.js","sourceRoot":"","sources":["../src/postalCode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RENAVAM
|
|
3
|
+
* Funções auxiliares para cálculo de máscaras, validação, dígito verificador e criaçãode
|
|
4
|
+
* números fake.
|
|
5
|
+
*
|
|
6
|
+
* @doc
|
|
7
|
+
* - O número de RENAVAM deve possuir 11 caracteres
|
|
8
|
+
*
|
|
9
|
+
* - Os caracteres de 1 a 10 são a numeração documento
|
|
10
|
+
*
|
|
11
|
+
* - O caractere 11 é o dígito verificador.
|
|
12
|
+
*
|
|
13
|
+
* 1) Partes do número
|
|
14
|
+
* _______________________________________________
|
|
15
|
+
* | Número | D V |
|
|
16
|
+
* | 2 6 8 2 7 6 4 9 9 6 - 0 |
|
|
17
|
+
* |_________________________________________|_____|
|
|
18
|
+
*
|
|
19
|
+
* 2) Cálculo do DV.
|
|
20
|
+
*
|
|
21
|
+
* - Soma-se o produto das algarismos 3 a 10 pelos números 3, 2, 9, 8, 7, 6, 5, 4, 3, 2
|
|
22
|
+
*
|
|
23
|
+
* 2 6 8 2 7 6 4 9 9 6
|
|
24
|
+
* x x x x x x x x x x
|
|
25
|
+
* 3 2 9 8 7 6 5 4 3 2
|
|
26
|
+
* = 6 +12 +72 +16 +49 +12 +20 +36 +27 +12 = 234
|
|
27
|
+
*
|
|
28
|
+
* - O somatório encontrado é multiplicado por 10 e ao resultado
|
|
29
|
+
* é aplicado o cálculo do MOD 11.
|
|
30
|
+
*
|
|
31
|
+
* ( 234 * 10 ) / 11 tem resto 8. DV = 8. Caso o resto seja maior ou igual a
|
|
32
|
+
* 10, DV será 0.
|
|
33
|
+
*
|
|
34
|
+
*
|
|
35
|
+
*/
|
|
36
|
+
/**
|
|
37
|
+
* dv()
|
|
38
|
+
* Calcula o dígito verificador
|
|
39
|
+
*
|
|
40
|
+
* @param {Number|String} value
|
|
41
|
+
* @returns {String}
|
|
42
|
+
*/
|
|
43
|
+
export declare const dv: (value: string | number) => string;
|
|
44
|
+
/**
|
|
45
|
+
* Aplica uma máscara ao número informado
|
|
46
|
+
*
|
|
47
|
+
* @param {String} value Número de Processo
|
|
48
|
+
* @returns {String} Valor com a máscara
|
|
49
|
+
*/
|
|
50
|
+
export declare const mask: (value: string | number) => string;
|
|
51
|
+
/**
|
|
52
|
+
* fake()
|
|
53
|
+
* Gera um número válido
|
|
54
|
+
*
|
|
55
|
+
* @returns {String}
|
|
56
|
+
*/
|
|
57
|
+
export declare const fake: (withMask?: boolean) => string;
|
|
58
|
+
/**
|
|
59
|
+
* validateOrFail()
|
|
60
|
+
* Valida se um número é válido e
|
|
61
|
+
* retorna uma exceção se não estiver
|
|
62
|
+
*
|
|
63
|
+
* @param {String|Number} value Número a ser validado
|
|
64
|
+
* @returns {Boolean}
|
|
65
|
+
*/
|
|
66
|
+
export declare const validateOrFail: (value: string | number) => boolean;
|
|
67
|
+
/**
|
|
68
|
+
* validate()
|
|
69
|
+
* Valida se um número é válido
|
|
70
|
+
*
|
|
71
|
+
* @param {String|Number} value Número a ser validado
|
|
72
|
+
* @returns {Boolean}
|
|
73
|
+
*/
|
|
74
|
+
export declare const validate: (value: string | number) => boolean;
|
|
75
|
+
export default validate;
|
package/dist/renavam.js
CHANGED
|
@@ -78,9 +78,10 @@ exports.fake = (withMask = false) => {
|
|
|
78
78
|
};
|
|
79
79
|
/**
|
|
80
80
|
* validateOrFail()
|
|
81
|
-
* Valida se um número
|
|
81
|
+
* Valida se um número é válido e
|
|
82
82
|
* retorna uma exceção se não estiver
|
|
83
83
|
*
|
|
84
|
+
* @param {String|Number} value Número a ser validado
|
|
84
85
|
* @returns {Boolean}
|
|
85
86
|
*/
|
|
86
87
|
exports.validateOrFail = (value) => {
|
|
@@ -92,8 +93,9 @@ exports.validateOrFail = (value) => {
|
|
|
92
93
|
};
|
|
93
94
|
/**
|
|
94
95
|
* validate()
|
|
95
|
-
* Valida se um número
|
|
96
|
+
* Valida se um número é válido
|
|
96
97
|
*
|
|
98
|
+
* @param {String|Number} value Número a ser validado
|
|
97
99
|
* @returns {Boolean}
|
|
98
100
|
*/
|
|
99
101
|
exports.validate = (value) => {
|
package/dist/renavam.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renavam.js","sourceRoot":"","sources":["../src/renavam.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;;;AAEH,mCAMgB;AAEhB;;;;;;GAMG;AACU,QAAA,EAAE,GAAG,CAAC,KAAsB,EAAU,EAAE;IACnD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;IAEpD,MAAM,OAAO,GAAG,kBAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA,CAAC,0BAA0B;IAEhE,MAAM,WAAW,GAAG,4BAAoB,CAAC,EAAE,CAAC,CAAA;IAC5C,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjC,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAA;KACxE;IAED,MAAM,IAAI,GAAG,gCAAwB,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;IACnF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAA;IAC3C,OAAO,GAAG,GAAG,EAAE,CAAA;AACjB,CAAC,CAAA;AAED;;;;;GAKG;AACU,QAAA,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,iBAAS,CAAC,KAAK,EAAE,cAAc,CAAC,CAAA;AAExF;;;;;GAKG;AACU,QAAA,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,KAAK,GAAG,kBAAU,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAElC,MAAM,OAAO,GAAG,GAAG,KAAK,GAAG,UAAE,CAAC,KAAK,CAAC,EAAE,CAAA;IAEtC,IAAI,QAAQ;QAAE,OAAO,YAAI,CAAC,OAAO,CAAC,CAAA;IAElC,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED
|
|
1
|
+
{"version":3,"file":"renavam.js","sourceRoot":"","sources":["../src/renavam.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;;;AAEH,mCAMgB;AAEhB;;;;;;GAMG;AACU,QAAA,EAAE,GAAG,CAAC,KAAsB,EAAU,EAAE;IACnD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;IAEpD,MAAM,OAAO,GAAG,kBAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA,CAAC,0BAA0B;IAEhE,MAAM,WAAW,GAAG,4BAAoB,CAAC,EAAE,CAAC,CAAA;IAC5C,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjC,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAA;KACxE;IAED,MAAM,IAAI,GAAG,gCAAwB,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;IACnF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAA;IAC3C,OAAO,GAAG,GAAG,EAAE,CAAA;AACjB,CAAC,CAAA;AAED;;;;;GAKG;AACU,QAAA,IAAI,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,iBAAS,CAAC,KAAK,EAAE,cAAc,CAAC,CAAA;AAExF;;;;;GAKG;AACU,QAAA,IAAI,GAAG,CAAC,WAAoB,KAAK,EAAU,EAAE;IACxD,MAAM,KAAK,GAAG,kBAAU,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAElC,MAAM,OAAO,GAAG,GAAG,KAAK,GAAG,UAAE,CAAC,KAAK,CAAC,EAAE,CAAA;IAEtC,IAAI,QAAQ;QAAE,OAAO,YAAI,CAAC,OAAO,CAAC,CAAA;IAElC,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED;;;;;;;GAOG;AACU,QAAA,cAAc,GAAG,CAAC,KAAsB,EAAW,EAAE;IAChE,MAAM,OAAO,GAAG,kBAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAErC,IAAI,UAAE,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;QAC7C,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 {};
|