import { readFileSync } from 'node:fs' import { resolve } from 'node:path' import { defineConfig } from 'drizzle-kit' // Load .env.local (avoids @next/env dependency for drizzle-kit) for (const envFile of ['.env.local', '.env']) { try { const content = readFileSync(resolve(process.cwd(), envFile), 'utf-8') for (const line of content.split('\n')) { const trimmed = line.trim() if (!trimmed || trimmed.startsWith('#')) continue const eqIdx = trimmed.indexOf('=') if (eqIdx === -1) continue const key = trimmed.slice(0, eqIdx).trim() const val = trimmed .slice(eqIdx + 1) .trim() .replace(/^['"]|['"]$/g, '') if (!process.env[key]) process.env[key] = val } } catch {} } const databaseUrl = process.env.DATABASE_URL if (!databaseUrl) { throw new Error('DATABASE_URL is required') } export default defineConfig({ out: './admin/lib/db/migrations', schema: './admin/lib/db/schema.ts', dialect: 'postgresql', dbCredentials: { url: databaseUrl } })