summaryrefslogtreecommitdiffhomepage
path: root/packages/console/core/script/black-onboard-waitlist.ts
blob: 9e7d9e935de8069712b860c41186aef9ce3353af (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
34
35
36
37
38
import { Database, eq } from "../src/drizzle/index.js"
import { BillingTable } from "../src/schema/billing.sql.js"

const workspaceID = process.argv[2]

if (!workspaceID) {
  console.error("Usage: bun script/foo.ts <workspaceID>")
  process.exit(1)
}

console.log(`Onboarding to Black waitlist`)

const billing = await Database.use((tx) =>
  tx
    .select({
      subscriptionPlan: BillingTable.subscriptionPlan,
      timeSubscriptionBooked: BillingTable.timeSubscriptionBooked,
    })
    .from(BillingTable)
    .where(eq(BillingTable.workspaceID, workspaceID))
    .then((rows) => rows[0]),
)

if (!billing?.timeSubscriptionBooked) {
  console.error(`Error: Workspace is not on the waitlist`)
  process.exit(1)
}

await Database.use((tx) =>
  tx
    .update(BillingTable)
    .set({
      timeSubscriptionSelected: new Date(),
    })
    .where(eq(BillingTable.workspaceID, workspaceID)),
)

console.log(`Done`)