Files
HiveGrid-Wireframes/hivegrid-cloud/packages/cli/src/commands/leads/delete.ts
T

26 lines
894 B
TypeScript

/**
* `leads delete --id <leadId>` — hard-delete a single lead and its events.
* Use for DSGVO right-to-be-forgotten requests.
*/
import { defineCommand } from "citty";
import consola from "consola";
export const leadsDeleteCommand = defineCommand({
meta: { name: "delete", description: "Delete a lead (DSGVO right-to-be-forgotten)." },
args: {
id: { type: "string", required: true, description: "Lead id." },
},
async run({ args }) {
const { getDbClient } = await import("@toolctrl/db/client.server");
const prisma = getDbClient();
const id = String(args.id);
const existing = await prisma.lead.findUnique({ where: { id }, select: { email: true } });
if (!existing) {
consola.warn(`Lead ${id} not found.`);
return;
}
await prisma.lead.delete({ where: { id } });
consola.success(`Deleted lead ${id} (${existing.email}).`);
},
});