From c6f752d3c48d20c4cdea61c71b7730fbf2cb534d Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Wed, 1 Mar 2023 21:20:10 +0800 Subject: [PATCH] Wrap the next Link in the VStack so we still get hover states from the Library list code --- .../patterns/LibraryCards/LibraryGridCard.tsx | 344 +++++++++--------- .../templates/homeFeed/HomeFeedContainer.tsx | 3 + 2 files changed, 178 insertions(+), 169 deletions(-) diff --git a/packages/web/components/patterns/LibraryCards/LibraryGridCard.tsx b/packages/web/components/patterns/LibraryCards/LibraryGridCard.tsx index d32baddec..c2ce66828 100644 --- a/packages/web/components/patterns/LibraryCards/LibraryGridCard.tsx +++ b/packages/web/components/patterns/LibraryCards/LibraryGridCard.tsx @@ -8,6 +8,8 @@ import relativeTime from 'dayjs/plugin/relativeTime' import { useState } from 'react' import { DotsThree, DotsThreeVertical } from 'phosphor-react' import Link from 'next/link' +import { CardMenu } from '../CardMenu' +import { Dropdown, DropdownOption } from '../../elements/DropdownElements' dayjs.extend(relativeTime) @@ -114,55 +116,61 @@ export function LibraryGridCard(props: LinkedItemCardProps): JSX.Element { siteName(props.item.originalArticleUrl, props.item.url) return ( - - { - setIsHovered(true) - }} - onMouseLeave={() => { - setIsHovered(false) - }} + { + setIsHovered(true) + }} + onMouseLeave={() => { + setIsHovered(false) + }} + > + - - - {timeAgo(props.item.savedAt)} - {` `} - {props.item.wordsCount ?? 0 > 0 - ? ` • ${Math.max( - 1, - Math.round((props.item.wordsCount ?? 0) / 235) - )} min read` - : null} - - {isHovered ? ( + + + {timeAgo(props.item.savedAt)} + {` `} + {props.item.wordsCount ?? 0 > 0 + ? ` • ${Math.max( + 1, + Math.round((props.item.wordsCount ?? 0) / 235) + )} min read` + : null} + - + + } + /> - ) : ( + + + {props.item.title} + + + test{props.item.description} + + - )} - - - - {props.item.title} - - - test{props.item.description} - - + > + + {props.item.author} + {props.item.author && originText && ' | '} + + {originText} + + + - {props.item.author} - {props.item.author && originText && ' | '} - - {originText} - + - - - - - - {props.item.labels?.map(({ name, color }, index) => ( - - ))} + + {props.item.labels?.map(({ name, color }, index) => ( + + ))} + + + {props.item.image && ( + { + ;(e.target as HTMLElement).style.display = 'none' + }} + /> + )} + - - {props.item.image && ( - { - ;(e.target as HTMLElement).style.display = 'none' - }} - /> - )} - - - - - + + + + ) } diff --git a/packages/web/components/templates/homeFeed/HomeFeedContainer.tsx b/packages/web/components/templates/homeFeed/HomeFeedContainer.tsx index 9a42a0f26..1c2753cd2 100644 --- a/packages/web/components/templates/homeFeed/HomeFeedContainer.tsx +++ b/packages/web/components/templates/homeFeed/HomeFeedContainer.tsx @@ -934,6 +934,9 @@ function HomeFeedGrid(props: HomeFeedContentProps): JSX.Element { '> div': { bg: '$grayBgActive', }, + '> a': { + bg: '$grayBgActive', + }, }, }} >