Skip to content

Commit

Permalink
feat(@yourssu/utils): change isEmail to return boolean value
Browse files Browse the repository at this point in the history
  • Loading branch information
owl1753 committed Sep 3, 2024
1 parent e6323b8 commit d63976a
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 14 deletions.
5 changes: 5 additions & 0 deletions .changeset/good-boats-fetch.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@yourssu/utils': minor
---

change isEmail to return boolean value
22 changes: 8 additions & 14 deletions packages/utils/src/isEmail.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,13 @@
export const isEmail = (email: string, domain?: string) => {
const regFull =
/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
if (regFull.test(String(email).toLowerCase())) {
return email;
export const isEmail = (email: string, domain?: string): boolean => {
if (!domain) {
const regFull =
/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

return regFull.test(String(email).toLowerCase());
}

const regHalf = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))$/;
const regHalf = /^(([^<>()[\]\\.,;:\s@"]+(\[^<>()[\]\\.,;:\s@"]+)*)|(".+"))$/;
const refDomain =
/^@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

if (domain) {
if (regHalf.test(String(email).toLowerCase()) && refDomain.test(String(domain).toLowerCase())) {
return email + domain;
}
}

throw new Error('given value is not valid');
return regHalf.test(String(email).toLowerCase()) && refDomain.test(String(domain).toLowerCase());
};

0 comments on commit d63976a

Please sign in to comment.