diff --git a/src/components/molecules/EmailForm.svelte b/src/components/molecules/EmailForm.svelte index 94e63a9..4fb407b 100644 --- a/src/components/molecules/EmailForm.svelte +++ b/src/components/molecules/EmailForm.svelte @@ -32,7 +32,7 @@ const formData = new FormData(target) const email = String(formData.get('email')) - if (email && email.match(/^([\w.-])+@([\w.-])+\.([a-zA-Z])+/)) { + if (email && email.match(/^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/)) { const req = await fetch('/api/newsletter', { method: 'POST', headers: { 'Content-Type': 'text/plain' }, @@ -94,7 +94,8 @@

{formMessages[formStatus]}

diff --git a/src/routes/api/newsletter/+server.ts b/src/routes/api/newsletter/+server.ts index 9bc9ffb..c2e4151 100644 --- a/src/routes/api/newsletter/+server.ts +++ b/src/routes/api/newsletter/+server.ts @@ -18,9 +18,9 @@ export const POST: RequestHandler = async ({ request }) => { }) const res = await req.json() - if (res && res.email_address && res.status === 'PENDING') { + if (res) { return new Response(JSON.stringify({ - code: 'PENDING' + code: res.error ? res.error.code : res.status })) } }