react-native-paper-dates 0.18.1 → 0.18.2
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.
|
@@ -14,6 +14,9 @@ function detectCharacter(mask) {
|
|
|
14
14
|
const c = splitCharacters.find(ch => mask.includes(ch));
|
|
15
15
|
return c || '';
|
|
16
16
|
}
|
|
17
|
+
function escapeForRegExp(value) {
|
|
18
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
19
|
+
}
|
|
17
20
|
function TextInputWithMask(_ref, ref) {
|
|
18
21
|
let {
|
|
19
22
|
onChangeText,
|
|
@@ -31,7 +34,7 @@ function TextInputWithMask(_ref, ref) {
|
|
|
31
34
|
const format = maskParts[0].toLowerCase() + splitCharacter + maskParts[1].toLowerCase() + splitCharacter + maskParts[2].toLowerCase();
|
|
32
35
|
const match = new RegExp(format.replace(/(\w+)\W(\w+)\W(\w+)/, '^\\s*($1)\\W*($2)?\\W*($3)?([0-9]*).*').replace(/m|d|y/g, '\\d'));
|
|
33
36
|
const replaceValue = format.match(/\W/);
|
|
34
|
-
const replace = `$1${splitCharacter}$2${splitCharacter}$3$4`.replace(new RegExp(splitCharacter, 'g'), replaceValue ?? '');
|
|
37
|
+
const replace = `$1${splitCharacter}$2${splitCharacter}$3$4`.replace(new RegExp(escapeForRegExp(splitCharacter), 'g'), replaceValue ?? '');
|
|
35
38
|
const isBackSpace = controlledValue.length > trimmedText.length;
|
|
36
39
|
if (!isBackSpace) {
|
|
37
40
|
trimmedText = trimmedText.replace(/(^|\W)(?=\d\W)/g, '$10').replace(match, replace).replace(/(\W)+/g, '$1');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNativePaper","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","splitCharacters","detectCharacter","mask","c","find","ch","includes","TextInputWithMask","_ref","ref","onChangeText","onChange","
|
|
1
|
+
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNativePaper","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","splitCharacters","detectCharacter","mask","c","find","ch","includes","escapeForRegExp","value","replace","TextInputWithMask","_ref","ref","onChangeText","onChange","disabled","rest","controlledValue","setControlledValue","useState","onInnerChange","text","splitCharacter","maskParts","split","trimmedText","trim","format","toLowerCase","match","RegExp","replaceValue","isBackSpace","useEffect","createElement","TextInput","e","maxLength","_default","forwardRef","exports"],"sourceRoot":"../../src","sources":["TextInputMask.tsx"],"mappings":"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"}
|
|
@@ -6,6 +6,9 @@ function detectCharacter(mask) {
|
|
|
6
6
|
const c = splitCharacters.find(ch => mask.includes(ch));
|
|
7
7
|
return c || '';
|
|
8
8
|
}
|
|
9
|
+
function escapeForRegExp(value) {
|
|
10
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
11
|
+
}
|
|
9
12
|
function TextInputWithMask(_ref, ref) {
|
|
10
13
|
let {
|
|
11
14
|
onChangeText,
|
|
@@ -23,7 +26,7 @@ function TextInputWithMask(_ref, ref) {
|
|
|
23
26
|
const format = maskParts[0].toLowerCase() + splitCharacter + maskParts[1].toLowerCase() + splitCharacter + maskParts[2].toLowerCase();
|
|
24
27
|
const match = new RegExp(format.replace(/(\w+)\W(\w+)\W(\w+)/, '^\\s*($1)\\W*($2)?\\W*($3)?([0-9]*).*').replace(/m|d|y/g, '\\d'));
|
|
25
28
|
const replaceValue = format.match(/\W/);
|
|
26
|
-
const replace = `$1${splitCharacter}$2${splitCharacter}$3$4`.replace(new RegExp(splitCharacter, 'g'), replaceValue ?? '');
|
|
29
|
+
const replace = `$1${splitCharacter}$2${splitCharacter}$3$4`.replace(new RegExp(escapeForRegExp(splitCharacter), 'g'), replaceValue ?? '');
|
|
27
30
|
const isBackSpace = controlledValue.length > trimmedText.length;
|
|
28
31
|
if (!isBackSpace) {
|
|
29
32
|
trimmedText = trimmedText.replace(/(^|\W)(?=\d\W)/g, '$10').replace(match, replace).replace(/(\W)+/g, '$1');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","TextInput","splitCharacters","detectCharacter","mask","c","find","ch","includes","TextInputWithMask","_ref","ref","onChangeText","onChange","
|
|
1
|
+
{"version":3,"names":["React","TextInput","splitCharacters","detectCharacter","mask","c","find","ch","includes","escapeForRegExp","value","replace","TextInputWithMask","_ref","ref","onChangeText","onChange","disabled","rest","controlledValue","setControlledValue","useState","onInnerChange","text","splitCharacter","maskParts","split","trimmedText","trim","format","toLowerCase","match","RegExp","replaceValue","isBackSpace","length","useEffect","createElement","_extends","e","maxLength","forwardRef"],"sourceRoot":"../../src","sources":["TextInputMask.tsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInputMask.d.ts","sourceRoot":"","sources":["../../src/TextInputMask.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"TextInputMask.d.ts","sourceRoot":"","sources":["../../src/TextInputMask.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqF9B,wBAAkD"}
|
package/package.json
CHANGED
package/src/TextInputMask.tsx
CHANGED
|
@@ -7,6 +7,10 @@ function detectCharacter(mask: string): string {
|
|
|
7
7
|
return c || ''
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
+
function escapeForRegExp(value: string): string {
|
|
11
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
|
|
12
|
+
}
|
|
13
|
+
|
|
10
14
|
function TextInputWithMask(
|
|
11
15
|
{
|
|
12
16
|
onChangeText,
|
|
@@ -40,7 +44,7 @@ function TextInputWithMask(
|
|
|
40
44
|
)
|
|
41
45
|
const replaceValue = format.match(/\W/)
|
|
42
46
|
const replace = `$1${splitCharacter}$2${splitCharacter}$3$4`.replace(
|
|
43
|
-
new RegExp(splitCharacter, 'g'),
|
|
47
|
+
new RegExp(escapeForRegExp(splitCharacter), 'g'),
|
|
44
48
|
(replaceValue ?? '') as string
|
|
45
49
|
)
|
|
46
50
|
|