Popup free generatoren

This commit is contained in:
Timo Knuth
2026-04-16 19:34:26 +02:00
parent 673eaf7fd3
commit 231a85ffa4
22 changed files with 225 additions and 1 deletions

View File

@@ -6,6 +6,7 @@ import { toPng } from 'html-to-image';
import { Star, Download, AlertCircle } from 'lucide-react';
import { Button } from '@/components/ui/Button';
import { Input } from '@/components/ui/Input';
import PostDownloadPopup, { shouldShowDownloadPopup } from '@/components/marketing/PostDownloadPopup';
const QR_COLORS = [
{ name: 'Google Blue', value: '#1A73E8' },
@@ -41,6 +42,7 @@ export default function GoogleReviewGenerator() {
const [qrColor, setQrColor] = useState('#1A73E8');
const [frameType, setFrameType] = useState('review');
const [error, setError] = useState('');
const [showPopup, setShowPopup] = useState(false);
const qrRef = useRef<HTMLDivElement>(null);
@@ -76,12 +78,15 @@ export default function GoogleReviewGenerator() {
} catch (err) {
console.error('Download failed', err);
}
if (shouldShowDownloadPopup()) setShowPopup(true);
};
const frameLabel = FRAME_OPTIONS.find(f => f.id === frameType && f.id !== 'none')?.label ?? null;
const isReady = reviewUrl && !error && isValidGoogleReviewLink(reviewUrl);
return (
<>
<PostDownloadPopup open={showPopup} onClose={() => setShowPopup(false)} />
<div className="w-full max-w-5xl mx-auto px-4 md:px-6">
<div className="bg-white rounded-3xl shadow-2xl shadow-slate-900/10 overflow-hidden border border-slate-100">
<div className="grid lg:grid-cols-2">
@@ -209,5 +214,6 @@ export default function GoogleReviewGenerator() {
</div>
</div>
</div>
</>
);
}