diff --git a/frontend/components/letterfeed/NewsletterCard.tsx b/frontend/components/letterfeed/NewsletterCard.tsx index 55acd7c..96df60f 100644 --- a/frontend/components/letterfeed/NewsletterCard.tsx +++ b/frontend/components/letterfeed/NewsletterCard.tsx @@ -3,6 +3,7 @@ import { Button } from "@/components/ui/button" import { Badge } from "@/components/ui/badge" import { Rss, Mail, ExternalLink, Edit } from "lucide-react" import { Newsletter, getFeedUrl } from "@/lib/api" +import { useEffect, useState } from "react" interface NewsletterCardProps { newsletter: Newsletter @@ -10,6 +11,17 @@ interface NewsletterCardProps { } export function NewsletterCard({ newsletter, onEdit }: NewsletterCardProps) { + const [absoluteFeedUrl, setAbsoluteFeedUrl] = useState(getFeedUrl(newsletter.id)) + + useEffect(() => { + const url = getFeedUrl(newsletter.id) + if (url.startsWith("/")) { + setAbsoluteFeedUrl(`${window.location.origin}${url}`) + } else { + setAbsoluteFeedUrl(url) + } + }, [newsletter.id]) + return ( @@ -52,7 +64,7 @@ export function NewsletterCard({ newsletter, onEdit }: NewsletterCardProps) { className="inline-flex items-center gap-1 text-sm text-blue-600 hover:text-blue-800 hover:underline" > - {getFeedUrl(newsletter.id)} + {absoluteFeedUrl}