Browse Source

feat: immediately insert user-created event into feed (#534)

imwald
mleku 6 months ago committed by GitHub
parent
commit
24f0b32611
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 14
      src/components/NoteList/index.tsx

14
src/components/NoteList/index.tsx

@ -52,7 +52,7 @@ const NoteList = forwardRef( @@ -52,7 +52,7 @@ const NoteList = forwardRef(
ref
) => {
const { t } = useTranslation()
const { startLogin } = useNostr()
const { startLogin, pubkey } = useNostr()
const { isUserTrusted } = useUserTrust()
const { mutePubkeySet } = useMuteList()
const { hideContentMentioningMutedUsers } = useContentPolicy()
@ -164,9 +164,15 @@ const NoteList = forwardRef( @@ -164,9 +164,15 @@ const NoteList = forwardRef(
}
},
onNew: (event) => {
setNewEvents((oldEvents) =>
[event, ...oldEvents].sort((a, b) => b.created_at - a.created_at)
)
if (pubkey && event.pubkey === pubkey) {
// If the new event is from the current user, insert it directly into the feed
setEvents((oldEvents) => (oldEvents.some((e) => e.id === event.id) ? oldEvents : [event, ...oldEvents]))
} else {
// Otherwise, buffer it and show the New Notes button
setNewEvents((oldEvents) =>
[event, ...oldEvents].sort((a, b) => b.created_at - a.created_at)
)
}
}
},
{

Loading…
Cancel
Save