From 9b0d8a55330e70988f3288faad8df3836bb98021 Mon Sep 17 00:00:00 2001 From: Coracle-Bot Date: Wed, 9 Sep 2026 22:31:04 +0000 Subject: [PATCH] Use welshman summarize instead of flotilla having its own copy --- package.json | 2 +- pnpm-lock.yaml | Bin 399016 -> 399016 bytes src/app/render.ts | 56 +++++++--------------------------------------- 3 files changed, 9 insertions(+), 49 deletions(-) diff --git a/package.json b/package.json index 03cb12ae..062186d4 100644 --- a/package.json +++ b/package.json @@ -83,7 +83,7 @@ "@vite-pwa/assets-generator": "^1.0.2", "@vite-pwa/sveltekit": "^1.1.0", "@welshman/app": "^0.10.3", - "@welshman/content": "^0.10.3", + "@welshman/content": "^0.10.5", "@welshman/domain": "^0.10.3", "@welshman/editor": "^0.10.3", "@welshman/feeds": "^0.10.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 934163e1d90f8d103864d485a39def870c736b2a..3ffd660ee066582005ee568e4f25cf68b07425cf 100644 GIT binary patch delta 164 zcmZ3nR$|3ki48TvlNYN9PnH*EWi*{`_>;w=`K<8vv%-vQNsOkGFB+KhrFI3@)J=lEB;MO0Lpmt|)-Wjnh#rIw@w1ezF`rudf|MEHeg z8Rr_BndcP*yK9Gphh}63B^GPvm3fsG8>Ua5*sIW9P{s(vOhC-My`YTceLm32L~*tD Owr4Ec+n%v182|uDr8%Ym delta 157 zcmZ3nR$|3ki48Tvliv$VO*i_7slMz*Bs>=lgaVS#Qz5!y+`sUD80rO7G& zF8+=|m1U*Q8Gd { - switch (parsed.type) { - case ParsedType.Address: - return "another post" - case ParsedType.Cashu: - return "a cashu token" - case ParsedType.Code: - return parsed.value - case ParsedType.Command: - return parsed.raw - case ParsedType.Ellipsis: - return "…" - case ParsedType.Email: - return parsed.value - case ParsedType.Emoji: - return parsed.value.name - case ParsedType.Event: - return "another message" - case ParsedType.Invoice: - return "a lightning invoice" - case ParsedType.Link: { - const {host} = parsed.value.url +const summaryName: SummaryName = parsed => + parsed.type === ParsedType.Profile ? profiles.get().display(parsed.value.pubkey).get() : undefined - return isImage(parsed) ? "an image" : `a link to ${host}` - } - case ParsedType.LinkGrid: - return "some images" - case ParsedType.Newline: - return parsed.value - case ParsedType.Profile: - return profiles.get().display(parsed.value.pubkey).get() - case ParsedType.Room: - return parsed.value.room - case ParsedType.Text: - return parsed.value - case ParsedType.Topic: - return parsed.value - } -} +const renderSummary = (parsed: Parsed[]) => + renderAsText(summarize(parsed, summaryName)).toString().trim() -export const renderNodes = (parsed: Parsed[]) => parsed.map(renderNode).join("") - -export const renderEventAsText = (event: TrustedEvent) => renderNodes(parse(event)).trim() +export const renderEventAsText = (event: TrustedEvent) => renderSummary(parse(event)) const splitLines = (parsed: Parsed[]) => { const lines: Parsed[][] = [[]] @@ -71,7 +32,6 @@ const hasProse = (line: Parsed[]) => // nothing about the reply. The first line carrying words of its own is what the message is about. export const renderEventAsSummary = (event: TrustedEvent) => { const lines = splitLines(parse(event)) - const line = lines.find(hasProse) || lines[0] || [] - return renderNodes(line).trim() + return renderSummary(lines.find(hasProse) || lines[0] || []) }