/** * Seed: npm run seed | Sıfırlayıp doldurma: npm run seed:reset (production'da reddedilir) * * Oluşturulanlar: admin (SEED_ADMIN_*), 7 örnek kullanıcı (biri askıda, biri ikinci admin), * 2 hane ve hane içi rolleri. Ayrıntı: scripts/seed/fixtures.ts * `server-only` modülleri Next dışında yükleyebilmek için --conditions=react-server ile çalışır. */ import { getMongoClient } from "@/lib/db/mongo"; import { env } from "@/lib/env"; import { closeSeedConnections, runSeed } from "./seed/run"; async function main() { const summary = await runSeed({ reset: process.argv.includes("--reset") }); const { users, households, memberships, categories, accounts, transactions } = summary.created; console.log( `\nOluşturulan: ${users} kullanıcı, ${households} hane, ${memberships} üyelik, ${categories} kategori, ${accounts} hesap, ${transactions} işlem.`, ); // Hesap tablosu yalnızca geliştirme ortamında gösterilir. if (env().NODE_ENV !== "production" && summary.accounts.length) { console.log( "\nGeliştirme hesapları (şifreler: admin → SEED_ADMIN_PASSWORD, diğerleri → SEED_USER_PASSWORD):", ); console.table(summary.accounts); } } main() .catch((err: unknown) => { console.error(err instanceof Error ? err.message : err); process.exitCode = 1; }) .finally(async () => { await closeSeedConnections(); await getMongoClient().close(); });