From 5d38b4451af517c040e92a5763dd9501af999075 Mon Sep 17 00:00:00 2001 From: Baptiste Arnaud Date: Thu, 8 Feb 2024 10:27:22 +0100 Subject: [PATCH] :monocle_face: Add redeemCoupon script --- packages/scripts/package.json | 1 + packages/scripts/redeemCoupon.ts | 28 ++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 packages/scripts/redeemCoupon.ts diff --git a/packages/scripts/package.json b/packages/scripts/package.json index dab83fa4a..599d2c06e 100644 --- a/packages/scripts/package.json +++ b/packages/scripts/package.json @@ -26,6 +26,7 @@ "inspectTypebot": "tsx inspectTypebot.ts", "inspectWorkspace": "tsx inspectWorkspace.ts", "getCoupon": "tsx getCoupon.ts", + "redeemCoupon": "tsx redeemCoupon.ts", "exportResults": "tsx exportResults.ts", "updateUserEmail": "tsx updateUserEmail.ts", "inspectChatSession": "tsx inspectChatSession.ts" diff --git a/packages/scripts/redeemCoupon.ts b/packages/scripts/redeemCoupon.ts new file mode 100644 index 000000000..60b2ea242 --- /dev/null +++ b/packages/scripts/redeemCoupon.ts @@ -0,0 +1,28 @@ +import { PrismaClient } from '@typebot.io/prisma' +import { promptAndSetEnvironment } from './utils' +import * as p from '@clack/prompts' + +const redeemCoupon = async () => { + await promptAndSetEnvironment('production') + + const prisma = new PrismaClient() + + const code = await p.text({ + message: 'Coupon code?', + }) + + if (!code || p.isCancel(code)) process.exit() + + const coupon = await prisma.coupon.update({ + where: { + code, + }, + data: { + dateRedeemed: new Date(), + }, + }) + + console.log(coupon) +} + +redeemCoupon()