feat: Introduce Linkify component to automatically convert URLs in comment and reply content into clickable links.

This commit is contained in:
Yusuf İpek
2026-02-21 10:50:45 +03:00
parent 5065fca38d
commit cd9b89c971
2 changed files with 36 additions and 2 deletions
+33
View File
@@ -0,0 +1,33 @@
import React from 'react';
const URL_REGEX = /(https?:\/\/[^\s]+)/g;
export function Linkify({ children }: { children: React.ReactNode }) {
if (typeof children !== 'string') {
return <>{children}</>;
}
const parts = children.split(URL_REGEX);
return (
<>
{parts.map((part, i) => {
if (part.match(URL_REGEX)) {
return (
<a
key={i}
href={part}
target="_blank"
rel="noopener noreferrer"
className="text-primary hover:underline break-all"
onClick={(e) => e.stopPropagation()}
>
{part}
</a>
);
}
return <React.Fragment key={i}>{part}</React.Fragment>;
})}
</>
);
}