From 71ec2247dc0279369ea68a6d4a016a04efceda45 Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Fri, 4 Aug 2023 20:46:39 +0800 Subject: [PATCH] Remove outter { props.handleChanged() + event.stopPropagation() }} > diff --git a/packages/web/components/patterns/LibraryCards/LibraryGridCard.tsx b/packages/web/components/patterns/LibraryCards/LibraryGridCard.tsx index d5f3b3158..60072a376 100644 --- a/packages/web/components/patterns/LibraryCards/LibraryGridCard.tsx +++ b/packages/web/components/patterns/LibraryCards/LibraryGridCard.tsx @@ -30,10 +30,12 @@ import { DotsThree } from 'phosphor-react' import { isTouchScreenDevice } from '../../../lib/deviceType' import { ProgressBarOverlay } from './LibraryListCard' import { FallbackImage } from './FallbackImage' +import { useRouter } from 'next/router' dayjs.extend(relativeTime) export function LibraryGridCard(props: LinkedItemCardProps): JSX.Element { + const router = useRouter() const [isHovered, setIsHovered] = useState(false) const [isOpen, setIsOpen] = useState(false) @@ -85,6 +87,17 @@ export function LibraryGridCard(props: LinkedItemCardProps): JSX.Element { onMouseLeave={() => { setIsHovered(false) }} + onClick={(event) => { + console.log('click event: ', event) + if (event.metaKey || event.ctrlKey) { + window.open( + `/${props.viewer.profile.username}/${props.item.slug}`, + '_blank' + ) + } else { + router.push(`/${props.viewer.profile.username}/${props.item.slug}`) + } + }} > {!isTouchScreenDevice() && ( )} - @@ -108,10 +121,10 @@ export function LibraryGridCard(props: LinkedItemCardProps): JSX.Element { href={`${props.viewer.profile.username}/${props.item.slug}`} style={{ textDecoration: 'unset', width: '100%', height: '100%' }} tabIndex={-1} - > - - - + > */} + + {/* + */} ) } diff --git a/packages/web/components/patterns/LibraryCards/LibraryListCard.tsx b/packages/web/components/patterns/LibraryCards/LibraryListCard.tsx index e804c55d4..5b6d0a55e 100644 --- a/packages/web/components/patterns/LibraryCards/LibraryListCard.tsx +++ b/packages/web/components/patterns/LibraryCards/LibraryListCard.tsx @@ -30,8 +30,10 @@ import { CoverImage } from '../../elements/CoverImage' import { ProgressBar } from '../../elements/ProgressBar' import { theme } from '../../tokens/stitches.config' import { FallbackImage } from './FallbackImage' +import { useRouter } from 'next/router' export function LibraryListCard(props: LinkedItemCardProps): JSX.Element { + const router = useRouter() const [isHovered, setIsHovered] = useState(false) const [isOpen, setIsOpen] = useState(false) @@ -95,6 +97,17 @@ export function LibraryListCard(props: LinkedItemCardProps): JSX.Element { onMouseLeave={() => { setIsHovered(false) }} + onClick={(event) => { + console.log('click event: ', event) + if (event.metaKey || event.ctrlKey) { + window.open( + `/${props.viewer.profile.username}/${props.item.slug}`, + '_blank' + ) + } else { + router.push(`/${props.viewer.profile.username}/${props.item.slug}`) + } + }} > {!isTouchScreenDevice() && ( )} - - - - - + ) }