fix: address code review issues for embeds implementation

- Fix ?? to || in metadataFetcher.ts to handle empty strings from Cheerio
- Fix stale embeds on message edit: delete old embeds synchronously before
  broadcast, then resolve new ones async (all 4 edit paths: REST+WS, msg+DM)
- Revert unrelated MessageList.tsx scroll threshold change (5000 not 150)
- Remove duplicate embed indexes from migrateAddIndexes (kept standalone ones)
This commit is contained in:
Jannis Braun
2026-03-20 23:58:06 +01:00
parent dcdf10c5de
commit ff2decded5
6 changed files with 30 additions and 23 deletions
+5 -5
View File
@@ -93,13 +93,13 @@ export async function fetchUrlMetadata(url: string): Promise<UrlMetadata | null>
const $ = cheerio.load(html);
const metadata: UrlMetadata = {
title: $('meta[property="og:title"]').attr('content') ?? $('title').text() ?? null,
title: $('meta[property="og:title"]').attr('content') || $('title').text() || null,
description:
$('meta[property="og:description"]').attr('content') ??
$('meta[name="description"]').attr('content') ??
$('meta[property="og:description"]').attr('content') ||
$('meta[name="description"]').attr('content') ||
null,
image: $('meta[property="og:image"]').attr('content') ?? null,
siteName: $('meta[property="og:site_name"]').attr('content') ?? null,
image: $('meta[property="og:image"]').attr('content') || null,
siteName: $('meta[property="og:site_name"]').attr('content') || null,
url,
};