infinity-forge 14.9.7 → 14.9.8
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/ui/components/form/input-cpf-cnpj/index.js +2 -2
- package/dist/ui/components/form/input-cpf-cnpj/index.js.map +1 -1
- package/dist/ui/components/form/input-mask/index.d.ts +1 -0
- package/dist/ui/components/form/input-mask/index.js +14 -6
- package/dist/ui/components/form/input-mask/index.js.map +1 -1
- package/dist/ui/utils/form-validator/validations/validate-cnpj.js +21 -25
- package/dist/ui/utils/form-validator/validations/validate-cnpj.js.map +1 -1
- package/package.json +1 -1
|
@@ -19,8 +19,8 @@ function InputCpfCnpj(props) {
|
|
|
19
19
|
cpf: '___.___.___-__',
|
|
20
20
|
cnpj: '__.___.___/____-__',
|
|
21
21
|
};
|
|
22
|
-
return ((0, jsx_runtime_1.jsx)(input_mask_1.InputMask, __assign({}, props, { maskModifier: function (value) { return value.replace(
|
|
23
|
-
var currentMask = (value === null || value === void 0 ? void 0 : value.replace(
|
|
22
|
+
return ((0, jsx_runtime_1.jsx)(input_mask_1.InputMask, __assign({}, props, { alphanumeric: true, maskModifier: function (value) { return value.replace(/[^A-Za-z0-9]/g, '').length > 11 ? masks['cnpj'] : masks['cpf']; }, onChangeInput: function (value, callback, _, applyMask) {
|
|
23
|
+
var currentMask = (value === null || value === void 0 ? void 0 : value.replace(/[^A-Za-z0-9]/g, '').length) > 11 ? masks['cnpj'] : masks['cpf'];
|
|
24
24
|
applyMask(value, currentMask);
|
|
25
25
|
callback && callback();
|
|
26
26
|
} })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ui/components/form/input-cpf-cnpj/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;AAGA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ui/components/form/input-cpf-cnpj/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;AAGA,oCAsBC;;AAxBD,4CAAyC;AAEzC,SAAgB,YAAY,CAAC,KAAiB;IAE5C,IAAM,KAAK,GAAG;QACZ,GAAG,EAAE,gBAAgB;QACrB,IAAI,EAAE,oBAAoB;KAC3B,CAAA;IAED,OAAO,CACL,uBAAC,sBAAS,eACJ,KAAK,IACT,YAAY,QACZ,YAAY,EAAE,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAE,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAA9E,CAA8E,EACvG,aAAa,EAAE,UAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS;YAE3C,IAAM,WAAW,GAAG,CAAC,KAAgB,aAAhB,KAAK,uBAAL,KAAK,CAAa,OAAO,CAAC,eAAe,EAAE,EAAE,EAAE,MAAM,IAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAE/G,SAAS,CAAC,KAAe,EAAE,WAAW,CAAC,CAAA;YAEtC,QAAQ,IAAI,QAAQ,EAAE,CAAA;QACxB,CAAC,IACD,CACH,CAAA;AACH,CAAC"}
|
|
@@ -59,16 +59,24 @@ function InputMask(props) {
|
|
|
59
59
|
var _d = (0, formik_1.useField)({ name: props.name }), field = _d[0], state = _d[1], utils = _d[2];
|
|
60
60
|
var inputRef = (0, react_1.useRef)(null);
|
|
61
61
|
var formHandler = (0, handler_1.useFormHandler)();
|
|
62
|
-
function applyMask(value, mask) {
|
|
62
|
+
function applyMask(value, mask, alphanumeric) {
|
|
63
|
+
if (alphanumeric === void 0) { alphanumeric = false; }
|
|
63
64
|
var maskedValue = '';
|
|
64
65
|
var index = 0;
|
|
65
|
-
var
|
|
66
|
+
var filled = 0;
|
|
67
|
+
var chars = alphanumeric ? value.replace(/[^A-Za-z0-9]/g, '').toUpperCase() : value.replace(/\D/g, '');
|
|
68
|
+
var fillCount = (mask.match(/_/g) || []).length;
|
|
66
69
|
for (var _i = 0, mask_1 = mask; _i < mask_1.length; _i++) {
|
|
67
70
|
var char = mask_1[_i];
|
|
68
|
-
if (index >= numbers.length)
|
|
69
|
-
break;
|
|
70
71
|
if (char === '_') {
|
|
71
|
-
|
|
72
|
+
// Os 2 últimos preenchíveis (DV) permanecem numéricos, mesmo em modo alfanumérico.
|
|
73
|
+
var numericOnly = !alphanumeric || filled >= fillCount - 2;
|
|
74
|
+
while (index < chars.length && numericOnly && !/\d/.test(chars[index]))
|
|
75
|
+
index++;
|
|
76
|
+
if (index >= chars.length)
|
|
77
|
+
break;
|
|
78
|
+
maskedValue += chars[index++];
|
|
79
|
+
filled++;
|
|
72
80
|
}
|
|
73
81
|
else {
|
|
74
82
|
maskedValue += char;
|
|
@@ -83,7 +91,7 @@ function InputMask(props) {
|
|
|
83
91
|
switch (_a.label) {
|
|
84
92
|
case 0:
|
|
85
93
|
setLoading(true);
|
|
86
|
-
maskedValue = applyMask(value, props.maskModifier ? props.maskModifier(value) : props.mask);
|
|
94
|
+
maskedValue = applyMask(value, props.maskModifier ? props.maskModifier(value) : props.mask, props.alphanumeric);
|
|
87
95
|
_a.label = 1;
|
|
88
96
|
case 1:
|
|
89
97
|
_a.trys.push([1, 5, 6, 7]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ui/components/form/input-mask/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ui/components/form/input-mask/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,8BA8EC;;AA7FD,+BAAmD;AAEnD,iCAAiC;AACjC,kDAA+C;AAG/C,sCAA2C;AAS3C,SAAgB,SAAS,CAAC,KAAkC;;IACpD,IAAA,KAAwB,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAAtC,OAAO,QAAA,EAAE,UAAU,QAAmB,CAAA;IACvC,IAAA,KAAwB,IAAA,iBAAQ,EAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,EAArD,KAAK,QAAA,EAAE,KAAK,QAAA,EAAE,KAAK,QAAkC,CAAA;IAC5D,IAAM,QAAQ,GAAG,IAAA,cAAM,EAAmB,IAAI,CAAC,CAAC;IAEhD,IAAM,WAAW,GAAG,IAAA,wBAAc,GAAE,CAAC;IAErC,SAAS,SAAS,CAAC,KAAa,EAAE,IAAY,EAAE,YAAoB;QAApB,6BAAA,EAAA,oBAAoB;QAClE,IAAI,WAAW,GAAG,EAAE,CAAA;QACpB,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,IAAI,MAAM,GAAG,CAAC,CAAA;QACd,IAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACxG,IAAM,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAA;QAEjD,KAAiB,UAAI,EAAJ,aAAI,EAAJ,kBAAI,EAAJ,IAAI,EAAE,CAAC;YAAnB,IAAI,IAAI,aAAA;YACX,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACjB,mFAAmF;gBACnF,IAAM,WAAW,GAAG,CAAC,YAAY,IAAI,MAAM,IAAI,SAAS,GAAG,CAAC,CAAA;gBAC5D,OAAO,KAAK,GAAG,KAAK,CAAC,MAAM,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAAE,KAAK,EAAE,CAAA;gBAC/E,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM;oBAAE,MAAK;gBAChC,WAAW,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;gBAC7B,MAAM,EAAE,CAAA;YACV,CAAC;iBAAM,CAAC;gBACN,WAAW,IAAI,IAAI,CAAA;YACrB,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,SAAe,WAAW,CAAC,KAAa;;;;;;wBAEtC,UAAU,CAAC,IAAI,CAAC,CAAA;wBACV,WAAW,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;;;;6BAG/G,KAAK,CAAC,aAAa,EAAnB,wBAAmB;wBACA,qBAAM,KAAK,CAAC,aAAa,CAC5C,WAAW,EACX,cAAM,OAAA,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAArB,CAAqB,EAC3B,EAAE,KAAK,OAAA,EAAE,KAAK,OAAA,EAAE,EAChB,SAAS,CACV,EAAA;;wBALK,YAAY,GAAG,SAKpB;wBAED,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,WAAW,CAAC,CAAA;wBAE3C,sBAAM;;wBAEN,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;;;;;wBAG7B,OAAO,CAAC,KAAK,CAAC,OAAK,CAAC,CAAA;;;wBAEpB,UAAU,CAAC,KAAK,CAAC,CAAA;;;;;;KAEpB;IAED,IAAA,iBAAS,EAAC;QACR,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACf,IAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAC5D,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IAEhB,OAAO,CACL,uBAAC,4BAAY,eAAK,KAAK,IAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,YACjE,kCACE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,EAAE,EAAE,KAAK,CAAC,IAAI,EACd,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ,KAAI,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,0CAAE,MAAM,0CAAE,QAAQ,CAAA,EAC3E,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EACxB,OAAO,EAAE,UAAC,EAAE,IAAK,OAAA,WAAW,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAnC,CAAmC,GACpD,IACW,CAChB,CAAA;AACH,CAAC"}
|
|
@@ -4,35 +4,31 @@ exports.validateCNPJ = validateCNPJ;
|
|
|
4
4
|
function validateCNPJ(value) {
|
|
5
5
|
if (!value)
|
|
6
6
|
return false;
|
|
7
|
-
|
|
7
|
+
// Preserva letras e números (CNPJ alfanumérico) e normaliza para maiúsculo.
|
|
8
|
+
var cnpj = value.replace(/[^A-Za-z0-9]+/g, '').toUpperCase();
|
|
8
9
|
if (cnpj.length !== 14)
|
|
9
10
|
return false;
|
|
10
|
-
if (/^(
|
|
11
|
+
if (/^(.)\1+$/.test(cnpj))
|
|
11
12
|
return false;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var digits = cnpj.substring(length);
|
|
15
|
-
var sum = 0;
|
|
16
|
-
var pos = length - 7;
|
|
17
|
-
for (var i = length; i >= 1; i--) {
|
|
18
|
-
sum += +numbers.charAt(length - i) * pos--;
|
|
19
|
-
if (pos < 2)
|
|
20
|
-
pos = 9;
|
|
21
|
-
}
|
|
22
|
-
var result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
23
|
-
if (result !== +digits.charAt(0))
|
|
13
|
+
// Os 2 dígitos verificadores são sempre numéricos.
|
|
14
|
+
if (!/^\d{2}$/.test(cnpj.substring(12)))
|
|
24
15
|
return false;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
16
|
+
// Valor do caractere = ASCII - 48 (0..9 => 0..9, A => 17 ... Z => 42).
|
|
17
|
+
var charValue = function (char) { return char.charCodeAt(0) - 48; };
|
|
18
|
+
var calcDigit = function (base, weights) {
|
|
19
|
+
var sum = 0;
|
|
20
|
+
for (var i = 0; i < base.length; i++) {
|
|
21
|
+
sum += charValue(base.charAt(i)) * weights[i];
|
|
22
|
+
}
|
|
23
|
+
var rest = sum % 11;
|
|
24
|
+
return rest < 2 ? 0 : 11 - rest;
|
|
25
|
+
};
|
|
26
|
+
var digits = cnpj.substring(12);
|
|
27
|
+
var dv1 = calcDigit(cnpj.substring(0, 12), [5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2]);
|
|
28
|
+
if (dv1 !== +digits.charAt(0))
|
|
29
|
+
return false;
|
|
30
|
+
var dv2 = calcDigit(cnpj.substring(0, 13), [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2]);
|
|
31
|
+
if (dv2 !== +digits.charAt(1))
|
|
36
32
|
return false;
|
|
37
33
|
return true;
|
|
38
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-cnpj.js","sourceRoot":"","sources":["../../../../../src/ui/utils/form-validator/validations/validate-cnpj.ts"],"names":[],"mappings":";;AAAA,
|
|
1
|
+
{"version":3,"file":"validate-cnpj.js","sourceRoot":"","sources":["../../../../../src/ui/utils/form-validator/validations/validate-cnpj.ts"],"names":[],"mappings":";;AAAA,oCAkCC;AAlCD,SAAgB,YAAY,CAAC,KAAqB;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAEzB,4EAA4E;IAC5E,IAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAE/D,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE;QAAE,OAAO,KAAK,CAAC;IAErC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAExC,mDAAmD;IACnD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAEtD,uEAAuE;IACvE,IAAM,SAAS,GAAG,UAAC,IAAY,IAAa,OAAA,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,EAAvB,CAAuB,CAAC;IAEpE,IAAM,SAAS,GAAG,UAAC,IAAY,EAAE,OAAiB;QAChD,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,IAAM,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACtB,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;IAClC,CAAC,CAAC;IAEF,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAElC,IAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACnF,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAE5C,IAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACtF,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAE5C,OAAO,IAAI,CAAC;AACd,CAAC"}
|