@@ -3,6 +3,7 @@ import { AiFillTwitterCircle, AiFillFacebook } from "react-icons/ai";
33import { WEBSITE_URL } from "../../../BLOG_CONSTANTS/_BLOG_SETUP" ;
44import { combineClasses } from "../../utils/utils" ;
55import { useEffect , useState } from "react" ;
6+ import { GAEvent } from "../../../google" ;
67
78const SocialShare = ( ) => {
89 const url =
@@ -12,9 +13,21 @@ const SocialShare = () => {
1213 const facebookShare = `https://www.facebook.com/sharer/sharer.php?u=${ url } ` ;
1314 const linkedinShare = `https://www.linkedin.com/shareArticle?mini=true&url=${ url } &title=Check out this article!!&source=LinkedIn` ;
1415
16+ const trackShareEvent = ( social : string ) => {
17+ GAEvent ( {
18+ action : "share_clicked" ,
19+ event_category : "click" ,
20+ label : social ,
21+ value : null ,
22+ } ) ;
23+ } ;
24+
1525 const copyLink = ( ) => {
16- navigator . clipboard . writeText ( url ) ;
17- setShowCopiedAlert ( true ) ;
26+ if ( typeof window !== "undefined" && navigator ) {
27+ navigator . clipboard . writeText ( url ) ;
28+ setShowCopiedAlert ( true ) ;
29+ }
30+ trackShareEvent ( "copy_clipboard_clicked" ) ;
1831 } ;
1932
2033 const [ showCopiedAlert , setShowCopiedAlert ] = useState ( false ) ;
@@ -36,6 +49,7 @@ const SocialShare = () => {
3649 href = { facebookShare }
3750 onClick = { ( ) => {
3851 window . open ( facebookShare , "popup" , "width=300,height=500" ) ;
52+ trackShareEvent ( "facebook_share_clicked" ) ;
3953 return false ;
4054 } }
4155 target = "popup"
@@ -48,6 +62,7 @@ const SocialShare = () => {
4862 href = { twitterShare }
4963 onClick = { ( ) => {
5064 window . open ( twitterShare , "popup" , "width=600,height=500" ) ;
65+ trackShareEvent ( "twitter_share_clicked" ) ;
5166 return false ;
5267 } }
5368 target = "popup"
@@ -60,6 +75,7 @@ const SocialShare = () => {
6075 href = { linkedinShare }
6176 onClick = { ( ) => {
6277 window . open ( linkedinShare , "popup" , "width=500,height=500" ) ;
78+ trackShareEvent ( "linkedin_share_clicked" ) ;
6379 return false ;
6480 } }
6581 target = "popup"
@@ -78,7 +94,9 @@ const SocialShare = () => {
7894 < div
7995 className = { combineClasses (
8096 "bg-green-100 border border-green-400 text-green-700 px-4 py-3 rounded fixed flex transition-all right-[10px]" ,
81- showCopiedAlert ? 'md:bottom-10 sm:bottom-[0px] opacity-100' : '-bottom-20 opacity-0'
97+ showCopiedAlert
98+ ? "md:bottom-10 sm:bottom-[0px] opacity-100"
99+ : "-bottom-20 opacity-0"
82100 ) }
83101 role = "alert"
84102 >
0 commit comments