fix: show full url of feeds

This commit is contained in:
Leon
2025-07-16 19:43:47 +02:00
parent 9070a286c4
commit b50e496786

View File

@@ -3,6 +3,7 @@ import { Button } from "@/components/ui/button"
import { Badge } from "@/components/ui/badge" import { Badge } from "@/components/ui/badge"
import { Rss, Mail, ExternalLink, Edit } from "lucide-react" import { Rss, Mail, ExternalLink, Edit } from "lucide-react"
import { Newsletter, getFeedUrl } from "@/lib/api" import { Newsletter, getFeedUrl } from "@/lib/api"
import { useEffect, useState } from "react"
interface NewsletterCardProps { interface NewsletterCardProps {
newsletter: Newsletter newsletter: Newsletter
@@ -10,6 +11,17 @@ interface NewsletterCardProps {
} }
export function NewsletterCard({ newsletter, onEdit }: 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 ( return (
<Card className="hover:shadow-md transition-shadow flex flex-col"> <Card className="hover:shadow-md transition-shadow flex flex-col">
<CardHeader> <CardHeader>
@@ -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" className="inline-flex items-center gap-1 text-sm text-blue-600 hover:text-blue-800 hover:underline"
> >
<ExternalLink className="w-3 h-3" /> <ExternalLink className="w-3 h-3" />
{getFeedUrl(newsletter.id)} {absoluteFeedUrl}
</a> </a>
</div> </div>
</CardContent> </CardContent>