Files
web/utils/webviews.ts
2024-08-21 11:24:44 +02:00

33 lines
897 B
TypeScript

import "server-only"
import { headers } from "next/headers"
import { Lang } from "@/constants/languages"
import { webviews } from "@/constants/routes/webviews"
export function webviewSearchParams() {
const searchParams = new URLSearchParams()
const loginType = headers().get("loginType")
if (loginType) {
searchParams.set("loginType", loginType)
}
const adobeMc = headers().get("adobe_mc")
if (adobeMc) {
searchParams.set("adobe_mc", adobeMc)
}
return searchParams
}
export function modWebviewLink(url: string, lang: Lang) {
const searchParams = webviewSearchParams()
const urlWithoutLang = url.replace(`/${lang}`, "")
const webviewUrl = `/${lang}/webview${urlWithoutLang}`
if (webviews.includes(webviewUrl) || url.startsWith("/webview")) {
return `${webviewUrl}?${searchParams.toString()}`
} else {
return `${url}?${searchParams.toString()}`
}
}