import { useRouter } from 'next/router' import NextLink from 'next/link' import { ComponentProps } from 'react' import { DEFAULT_VERSION, useVersion } from '@/versions/components/useVersion' const { NODE_ENV } = process.env type Props = { locale?: string makeAbsolute?: boolean } & ComponentProps<'a'> export function Link(props: Props) { const { href, locale, makeAbsolute = false, ...restProps } = props const router = useRouter() const { currentVersion } = useVersion() if (!href && NODE_ENV !== 'production') { console.warn('Missing href on Link') } let url = href || '' const isExternal = url.startsWith('http') || url.startsWith('//') if (makeAbsolute && !isExternal) { url = `/${locale || router.locale}` if (currentVersion !== DEFAULT_VERSION) { url += `/${currentVersion}` } url += href } else if (locale && !isExternal) { url = `/${locale}${href}` } return ( ) }