@mirai/ui 2.1.41 → 2.1.42
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.
|
@@ -5,6 +5,47 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.getInputPhoneErrors = void 0;
|
|
7
7
|
var _helpers = require("../components/InputPhone/helpers");
|
|
8
|
+
var COUNTRY_SPECIFIC_RULES = {
|
|
9
|
+
'+34': {
|
|
10
|
+
minLength: 9
|
|
11
|
+
},
|
|
12
|
+
// Spain
|
|
13
|
+
'+1': {
|
|
14
|
+
minLength: 10
|
|
15
|
+
},
|
|
16
|
+
// USA & Canada
|
|
17
|
+
'+44': {
|
|
18
|
+
minLength: 10
|
|
19
|
+
},
|
|
20
|
+
// United Kingdom
|
|
21
|
+
'+33': {
|
|
22
|
+
minLength: 9
|
|
23
|
+
},
|
|
24
|
+
// France
|
|
25
|
+
'+52': {
|
|
26
|
+
minLength: 10
|
|
27
|
+
},
|
|
28
|
+
// Mexico
|
|
29
|
+
'+351': {
|
|
30
|
+
minLength: 9
|
|
31
|
+
},
|
|
32
|
+
// Portugal
|
|
33
|
+
'+49': {
|
|
34
|
+
minLength: 10
|
|
35
|
+
},
|
|
36
|
+
// Germany
|
|
37
|
+
'+39': {
|
|
38
|
+
minLength: 8
|
|
39
|
+
},
|
|
40
|
+
// Italy
|
|
41
|
+
'+353': {
|
|
42
|
+
minLength: 9
|
|
43
|
+
},
|
|
44
|
+
// Ireland
|
|
45
|
+
'+31': {
|
|
46
|
+
minLength: 9
|
|
47
|
+
} // Netherlands
|
|
48
|
+
};
|
|
8
49
|
var getInputPhoneErrors = function getInputPhoneErrors() {
|
|
9
50
|
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
10
51
|
_ref$prefixes = _ref.prefixes,
|
|
@@ -13,13 +54,25 @@ var getInputPhoneErrors = function getInputPhoneErrors() {
|
|
|
13
54
|
value = _ref$value === void 0 ? '' : _ref$value;
|
|
14
55
|
if (value.trim().length === 0) return;
|
|
15
56
|
var errors = {};
|
|
16
|
-
var
|
|
17
|
-
length = _value$replace.length;
|
|
57
|
+
var sanitizedPrefixes = (0, _helpers.sanitizePrefixes)(prefixes);
|
|
18
58
|
var withPrefix = prefixes.length > 0;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
59
|
+
var minLengthRequired = withPrefix ? 8 : 6;
|
|
60
|
+
var prefixFound;
|
|
61
|
+
if (withPrefix) {
|
|
62
|
+
prefixFound = sanitizedPrefixes.find(function (prefix) {
|
|
63
|
+
return value.startsWith(prefix);
|
|
64
|
+
});
|
|
65
|
+
if (prefixFound) {
|
|
66
|
+
if (COUNTRY_SPECIFIC_RULES[prefixFound]) {
|
|
67
|
+
minLengthRequired = COUNTRY_SPECIFIC_RULES[prefixFound].minLength;
|
|
68
|
+
}
|
|
69
|
+
} else {
|
|
70
|
+
errors.format = true;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
var numberPart = prefixFound ? value.substring(prefixFound.length) : value;
|
|
74
|
+
var actualNumberLength = numberPart.replace(/\D/g, '').length;
|
|
75
|
+
if (actualNumberLength < minLengthRequired) errors.minLength = true;
|
|
23
76
|
return Object.keys(errors).length > 0 ? errors : undefined;
|
|
24
77
|
};
|
|
25
78
|
exports.getInputPhoneErrors = getInputPhoneErrors;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getInputPhoneErrors.js","names":["_helpers","require","getInputPhoneErrors","_ref","arguments","length","undefined","_ref$prefixes","prefixes","_ref$value","value","trim","errors","
|
|
1
|
+
{"version":3,"file":"getInputPhoneErrors.js","names":["_helpers","require","COUNTRY_SPECIFIC_RULES","minLength","getInputPhoneErrors","_ref","arguments","length","undefined","_ref$prefixes","prefixes","_ref$value","value","trim","errors","sanitizedPrefixes","sanitizePrefixes","withPrefix","minLengthRequired","prefixFound","find","prefix","startsWith","format","numberPart","substring","actualNumberLength","replace","Object","keys","exports"],"sources":["../../src/helpers/getInputPhoneErrors.js"],"sourcesContent":["import { sanitizePrefixes } from '../components/InputPhone/helpers';\n\nconst COUNTRY_SPECIFIC_RULES = {\n '+34': { minLength: 9 }, // Spain\n '+1': { minLength: 10 }, // USA & Canada\n '+44': { minLength: 10 }, // United Kingdom\n '+33': { minLength: 9 }, // France\n '+52': { minLength: 10 }, // Mexico\n '+351': { minLength: 9 }, // Portugal\n '+49': { minLength: 10 }, // Germany\n '+39': { minLength: 8 }, // Italy\n '+353': { minLength: 9 }, // Ireland\n '+31': { minLength: 9 }, // Netherlands\n};\n\nexport const getInputPhoneErrors = ({ prefixes = [], value = '' } = {}) => {\n if (value.trim().length === 0) return;\n\n const errors = {};\n const sanitizedPrefixes = sanitizePrefixes(prefixes);\n const withPrefix = prefixes.length > 0;\n let minLengthRequired = withPrefix ? 8 : 6;\n let prefixFound;\n\n if (withPrefix) {\n prefixFound = sanitizedPrefixes.find((prefix) => value.startsWith(prefix));\n\n if (prefixFound) {\n if (COUNTRY_SPECIFIC_RULES[prefixFound]) {\n minLengthRequired = COUNTRY_SPECIFIC_RULES[prefixFound].minLength;\n }\n } else {\n errors.format = true;\n }\n }\n\n const numberPart = prefixFound ? value.substring(prefixFound.length) : value;\n const actualNumberLength = numberPart.replace(/\\D/g, '').length;\n\n if (actualNumberLength < minLengthRequired) errors.minLength = true;\n\n return Object.keys(errors).length > 0 ? errors : undefined;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEA,IAAMC,sBAAsB,GAAG;EAC7B,KAAK,EAAE;IAAEC,SAAS,EAAE;EAAE,CAAC;EAAE;EACzB,IAAI,EAAE;IAAEA,SAAS,EAAE;EAAG,CAAC;EAAE;EACzB,KAAK,EAAE;IAAEA,SAAS,EAAE;EAAG,CAAC;EAAE;EAC1B,KAAK,EAAE;IAAEA,SAAS,EAAE;EAAE,CAAC;EAAE;EACzB,KAAK,EAAE;IAAEA,SAAS,EAAE;EAAG,CAAC;EAAE;EAC1B,MAAM,EAAE;IAAEA,SAAS,EAAE;EAAE,CAAC;EAAE;EAC1B,KAAK,EAAE;IAAEA,SAAS,EAAE;EAAG,CAAC;EAAE;EAC1B,KAAK,EAAE;IAAEA,SAAS,EAAE;EAAE,CAAC;EAAE;EACzB,MAAM,EAAE;IAAEA,SAAS,EAAE;EAAE,CAAC;EAAE;EAC1B,KAAK,EAAE;IAAEA,SAAS,EAAE;EAAE,CAAC,CAAE;AAC3B,CAAC;AAEM,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA,EAA2C;EAAA,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAP,CAAC,CAAC;IAAAG,aAAA,GAAAJ,IAAA,CAAhCK,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAG,EAAE,GAAAA,aAAA;IAAAE,UAAA,GAAAN,IAAA,CAAEO,KAAK;IAALA,KAAK,GAAAD,UAAA,cAAG,EAAE,GAAAA,UAAA;EAC7D,IAAIC,KAAK,CAACC,IAAI,CAAC,CAAC,CAACN,MAAM,KAAK,CAAC,EAAE;EAE/B,IAAMO,MAAM,GAAG,CAAC,CAAC;EACjB,IAAMC,iBAAiB,GAAG,IAAAC,yBAAgB,EAACN,QAAQ,CAAC;EACpD,IAAMO,UAAU,GAAGP,QAAQ,CAACH,MAAM,GAAG,CAAC;EACtC,IAAIW,iBAAiB,GAAGD,UAAU,GAAG,CAAC,GAAG,CAAC;EAC1C,IAAIE,WAAW;EAEf,IAAIF,UAAU,EAAE;IACdE,WAAW,GAAGJ,iBAAiB,CAACK,IAAI,CAAC,UAACC,MAAM;MAAA,OAAKT,KAAK,CAACU,UAAU,CAACD,MAAM,CAAC;IAAA,EAAC;IAE1E,IAAIF,WAAW,EAAE;MACf,IAAIjB,sBAAsB,CAACiB,WAAW,CAAC,EAAE;QACvCD,iBAAiB,GAAGhB,sBAAsB,CAACiB,WAAW,CAAC,CAAChB,SAAS;MACnE;IACF,CAAC,MAAM;MACLW,MAAM,CAACS,MAAM,GAAG,IAAI;IACtB;EACF;EAEA,IAAMC,UAAU,GAAGL,WAAW,GAAGP,KAAK,CAACa,SAAS,CAACN,WAAW,CAACZ,MAAM,CAAC,GAAGK,KAAK;EAC5E,IAAMc,kBAAkB,GAAGF,UAAU,CAACG,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAACpB,MAAM;EAE/D,IAAImB,kBAAkB,GAAGR,iBAAiB,EAAEJ,MAAM,CAACX,SAAS,GAAG,IAAI;EAEnE,OAAOyB,MAAM,CAACC,IAAI,CAACf,MAAM,CAAC,CAACP,MAAM,GAAG,CAAC,GAAGO,MAAM,GAAGN,SAAS;AAC5D,CAAC;AAACsB,OAAA,CAAA1B,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|