Merged in feat/rework-contentstack (pull request #3493)
Feat(SW-3708): refactor contentstack fetching (removing all refs) and cache invalidation * Remove all REFS * Revalidate correct language * PR fixes * PR fixes * Throw when errors from contentstack api Approved-by: Joakim Jäderberg
This commit is contained in:
@@ -4,45 +4,6 @@ import type {
|
||||
AssetSystem,
|
||||
System,
|
||||
} from "../routers/contentstack/schemas/system"
|
||||
import type { Edges } from "../types/edges"
|
||||
import type { NodeRefs } from "../types/refs"
|
||||
|
||||
/**
|
||||
* Function to generate tag for initial refs request
|
||||
*
|
||||
* @param lang Lang
|
||||
* @param identifier Should be uid for all pages and content_type_uid for
|
||||
* everything else
|
||||
* @param affix possible extra value to add to string, e.g lang:identifier:breadcrumbs:refs
|
||||
* as it is the same entity as the actual page tag otherwise
|
||||
* @returns string
|
||||
*/
|
||||
export function generateRefsResponseTag(
|
||||
lang: Lang,
|
||||
identifier: string,
|
||||
affix?: string
|
||||
) {
|
||||
if (affix) {
|
||||
return `${lang}:${identifier}:${affix}:refs`
|
||||
}
|
||||
return `${lang}:${identifier}:refs`
|
||||
}
|
||||
|
||||
/**
|
||||
* Function to generate all tags to references on entity
|
||||
*
|
||||
* @param lang Lang
|
||||
* @param contentTypeUid content_type_uid of reference
|
||||
* @param uid system.uid of reference
|
||||
* @returns string
|
||||
*/
|
||||
export function generateRefTag(
|
||||
lang: Lang,
|
||||
contentTypeUid: string,
|
||||
uid: string
|
||||
) {
|
||||
return `${lang}:ref:${contentTypeUid}:${uid}`
|
||||
}
|
||||
|
||||
/**
|
||||
* Function to generate tag for entity being requested
|
||||
@@ -61,20 +22,6 @@ export function generateTag(lang: Lang, uid: string, affix?: string | null) {
|
||||
return `${lang}:${uid}`
|
||||
}
|
||||
|
||||
export function generateTags(lang: Lang, connections: Edges<NodeRefs>[]) {
|
||||
return connections
|
||||
.map((connection) => {
|
||||
return connection.edges.map(({ node }) => {
|
||||
return generateRefTag(
|
||||
lang,
|
||||
node.system.content_type_uid,
|
||||
node.system.uid
|
||||
)
|
||||
})
|
||||
})
|
||||
.flat()
|
||||
}
|
||||
|
||||
export function generateTagsFromSystem(
|
||||
lang: Lang,
|
||||
connections: System["system"][]
|
||||
|
||||
Reference in New Issue
Block a user