From 4e76aee8182f27e805a69e23e425654a41b7903e Mon Sep 17 00:00:00 2001 From: Kieran Date: Wed, 28 May 2025 21:23:44 +0100 Subject: [PATCH] fix: use preload event in link handler --- src/hooks/stream-link.ts | 9 +++++---- src/pages/link-handler.tsx | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/hooks/stream-link.ts b/src/hooks/stream-link.ts index 4710c0d..6d4fc5a 100644 --- a/src/hooks/stream-link.ts +++ b/src/hooks/stream-link.ts @@ -1,11 +1,12 @@ +import { NIP5_DOMAIN } from "@/const"; import { fetchNip05Pubkey } from "@snort/shared"; -import { NostrLink, NostrPrefix, tryParseNostrLink } from "@snort/system"; +import { NostrEvent, NostrLink, NostrPrefix, tryParseNostrLink } from "@snort/system"; import { useEffect, useState } from "react"; import { useParams } from "react-router-dom"; -export function useStreamLink() { +export function useStreamLink(evPreload?: NostrEvent) { const params = useParams(); - const [link, setLink] = useState(); + const [link, setLink] = useState(evPreload ? NostrLink.fromEvent(evPreload) : undefined); useEffect(() => { if (params.id) { @@ -13,7 +14,7 @@ export function useStreamLink() { if (parsedLink) { setLink(parsedLink); } else { - const [handle, domain] = (params.id.includes("@") ? params.id : `${params.id}@zap.stream`).split("@"); + const [handle, domain] = (params.id.includes("@") ? params.id : `${params.id}@${NIP5_DOMAIN}`).split("@"); fetchNip05Pubkey(handle, domain).then(d => { if (d) { setLink(new NostrLink(NostrPrefix.PublicKey, d)); diff --git a/src/pages/link-handler.tsx b/src/pages/link-handler.tsx index a154891..5fa9a4c 100644 --- a/src/pages/link-handler.tsx +++ b/src/pages/link-handler.tsx @@ -14,7 +14,7 @@ import { ShortPage } from "./short"; export function LinkHandler() { const location = useLocation(); const evPreload = getEventFromLocationState(location.state); - const link = useStreamLink(); + const link = useStreamLink(evPreload); const layoutContext = useLayout(); if (!link) return;