Merged in feat/SW-334-contentstack-metadata-cache (pull request #568)

feat(SW-334): Added affix to metadata tag and added revalidate tag

Approved-by: Simon.Emanuelsson
This commit is contained in:
Pontus Dreij
2024-09-09 08:19:40 +00:00
2 changed files with 8 additions and 1 deletions

View File

@@ -9,6 +9,7 @@ import { internalServerError } from "@/server/errors/next"
import { affix as bookingwidgetAffix } from "@/server/routers/contentstack/bookingwidget/utils" import { affix as bookingwidgetAffix } from "@/server/routers/contentstack/bookingwidget/utils"
import { affix as breadcrumbsAffix } from "@/server/routers/contentstack/breadcrumbs/utils" import { affix as breadcrumbsAffix } from "@/server/routers/contentstack/breadcrumbs/utils"
import { languageSwitcherAffix } from "@/server/routers/contentstack/languageSwitcher/utils" import { languageSwitcherAffix } from "@/server/routers/contentstack/languageSwitcher/utils"
import { affix as metadataAffix } from "@/server/routers/contentstack/metadata/utils"
import { import {
generateRefsResponseTag, generateRefsResponseTag,
@@ -79,6 +80,7 @@ export async function POST(request: NextRequest) {
entry.uid, entry.uid,
languageSwitcherAffix languageSwitcherAffix
) )
const metadataTag = generateTag(entry.locale, entry.uid, metadataAffix)
console.info(`Revalidating refsTag: ${refsTag}`) console.info(`Revalidating refsTag: ${refsTag}`)
revalidateTag(refsTag) revalidateTag(refsTag)
@@ -92,6 +94,9 @@ export async function POST(request: NextRequest) {
console.info(`Revalidating language switcher tag: ${languageSwitcherTag}`) console.info(`Revalidating language switcher tag: ${languageSwitcherTag}`)
revalidateTag(languageSwitcherTag) revalidateTag(languageSwitcherTag)
console.info(`Revalidating metadataTag: ${metadataTag}`)
revalidateTag(metadataTag)
if (entry.breadcrumbs) { if (entry.breadcrumbs) {
const breadcrumbsRefsTag = generateRefsResponseTag( const breadcrumbsRefsTag = generateRefsResponseTag(
entry.locale, entry.locale,

View File

@@ -11,11 +11,13 @@ export type Variables = {
uid: string uid: string
} }
export const affix = "metadata"
export async function getResponse<T>(query: string, variables: Variables) { export async function getResponse<T>(query: string, variables: Variables) {
const response = await request<T>(query, variables, { const response = await request<T>(query, variables, {
cache: "force-cache", cache: "force-cache",
next: { next: {
tags: [generateTag(variables.locale, variables.uid)], tags: [generateTag(variables.locale, variables.uid, affix)],
}, },
}) })
if (!response.data) { if (!response.data) {