Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 92cc000004 |
+2
-14
@@ -596,8 +596,7 @@ export const splitRoomId = (id: string) => id.split("'")
|
||||
export const hasNip29 = (relay?: RelayProfile) =>
|
||||
Boolean(relay?.supported_nips?.map?.(String)?.includes?.("29"))
|
||||
|
||||
const getRoomDeleteId = (event: TrustedEvent) =>
|
||||
getTagValue("h", event.tags) || getTagValue("d", event.tags)
|
||||
const getRoomDeleteId = (event: TrustedEvent) => getTagValue("h", event.tags)
|
||||
|
||||
export const roomMetaEventsByIdByUrl = deriveEventsByIdByUrl({
|
||||
tracker,
|
||||
@@ -608,20 +607,9 @@ export const roomMetaEventsByIdByUrl = deriveEventsByIdByUrl({
|
||||
export const roomsByUrl = derived(roomMetaEventsByIdByUrl, roomMetaEventsByIdByUrl => {
|
||||
const result = new Map<string, Room[]>()
|
||||
|
||||
// Build a global set of deleted rooms from the repository directly so that
|
||||
// deletes are visible even before the tracker has mapped them to a URL.
|
||||
const deletedByH = new Map<string, number>()
|
||||
|
||||
for (const event of repository.query([{kinds: [ROOM_DELETE]}])) {
|
||||
const h = getRoomDeleteId(event)
|
||||
|
||||
if (h) {
|
||||
deletedByH.set(h, max([deletedByH.get(h), event.created_at]))
|
||||
}
|
||||
}
|
||||
|
||||
for (const [url, events] of roomMetaEventsByIdByUrl.entries()) {
|
||||
const [metaEvents, deleteEvents] = partition(spec({kind: ROOM_META}), events.values())
|
||||
const deletedByH = new Map<string, number>()
|
||||
|
||||
for (const event of deleteEvents) {
|
||||
const h = getRoomDeleteId(event)
|
||||
|
||||
Reference in New Issue
Block a user