Improve time based chat partitioning

This commit is contained in:
Jon Staab
2025-12-04 14:27:43 -08:00
parent db3775ae99
commit 10c12c3c48
3 changed files with 9 additions and 4 deletions
+1
View File
@@ -4,6 +4,7 @@
* Fix skinny profile images * Fix skinny profile images
* Custom handler for relay urls * Custom handler for relay urls
* Improve time based chat partitioning
# 1.6.0 # 1.6.0
+4 -2
View File
@@ -5,7 +5,7 @@
import {page} from "$app/stores" import {page} from "$app/stores"
import type {Readable} from "svelte/store" import type {Readable} from "svelte/store"
import type {MakeNonOptional} from "@welshman/lib" import type {MakeNonOptional} from "@welshman/lib"
import {now, formatTimestampAsDate, ago, MINUTE} from "@welshman/lib" import {now, int, formatTimestampAsDate, ago, MINUTE} from "@welshman/lib"
import type {TrustedEvent, EventContent} from "@welshman/util" import type {TrustedEvent, EventContent} from "@welshman/util"
import { import {
makeEvent, makeEvent,
@@ -213,6 +213,7 @@
let previousDate let previousDate
let previousKind let previousKind
let previousPubkey let previousPubkey
let previousCreatedAt = 0
let newMessagesSeen = false let newMessagesSeen = false
if (events) { if (events) {
@@ -249,14 +250,15 @@
type: "note", type: "note",
value: event, value: event,
showPubkey: showPubkey:
date !== previousDate ||
previousPubkey !== event.pubkey || previousPubkey !== event.pubkey ||
event.created_at - previousCreatedAt > int(3, MINUTE) ||
[ROOM_ADD_MEMBER, ROOM_REMOVE_MEMBER].includes(previousKind!), [ROOM_ADD_MEMBER, ROOM_REMOVE_MEMBER].includes(previousKind!),
}) })
previousDate = date previousDate = date
previousKind = event.kind previousKind = event.kind
previousPubkey = event.pubkey previousPubkey = event.pubkey
previousCreatedAt = event.created_at
seen.add(event.id) seen.add(event.id)
} }
} }
+4 -2
View File
@@ -3,7 +3,7 @@
import {page} from "$app/stores" import {page} from "$app/stores"
import type {Readable} from "svelte/store" import type {Readable} from "svelte/store"
import {readable} from "svelte/store" import {readable} from "svelte/store"
import {now, formatTimestampAsDate, MINUTE, ago} from "@welshman/lib" import {now, int, formatTimestampAsDate, MINUTE, ago} from "@welshman/lib"
import type {TrustedEvent, EventContent} from "@welshman/util" import type {TrustedEvent, EventContent} from "@welshman/util"
import {makeEvent, MESSAGE, RELAY_ADD_MEMBER, RELAY_REMOVE_MEMBER} from "@welshman/util" import {makeEvent, MESSAGE, RELAY_ADD_MEMBER, RELAY_REMOVE_MEMBER} from "@welshman/util"
import {pubkey, publishThunk} from "@welshman/app" import {pubkey, publishThunk} from "@welshman/app"
@@ -138,6 +138,7 @@
let previousDate let previousDate
let previousKind let previousKind
let previousPubkey let previousPubkey
let previousCreatedAt = 0
let newMessagesSeen = false let newMessagesSeen = false
if (events) { if (events) {
@@ -174,14 +175,15 @@
type: "note", type: "note",
value: event, value: event,
showPubkey: showPubkey:
date !== previousDate ||
previousPubkey !== event.pubkey || previousPubkey !== event.pubkey ||
event.created_at - previousCreatedAt > int(3, MINUTE) ||
[RELAY_ADD_MEMBER, RELAY_REMOVE_MEMBER].includes(previousKind!), [RELAY_ADD_MEMBER, RELAY_REMOVE_MEMBER].includes(previousKind!),
}) })
previousDate = date previousDate = date
previousKind = event.kind previousKind = event.kind
previousPubkey = event.pubkey previousPubkey = event.pubkey
previousCreatedAt = event.created_at
seen.add(event.id) seen.add(event.id)
} }
} }