File tree 2 files changed +12
-0
lines changed
2 files changed +12
-0
lines changed Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ const default_email_options = {
10
10
allow_underscores : false ,
11
11
require_display_name : false ,
12
12
allow_utf8_local_part : true ,
13
+ allow_idn : false ,
13
14
require_tld : true ,
14
15
blacklisted_chars : '' ,
15
16
ignore_max_length : false ,
@@ -144,11 +145,16 @@ export default function isEmail(str, options) {
144
145
require_tld : options . require_tld ,
145
146
ignore_max_length : options . ignore_max_length ,
146
147
allow_underscores : options . allow_underscores ,
148
+ allow_idn : options . allow_idn ,
147
149
} ) ) {
148
150
if ( ! options . allow_ip_domain ) {
149
151
return false ;
150
152
}
151
153
154
+ if ( ! options . allow_idn ) {
155
+ return false ;
156
+ }
157
+
152
158
if ( ! isIP ( domain ) ) {
153
159
if ( ! domain . startsWith ( '[' ) || ! domain . endsWith ( ']' ) ) {
154
160
return false ;
Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ const default_fqdn_options = {
7
7
allow_trailing_dot : false ,
8
8
allow_numeric_tld : false ,
9
9
allow_wildcard : false ,
10
+ allow_idn : false ,
10
11
ignore_max_length : false ,
11
12
} ;
12
13
@@ -71,6 +72,11 @@ export default function isFQDN(str, options) {
71
72
return false ;
72
73
}
73
74
75
+ // verify if domain is IDN
76
+ if ( ! options . allow_idn && ! / ^ [ a - z 0 - 9 - ] + $ / i. test ( part ) ) {
77
+ return false ;
78
+ }
79
+
74
80
return true ;
75
81
} ) ;
76
82
}
You can’t perform that action at this time.
0 commit comments