mirror of
https://github.com/aaronpo97/the-biergarten-app.git
synced 2026-02-16 10:42:08 +00:00
Update: change identifiers to cuid
This commit is contained in:
@@ -38,7 +38,7 @@ const LoginForm = () => {
|
||||
await mutate!();
|
||||
toast.remove(loadingToast);
|
||||
toast.success('Logged in!');
|
||||
await router.push(`/user/current`);
|
||||
await router.push(`/users/current`);
|
||||
} catch (error) {
|
||||
toast.remove(loadingToast);
|
||||
createErrorToast(error);
|
||||
|
||||
@@ -4,7 +4,7 @@ import { NextApiRequest } from 'next';
|
||||
import { z } from 'zod';
|
||||
|
||||
export const BasicUserInfoSchema = z.object({
|
||||
id: z.string().uuid(),
|
||||
id: z.string().cuid(),
|
||||
username: z.string(),
|
||||
});
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ const useUser = () => {
|
||||
|
||||
const parsedPayload = GetUserSchema.safeParse(parsed.data.payload);
|
||||
|
||||
console.log(parsedPayload)
|
||||
if (!parsedPayload.success) {
|
||||
throw new Error(parsedPayload.error.message);
|
||||
}
|
||||
@@ -46,6 +47,7 @@ const useUser = () => {
|
||||
return parsedPayload.data;
|
||||
});
|
||||
|
||||
|
||||
return { user, isLoading, error: error as unknown, mutate };
|
||||
};
|
||||
|
||||
|
||||
@@ -85,14 +85,14 @@ const router = createRouter<
|
||||
|
||||
router
|
||||
.delete(
|
||||
validateRequest({ querySchema: z.object({ id: z.string().uuid() }) }),
|
||||
validateRequest({ querySchema: z.object({ id: z.string().cuid() }) }),
|
||||
getCurrentUser,
|
||||
checkIfCommentOwner,
|
||||
deleteComment,
|
||||
)
|
||||
.put(
|
||||
validateRequest({
|
||||
querySchema: z.object({ id: z.string().uuid() }),
|
||||
querySchema: z.object({ id: z.string().cuid() }),
|
||||
bodySchema: CreateCommentValidationSchema,
|
||||
}),
|
||||
getCurrentUser,
|
||||
|
||||
@@ -79,7 +79,7 @@ const router = createRouter<
|
||||
router.post(
|
||||
validateRequest({
|
||||
bodySchema: CreateCommentValidationSchema,
|
||||
querySchema: z.object({ id: z.string().uuid() }),
|
||||
querySchema: z.object({ id: z.string().cuid() }),
|
||||
}),
|
||||
getCurrentUser,
|
||||
createComment,
|
||||
@@ -88,7 +88,7 @@ router.post(
|
||||
router.get(
|
||||
validateRequest({
|
||||
querySchema: z.object({
|
||||
id: z.string().uuid(),
|
||||
id: z.string().cuid(),
|
||||
page_size: z.coerce.number().int().positive(),
|
||||
page_num: z.coerce.number().int().positive(),
|
||||
}),
|
||||
|
||||
@@ -70,12 +70,12 @@ const router = createRouter<
|
||||
|
||||
router.post(
|
||||
getCurrentUser,
|
||||
validateRequest({ querySchema: z.object({ id: z.string().uuid() }) }),
|
||||
validateRequest({ querySchema: z.object({ id: z.string().cuid() }) }),
|
||||
sendLikeRequest,
|
||||
);
|
||||
|
||||
router.get(
|
||||
validateRequest({ querySchema: z.object({ id: z.string().uuid() }) }),
|
||||
validateRequest({ querySchema: z.object({ id: z.string().cuid() }) }),
|
||||
getLikeCount,
|
||||
);
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ const router = createRouter<
|
||||
|
||||
router.get(
|
||||
getCurrentUser,
|
||||
validateRequest({ querySchema: z.object({ id: z.string().uuid() }) }),
|
||||
validateRequest({ querySchema: z.object({ id: z.string().cuid() }) }),
|
||||
checkIfLiked,
|
||||
);
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@ const getBeerRecommendationsRequest = async (
|
||||
router.get(
|
||||
validateRequest({
|
||||
querySchema: z.object({
|
||||
id: z.string().uuid(),
|
||||
id: z.string().cuid(),
|
||||
page_num: z.string().regex(/^[0-9]+$/),
|
||||
page_size: z.string().regex(/^[0-9]+$/),
|
||||
}),
|
||||
|
||||
@@ -89,7 +89,7 @@ const router = createRouter<
|
||||
router.post(
|
||||
validateRequest({
|
||||
bodySchema: CreateCommentValidationSchema,
|
||||
querySchema: z.object({ id: z.string().uuid() }),
|
||||
querySchema: z.object({ id: z.string().cuid() }),
|
||||
}),
|
||||
getCurrentUser,
|
||||
createComment,
|
||||
@@ -98,7 +98,7 @@ router.post(
|
||||
router.get(
|
||||
validateRequest({
|
||||
querySchema: z.object({
|
||||
id: z.string().uuid(),
|
||||
id: z.string().cuid(),
|
||||
page_size: z.coerce.number().int().positive(),
|
||||
page_num: z.coerce.number().int().positive(),
|
||||
}),
|
||||
|
||||
@@ -83,12 +83,12 @@ const router = createRouter<
|
||||
|
||||
router.post(
|
||||
getCurrentUser,
|
||||
validateRequest({ querySchema: z.object({ id: z.string().uuid() }) }),
|
||||
validateRequest({ querySchema: z.object({ id: z.string().cuid() }) }),
|
||||
sendLikeRequest,
|
||||
);
|
||||
|
||||
router.get(
|
||||
validateRequest({ querySchema: z.object({ id: z.string().uuid() }) }),
|
||||
validateRequest({ querySchema: z.object({ id: z.string().cuid() }) }),
|
||||
getLikeCount,
|
||||
);
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ router.get(
|
||||
getCurrentUser,
|
||||
validateRequest({
|
||||
querySchema: z.object({
|
||||
id: z.string().uuid(),
|
||||
id: z.string().cuid(),
|
||||
}),
|
||||
}),
|
||||
checkIfLiked,
|
||||
|
||||
@@ -87,14 +87,14 @@ const router = createRouter<
|
||||
|
||||
router
|
||||
.delete(
|
||||
validateRequest({ querySchema: z.object({ id: z.string().uuid() }) }),
|
||||
validateRequest({ querySchema: z.object({ id: z.string().cuid() }) }),
|
||||
getCurrentUser,
|
||||
checkIfCommentOwner,
|
||||
deleteComment,
|
||||
)
|
||||
.put(
|
||||
validateRequest({
|
||||
querySchema: z.object({ id: z.string().uuid() }),
|
||||
querySchema: z.object({ id: z.string().cuid() }),
|
||||
bodySchema: CreateCommentValidationSchema,
|
||||
}),
|
||||
getCurrentUser,
|
||||
|
||||
@@ -97,7 +97,7 @@ router.put(
|
||||
getCurrentUser,
|
||||
validateRequest({
|
||||
bodySchema: EditUserSchema,
|
||||
querySchema: z.object({ id: z.string().uuid() }),
|
||||
querySchema: z.object({ id: z.string().cuid() }),
|
||||
}),
|
||||
checkIfUserCanEditUser,
|
||||
editUser,
|
||||
|
||||
6
src/pages/users/[id].tsx
Normal file
6
src/pages/users/[id].tsx
Normal file
@@ -0,0 +1,6 @@
|
||||
import { FC } from "react"
|
||||
|
||||
const UserInfoPage: FC = () => null
|
||||
|
||||
|
||||
export default UserInfoPage
|
||||
@@ -13,7 +13,7 @@ datasource db {
|
||||
}
|
||||
|
||||
model User {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
username String @unique
|
||||
firstName String
|
||||
lastName String
|
||||
@@ -36,7 +36,7 @@ model User {
|
||||
}
|
||||
|
||||
model BeerPost {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
name String
|
||||
ibu Float
|
||||
abv Float
|
||||
@@ -55,7 +55,7 @@ model BeerPost {
|
||||
}
|
||||
|
||||
model BeerPostLike {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
beerPost BeerPost @relation(fields: [beerPostId], references: [id], onDelete: Cascade)
|
||||
beerPostId String
|
||||
likedBy User @relation(fields: [likedById], references: [id], onDelete: Cascade)
|
||||
@@ -65,7 +65,7 @@ model BeerPostLike {
|
||||
}
|
||||
|
||||
model BreweryPostLike {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
breweryPost BreweryPost @relation(fields: [breweryPostId], references: [id], onDelete: Cascade)
|
||||
breweryPostId String
|
||||
likedBy User @relation(fields: [likedById], references: [id], onDelete: Cascade)
|
||||
@@ -75,7 +75,7 @@ model BreweryPostLike {
|
||||
}
|
||||
|
||||
model BeerComment {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
rating Int
|
||||
beerPost BeerPost @relation(fields: [beerPostId], references: [id], onDelete: Cascade)
|
||||
beerPostId String
|
||||
@@ -87,7 +87,7 @@ model BeerComment {
|
||||
}
|
||||
|
||||
model BeerType {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
name String
|
||||
createdAt DateTime @default(now()) @db.Timestamptz(3)
|
||||
updatedAt DateTime? @updatedAt @db.Timestamptz(3)
|
||||
@@ -97,7 +97,7 @@ model BeerType {
|
||||
}
|
||||
|
||||
model Location {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
city String
|
||||
stateOrProvince String?
|
||||
country String?
|
||||
@@ -109,7 +109,7 @@ model Location {
|
||||
}
|
||||
|
||||
model BreweryPost {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
name String
|
||||
location Location @relation(fields: [locationId], references: [id])
|
||||
locationId String @unique
|
||||
@@ -126,7 +126,7 @@ model BreweryPost {
|
||||
}
|
||||
|
||||
model BreweryComment {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
rating Int
|
||||
breweryPost BreweryPost @relation(fields: [breweryPostId], references: [id], onDelete: Cascade)
|
||||
breweryPostId String
|
||||
@@ -138,7 +138,7 @@ model BreweryComment {
|
||||
}
|
||||
|
||||
model BeerImage {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
beerPost BeerPost @relation(fields: [beerPostId], references: [id], onDelete: Cascade)
|
||||
beerPostId String
|
||||
path String
|
||||
@@ -151,7 +151,7 @@ model BeerImage {
|
||||
}
|
||||
|
||||
model BreweryImage {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(cuid())
|
||||
breweryPost BreweryPost @relation(fields: [breweryPostId], references: [id], onDelete: Cascade)
|
||||
breweryPostId String
|
||||
path String
|
||||
|
||||
@@ -5,7 +5,7 @@ import APIResponseValidationSchema from '@/validation/APIResponseValidationSchem
|
||||
import { z } from 'zod';
|
||||
|
||||
const BeerCommentValidationSchemaWithId = CreateCommentValidationSchema.extend({
|
||||
beerPostId: z.string().uuid(),
|
||||
beerPostId: z.string().cuid(),
|
||||
});
|
||||
|
||||
const sendCreateBeerCommentRequest = async ({
|
||||
|
||||
@@ -3,8 +3,8 @@ import { z } from 'zod';
|
||||
import CreateCommentValidationSchema from '../types/CommentSchema/CreateCommentValidationSchema';
|
||||
|
||||
const CreateNewBeerCommentServiceSchema = CreateCommentValidationSchema.extend({
|
||||
userId: z.string().uuid(),
|
||||
beerPostId: z.string().uuid(),
|
||||
userId: z.string().cuid(),
|
||||
beerPostId: z.string().cuid(),
|
||||
});
|
||||
|
||||
const createNewBeerComment = async ({
|
||||
|
||||
@@ -4,7 +4,7 @@ import beerPostQueryResult from './schema/BeerPostQueryResult';
|
||||
import CreateBeerPostValidationSchema from './schema/CreateBeerPostValidationSchema';
|
||||
|
||||
const CreateBeerPostWithUserSchema = CreateBeerPostValidationSchema.extend({
|
||||
userId: z.string().uuid(),
|
||||
userId: z.string().cuid(),
|
||||
});
|
||||
|
||||
const createNewBeerPost = async ({
|
||||
|
||||
@@ -31,13 +31,13 @@ const CreateBeerPostValidationSchema = z.object({
|
||||
required_error: 'Type id is required.',
|
||||
invalid_type_error: 'Type id must be a string.',
|
||||
})
|
||||
.uuid({ message: 'Invalid type id.' }),
|
||||
.cuid({ message: 'Invalid type id.' }),
|
||||
breweryId: z
|
||||
.string({
|
||||
required_error: 'Brewery id is required.',
|
||||
invalid_type_error: 'Brewery id must be a string.',
|
||||
})
|
||||
.uuid({ message: 'Invalid brewery id.' }),
|
||||
.cuid({ message: 'Invalid brewery id.' }),
|
||||
});
|
||||
|
||||
export default CreateBeerPostValidationSchema;
|
||||
|
||||
@@ -4,6 +4,6 @@ import CreateBeerPostValidationSchema from './CreateBeerPostValidationSchema';
|
||||
const EditBeerPostValidationSchema = CreateBeerPostValidationSchema.omit({
|
||||
breweryId: true,
|
||||
typeId: true,
|
||||
}).extend({ id: z.string().uuid() });
|
||||
}).extend({ id: z.string().cuid() });
|
||||
|
||||
export default EditBeerPostValidationSchema;
|
||||
|
||||
@@ -3,8 +3,8 @@ import { z } from 'zod';
|
||||
import CreateCommentValidationSchema from '../types/CommentSchema/CreateCommentValidationSchema';
|
||||
|
||||
const CreateNewBreweryCommentServiceSchema = CreateCommentValidationSchema.extend({
|
||||
userId: z.string().uuid(),
|
||||
breweryPostId: z.string().uuid(),
|
||||
userId: z.string().cuid(),
|
||||
breweryPostId: z.string().cuid(),
|
||||
});
|
||||
|
||||
const createNewBreweryComment = async ({
|
||||
|
||||
@@ -15,6 +15,7 @@ const findUserById = async (id: string) => {
|
||||
dateOfBirth: true,
|
||||
createdAt: true,
|
||||
accountIsVerified: true,
|
||||
updatedAt: true
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { z } from 'zod';
|
||||
|
||||
const GetUserSchema = z.object({
|
||||
id: z.string().uuid(),
|
||||
id: z.string().cuid(),
|
||||
username: z.string(),
|
||||
createdAt: z.coerce.date(),
|
||||
updatedAt: z.coerce.date().nullable(),
|
||||
|
||||
@@ -14,6 +14,7 @@ const updateUserToBeConfirmedById = async (id: string) => {
|
||||
createdAt: true,
|
||||
firstName: true,
|
||||
lastName: true,
|
||||
updatedAt: true,
|
||||
dateOfBirth: true,
|
||||
},
|
||||
});
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import { z } from 'zod';
|
||||
|
||||
const CommentQueryResult = z.object({
|
||||
id: z.string().uuid(),
|
||||
id: z.string().cuid(),
|
||||
content: z.string().min(1).max(500),
|
||||
rating: z.number().int().min(1).max(5),
|
||||
createdAt: z.coerce.date(),
|
||||
postedBy: z.object({
|
||||
id: z.string().uuid(),
|
||||
id: z.string().cuid(),
|
||||
username: z.string().min(1).max(50),
|
||||
}),
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user