From 621d92dcf63af8f7dda8173e8dd8d44a3c64f3dd Mon Sep 17 00:00:00 2001 From: Alex Gleason Date: Thu, 3 Apr 2025 12:31:10 -0500 Subject: [PATCH] Render "client" tags in statuses even if they don't have an application handler event --- packages/ditto/views/mastodon/statuses.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/ditto/views/mastodon/statuses.ts b/packages/ditto/views/mastodon/statuses.ts index 579aea2b..58c9653e 100644 --- a/packages/ditto/views/mastodon/statuses.ts +++ b/packages/ditto/views/mastodon/statuses.ts @@ -123,7 +123,7 @@ async function renderStatus( if (event.client) { const result = n.json().pipe(n.metadata()).safeParse(event.client.content); if (result.success) { - const name = result.data.name ?? result.data.display_name ?? event.tags.find(([name]) => name === 'client')?.[1]; + const name = result.data.name ?? event.tags.find(([name]) => name === 'client')?.[1]; if (name) { application = { name, @@ -131,6 +131,14 @@ async function renderStatus( }; } } + } else { + const name = event.tags.find(([name]) => name === 'client')?.[1]; + if (name) { + application = { + name, + website: null, + }; + } } const expiresAt = new Date(Number(event.tags.find(([name]) => name === 'expiration')?.[1]) * 1000);