albert.lol/components/Icon.tsx
2022-10-26 23:21:17 +02:00

42 lines
798 B
TypeScript

import Link from 'next/link';
import toast from 'react-hot-toast';
import copy from 'copy-to-clipboard';
type Icon = {
children: any;
reference: string;
copyValue?: boolean;
};
const notify = () => {
toast.remove(),
toast.success('Copied to clipboard', {
style: {
background: '#0f1012',
color: '#fff',
fontSize: '1em',
},
});
};
export const Icon = ({ children, reference, copyValue }: Icon) => {
if (copyValue) {
return (
<Link
href={''}
className={`cursor-pointer`}
onClick={() => {
notify(), copy(reference);
}}
>
{children}
</Link>
);
}
return (
<Link href={reference} target='_blank' className={'cursor-pointer'}>
{children}
</Link>
);
};