From e7c0523841d302f64d1feb082cb03e8650d37007 Mon Sep 17 00:00:00 2001 From: jmanczak Date: Wed, 6 May 2026 02:00:23 +0200 Subject: [PATCH] quotelink hover, also make dashboard quotes into links --- src/web/components/quote.rs | 2 +- src/web/pages/dashboard.rs | 8 ++++++-- src/web/pages/quotes.rs | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/web/components/quote.rs b/src/web/components/quote.rs index 2ca5166..970b425 100644 --- a/src/web/components/quote.rs +++ b/src/web/components/quote.rs @@ -4,7 +4,7 @@ use crate::{quotes::Quote, web::icons}; pub fn quote(quote: &Quote) -> Markup { html!( - div class="border border-neutral-200/25 bg-neutral-200/5 p-3 pb-1 overflow-clip rounded-md relative flex flex-col" { + div class="border border-neutral-200/25 bg-neutral-200/5 p-3 pb-1 overflow-clip rounded-md relative flex flex-col transition-colors group-hover/a:border-neutral-200/35 group-hover/a:bg-neutral-200/10" { div class="absolute top-4 right-6 -rotate-12 opacity-[.025] scale-x-[4.5] scale-y-[4]" { (PreEscaped(icons::QUOTE)) } diff --git a/src/web/pages/dashboard.rs b/src/web/pages/dashboard.rs index 1a094eb..c27b25e 100644 --- a/src/web/pages/dashboard.rs +++ b/src/web/pages/dashboard.rs @@ -61,7 +61,9 @@ pub async fn page( "This just in! This quote was added " (format_time_ago(q.get_creation_timestamp())) " ago." } - div class="flex-1 [&>div]:h-full" {(quote(q))} + div class="flex-1 [&>div]:h-full" { + a href=(format!("/quotes/{}", q.id)) class="group/a" {(quote(q))} + } } @else { p class="text-neutral-500 font-light mb-4" {"No quotes yet."} } @@ -76,7 +78,9 @@ pub async fn page( "This quote was added " (format_time_ago(q.get_creation_timestamp())) " ago." } - div class="flex-1 [&>div]:h-full" {(quote(&q))} + div class="flex-1 [&>div]:h-full" { + a href=(format!("/quotes/{}", q.id)) class="group/a" {(quote(&q))} + } } } } diff --git a/src/web/pages/quotes.rs b/src/web/pages/quotes.rs index bc11e3a..d8430d6 100644 --- a/src/web/pages/quotes.rs +++ b/src/web/pages/quotes.rs @@ -86,7 +86,7 @@ pub async fn page( } div class="flex flex-col gap-4 mb-8" { @for q in "es { - a href=(format!("/quotes/{}", q.id)) {(quote(q))} + a href=(format!("/quotes/{}", q.id)) class="group/a" {(quote(q))} } div class="flex justify-between items-center mt-4 text-neutral-400" {