import { getFooter, getLanguageSwitcher } from "@/lib/trpc/memoizedRequests" import { getIconByIconName } from "@/components/Icons/get-icon-by-icon-name" import Image from "@/components/Image" import LanguageSwitcher from "@/components/LanguageSwitcher" import SkeletonShimmer from "@/components/SkeletonShimmer" import Link from "@/components/TempDesignSystem/Link" import Footnote from "@/components/TempDesignSystem/Text/Footnote" import { getIntl } from "@/i18n" import { getLang } from "@/i18n/serverContext" import styles from "./details.module.css" import type { SocialIconsProps } from "@/types/components/footer/socialIcons" import type { IconName } from "@/types/components/icon" function SocialIcon({ iconName }: SocialIconsProps) { const SocialIcon = getIconByIconName(iconName as IconName) return SocialIcon ? : {iconName} } export default async function FooterDetails() { const lang = getLang() const intl = await getIntl() // preloaded const footer = await getFooter() const languages = await getLanguageSwitcher() const currentYear = new Date().getFullYear() return ( {footer?.socialMedia.links.map( (link) => link.href && ( ) )} © {currentYear}{" "} {intl.formatMessage({ id: "Copyright all rights reserved" })} {footer?.tertiaryLinks.map( (link) => link.url && ( {link.title} ) )} {languages?.urls ? ( ) : null} ) } export async function FooterDetailsSkeleton() { const lang = getLang() const intl = await getIntl() const currentYear = new Date().getFullYear() return ( © {currentYear}{" "} {intl.formatMessage({ id: "Copyright all rights reserved" })} ) }