@@ -73,63 +73,66 @@ define([
73
73
] ,
74
74
'max-words' : [
75
75
function ( value , params ) {
76
- return utils . stripHtml ( value ) . match ( / \b \w + \b / g) . length < params ;
76
+ return utils . isEmpty ( value ) || utils . stripHtml ( value ) . match ( / \b \w + \b / g) . length < params ;
77
77
} ,
78
78
$ . mage . __ ( 'Please enter {0} words or less.' )
79
79
] ,
80
80
'min-words' : [
81
81
function ( value , params ) {
82
- return utils . stripHtml ( value ) . match ( / \b \w + \b / g) . length >= params ;
82
+ return utils . isEmpty ( value ) || utils . stripHtml ( value ) . match ( / \b \w + \b / g) . length >= params ;
83
83
} ,
84
84
$ . mage . __ ( 'Please enter at least {0} words.' )
85
85
] ,
86
86
'range-words' : [
87
87
function ( value , params ) {
88
88
var match = utils . stripHtml ( value ) . match ( / \b \w + \b / g) || [ ] ;
89
89
90
- return match . length >= params [ 0 ] &&
90
+ return utils . isEmpty ( value ) || match . length >= params [ 0 ] &&
91
91
match . length <= params [ 1 ] ;
92
92
} ,
93
93
$ . mage . __ ( 'Please enter between {0} and {1} words.' )
94
94
] ,
95
95
'letters-with-basic-punc' : [
96
96
function ( value ) {
97
- return / ^ [ a - z \- . , ( ) \u0027 \u0022 \s ] + $ / i. test ( value ) ;
97
+ return utils . isEmpty ( value ) || / ^ [ a - z \- . , ( ) \u0027 \u0022 \s ] + $ / i. test ( value ) ;
98
98
} ,
99
99
$ . mage . __ ( 'Letters or punctuation only please' )
100
100
] ,
101
101
'alphanumeric' : [
102
102
function ( value ) {
103
- return / ^ \w + $ / i. test ( value ) ;
103
+ return utils . isEmpty ( value ) || / ^ \w + $ / i. test ( value ) ;
104
104
} ,
105
105
$ . mage . __ ( 'Letters, numbers, spaces or underscores only please' )
106
106
] ,
107
107
'letters-only' : [
108
108
function ( value ) {
109
- return / ^ [ a - z ] + $ / i. test ( value ) ;
109
+ return utils . isEmpty ( value ) || / ^ [ a - z ] + $ / i. test ( value ) ;
110
110
} ,
111
111
$ . mage . __ ( 'Letters only please' )
112
112
] ,
113
113
'no-whitespace' : [
114
114
function ( value ) {
115
- return / ^ \S + $ / i. test ( value ) ;
115
+ return utils . isEmpty ( value ) || / ^ \S + $ / i. test ( value ) ;
116
116
} ,
117
117
$ . mage . __ ( 'No white space please' )
118
118
] ,
119
119
'zip-range' : [
120
120
function ( value ) {
121
- return / ^ 9 0 [ 2 - 5 ] - \d { 2 } - \d { 4 } $ / . test ( value ) ;
121
+ return utils . isEmpty ( value ) || / ^ 9 0 [ 2 - 5 ] - \d { 2 } - \d { 4 } $ / . test ( value ) ;
122
122
} ,
123
123
$ . mage . __ ( 'Your ZIP-code must be in the range 902xx-xxxx to 905-xx-xxxx' )
124
124
] ,
125
125
'integer' : [
126
126
function ( value ) {
127
- return / ^ - ? \d + $ / . test ( value ) ;
127
+ return utils . isEmpty ( value ) || / ^ - ? \d + $ / . test ( value ) ;
128
128
} ,
129
129
$ . mage . __ ( 'A positive or negative non-decimal number please' )
130
130
] ,
131
131
'vinUS' : [
132
132
function ( value ) {
133
+ if ( utils . isEmpty ( value ) ) {
134
+ return true ;
135
+ }
133
136
if ( value . length !== 17 ) {
134
137
return false ;
135
138
}
@@ -215,33 +218,33 @@ define([
215
218
] ,
216
219
'time' : [
217
220
function ( value ) {
218
- return / ^ ( [ 0 1 ] \d | 2 [ 0 - 3 ] ) ( : [ 0 - 5 ] \d ) { 0 , 2 } $ / . test ( value ) ;
221
+ return utils . isEmpty ( value ) || / ^ ( [ 0 1 ] \d | 2 [ 0 - 3 ] ) ( : [ 0 - 5 ] \d ) { 0 , 2 } $ / . test ( value ) ;
219
222
} ,
220
223
$ . mage . __ ( 'Please enter a valid time, between 00:00 and 23:59' )
221
224
] ,
222
225
'time12h' : [
223
226
function ( value ) {
224
- return / ^ ( ( 0 ? [ 1 - 9 ] | 1 [ 0 1 2 ] ) ( : [ 0 - 5 ] \d ) { 0 , 2 } ( \ [ A P ] M ) ) $ / i. test ( value ) ;
227
+ return utils . isEmpty ( value ) || / ^ ( ( 0 ? [ 1 - 9 ] | 1 [ 0 1 2 ] ) ( : [ 0 - 5 ] \d ) { 0 , 2 } ( \ [ A P ] M ) ) $ / i. test ( value ) ;
225
228
} ,
226
229
$ . mage . __ ( 'Please enter a valid time, between 00:00 am and 12:00 pm' )
227
230
] ,
228
231
'phoneUS' : [
229
232
function ( value ) {
230
233
value = value . replace ( / \s + / g, '' ) ;
231
234
232
- return value . length > 9 && value . match ( / ^ ( 1 - ? ) ? ( \( [ 2 - 9 ] \d { 2 } \) | [ 2 - 9 ] \d { 2 } ) - ? [ 2 - 9 ] \d { 2 } - ? \d { 4 } $ / ) ;
235
+ return utils . isEmpty ( value ) || value . length > 9 && value . match ( / ^ ( 1 - ? ) ? ( \( [ 2 - 9 ] \d { 2 } \) | [ 2 - 9 ] \d { 2 } ) - ? [ 2 - 9 ] \d { 2 } - ? \d { 4 } $ / ) ;
233
236
} ,
234
237
$ . mage . __ ( 'Please specify a valid phone number' )
235
238
] ,
236
239
'phoneUK' : [
237
240
function ( value ) {
238
- return value . length > 9 && value . match ( / ^ ( \( ? ( 0 | \+ 4 4 ) [ 1 - 9 ] { 1 } \d { 1 , 4 } ?\) ? \s ? \d { 3 , 4 } \s ? \d { 3 , 4 } ) $ / ) ;
241
+ return utils . isEmpty ( value ) || value . length > 9 && value . match ( / ^ ( \( ? ( 0 | \+ 4 4 ) [ 1 - 9 ] { 1 } \d { 1 , 4 } ?\) ? \s ? \d { 3 , 4 } \s ? \d { 3 , 4 } ) $ / ) ;
239
242
} ,
240
243
$ . mage . __ ( 'Please specify a valid phone number' )
241
244
] ,
242
245
'mobileUK' : [
243
246
function ( value ) {
244
- return value . length > 9 && value . match ( / ^ ( ( 0 | \+ 4 4 ) 7 \d { 3 } \s ? \d { 6 } ) $ / ) ;
247
+ return utils . isEmpty ( value ) || value . length > 9 && value . match ( / ^ ( ( 0 | \+ 4 4 ) 7 \d { 3 } \s ? \d { 6 } ) $ / ) ;
245
248
} ,
246
249
$ . mage . __ ( 'Please specify a valid mobile number' )
247
250
] ,
@@ -253,20 +256,23 @@ define([
253
256
] ,
254
257
'email2' : [
255
258
function ( value ) {
256
- return / ^ ( ( ( [ a - z ] | \d | [ ! # \$ % & \u0027 \* \+ \- \/ = \? \^ _ ` { \| } ~ ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) + ( \. ( [ a - z ] | \d | [ ! # \$ % & \u0027 \* \+ \- \/ = \? \^ _ ` { \| } ~ ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) + ) * ) | ( ( \u0022 ) ( ( ( ( \x20 | \x09 ) * ( \x0d \x0a ) ) ? ( \x20 | \x09 ) + ) ? ( ( [ \x01 - \x08 \x0b \x0c \x0e - \x1f \x7f ] | \x21 | [ \x23 - \x5b ] | [ \x5d - \x7e ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( \\ ( [ \x01 - \x09 \x0b \x0c \x0d - \x7f ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) ) * ( ( ( \x20 | \x09 ) * ( \x0d \x0a ) ) ? ( \x20 | \x09 ) + ) ? ( \u0022 ) ) ) @ ( ( ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) * ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) \. ) * ( ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) * ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) \. ? $ / i. test ( value ) ; //eslint-disable-line max-len
259
+ return utils . isEmpty ( value ) || / ^ ( ( ( [ a - z ] | \d | [ ! # \$ % & \u0027 \* \+ \- \/ = \? \^ _ ` { \| } ~ ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) + ( \. ( [ a - z ] | \d | [ ! # \$ % & \u0027 \* \+ \- \/ = \? \^ _ ` { \| } ~ ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) + ) * ) | ( ( \u0022 ) ( ( ( ( \x20 | \x09 ) * ( \x0d \x0a ) ) ? ( \x20 | \x09 ) + ) ? ( ( [ \x01 - \x08 \x0b \x0c \x0e - \x1f \x7f ] | \x21 | [ \x23 - \x5b ] | [ \x5d - \x7e ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( \\ ( [ \x01 - \x09 \x0b \x0c \x0d - \x7f ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) ) * ( ( ( \x20 | \x09 ) * ( \x0d \x0a ) ) ? ( \x20 | \x09 ) + ) ? ( \u0022 ) ) ) @ ( ( ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) * ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) \. ) * ( ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) * ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) \. ? $ / i. test ( value ) ; //eslint-disable-line max-len
257
260
} ,
258
261
$ . validator . messages . email
259
262
] ,
260
263
'url2' : [
261
264
function ( value ) {
262
- return / ^ ( h t t p s ? | f t p ) : \/ \/ ( ( ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : ) * @ ) ? ( ( ( \d | [ 1 - 9 ] \d | 1 \d \d | 2 [ 0 - 4 ] \d | 2 5 [ 0 - 5 ] ) \. ( \d | [ 1 - 9 ] \d | 1 \d \d | 2 [ 0 - 4 ] \d | 2 5 [ 0 - 5 ] ) \. ( \d | [ 1 - 9 ] \d | 1 \d \d | 2 [ 0 - 4 ] \d | 2 5 [ 0 - 5 ] ) \. ( \d | [ 1 - 9 ] \d | 1 \d \d | 2 [ 0 - 4 ] \d | 2 5 [ 0 - 5 ] ) ) | ( ( ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) * ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) \. ) * ( ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) * ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) \. ? ) ( : \d * ) ? ) ( \/ ( ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : | @ ) + ( \/ ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : | @ ) * ) * ) ? ) ? ( \? ( ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : | @ ) | [ \uE000 - \uF8FF ] | \/ | \? ) * ) ? ( \# ( ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : | @ ) | \/ | \? ) * ) ? $ / i. test ( value ) ; //eslint-disable-line max-len
265
+ return utils . isEmpty ( value ) || / ^ ( h t t p s ? | f t p ) : \/ \/ ( ( ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : ) * @ ) ? ( ( ( \d | [ 1 - 9 ] \d | 1 \d \d | 2 [ 0 - 4 ] \d | 2 5 [ 0 - 5 ] ) \. ( \d | [ 1 - 9 ] \d | 1 \d \d | 2 [ 0 - 4 ] \d | 2 5 [ 0 - 5 ] ) \. ( \d | [ 1 - 9 ] \d | 1 \d \d | 2 [ 0 - 4 ] \d | 2 5 [ 0 - 5 ] ) \. ( \d | [ 1 - 9 ] \d | 1 \d \d | 2 [ 0 - 4 ] \d | 2 5 [ 0 - 5 ] ) ) | ( ( ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) * ( [ a - z ] | \d | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) \. ) * ( ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) * ( [ a - z ] | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) ) ) \. ? ) ( : \d * ) ? ) ( \/ ( ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : | @ ) + ( \/ ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : | @ ) * ) * ) ? ) ? ( \? ( ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : | @ ) | [ \uE000 - \uF8FF ] | \/ | \? ) * ) ? ( \# ( ( ( [ a - z ] | \d | - | \. | _ | ~ | [ \u00A0 - \uD7FF \uF900 - \uFDCF \uFDF0 - \uFFEF ] ) | ( % [ \d a - f ] { 2 } ) | [ ! \$ & \u0027 \( \) \* \+ , ; = ] | : | @ ) | \/ | \? ) * ) ? $ / i. test ( value ) ; //eslint-disable-line max-len
263
266
} ,
264
267
$ . validator . messages . url
265
268
] ,
266
269
'credit-card-types' : [
267
270
function ( value , param ) {
268
271
var validTypes ;
269
272
273
+ if ( utils . isEmpty ( value ) ) {
274
+ return true ;
275
+ }
270
276
if ( / [ ^ 0 - 9 - ] + / . test ( value ) ) {
271
277
return false ;
272
278
}
@@ -351,19 +357,19 @@ define([
351
357
] ,
352
358
'ipv4' : [
353
359
function ( value ) {
354
- return / ^ ( 2 5 [ 0 - 5 ] | 2 [ 0 - 4 ] [ 0 - 9 ] | [ 0 1 ] ? [ 0 - 9 ] [ 0 - 9 ] ? ) \. ( 2 5 [ 0 - 5 ] | 2 [ 0 - 4 ] [ 0 - 9 ] | [ 0 1 ] ? [ 0 - 9 ] [ 0 - 9 ] ? ) \. ( 2 5 [ 0 - 5 ] | 2 [ 0 - 4 ] [ 0 - 9 ] | [ 0 1 ] ? [ 0 - 9 ] [ 0 - 9 ] ? ) \. ( 2 5 [ 0 - 5 ] | 2 [ 0 - 4 ] [ 0 - 9 ] | [ 0 1 ] ? [ 0 - 9 ] [ 0 - 9 ] ? ) $ / i. test ( value ) ; //eslint-disable-line max-len
360
+ return utils . isEmpty ( value ) || / ^ ( 2 5 [ 0 - 5 ] | 2 [ 0 - 4 ] [ 0 - 9 ] | [ 0 1 ] ? [ 0 - 9 ] [ 0 - 9 ] ? ) \. ( 2 5 [ 0 - 5 ] | 2 [ 0 - 4 ] [ 0 - 9 ] | [ 0 1 ] ? [ 0 - 9 ] [ 0 - 9 ] ? ) \. ( 2 5 [ 0 - 5 ] | 2 [ 0 - 4 ] [ 0 - 9 ] | [ 0 1 ] ? [ 0 - 9 ] [ 0 - 9 ] ? ) \. ( 2 5 [ 0 - 5 ] | 2 [ 0 - 4 ] [ 0 - 9 ] | [ 0 1 ] ? [ 0 - 9 ] [ 0 - 9 ] ? ) $ / i. test ( value ) ; //eslint-disable-line max-len
355
361
} ,
356
362
$ . mage . __ ( 'Please enter a valid IP v4 address.' )
357
363
] ,
358
364
'ipv6' : [
359
365
function ( value ) {
360
- return / ^ ( ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 7 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 6 } : [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 5 } : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) ? [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 4 } : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 2 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 3 } : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 3 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 2 } : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 4 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 6 } ( ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) \. ) { 3 } ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 5 } : ( ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) \. ) { 3 } ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) ) | ( : : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 5 } ( ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) \. ) { 3 } ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) ) | ( [ 0 - 9 A - F a - f ] { 1 , 4 } : : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 5 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( : : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 6 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 1 , 7 } : ) ) $ / i. test ( value ) ; //eslint-disable-line max-len
366
+ return utils . isEmpty ( value ) || / ^ ( ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 7 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 6 } : [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 5 } : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) ? [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 4 } : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 2 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 3 } : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 3 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 2 } : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 4 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 6 } ( ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) \. ) { 3 } ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 5 } : ( ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) \. ) { 3 } ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) ) | ( : : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 5 } ( ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) \. ) { 3 } ( \b ( ( 2 5 [ 0 - 5 ] ) | ( 1 \d { 2 } ) | ( 2 [ 0 - 4 ] \d ) | ( \d { 1 , 2 } ) ) \b ) ) | ( [ 0 - 9 A - F a - f ] { 1 , 4 } : : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 5 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( : : ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 0 , 6 } [ 0 - 9 A - F a - f ] { 1 , 4 } ) | ( ( [ 0 - 9 A - F a - f ] { 1 , 4 } : ) { 1 , 7 } : ) ) $ / i. test ( value ) ; //eslint-disable-line max-len
361
367
} ,
362
368
$ . mage . __ ( 'Please enter a valid IP v6 address.' )
363
369
] ,
364
370
'pattern' : [
365
371
function ( value , param ) {
366
- return new RegExp ( param ) . test ( value ) ;
372
+ return utils . isEmpty ( value ) || new RegExp ( param ) . test ( value ) ;
367
373
} ,
368
374
$ . mage . __ ( 'Invalid format.' )
369
375
] ,
@@ -845,7 +851,7 @@ define([
845
851
return validateCreditCard ( value ) ;
846
852
}
847
853
848
- return false ;
854
+ return true ;
849
855
} ,
850
856
$ . mage . __ ( 'Please enter a valid credit card number.' )
851
857
] ,
@@ -886,10 +892,14 @@ define([
886
892
] ,
887
893
'validate-per-page-value-list' : [
888
894
function ( value ) {
889
- var isValid = ! utils . isEmpty ( value ) ,
895
+ var isValid = utils . isEmpty ( value ) ,
890
896
values = value . split ( ',' ) ,
891
897
i ;
892
898
899
+ if ( isValid ) {
900
+ return true ;
901
+ }
902
+
893
903
for ( i = 0 ; i < values . length ; i ++ ) {
894
904
if ( ! / ^ [ 0 - 9 ] + $ / . test ( values [ i ] ) ) {
895
905
isValid = false ;
0 commit comments