From 0279282f7efb5dc03efc7fda8251acbff655317f Mon Sep 17 00:00:00 2001 From: maikrolf <40924921+maikrolf@users.noreply.github.com> Date: Thu, 1 Oct 2026 19:21:01 +0200 Subject: [PATCH] fix: GatewayLink wijst naar ipfs.io in plaats van de eigen gateway - Component hardcodede https://ipfs.io/ipfs/; de portal heeft zijn eigen gateway (NEXT_PUBLIC_GATEWAY_URL, fallback ipfs.maos.dedyn.io) - Bouwt de link nu via de gedeelde gatewayLink() uit lib/helpers, dus zelfde basis-URL en /ipfs/-pad als alle andere share-links - ?filename= gaat dezelfde route in, encoding ongewijzigd - Nieuwe render-test (react-dom/server) dekt gateway-keuze, config-override en filename-query --- src/app/explorer/components/GatewayLink.tsx | 10 ++-- .../components/__tests__/GatewayLink.test.tsx | 50 +++++++++++++++++++ 2 files changed, 57 insertions(+), 3 deletions(-) create mode 100644 src/app/explorer/components/__tests__/GatewayLink.test.tsx diff --git a/src/app/explorer/components/GatewayLink.tsx b/src/app/explorer/components/GatewayLink.tsx index ad75dce..6cd8872 100644 --- a/src/app/explorer/components/GatewayLink.tsx +++ b/src/app/explorer/components/GatewayLink.tsx @@ -2,6 +2,7 @@ import { useState } from 'react'; import { Copy, CheckCircle } from 'lucide-react'; +import { gatewayLink } from '@/lib/helpers'; interface GatewayLinkProps { cid: string; @@ -10,11 +11,14 @@ interface GatewayLinkProps { export default function GatewayLink({ cid, filename }: GatewayLinkProps) { const [copied, setCopied] = useState(false); - const gatewayUrl = `https://ipfs.io/ipfs/${cid}${filename ? `?filename=${encodeURIComponent(filename)}` : ''}`; + // Gedeelde helper: gateway-basis uit lib/config.ts + het /ipfs/-pad van de + // route GET /ipfs/. Nooit een externe gateway (ipfs.io) hardcoden — + // dan wijst de link content van een andere node aan. + const link = gatewayLink(cid, filename); async function handleCopy() { try { - await navigator.clipboard.writeText(gatewayUrl); + await navigator.clipboard.writeText(link); setCopied(true); setTimeout(() => setCopied(false), 2000); } catch (err) { @@ -25,7 +29,7 @@ export default function GatewayLink({ cid, filename }: GatewayLinkProps) { return (
- {gatewayUrl} + {link}