import nodemailer from 'nodemailer'

function hasSmtpEnv() {
  return Boolean(process.env.SMTP_HOST && process.env.SMTP_PORT && process.env.SMTP_USER && process.env.SMTP_PASS)
}

export async function sendLoginCodeEmail({ to, code }) {
  if (!hasSmtpEnv()) {
    // dev fallback
    console.log(`[DEV] login code for ${to}: ${code}`)
    return
  }

  const transporter = nodemailer.createTransport({
    host: process.env.SMTP_HOST,
    port: Number(process.env.SMTP_PORT),
    secure: process.env.SMTP_SECURE === 'true',
    auth: {
      user: process.env.SMTP_USER,
      pass: process.env.SMTP_PASS,
    },
  })

  const from = process.env.MAIL_FROM || process.env.SMTP_USER

  await transporter.sendMail({
    from,
    to,
    subject: 'Код входа',
    text: `Ваш код: ${code}\n\nЕсли это были не вы — просто проигнорируйте письмо.`,
  })
}

