
* Makes userRequired middleware * Prevent users from changing usernames to premium ones * refactor on zomars' branch (#801) * rename `profile` -> `mutation` * `createProtectedRouter()` helper * move profile mutation to `viewer.` * simplify checkUsername * Auto scrolls to error when there is one * Renames username helpers * Follows db convention Co-authored-by: Alex Johansson <alexander@n1s.se> Co-authored-by: Bailey Pumfleet <pumfleet@hey.com>
23 lines
466 B
TypeScript
23 lines
466 B
TypeScript
import prisma from "@lib/prisma";
|
|
import slugify from "@lib/slugify";
|
|
|
|
export async function checkRegularUsername(_username: string) {
|
|
const username = slugify(_username);
|
|
|
|
const user = await prisma.user.findUnique({
|
|
where: { username },
|
|
select: {
|
|
username: true,
|
|
},
|
|
});
|
|
|
|
if (user) {
|
|
return {
|
|
available: false as const,
|
|
message: "A user exists with that username",
|
|
};
|
|
}
|
|
return {
|
|
available: true as const,
|
|
};
|
|
}
|