/**
 * Gửi email dùng chung (đặt lại mật khẩu, v.v.) — tách khỏi `notify.ts` vì kênh
 * đó chỉ gửi bản tin cảnh báo tới một địa chỉ cố định (ALERT_EMAIL_TO), còn ở
 * đây cần gửi tới địa chỉ của từng người dùng.
 *
 * Cùng nguyên tắc "kênh thiếu cấu hình thì tự bỏ qua" như `notify.ts`: chưa khai
 * báo SMTP_URL thì trả về false thay vì lỗi, để môi trường demo/dev vẫn chạy
 * được toàn bộ luồng mà không cần SMTP thật.
 */
import "server-only";

export async function sendEmail(to: string, subject: string, text: string): Promise<boolean> {
  if (!process.env.SMTP_URL) return false;

  const { createTransport } = await import("nodemailer");
  const transport = createTransport(process.env.SMTP_URL);
  await transport.sendMail({
    from: process.env.SMTP_FROM || "CRM <no-reply@crm.local>",
    to,
    subject,
    text,
  });
  return true;
}
