fix: 🐛

This commit is contained in:
codytseng
2025-08-07 00:24:03 +08:00
parent 83052a2ba8
commit 2f4f4fffcf
5 changed files with 75 additions and 13 deletions

View File

@@ -1,7 +1,11 @@
import NewNotesButton from '@/components/NewNotesButton'
import { Button } from '@/components/ui/button'
import { BIG_RELAY_URLS, ExtendedKind } from '@/constants'
import { isReplyNoteEvent } from '@/lib/event'
import {
getReplaceableCoordinateFromEvent,
isReplaceableEvent,
isReplyNoteEvent
} from '@/lib/event'
import { checkAlgoRelay } from '@/lib/relay'
import { isSafari } from '@/lib/utils'
import { useMuteList } from '@/providers/MuteListProvider'
@@ -296,6 +300,8 @@ export default function NoteList({
}, 0)
}
const idSet = new Set<string>()
return (
<div className={className}>
<Tabs
@@ -338,11 +344,17 @@ export default function NoteList({
<div className="min-h-screen">
{events
.slice(0, showCount)
.filter(
(event: Event) =>
.filter((event: Event) => {
const id = isReplaceableEvent(event.kind)
? getReplaceableCoordinateFromEvent(event)
: event.id
if (idSet.has(id)) return false
idSet.add(id)
return (
(listMode !== 'posts' || !isReplyNoteEvent(event)) &&
(skipTrustCheck || !hideUntrustedNotes || isUserTrusted(event.pubkey))
)
)
})
.map((event) => (
<NoteCard
key={event.id}

View File

@@ -1,7 +1,7 @@
import { BIG_RELAY_URLS, ExtendedKind } from '@/constants'
import {
getParentETag,
getReplaceableEventCoordinate,
getReplaceableCoordinateFromEvent,
getRootATag,
getRootETag,
getRootEventHexId,
@@ -37,7 +37,7 @@ export default function ReplyNoteList({ index, event }: { index?: number; event:
const replyIdSet = new Set<string>()
const replyEvents: NEvent[] = []
const currentEventKey = isReplaceableEvent(event.kind)
? getReplaceableEventCoordinate(event)
? getReplaceableCoordinateFromEvent(event)
: event.id
let parentEventKeys = [currentEventKey]
while (parentEventKeys.length > 0) {
@@ -64,7 +64,7 @@ export default function ReplyNoteList({ index, event }: { index?: number; event:
let root: TRootInfo = isReplaceableEvent(event.kind)
? {
type: 'A',
id: getReplaceableEventCoordinate(event),
id: getReplaceableCoordinateFromEvent(event),
eventId: event.id,
pubkey: event.pubkey,
relay: client.getEventHint(event.id)