From ca18cf25e3d13a2bc96ab38a5ec88c75dc56e481 Mon Sep 17 00:00:00 2001 From: Martti Malmi Date: Tue, 17 Oct 2023 11:57:47 +0300 Subject: [PATCH] rm /e/ and /p/ from event & profile links --- packages/app/src/Element/Embed/NostrLink.tsx | 2 +- packages/app/src/Element/Event/NoteInner.tsx | 6 +++--- packages/app/src/Element/Event/Thread.tsx | 2 +- packages/app/src/Pages/Notifications.tsx | 2 +- packages/app/src/SnortUtils/index.ts | 12 +++++++++++- 5 files changed, 17 insertions(+), 7 deletions(-) diff --git a/packages/app/src/Element/Embed/NostrLink.tsx b/packages/app/src/Element/Embed/NostrLink.tsx index e99306c7..994a7748 100644 --- a/packages/app/src/Element/Embed/NostrLink.tsx +++ b/packages/app/src/Element/Embed/NostrLink.tsx @@ -13,7 +13,7 @@ export default function NostrLink({ link, depth }: { link: string; depth?: numbe if ((depth ?? 0) > 0) { const evLink = nav.encode(); return ( - e.stopPropagation()} state={{ from: location.pathname }}> + e.stopPropagation()} state={{ from: location.pathname }}> #{evLink.substring(0, 12)} ); diff --git a/packages/app/src/Element/Event/NoteInner.tsx b/packages/app/src/Element/Event/NoteInner.tsx index 2fb2d165..2bca6c3d 100644 --- a/packages/app/src/Element/Event/NoteInner.tsx +++ b/packages/app/src/Element/Event/NoteInner.tsx @@ -154,9 +154,9 @@ export function NoteInner(props: NoteProps) { const link = NostrLink.fromEvent(eTarget); // detect cmd key and open in new tab if (e.metaKey) { - window.open(`/e/${link.encode()}`, "_blank"); + window.open(`/${link.encode()}`, "_blank"); } else { - navigate(`/e/${link.encode()}`, { + navigate(`/${link.encode()}`, { state: eTarget, }); } @@ -211,7 +211,7 @@ export function NoteInner(props: NoteProps) { {pubMentions} {others} ) : ( - replyLink && {replyLink.encode().substring(0, 12)} + replyLink && {replyLink.encode().substring(0, 12)} )} ); diff --git a/packages/app/src/Element/Event/Thread.tsx b/packages/app/src/Element/Event/Thread.tsx index c82c27c6..96392ec6 100644 --- a/packages/app/src/Element/Event/Thread.tsx +++ b/packages/app/src/Element/Event/Thread.tsx @@ -238,7 +238,7 @@ export function Thread(props: { onBack?: () => void; disableSpotlight?: boolean function navigateThread(e: TaggedNostrEvent) { thread.setCurrent(e.id); - //router.navigate(`/e/${NostrLink.fromEvent(e).encode()}`, { replace: true }) + //router.navigate(`/${NostrLink.fromEvent(e).encode()}`, { replace: true }) } const parent = useMemo(() => { diff --git a/packages/app/src/Pages/Notifications.tsx b/packages/app/src/Pages/Notifications.tsx index 87e35509..5dc17c69 100644 --- a/packages/app/src/Pages/Notifications.tsx +++ b/packages/app/src/Pages/Notifications.tsx @@ -395,7 +395,7 @@ function NotificationGroup({ evs, onClick }: { evs: Array; onC if (onClick) { onClick(context); } else { - navigate(`/e/${context.encode()}`); + navigate(`/${context.encode()}`); } }} /> diff --git a/packages/app/src/SnortUtils/index.ts b/packages/app/src/SnortUtils/index.ts index a78bdb5d..7b12ff34 100644 --- a/packages/app/src/SnortUtils/index.ts +++ b/packages/app/src/SnortUtils/index.ts @@ -107,7 +107,17 @@ export function eventLink(hex: u256, relays?: Array | string) { const encoded = relays ? encodeTLV(NostrPrefix.Event, hex, Array.isArray(relays) ? relays : [relays]) : hexToBech32(NostrPrefix.Note, hex); - return `/e/${encoded}`; + return `/${encoded}`; +} + +/** + * Convert hex pubkey to bech32 link url + */ +export function profileLink(hex: HexKey, relays?: Array | string) { + const encoded = relays + ? encodeTLV(NostrPrefix.Profile, hex, Array.isArray(relays) ? relays : [relays]) + : hexToBech32(NostrPrefix.PublicKey, hex); + return `/${encoded}`; } /**