{"version":3,"file":"PageHeader-lRcjKcpX.js","sources":["../../src/components/ShareTool.tsx","../../src/lib/email.ts","../../src/components/PageHeader.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Share2, Copy, Check, Mail, Link2, Facebook, X as XIcon } from 'lucide-react';\nimport { sendEmail } from '../lib/email';\nimport { toast } from 'react-hot-toast';\n\ninterface ShareToolProps {\n title: string;\n description: string;\n url?: string;\n}\n\nfunction ShareTool({ title, description, url = window.location.href }: ShareToolProps) {\n const [copied, setCopied] = useState(false);\n const [showEmailForm, setShowEmailForm] = useState(false);\n const [email, setEmail] = useState('');\n\n const copyToClipboard = async () => {\n try {\n await navigator.clipboard.writeText(url);\n setCopied(true);\n toast.success('Link copied to clipboard!');\n setTimeout(() => setCopied(false), 2000);\n } catch (err) {\n console.error('Failed to copy link:', err);\n toast.error('Failed to copy link');\n }\n };\n\n const shareOnX = () => {\n const text = encodeURIComponent(`Check out ${title} - ${description}`);\n window.open(`https://x.com/intent/tweet?text=${text}&url=${encodeURIComponent(url)}`, '_blank');\n };\n\n const shareOnFacebook = () => {\n window.open(`https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(url)}`, '_blank');\n };\n\n const handleEmailShare = async (e: React.FormEvent) => {\n e.preventDefault();\n \n try {\n await sendEmail({\n to: email,\n subject: `Check out this tool: ${title}`,\n html: `\n
${description}
\nTry it out here: ${url}
\n `,\n });\n setShowEmailForm(false);\n setEmail('');\n toast.success('Email sent successfully!');\n } catch (error) {\n console.error('Error sending email:', error);\n toast.error('Failed to send email');\n }\n };\n\n return (\n{subtitle}
\n )}\n\n {description}\n
\n