import React from 'react'; import { Link, LinkProps } from 'react-router-dom'; /** * Wrapper around React Router's Link component to support relative AND absolute URLs. If it is an external URL, * a normal HTML anchor tag will be rendered. If no URL is present, only the contents will be rendered to avoid * displaying blank anchor tags. */ export const LinkWrapper = ({ to, children, ...props }: LinkProps) => { const regex = /^http/; const isExternalLink = regex.test(to); if (!to) return <>{children}; return isExternalLink ? ( {children} ) : ( {children} ); };