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(
ref ref
) => { ) => {
const { t } = useTranslation() const { t } = useTranslation()
const { startLogin } = useNostr() const { startLogin, pubkey } = useNostr()
const { isUserTrusted } = useUserTrust() const { isUserTrusted } = useUserTrust()
const { mutePubkeySet } = useMuteList() const { mutePubkeySet } = useMuteList()
const { hideContentMentioningMutedUsers } = useContentPolicy() const { hideContentMentioningMutedUsers } = useContentPolicy()
@ -164,9 +164,15 @@ const NoteList = forwardRef(
} }
}, },
onNew: (event) => { onNew: (event) => {
setNewEvents((oldEvents) => if (pubkey && event.pubkey === pubkey) {
[event, ...oldEvents].sort((a, b) => b.created_at - a.created_at) // 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