feat: update package.json scripts and add prisma seed command

refactor: improve refresh-sessions API handler for better readability and error handling

fix: enhance NextAuth configuration with session token handling and cookie settings

chore: update dashboard API handlers for consistency and improved error responses

style: format dashboard API routes for better readability

feat: implement forgot password and reset password functionality with security improvements

feat: add user registration API with email existence check and initial company creation

chore: create initial database migration and seed script for demo data

style: clean up PostCSS and Tailwind CSS configuration files

fix: update TypeScript configuration for stricter type checking

chore: add development environment variables for NextAuth

feat: create Providers component for session management in the app

chore: initialize Prisma migration and seed files for database setup
This commit is contained in:
2025-05-21 21:41:07 +02:00
parent b6b67dcd78
commit 50b2fbda55
42 changed files with 8233 additions and 7627 deletions

39
prisma/seed.js Normal file
View File

@ -0,0 +1,39 @@
// seed.js - Create initial admin user and company
import { PrismaClient } from '@prisma/client';
import bcrypt from 'bcryptjs';
const prisma = new PrismaClient();
async function main() {
// Create a company
const company = await prisma.company.create({
data: {
name: 'Demo Company',
csvUrl: 'https://example.com/data.csv', // Replace with a real URL if available
}
});
// Create an admin user
const hashedPassword = await bcrypt.hash('admin123', 10);
await prisma.user.create({
data: {
email: 'admin@demo.com',
password: hashedPassword,
role: 'admin',
companyId: company.id
}
});
console.log('Seed data created successfully:');
console.log('Company: Demo Company');
console.log('Admin user: admin@demo.com (password: admin123)');
}
main()
.catch(e => {
console.error('Error seeding database:', e);
process.exit(1);
})
.finally(async () => {
await prisma.$disconnect();
});