summaryrefslogtreecommitdiffhomepage
path: root/packages/console/core/script/lookup-user.ts
blob: af9bcc3a1d92e60bca4443e2d5be28b0fb41d22c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import { Database, eq } from "../src/drizzle/index.js"
import { AuthTable } from "../src/schema/auth.sql"

// get input from command line
const email = process.argv[2]
if (!email) {
  console.error("Usage: bun lookup-user.ts <email>")
  process.exit(1)
}

const authData = await printTable("Auth", (tx) =>
  tx.select().from(AuthTable).where(eq(AuthTable.subject, email)),
)
if (authData.length === 0) {
  console.error("User not found")
  process.exit(1)
}

await printTable("Auth", (tx) =>
  tx.select().from(AuthTable).where(eq(AuthTable.accountID, authData[0].accountID)),
)

function printTable(
  title: string,
  callback: (tx: Database.TxOrDb) => Promise<any[]>,
): Promise<any[]> {
  return Database.use(async (tx) => {
    const data = await callback(tx)
    console.log(`== ${title} ==`)
    console.table(data)
    return data
  })
}