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