import { siteConfig } from '@/lib/config'
import { useGlobal } from '@/lib/global'
import copy from 'copy-to-clipboard'
import dynamic from 'next/dynamic'
import { useRouter } from 'next/router'
import { useState } from 'react'
import {
FacebookShareButton,
FacebookIcon,
FacebookMessengerShareButton,
FacebookMessengerIcon,
RedditShareButton,
RedditIcon,
LineShareButton,
LineIcon,
EmailShareButton,
EmailIcon,
TwitterShareButton,
TwitterIcon,
TelegramShareButton,
TelegramIcon,
WhatsappShareButton,
WhatsappIcon,
LinkedinShareButton,
LinkedinIcon,
PinterestShareButton,
PinterestIcon,
VKIcon,
VKShareButton,
OKShareButton,
OKIcon,
TumblrShareButton,
TumblrIcon,
LivejournalIcon,
LivejournalShareButton,
MailruShareButton,
MailruIcon,
ViberIcon,
ViberShareButton,
WorkplaceShareButton,
WorkplaceIcon,
WeiboShareButton,
WeiboIcon,
PocketShareButton,
PocketIcon,
InstapaperShareButton,
InstapaperIcon,
HatenaShareButton,
HatenaIcon
} from 'react-share'
const QrCode = dynamic(() => import('@/components/QrCode'), { ssr: false })
/**
* @author https://github.com/txs
* @param {*} param0
* @returns
*/
const ShareButtons = ({ post }) => {
const router = useRouter()
const shareUrl = siteConfig('LINK') + router.asPath
const title = post.title || siteConfig('TITLE')
const image = post.pageCover
const body = post?.title + ' | ' + title + ' ' + shareUrl + ' ' + post?.summary
const services = siteConfig('POSTS_SHARE_SERVICES').split(',')
const titleWithSiteInfo = title + ' | ' + siteConfig('TITLE')
const { locale } = useGlobal()
const [qrCodeShow, setQrCodeShow] = useState(false)
const copyUrl = () => {
copy(shareUrl)
alert(locale.COMMON.URL_COPIED)
}
const openPopover = () => {
setQrCodeShow(true)
}
const closePopover = () => {
setQrCodeShow(false)
}
return (
<>
{services.map(singleService => {
if (singleService === 'facebook') {
return (
)
}
if (singleService === 'messenger') {
return (
)
}
if (singleService === 'line') {
return (
)
}
if (singleService === 'reddit') {
return (
)
}
if (singleService === 'email') {
return (
)
}
if (singleService === 'twitter') {
return (
)
}
if (singleService === 'telegram') {
return (
)
}
if (singleService === 'whatsapp') {
return (
)
}
if (singleService === 'linkedin') {
return (
)
}
if (singleService === 'pinterest') {
return (
)
}
if (singleService === 'vkshare') {
return (
)
}
if (singleService === 'okshare') {
return (
)
}
if (singleService === 'tumblr') {
return (
)
}
if (singleService === 'livejournal') {
return (
)
}
if (singleService === 'mailru') {
return (
)
}
if (singleService === 'viber') {
return (
)
}
if (singleService === 'workplace') {
return (
)
}
if (singleService === 'weibo') {
return (
)
}
if (singleService === 'pocket') {
return (
)
}
if (singleService === 'instapaper') {
return (
)
}
if (singleService === 'hatena') {
return (
)
}
if (singleService === 'qq') {
return
}
if (singleService === 'wechat') {
return
}
if (singleService === 'link') {
return
}
return <>>
})}
>
)
}
export default ShareButtons