import 'dotenv/config';
import bcrypt from 'bcryptjs';
import { pool } from '../config/db.js';

const users = [
  { name: 'Dev', email: 'dev@mail.com', password: 'developer', role: 'user' },
  { name: 'Admin', email: 'admin@mail.com', password: 'Admin@12345', role: 'admin' },
];

async function seed() {
  for (const u of users) {
    const passwordHash = await bcrypt.hash(u.password, 10);
    await pool.query(
      `INSERT INTO users (name, email, password_hash, role)
       VALUES (?, ?, ?, ?)
       ON DUPLICATE KEY UPDATE name = VALUES(name), password_hash = VALUES(password_hash), role = VALUES(role)`,
      [u.name, u.email, passwordHash, u.role],
    );
    console.log(`Seeded ${u.email}`);
  }
  await pool.end();
}

seed().catch((err) => {
  console.error(err);
  process.exit(1);
});
