Skip to content

feat(currency-info): show the community leader - #1164

Merged
bmc08gt merged 1 commit into
mainfrom
feat/currency-info-community-leader
Oct 29, 2026
Merged

bmc08gt merged 1 commit into
mainfrom
feat/currency-info-community-leader

Conversation

@bmc08gt

@bmc08gt bmc08gt commented Oct 29, 2026 •

Copy link
Copy Markdown
Collaborator

GetCommunity already returns the currency's leader, and Community.leader
parses it, but CurrencyInfoViewModel read only topHolderChats. The view
model now keeps the leader from the same call, and Currency Info shows a
"Community Leader" section between Top Community Chats and About.

  • The section shows whenever there is a leader, with or without ranked
    chats. A leader with no display name counts as none.
  • The row uses the chat row's card, now shared as CommunityRowCard, with
    the leader's photo, name and @username. Tapping it opens their profile
    with a new UserProfileOrigin.communityLeader. A leader with no user id
    gets no chevron and isn't tappable.
  • The new origin follows .deeplink except arrivesFetched: GetCommunity's
    profile carries no bio, cover or join date, so the profile screen still
    fetches.
  • USDF no longer calls GetCommunity. It relied on the server failing.
  • CommunityFetching lets the tests drive the call through MockSession.

Spec test cases 1–4, 7 and 8 are covered by CurrencyInfoViewModelCommunityLeaderTests. CommunityLeaderTextTests covers the row text for cases 5 and 6 (subtitle without a username, label without "Opens profile."); the row not being tappable without a user id was checked by reading the code, not by a test. Design: Option A, node 12992:57.

GetCommunity already returns the currency's leader, and Community.leader
parses it, but CurrencyInfoViewModel read only topHolderChats. The view
model now keeps the leader from the same call, and Currency Info shows a
"Community Leader" section between Top Community Chats and About.

- The section shows whenever there is a leader, with or without ranked
  chats. A leader with no display name counts as none.
- The row uses the chat row's card, now shared as CommunityRowCard, with
  the leader's photo, name and @username. Tapping it opens their profile
  with a new UserProfileOrigin.communityLeader. A leader with no user id
  gets no chevron and isn't tappable.
- The new origin follows .deeplink except arrivesFetched: GetCommunity's
  profile carries no bio, cover or join date, so the profile screen still
  fetches.
- USDF no longer calls GetCommunity. It relied on the server failing.
- CommunityFetching lets the tests drive the call through MockSession.
@bmc08gt bmc08gt self-assigned this Oct 29, 2026
@bmc08gt
bmc08gt merged commit 9bf5620 into main Oct 29, 2026
4 checks passed
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.

1 participant