fix: rename retried-wrapped fetch to make caching work again

This commit is contained in:
Simon Emanuelsson
2024-08-28 10:47:57 +02:00
parent 08529e6398
commit 93526ce693
41 changed files with 728 additions and 575 deletions
+53 -22
View File
@@ -13,7 +13,11 @@ import { request } from "@/lib/graphql/request"
import { notFound } from "@/server/errors/trpc"
import { contentstackBaseProcedure, router } from "@/server/trpc"
import { generateTag } from "@/utils/generateTag"
import {
generateRefsResponseTag,
generateRefTag,
generateTag,
} from "@/utils/generateTag"
import { langInput } from "./input"
import {
@@ -82,9 +86,18 @@ export const baseQueryRouter = router({
"contentstack.contactConfig start",
JSON.stringify({ query: { lang } })
)
const response = await request<ContactConfigData>(GetContactConfig, {
locale: lang,
})
const response = await request<ContactConfigData>(
GetContactConfig,
{
locale: lang,
},
{
cache: "force-cache",
next: {
tags: [`${lang}:contact`],
},
}
)
if (!response.data) {
const notFoundError = notFound(response)
@@ -137,9 +150,18 @@ export const baseQueryRouter = router({
"contentstack.header.ref start",
JSON.stringify({ query: { lang: input.lang } })
)
const responseRef = await request<HeaderRefDataRaw>(GetCurrentHeaderRef, {
locale: input.lang,
})
const responseRef = await request<HeaderRefDataRaw>(
GetCurrentHeaderRef,
{
locale: input.lang,
},
{
cache: "force-cache",
next: {
tags: [generateRefsResponseTag(input.lang, "current_header")],
},
}
)
getHeaderCounter.add(1, { lang: input.lang })
console.info(
"contentstack.header start",
@@ -148,17 +170,17 @@ export const baseQueryRouter = router({
})
)
const currentHeaderUID =
responseRef.data.all_current_header.items[0].system.uid
// There's currently no error handling/validation for the responseRef, should it be added?
const response = await request<HeaderDataRaw>(
GetCurrentHeader,
{ locale: input.lang },
{
tags: [
generateTag(
input.lang,
responseRef.data.all_current_header.items[0].system.uid
),
],
cache: "force-cache",
next: {
tags: [generateTag(input.lang, currentHeaderUID)],
},
}
)
@@ -226,9 +248,18 @@ export const baseQueryRouter = router({
"contentstack.footer.ref start",
JSON.stringify({ query: { lang: input.lang } })
)
const responseRef = await request<FooterRefDataRaw>(GetCurrentFooterRef, {
locale: input.lang,
})
const responseRef = await request<FooterRefDataRaw>(
GetCurrentFooterRef,
{
locale: input.lang,
},
{
cache: "force-cache",
next: {
tags: [generateRefsResponseTag(input.lang, "current_footer")],
},
}
)
// There's currently no error handling/validation for the responseRef, should it be added?
getFooterCounter.add(1, { lang: input.lang })
console.info(
@@ -239,18 +270,18 @@ export const baseQueryRouter = router({
},
})
)
const currentFooterUID =
responseRef.data.all_current_footer.items[0].system.uid
const response = await request<FooterDataRaw>(
GetCurrentFooter,
{
locale: input.lang,
},
{
tags: [
generateTag(
input.lang,
responseRef.data.all_current_footer.items[0].system.uid
),
],
cache: "force-cache",
next: {
tags: [generateTag(input.lang, currentFooterUID)],
},
}
)