UNPKG

nuxt-mail

Version:

Adds email sending capability to a Nuxt.js app. Adds a server route, an injected variable, and uses nodemailer to send emails.

21 lines 683 B
import { createError, defineEventHandler, readBody } from "h3"; import nodemailer from "nodemailer"; import { useRuntimeConfig } from "#imports"; import normalizeOptions from "./normalize-options.js"; import send from "./send.js"; const options = normalizeOptions(useRuntimeConfig().mail); let transport = null; export default defineEventHandler(async event => { if (!transport) { transport = nodemailer.createTransport(options.smtp); } try { await send(await readBody(event), options, transport); } catch (error) { throw createError({ statusCode: 500, statusMessage: error instanceof Error ? error.message : String(error) }); } return ""; });