feat: add SoonestStays

This commit is contained in:
Arvid Norlin
2024-04-22 13:34:57 +02:00
parent fc28e09df5
commit dff21b33cd
21 changed files with 235 additions and 107 deletions

View File

@@ -1,10 +1,13 @@
import { z } from "zod"
import { badRequestError } from "@/server/errors/trpc"
import { publicProcedure, router } from "@/server/trpc"
import { request } from "@/lib/graphql/request"
import { Lang } from "@/constants/languages"
import GetAccountPage from "@/lib/graphql/Query/AccountPage.graphql"
import { request } from "@/lib/graphql/request"
import { badRequestError } from "@/server/errors/trpc"
import { publicProcedure, router } from "@/server/trpc"
import type { GetAccountPageData } from "@/types/requests/myPages/accountpage"
export const accountPageQueryRouter = router({
getOverview: publicProcedure
.input(z.object({ lang: z.nativeEnum(Lang) }))

View File

@@ -7,3 +7,10 @@ export const staysInput = z
cursor: z.number().nullish(),
})
.default({})
export const soonestUpcomingStaysInput = z
.object({
limit: z.number().int().positive(),
})
.default({ limit: 3 })

View File

@@ -9,7 +9,7 @@ import {
} from "@/server/errors/trpc"
import { protectedProcedure, router } from "@/server/trpc"
import { staysInput } from "./input"
import { soonestUpcomingStaysInput, staysInput } from "./input"
import { getUserSchema } from "./output"
import {
benefits,
@@ -85,6 +85,12 @@ export const userQueryRouter = router({
}),
stays: router({
soonestUpcoming: protectedProcedure
.input(soonestUpcomingStaysInput)
.query(async ({ input }) => {
return upcomingStays.slice(0, input.limit)
}),
previous: protectedProcedure.input(staysInput).query(async (opts) => {
const { perPage, page, cursor } = opts.input
let nextCursor: typeof cursor | undefined = undefined