Skip to content

Commit 7a56ecd

Browse files
committed
fix(isMobilePhone): fix es-PA regex to validate only Panamanian mobile numbers
The previous regex /^(\+?507)\d{7,8}$/ was too permissive: - Allowed any starting digit after country code (should be 6 for mobile) - Accepted 7 or 8 digit lengths (mobile must be exactly 8 digits) - Did not support hyphenated format (6XXX-XXXX) The new regex /^(\+?507)6\d{3}-?\d{4}$/ enforces: - Mobile numbers must start with 6 - Exactly 8 digits after country code - Optional hyphen in 6XXX-XXXX format References: - https://en.wikipedia.org/wiki/Telephone_numbers_in_Panama - Panamanian mobile numbers: +507 6XXX-XXXX Fixes #2433
1 parent 9fa1e3a commit 7a56ecd

2 files changed

Lines changed: 10 additions & 5 deletions

File tree

src/lib/isMobilePhone.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ const phones = {
8888
'es-PE': /^(\+?51)?9\d{8}$/,
8989
'es-MX': /^(\+?52)?(1|01)?\d{10,11}$/,
9090
'es-NI': /^(\+?505)\d{7,8}$/,
91-
'es-PA': /^(\+?507)\d{7,8}$/,
91+
'es-PA': /^(\+?507)6\d{3}-?\d{4}$/,
9292
'es-PY': /^(\+?595|0)9[9876]\d{7}$/,
9393
'es-SV': /^(\+?503)?[67]\d{7}$/,
9494
'es-UY': /^(\+598|0)9[1-9][\d]{6}$/,

test/validators.test.js

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9588,17 +9588,22 @@ describe('Validators', () => {
95889588
{
95899589
locale: 'es-PA',
95909590
valid: [
9591-
'+5076784565',
9592-
'+5074321557',
9593-
'5073331112',
9594-
'+50723431212',
9591+
'+50761234567',
9592+
'+50768456789',
9593+
'50762345678',
9594+
'+5076123-4567',
9595+
'+50769876543',
95959596
],
95969597
invalid: [
95979598
'+50755555',
95989599
'+207123456',
95999600
'2001236542',
96009601
'+507987643254',
96019602
'+507jjjghtf',
9603+
'+50712345678',
9604+
'+5073456789',
9605+
'+507234312',
9606+
'+50751234567',
96029607
],
96039608
},
96049609
{

0 commit comments

Comments
 (0)