import { config } from "dotenv"; config({ path: ".env.local" }); async function main() { const { db } = await import("@/lib/db"); const { getAccountTypeLabel, getActivateStatusLabel, getRequestStatusLabel } = await import("@/lib/utils"); const [maestroCount, extensionCount, upgradeCount] = await Promise.all([ db.maestro.count(), db.maestro_extension.count(), db.maestro_upgrade.count(), ]); const [maestros, extensionRequests, upgradeRequests] = await Promise.all([ db.maestro.findMany({ orderBy: { MaestroID: "desc" }, select: { MaestroID: true, Name: true, AccountType: true, ActivateStatus: true, PlayerCount: true, }, take: 3, }), db.maestro_extension.findMany({ orderBy: { MaestroExtensionID: "desc" }, select: { MaestroExtensionID: true, MaestroID: true, AccountType: true, Status: true, }, take: 3, }), db.maestro_upgrade.findMany({ orderBy: { MaestroUpgradeID: "desc" }, select: { MaestroUpgradeID: true, MaestroID: true, RegisteredAccountType: true, RequestedAccountType: true, Status: true, }, take: 3, }), ]); console.log("DB connection OK"); console.log({ counts: { maestro: maestroCount, maestro_extension: extensionCount, maestro_upgrade: upgradeCount, }, maestros: maestros.map((maestro) => ({ id: maestro.MaestroID, name: maestro.Name, accountType: getAccountTypeLabel(maestro.AccountType), activateStatus: getActivateStatusLabel(maestro.ActivateStatus), playerCount: maestro.PlayerCount, })), extensionRequests: extensionRequests.map((request) => ({ id: request.MaestroExtensionID, maestroId: request.MaestroID, accountType: getAccountTypeLabel(request.AccountType), status: getRequestStatusLabel(request.Status), })), upgradeRequests: upgradeRequests.map((request) => ({ id: request.MaestroUpgradeID, maestroId: request.MaestroID, from: getAccountTypeLabel(request.RegisteredAccountType), to: getAccountTypeLabel(request.RequestedAccountType), status: getRequestStatusLabel(request.Status), })), }); await db.$disconnect(); } main().catch((error) => { console.error("DB connection check failed"); console.error(error); process.exitCode = 1; });