Skip to content

Conversation

@ainergiz
Copy link
Owner

@ainergiz ainergiz commented Jan 7, 2026

Summary

Add tab navigation to ProfileScreen with Tweets, Highlights, Media, and Likes tabs.

Changes

API Layer

  • Add UserMedia and UserHighlightsTweets GraphQL operations to types
  • Add fallback query IDs for new operations
  • Implement getUserMedia() and getUserHighlights() client methods

Query Layer

  • Extend use-profile-query hook with lazy loading for all tab types
  • Add query keys for media and highlights caching

UI Layer

  • Add tab bar with keyboard navigation (←/→ and 1-4)
  • Implement tab-specific loading states and empty messages
  • Likes tab only shown on own profile

Keyboard Shortcuts

Key Action
1-4 Jump to tab by number
←/→ Cycle through tabs

Known Issues

Note: Replies tab is disabled due to UserTweetsAndReplies API returning 404 errors consistently. The endpoint implementation is preserved with TODO documentation for future investigation.

Testing

  • bun run lint - passes
  • bun run typecheck - passes
  • bun run test - 259 tests passing
  • Manual testing of tab switching

Add tab navigation to ProfileScreen with Tweets, Highlights, Media, and Likes tabs:

- Add UserMedia and UserHighlightsTweets GraphQL operations
- Add getUserMedia() and getUserHighlights() client methods
- Extend use-profile-query hook with lazy loading for all tab types
- Add query keys for media and highlights caching
- Implement tab bar with keyboard navigation (←/→ and 1-4)
- Add tab-specific loading states and empty messages

Note: Replies tab is disabled due to UserTweetsAndReplies API returning
404 errors consistently. The endpoint implementation is preserved with
TODO documentation for future investigation.
@ainergiz ainergiz merged commit a8346a3 into main Jan 7, 2026
3 of 4 checks passed
@ainergiz ainergiz deleted the ainergiz/sydney-v3 branch January 7, 2026 15:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants