manifold/web/components/site-link.tsx
Austin Chen a17342e55c
New, pretty user page (#48)
* Show bio, banner, and social links on user page

* Minor tweaks

* Allow edits to their user page

* Fix build; add a white ring around users

* From userpage, link to /profile (which is always editable now)

* Update userpage SEO

* Clean up Profile menu

* Fixes according to Stephen's code review
2022-02-17 17:16:58 -08:00

39 lines
913 B
TypeScript

import clsx from 'clsx'
import Link from 'next/link'
export const SiteLink = (props: {
href: string
children: any
className?: string
}) => {
const { href, children, className } = props
return href.startsWith('http') ? (
<a
href={href}
className={clsx(
'z-10 break-words hover:underline hover:decoration-indigo-400 hover:decoration-2',
className
)}
style={{ /* For iOS safari */ wordBreak: 'break-word' }}
target="_blank"
onClick={(e) => e.stopPropagation()}
>
{children}
</a>
) : (
<Link href={href}>
<a
className={clsx(
'z-10 break-words hover:underline hover:decoration-indigo-400 hover:decoration-2',
className
)}
style={{ /* For iOS safari */ wordBreak: 'break-word' }}
onClick={(e) => e.stopPropagation()}
>
{children}
</a>
</Link>
)
}