diff --git a/src/components/Card.astro b/src/components/Card.astro deleted file mode 100644 index 97fdeacd4..000000000 --- a/src/components/Card.astro +++ /dev/null @@ -1,22 +0,0 @@ ---- -import Datetime from "@components/Datetime"; -import type { BlogFrontmatter } from "@content/_schemas"; - -export interface Props { - href?: string; - frontmatter: BlogFrontmatter; - secHeading?: boolean; -} - -const { href, frontmatter, secHeading = true } = Astro.props; - -const { title, pubDatetime, description } = frontmatter; ---- - -
  • - - {secHeading ?

    {title}

    :

    {title}

    } -
    - -

    {description}

    -
  • diff --git a/src/components/Card.tsx b/src/components/Card.tsx index 02b6d0745..ca0fe43a0 100644 --- a/src/components/Card.tsx +++ b/src/components/Card.tsx @@ -1,3 +1,4 @@ +import { slugifyStr } from "@utils/slugify"; import Datetime from "./Datetime"; import type { BlogFrontmatter } from "@content/_schemas"; @@ -9,9 +10,24 @@ export interface Props { export default function Card({ href, frontmatter, secHeading = true }: Props) { const { title, pubDatetime, description } = frontmatter; + + const headerProps = { + style: { viewTransitionName: slugifyStr(title) }, + className: "text-lg font-medium decoration-dashed hover:underline", + }; + return ( -
  • - {secHeading ?

    {title}

    :

    {title}

    }
    +
  • + + {secHeading ? ( +

    {title}

    + ) : ( +

    {title}

    + )} +

    {description}

  • diff --git a/src/layouts/PostDetails.astro b/src/layouts/PostDetails.astro index 4bad68e3d..6552f3eb7 100644 --- a/src/layouts/PostDetails.astro +++ b/src/layouts/PostDetails.astro @@ -43,7 +43,7 @@ const ogUrl = new URL(ogImage ? ogImage : `${post.slug}.png`, Astro.url.origin)
    -

    {title}

    +

    {title}

    diff --git a/src/layouts/Posts.astro b/src/layouts/Posts.astro index e1b7cf0e0..c9cc585c7 100644 --- a/src/layouts/Posts.astro +++ b/src/layouts/Posts.astro @@ -4,7 +4,7 @@ import Layout from "@layouts/Layout.astro"; import Main from "@layouts/Main.astro"; import Header from "@components/Header.astro"; import Footer from "@components/Footer.astro"; -import Card from "@components/Card.astro"; +import Card from "@components/Card"; import LinkButton from "@components/LinkButton.astro"; import slugify from "@utils/slugify"; import type { CollectionEntry } from "astro:content"; diff --git a/src/pages/index.astro b/src/pages/index.astro index 8697eae22..faab2f627 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -5,7 +5,7 @@ import Header from "@components/Header.astro"; import Footer from "@components/Footer.astro"; import LinkButton from "@components/LinkButton.astro"; import Hr from "@components/Hr.astro"; -import Card from "@components/Card.astro"; +import Card from "@components/Card"; import Socials from "@components/Socials.astro"; import getSortedPosts from "@utils/getSortedPosts"; import slugify from "@utils/slugify"; diff --git a/src/pages/tags/[tag].astro b/src/pages/tags/[tag].astro index 8253fba27..147732822 100644 --- a/src/pages/tags/[tag].astro +++ b/src/pages/tags/[tag].astro @@ -4,7 +4,7 @@ import Layout from "@layouts/Layout.astro"; import Main from "@layouts/Main.astro"; import Header from "@components/Header.astro"; import Footer from "@components/Footer.astro"; -import Card from "@components/Card.astro"; +import Card from "@components/Card"; import getUniqueTags from "@utils/getUniqueTags"; import getPostsByTag from "@utils/getPostsByTag"; import slugify from "@utils/slugify"; diff --git a/src/styles/base.css b/src/styles/base.css index 7842c8e87..a3af9a0d9 100644 --- a/src/styles/base.css +++ b/src/styles/base.css @@ -128,16 +128,4 @@ .focus-outline { @apply outline-2 outline-offset-1 outline-skin-fill focus-visible:no-underline focus-visible:outline-dashed; } - - /* Card */ - .list-card { - @apply my-6; - } - .list-card > a { - @apply inline-block text-lg font-medium text-skin-accent decoration-dashed underline-offset-4 focus-visible:no-underline focus-visible:underline-offset-0; - } - .list-card h2, - .list-card h3 { - @apply text-lg font-medium decoration-dashed hover:underline; - } }