import path from 'node:path';
import { defineConfig } from 'prisma/config';

// Use DATABASE_URL_DIRECT (bypasses PgBouncer) for migrations/introspection
// when available; fall back to DATABASE_URL for local dev without PgBouncer.
import 'dotenv/config';

const databaseUrl =
  process.env.DATABASE_URL_DIRECT || process.env.DATABASE_URL!;

export default defineConfig({
  earlyAccess: true,
  schema: path.join(__dirname, 'schema.prisma'),
  // Prisma 7 requires datasource.url for db push, migrate deploy, etc.
  datasource: {
    url: databaseUrl,
  },
  // Seed command — Prisma 7 reads this from config instead of package.json
  migrations: {
    seed: 'tsx prisma/seed.ts',
  },
});
