- Following icon + number now use text-primary (accent color) instead of muted
- Removed optimistic update from usePinnedNotes hook (unnecessary complexity)
- Removed staleTime from pinned notes list query so it refetches properly
- Fixed NostrProvider to invalidate ALL cached queries when relay URLs change,
not just queries with ['nostr'] key. This ensures pinned notes (and all other
data) gets refetched after NostrSync loads the user's actual relay list.
Co-authored-by: shakespeare.diy <assistant@shakespeare.diy>
When viewing a reply's post detail page, the event being replied to
is now rendered above the main post with a thread connector line.
- Added getParentEventId() helper that extracts the parent event ID
from e-tags following NIP-10 conventions (marked and positional)
- Added ParentNote component with avatar, author info, content preview,
and a vertical thread connector line linking parent to child
- Parent note is clickable and navigates to its own post detail page
- Includes skeleton loading state while parent event is being fetched
Co-authored-by: shakespeare.diy <assistant@shakespeare.diy>
- Create PostDetailPage with expanded post view showing author info,
full content, images, stats (reposts, likes, zap amount), full date,
action buttons, and inline reply composer
- Create useEvent hook for fetching single events by hex ID
- Create useReplies hook for fetching kind:1 replies to an event
- Update NIP19Page to render PostDetailPage for note1/nevent1 identifiers
- Make NoteCard clickable to navigate to post detail via nevent1 URL
- Fix NoteMoreMenu to use React Router navigate instead of window.location.href
Co-authored-by: shakespeare.diy <assistant@shakespeare.diy>