Loading playground…
4 unmodified lines56789101112134 unmodified lines18192021222324252627282930319 unmodified lines4142434445464 unmodified lines// ---import { db } from './database';import { validateEmail } from './utils';interface User {id: string;email: string;4 unmodified linesexport async function getUser(id: string): Promise<User | null> {const user = await db.users.findUnique({where: { id },});return user;}export async function createUser(email: string, name: string): Promise<User> {if (!validateEmail(email)) {throw new Error('Invalid email');}const user = await db.users.create({data: {9 unmodified linesexport async function deleteUser(id: string): Promise<void> {await db.users.delete({where: { id },});}4 unmodified lines56789101112134 unmodified lines1819202122232425262728293031323334359 unmodified lines454647484950514 unmodified lines// ---import { db } from './database';import { validateEmail, hashPassword } from './utils';interface User {id: string;email: string;4 unmodified linesexport async function getUser(id: string): Promise<User | null> {const user = await db.users.findUnique({where: { id },});if (user === null) {throw new Error('User not found');}// validatedreturn user;}export async function createUser(email: string, name: string): Promise<User> {if (!validateEmail(email)) {throw new Error('Invalid email address');}const user = await db.users.create({data: {9 unmodified linesexport async function deleteUser(id: string): Promise<void> {await db.users.delete({where: { id },});// no-op if already deleted}
Should we add rate limiting to this endpoint? We might want to prevent abuse.
Good idea! I'll add that in a follow-up PR.