Refactor: removed parallel routes for header, footer and sidewidealert. Langswitcher and sidewidealert now client components * feat - removed parallel routes and made sidepeek and sitewidealerts as client components * Langswitcher as client component * Fixed lang switcher for current header * Passing lang when fetching siteconfig * Merge branch 'master' into feat/refactor-header-footer-sitewidealert * Refactor * Removed dead code * Show only languages that has translation * Refetch sitewidealert every 60 seconds * Merge branch 'master' into feat/refactor-header-footer-sitewidealert * Removed sidepeek parallel route from my-stay * Added missing env.var to env.test * Removed console.log Approved-by: Joakim Jäderberg
38 lines
785 B
TypeScript
38 lines
785 B
TypeScript
"use client"
|
|
|
|
import { usePathname } from "next/navigation"
|
|
|
|
import { trpc } from "@/lib/trpc/client"
|
|
|
|
import SkeletonShimmer from "@/components/SkeletonShimmer"
|
|
import useLang from "@/hooks/useLang"
|
|
|
|
import Desktop from "./Desktop"
|
|
import Mobile from "./Mobile"
|
|
|
|
export default function LanguageSwitcher() {
|
|
const currentLanguage = useLang()
|
|
const pathName = usePathname()
|
|
|
|
const { data: languagesResponse, isLoading } =
|
|
trpc.contentstack.languageSwitcher.get.useQuery({
|
|
pathName,
|
|
lang: currentLanguage,
|
|
})
|
|
|
|
if (isLoading) {
|
|
return <SkeletonShimmer width="12ch" />
|
|
}
|
|
|
|
if (!languagesResponse?.urls) {
|
|
return null
|
|
}
|
|
|
|
return (
|
|
<>
|
|
<Desktop urls={languagesResponse.urls} />
|
|
<Mobile urls={languagesResponse.urls} />
|
|
</>
|
|
)
|
|
}
|