From 470911698e5a4468c510a99dd352bfb68d9fbd00 Mon Sep 17 00:00:00 2001 From: Alam Guardin Date: Wed, 7 Aug 2024 23:03:49 -0500 Subject: refactor: add icons to links --- src/components/Link.astro | 55 +++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 46 insertions(+), 9 deletions(-) (limited to 'src/components/Link.astro') diff --git a/src/components/Link.astro b/src/components/Link.astro index efd75f6..5ff75a1 100644 --- a/src/components/Link.astro +++ b/src/components/Link.astro @@ -1,10 +1,52 @@ - +--- +import { componentIsHTMLElement } from "astro/runtime/server/render/dom.js"; +import Dribbble from "./icons/Dribbble.astro"; +import Facebook from "./icons/Facebook.astro"; +import Instagram from "./icons/Instagram.astro"; +import Linkedin from "./icons/Linkedin.astro"; +import Shop from "./icons/Shop.astro"; +import Twitch from "./icons/Twitch.astro"; +import Url from "./icons/Url.astro"; +import XTwitter from "./icons/X-twitter.astro"; +import Youtube from "./icons/Youtube.astro"; + +const icons = { + dribbble: Dribbble, + facebook: Facebook, + instagram: Instagram, + linkedin: Linkedin, + shop: Shop, + twitch: Twitch, + url: Url, + xtwitter: XTwitter, + youtube: Youtube +} + +interface Props { + icon: string; + title: string; + description: string; + url: string; +} + +const { icon, title, description, url } = Astro.props; +--- + + - + {icon === 'dribble' && } + {icon === 'facebook' && } + {icon === 'instagram' && } + {icon === 'linkedin' && } + {icon === 'shop' && } + {icon === 'twitch' && } + {icon === 'url' && } + {icon === 'xtwitter' && } + {icon === 'youtube' && } @@ -28,11 +70,6 @@ align-items: center; } - .link-icon svg { - width: 1.5rem; - fill: var(--zinc-50) - } - .link-title, .link-description { font-size: 1rem; } -- cgit v1.2.3