2024-02-27 19:05:50 +08:00
|
|
|
import React from 'react';
|
|
|
|
|
|
|
|
|
|
interface IProps extends React.PropsWithChildren {
|
2024-05-09 11:30:15 +08:00
|
|
|
link: string;
|
2024-03-28 16:18:16 +08:00
|
|
|
preventDefault?: boolean;
|
2024-05-09 11:30:15 +08:00
|
|
|
color?: string;
|
2024-02-27 19:05:50 +08:00
|
|
|
}
|
|
|
|
|
|
2024-03-28 16:18:16 +08:00
|
|
|
const NewDocumentLink = ({
|
|
|
|
|
children,
|
2024-05-09 11:30:15 +08:00
|
|
|
link,
|
2024-03-28 16:18:16 +08:00
|
|
|
preventDefault = false,
|
2024-05-09 11:30:15 +08:00
|
|
|
color = 'rgb(15, 79, 170)',
|
2024-03-28 16:18:16 +08:00
|
|
|
}: IProps) => {
|
2024-02-27 19:05:50 +08:00
|
|
|
return (
|
|
|
|
|
<a
|
|
|
|
|
target="_blank"
|
2024-03-28 16:18:16 +08:00
|
|
|
onClick={!preventDefault ? undefined : (e) => e.preventDefault()}
|
2024-05-09 11:30:15 +08:00
|
|
|
href={link}
|
2024-02-27 19:05:50 +08:00
|
|
|
rel="noreferrer"
|
2024-05-09 11:30:15 +08:00
|
|
|
style={{ color }}
|
2024-02-27 19:05:50 +08:00
|
|
|
>
|
|
|
|
|
{children}
|
|
|
|
|
</a>
|
|
|
|
|
);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export default NewDocumentLink;
|