Switches out all the old icons to new ones, and moves them to the design system. The new icons are of three different types: Materialise Symbol, Nucleo, and Customized. Also adds further mapping between facilities/amenities and icons. Approved-by: Michael Zetterberg Approved-by: Erik Tiekstra
32 lines
900 B
TypeScript
32 lines
900 B
TypeScript
"use client"
|
|
|
|
import { IconByIconName } from "@/components/Icons/IconByIconName"
|
|
import { trackSocialMediaClick } from "@/utils/tracking"
|
|
|
|
import type { SocialIconsProps } from "@/types/components/footer/socialIcons"
|
|
import type { SocialLinkProps } from "@/types/components/footer/socialLink"
|
|
import type { IconName } from "@/components/Icons/iconName"
|
|
|
|
function SocialIcon({ iconName }: SocialIconsProps) {
|
|
const SocialIcon = (
|
|
<IconByIconName iconName={iconName} color="Icon/Inverted" />
|
|
)
|
|
return SocialIcon ? SocialIcon : <span>{iconName}</span>
|
|
}
|
|
|
|
export default function SocialLink({ link }: SocialLinkProps) {
|
|
const { href, title } = link
|
|
return (
|
|
<a
|
|
color="white"
|
|
href={href}
|
|
key={title}
|
|
target="_blank"
|
|
aria-label={title}
|
|
onClick={() => trackSocialMediaClick(title)}
|
|
>
|
|
<SocialIcon iconName={title as IconName} />
|
|
</a>
|
|
)
|
|
}
|