@@ -2,9 +2,9 @@ import Link from 'next/link';
22import React from 'react' ;
33import { BookOpenText } from 'lucide-react' ;
44import {
5- HoverCard ,
6- HoverCardContent ,
7- HoverCardTrigger ,
5+ HoverCard ,
6+ HoverCardContent ,
7+ HoverCardTrigger ,
88} from "@/components/ui/hoverCard" ;
99
1010interface CustomLinkProps
@@ -29,7 +29,7 @@ export const CustomLink: React.FC<CustomLinkProps> = ({
2929 // Handling external links
3030 if ( href . startsWith ( 'http' ) ) {
3131 return (
32- < a href = { href } target = "_blank" rel = "noopener noreferrer" { ...rest } className = 'no- underline text-vermilion-07' >
32+ < a href = { href } target = "_blank" rel = "noopener noreferrer" { ...rest } className = 'underline dark:visited: text-[#606060] dark:hover:visited-text-dark-text-secondary text- vermilion-00 dark:text-vermilion-11 hover:text-[#606060] dark:hover:text-dark-text-secondary visited:text-[#4A4A4A] hover:visited:text-[#606060]' >
3333 { children }
3434 </ a >
3535 ) ;
@@ -38,44 +38,44 @@ export const CustomLink: React.FC<CustomLinkProps> = ({
3838 // Handling anchor links
3939 if ( href . startsWith ( '#' ) ) {
4040 return (
41- < a href = { href } { ...rest } className = 'no- underline hover-underline ' >
41+ < a href = { href } { ...rest } className = 'underline dark:visited:text-[#606060] dark: hover:visited-text-dark-text-secondary text-vermilion-00 dark:text-vermilion-11 hover:text-[#606060] dark:hover:text-dark-text-secondary visited:text-[#4A4A4A] hover:visited:text-[#606060] ' >
4242 { children }
4343 </ a >
4444 ) ;
4545 }
4646
4747 const highlightCode = ( text : string ) => {
48- return text . split ( / ( ` .+ ?` ) / g) . map ( ( part : string , index : number ) =>
49- part . startsWith ( '`' ) && part . endsWith ( '`' ) ? (
50- < span key = { index } className = 'border font-medium bg-slate-100 dark:bg-slate-900 mx-1 pl-1 py-0.5 rounded-md border-slate-300 dark:border-slate-700' >
51- { part . slice ( 1 , - 1 ) }
52- </ span >
53- ) : (
54- part
55- )
56- ) ;
57- } ;
48+ return text . split ( / ( ` .+ ?` ) / g) . map ( ( part : string , index : number ) =>
49+ part . startsWith ( '`' ) && part . endsWith ( '`' ) ? (
50+ < span key = { index } className = 'border font-medium bg-slate-100 dark:bg-slate-900 mx-1 pl-1 py-0.5 rounded-md border-slate-300 dark:border-slate-700' >
51+ { part . slice ( 1 , - 1 ) }
52+ </ span >
53+ ) : (
54+ part
55+ )
56+ ) ;
57+ } ;
5858
59- // If there's a title, wrap the content in a HoverCard for tooltip
60- if ( rest ?. title ) {
61- return (
59+ // If there's a title, wrap the content in a HoverCard for tooltip
60+ if ( rest ?. title ) {
61+ return (
6262 < HoverCard >
6363 < HoverCardTrigger asChild >
64- < Link href = { cleanedHref . replaceAll ( "'" , '' ) } { ...rest } title = '' className = 'inline text-teal-07 hover:text-teal-08 no-underline hover-underline ' >
64+ < Link href = { cleanedHref . replaceAll ( "'" , '' ) } { ...rest } title = '' className = 'inline underline dark:visited: text-[#606060] dark:hover:visited-text-dark-text-secondary text-vermilion-00 dark:text-vermilion-11 hover:text-[#606060] dark:hover:text-dark-text-secondary visited:text-[#4A4A4A] hover:visited:text-[#606060] ' >
6565 { children } < BookOpenText className = 'inline ml-1 text-current w-3 h-3' />
6666 </ Link >
6767 </ HoverCardTrigger >
6868 < HoverCardContent className = "bg-vermilion-11 dark:bg-vermilion-00" >
69- < div className = 'mt-0 mb-1 text-vermilion-07 font-medium leading-6' > { children } </ div >
69+ < div className = 'mt-0 mb-1 font-medium leading-6' > { children } </ div >
7070 < div className = 'text-sm leading-6 text-vermilion-08' > { highlightCode ( rest . title || '' ) } </ div >
7171 </ HoverCardContent >
7272 </ HoverCard >
73- ) ;
74- }
73+ ) ;
74+ }
7575
7676 // Internal links handled by Next.js Link component
7777 return (
78- < Link href = { cleanedHref } { ...rest } className = 'no- underline hover-underline ' >
78+ < Link href = { cleanedHref } { ...rest } className = 'underline dark:visited:text-[#606060] dark: hover:visited-text-dark-text-secondary text-vermilion-00 dark:text-vermilion-11 hover:text-[#606060] dark:hover:text-dark-text-secondary visited:text-[#4A4A4A] hover:visited:text-[#606060] ' >
7979 { children }
8080 { /* Ensuring <a> is used inside <Link> for custom attributes like 'className' */ }
8181 </ Link >
0 commit comments