Files
web/apps/scandic-web/server/routers/contentstack/languageSwitcher/query.ts
Erik Tiekstra 131cbfcda3 Merged in feat/SW-1845-metadata-hreflang (pull request #1504)
feat(SW-1845): Added alternates to metadata

* feat(SW-1845): Added alternates to metadata


Approved-by: Linus Flood
2025-03-10 10:15:02 +00:00

31 lines
940 B
TypeScript

import { publicProcedure, router } from "@/server/trpc"
import { getUidAndContentTypeByPath } from "@/services/cms/getUidAndContentTypeByPath"
import { getNonContentstackUrls } from "../metadata/output"
import { getLanguageSwitcherInput } from "./input"
import { getUrlsOfAllLanguages } from "./utils"
import type { LanguageSwitcherData } from "@/types/requests/languageSwitcher"
export const languageSwitcherQueryRouter = router({
get: publicProcedure
.input(getLanguageSwitcherInput)
.query(async ({ input }) => {
const { pathName, lang } = input
const { uid, contentType } = await getUidAndContentTypeByPath(pathName)
let urls: LanguageSwitcherData | null = null
if (!uid || !contentType) {
urls = getNonContentstackUrls(lang, pathName)
} else {
urls = await getUrlsOfAllLanguages(lang, uid, contentType)
}
return {
lang,
urls,
}
}),
})