import { Link } from 'expo-router'; import { openBrowserAsync } from 'expo-web-browser'; import { type ComponentProps } from 'react'; import { Platform } from 'react-native'; type Props = Omit<ComponentProps<typeof Link>, 'href'> & { href: string }; export function ExternalLink({ href, ...rest }: Props) { return ( <Link target="_blank" {...rest} href={href} onPress={async (event) => { if (Platform.OS !== 'web') { // Prevent the default behavior of linking to the default browser on native. event.preventDefault(); // Open the link in an in-app browser. await openBrowserAsync(href); } }} /> ); }