Value Objects
Scenario
We've been working on email logic for a Software-as-a-Service (SaaS) product. Lately, working with this part of the code base has caused inadvertent bugs to appear.
We've decided that now is a good time to reach in, clean it up, and improve its overall quality.
From a high-level perspective, our code is checking whether an email address is sent to a specific internal domain (such as internal-company.com). If the username (that is, the email address' local-part) is info, then we send the email to our internal customer support team. Otherwise, we just send it to the intended recipient.
Here's our code:
const domain: string = email.replace(/.*@/, ""); const userName = email.replace(domain, ""); const sendInternal: boolean = domain === "internal-company.com"; if(sendInternal) { if(userName === "info") { mailer.sendToCustomerServiceTeam(email, message); } else { mailer...