diff options
| author | Frank <[email protected]> | 2026-04-18 16:26:58 -0400 |
|---|---|---|
| committer | Frank <[email protected]> | 2026-04-18 17:33:28 -0400 |
| commit | 9d012b062186ef9900cc2673b77c446d38ebd789 (patch) | |
| tree | 0185f564ac585be5e50e1ba090da8a461e6fb4fc /packages/console/core/script | |
| parent | fbb0a93e12740c7fb3f5f7ff62eee027c157e351 (diff) | |
| download | opencode-9d012b062186ef9900cc2673b77c446d38ebd789.tar.gz opencode-9d012b062186ef9900cc2673b77c446d38ebd789.zip | |
zen: redeem credit
Diffstat (limited to 'packages/console/core/script')
| -rw-r--r-- | packages/console/core/script/create-coupon.ts | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/packages/console/core/script/create-coupon.ts b/packages/console/core/script/create-coupon.ts new file mode 100644 index 000000000..e13337905 --- /dev/null +++ b/packages/console/core/script/create-coupon.ts @@ -0,0 +1,24 @@ +import { Database } from "../src/drizzle/index.js" +import { CouponTable, CouponType } from "../src/schema/billing.sql.js" + +const email = process.argv[2] +const type = process.argv[3] as (typeof CouponType)[number] + +if (!email || !type) { + console.error(`Usage: bun create-coupon.ts <email> <${CouponType.join("|")}>`) + process.exit(1) +} + +if (!(CouponType as readonly string[]).includes(type)) { + console.error(`Error: type must be one of ${CouponType.join(", ")}`) + process.exit(1) +} + +await Database.use((tx) => + tx.insert(CouponTable).values({ + email, + type, + }), +) + +console.log(`Created ${type} coupon for ${email}`) |
