import type { ReactNode } from 'react'
import { useMemo } from 'react'
import { supportsHyperlinks } from '../../core/supports-hyperlinks.js'
import Text from './Text.js'
export type Props = {
readonly children?: ReactNode
readonly url: string
readonly fallback?: ReactNode
}
export default function Link({ children, url, fallback }: Props) {
const content = children ?? url
if (supportsHyperlinks()) {
return useMemo(
() => (
{content}
),
[content, url],
)
}
const displayed = fallback ?? content
return useMemo(() => {displayed}, [displayed])
}