Use nprofile and nevent links for external URLs in Account and Status

This commit is contained in:
Alex Gleason 2024-10-16 10:13:37 -05:00
parent 30d8cc4108
commit d1635712cf
No known key found for this signature in database
GPG key ID: 7211D1F99744FBB7
2 changed files with 9 additions and 3 deletions

View file

@ -45,6 +45,7 @@ async function renderAccount(
} = n.json().pipe(n.metadata()).catch({}).parse(event.content);
const npub = nip19.npubEncode(pubkey);
const nprofile = nip19.nprofileEncode({ pubkey, relays: [Conf.relay] });
const parsed05 = await parseAndVerifyNip05(nip05, pubkey, signal);
const acct = parsed05?.handle || npub;
@ -100,7 +101,7 @@ async function renderAccount(
username: parsed05?.nickname || npub.substring(0, 8),
ditto: {
accepts_zaps: Boolean(getLnurl({ lud06, lud16 })),
external_url: Conf.external(npub),
external_url: Conf.external(nprofile),
},
domain: parsed05?.domain,
pleroma: {

View file

@ -25,7 +25,12 @@ async function renderStatus(event: DittoEvent, opts: RenderStatusOpts): Promise<
if (depth > 2 || depth < 0) return;
const note = nip19.noteEncode(event.id);
const nevent = nip19.neventEncode({
id: event.id,
author: event.pubkey,
kind: event.kind,
relays: [Conf.relay],
});
const account = event.author
? await renderAccount({ ...event.author, author_stats: event.author_stats })
@ -138,7 +143,7 @@ async function renderStatus(event: DittoEvent, opts: RenderStatusOpts): Promise<
url: Conf.local(`/@${account.acct}/${event.id}`),
zapped: Boolean(zapEvent),
ditto: {
external_url: Conf.external(note),
external_url: Conf.external(nevent),
},
pleroma: {
emoji_reactions: reactions,