From 04aa3daef39e38792e641e171a3f9e97e803bc6a Mon Sep 17 00:00:00 2001 From: Stefan Imhoff Date: Fri, 15 Dec 2023 13:13:32 +0100 Subject: [PATCH] chore: replace MoreLink with preact component --- src/components/MoreLink.astro | 23 ----------------------- src/components/MoreLink.tsx | 21 +++++++++++++++++++++ src/components/ProjectContent.astro | 3 +-- src/components/index.ts | 1 + src/mdx-components.ts | 2 +- src/pages/index.astro | 3 +-- 6 files changed, 25 insertions(+), 28 deletions(-) delete mode 100644 src/components/MoreLink.astro create mode 100644 src/components/MoreLink.tsx diff --git a/src/components/MoreLink.astro b/src/components/MoreLink.astro deleted file mode 100644 index 3ad1f9e..0000000 --- a/src/components/MoreLink.astro +++ /dev/null @@ -1,23 +0,0 @@ ---- -import { Sprite } from 'astro-icon'; - -import { TextLink } from '../components'; - -export interface Props { - href: string; - text: string; -} - -const { href, text, ...props } = Astro.props; ---- - - - {text} - - - diff --git a/src/components/MoreLink.tsx b/src/components/MoreLink.tsx new file mode 100644 index 0000000..e3bf755 --- /dev/null +++ b/src/components/MoreLink.tsx @@ -0,0 +1,21 @@ +import type { FunctionalComponent, JSX } from 'preact'; + +import { TextLink } from '.'; +import { ArrowRight } from './icons'; + +interface Props extends JSX.HTMLAttributes { + href: string; + text: string; +} + +export const MoreLink: FunctionalComponent = ({ href, text, ...props }) => ( + + {text} + + + +); diff --git a/src/components/ProjectContent.astro b/src/components/ProjectContent.astro index 7546134..926172e 100644 --- a/src/components/ProjectContent.astro +++ b/src/components/ProjectContent.astro @@ -1,8 +1,7 @@ --- import type { CollectionEntry } from 'astro:content'; -import MoreLink from '../components/MoreLink.astro'; -import { Headline, Text } from '../components'; +import { Headline, Text, MoreLink } from '../components'; interface Props { project: CollectionEntry<'projects'>; diff --git a/src/components/index.ts b/src/components/index.ts index 1dfe40c..a84d833 100644 --- a/src/components/index.ts +++ b/src/components/index.ts @@ -17,6 +17,7 @@ export * from './Headline'; export * from './LegalDate'; export * from './Link'; export * from './ListItem'; +export * from './MoreLink'; export * from './NetflixFlag'; export * from './OdyseeVideo'; export * from './OrderedList'; diff --git a/src/mdx-components.ts b/src/mdx-components.ts index 7a2a635..431972c 100644 --- a/src/mdx-components.ts +++ b/src/mdx-components.ts @@ -3,7 +3,6 @@ import { YouTube } from '@astro-community/astro-embed-youtube'; import EmailLink from './components/EmailLink.astro'; import Image from './components/Image.astro'; import MarkdownImage from './components/MarkdownImage.astro'; -import MoreLink from './components/MoreLink.astro'; import Picture from './components/Picture.astro'; import ThemeBox from './components/ThemeBox.astro'; @@ -23,6 +22,7 @@ import { Flag, Headline, ListItem, + MoreLink, NetflixFlag, OdyseeVideo, OrderedList, diff --git a/src/pages/index.astro b/src/pages/index.astro index 72d6160..be6b1cd 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -7,7 +7,6 @@ import { site, animation, animationDelay } from '../data/site'; import GridLayout from '../layouts/GridLayout.astro'; -import MoreLink from '../components/MoreLink.astro'; import PageTitle from '../components/PageTitle.astro'; import Picture from '../components/Picture.astro'; import JournalList from '../components/JournalList.astro'; @@ -19,7 +18,7 @@ import JournalList from '../components/JournalList.astro'; import WriteFile from '../components/WriteFile.astro'; import RssXml from '../components/RssXml.astro'; -import { Headline } from '../components'; +import { Headline, MoreLink } from '../components'; import { Content as AboutMe } from '../text/homepage/about-me.mdx'; import { Content as WhatIDo } from '../text/homepage/what-i-do.mdx';