diff --git a/src/services/bookmarkController.ts b/src/services/bookmarkController.ts index 71fded3a..42540f2f 100644 --- a/src/services/bookmarkController.ts +++ b/src/services/bookmarkController.ts @@ -352,9 +352,9 @@ class BookmarkController { urlReferences: extractUrlsFromContent(b.content) })) .sort((a, b) => { - // Sort by listUpdatedAt desc, nulls last - const aTs = a.listUpdatedAt ?? -Infinity - const bTs = b.listUpdatedAt ?? -Infinity + // Sort by display time: created_at, else listUpdatedAt. Newest first. Nulls last. + const aTs = (a.created_at ?? a.listUpdatedAt ?? -Infinity) + const bTs = (b.created_at ?? b.listUpdatedAt ?? -Infinity) return bTs - aTs }) diff --git a/src/utils/bookmarkUtils.tsx b/src/utils/bookmarkUtils.tsx index 833a87c4..0f165293 100644 --- a/src/utils/bookmarkUtils.tsx +++ b/src/utils/bookmarkUtils.tsx @@ -87,13 +87,8 @@ export const renderParsedContent = (parsedContent: ParsedContent) => { // Sorting and grouping for bookmarks export const sortIndividualBookmarks = (items: IndividualBookmark[]) => { - return items - .slice() - .sort((a, b) => { - const aTs = a.listUpdatedAt ?? -Infinity - const bTs = b.listUpdatedAt ?? -Infinity - return bTs - aTs - }) + const getSortTime = (b: IndividualBookmark) => b.created_at ?? b.listUpdatedAt ?? -Infinity + return items.slice().sort((a, b) => getSortTime(b) - getSortTime(a)) } export function groupIndividualBookmarks(items: IndividualBookmark[]) {