Skip to content

feat(send/contactlist): show typing state in message preview#1065

Merged
bmc08gt merged 1 commit into
code/cashfrom
feat/send-typing-preview
Jul 10, 2026
Merged

feat(send/contactlist): show typing state in message preview#1065
bmc08gt merged 1 commit into
code/cashfrom
feat/send-typing-preview

Conversation

@bmc08gt

@bmc08gt bmc08gt commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator

Fold real-time typing indicators into the send-flow contact list, and pay down the accompanying bloat in the list model and ViewModel:

  • Regroup the chat-derived fields on ContactListItem.ContactRow into a nullable Conversation (chatId, lastMessagePreview, unreadCount, isTyping). lastActivity stays on the row since it's also the sort key for on-Flipcash contacts that have no chat yet.
  • Extract generateListItems/formatPreview out of SendFlowViewModel into a pure, injectable ContactListBuilder, shrinking the ViewModel and making the list logic unit-testable on its own.
  • Apply typing as a cheap second-stage flow overlay on top of the base list (distinctUntilChanged typing keys, self filtered out) so typing ticks never re-filter or re-sort the list.

@bmc08gt bmc08gt self-assigned this Jul 10, 2026
@github-actions github-actions Bot added the type: feature New functionality label Jul 10, 2026
@bmc08gt bmc08gt force-pushed the feat/send-typing-preview branch from 82139f5 to 4e4ffe2 Compare July 10, 2026 15:27
Fold real-time typing indicators into the send-flow contact list, and pay
down the accompanying bloat in the list model and ViewModel:

- Regroup the chat-derived fields on ContactListItem.ContactRow into a
  nullable Conversation (chatId, lastMessagePreview, unreadCount, isTyping).
  lastActivity stays on the row since it's also the sort key for on-Flipcash
  contacts that have no chat yet.
- Extract generateListItems/formatPreview out of SendFlowViewModel into a
  pure, injectable ContactListBuilder, shrinking the ViewModel and making the
  list logic unit-testable on its own.
- Apply typing as a cheap second-stage flow overlay on top of the base list
  (distinctUntilChanged typing keys, self filtered out) so typing ticks never
  re-filter or re-sort the list.

Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
@bmc08gt bmc08gt force-pushed the feat/send-typing-preview branch from 4e4ffe2 to 140d992 Compare July 10, 2026 15:31
@bmc08gt bmc08gt merged commit de4766b into code/cash Jul 10, 2026
2 checks passed
@bmc08gt bmc08gt deleted the feat/send-typing-preview branch July 10, 2026 15:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: feature New functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant