import { ClipboardIcon, ExternalLink } from "lucide-react"; import { Fragment } from "react"; import handleCopy from "./handle-copy"; const URL_PATTERN = /(https?:\/\/[^\s,]+)/; const CODE_PATTERN = /`([^`]*)`/; export default function TextParseLinks(text: string) { const codeParts = text.split(CODE_PATTERN); return codeParts.map((part: string, codeIndex: number) => { if (codeIndex % 2 === 1) { return ( {part} handleCopy("command", part)} /> ); } const urlParts = part.split(URL_PATTERN); return ( {urlParts.map((urlPart: string, urlIndex: number) => { if (urlIndex % 2 === 1) { return ( {urlPart} ); } return {urlPart}; })} ); }); }