Skip to content

Conversation

@surajboniwal
Copy link

@surajboniwal surajboniwal commented Sep 18, 2025

Added the missing suffix icon that was overlooked during upstream sync.

Summary by CodeRabbit

  • New Features

    • Live location sharing (static/live), active location lists, and location event handling.
    • Location labels in message previews; poll attachments rendering.
    • Unified message actions menu; download action in full-screen media.
    • New desktopOrWeb builder option.
  • Breaking Changes

    • Reactions now use a Reaction object.
    • Removed deprecated voice recording widgets/builders and asset-based icon constructors.
    • File picker uses compressionQuality (int) instead of allowCompression (bool).
    • Removed legacy context menu items; default unread indicator is now const.
  • Bug Fixes

    • Safer channel avatar initials; improved AppBar transparency.
  • Documentation

    • Added v10 migration guide; updated CHANGELOGs.

ramaarf and others added 30 commits May 2, 2024 14:24
…-fork

# Conflicts:
#	packages/stream_chat/CHANGELOG.md
#	packages/stream_chat_flutter/CHANGELOG.md
#	packages/stream_chat_flutter/lib/src/attachment/builder/attachment_widget_builder.dart
#	packages/stream_chat_flutter/pubspec.yaml
#	packages/stream_chat_flutter_core/pubspec.yaml
#	packages/stream_chat_localizations/pubspec.yaml
#	packages/stream_chat_persistence/pubspec.yaml
- Fix Bubble shape if reversed
# Conflicts:
#	packages/stream_chat_flutter/example/ios/Runner.xcodeproj/project.pbxproj
#	packages/stream_chat_flutter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
#	packages/stream_chat_flutter/lib/src/message_widget/message_widget.dart
#	packages/stream_chat_flutter/pubspec.yaml
#	packages/stream_chat_flutter_core/pubspec.yaml
#	packages/stream_chat_localizations/pubspec.yaml
#	packages/stream_chat_persistence/pubspec.yaml
Fix suffix position
xsahil03x and others added 28 commits July 20, 2025 17:11
# Conflicts:
#	packages/stream_chat/CHANGELOG.md
#	packages/stream_chat_flutter_core/CHANGELOG.md
# Conflicts:
#	packages/stream_chat_flutter/CHANGELOG.md
#	packages/stream_chat_flutter/lib/src/message_input/stream_message_input.dart
#	packages/stream_chat_persistence/CHANGELOG.md
The animation curves and durations for the reaction picker and message modal have been updated for a smoother user experience.

- The `reaction_picker_icon_list.dart` animation curve is now `Curves.easeOutBack` and the duration is 335 milliseconds.
- The `message_modal.dart` transition duration is now 335 milliseconds, and the scale animation curve is `Curves.easeOutBack`.
# Conflicts:
#	packages/stream_chat_persistence/CHANGELOG.md
#	packages/stream_chat_persistence/lib/src/db/drift_chat_database.dart
This method allows for safe access to the `StreamChatConfigurationData` from a `BuildContext`, returning null if no ancestor `StreamChatConfiguration` is found. This is useful for async operations where the context might not be guaranteed to have a `StreamChatConfiguration` above it.

The `StreamChatConfiguration.of()` method has been updated to use `maybeOf()` internally and now provides more detailed error messages if a `StreamChatConfiguration` is not found.
# Conflicts:
#	melos.yaml
#	packages/stream_chat/CHANGELOG.md
#	packages/stream_chat/example/pubspec.yaml
#	packages/stream_chat/lib/version.dart
#	packages/stream_chat/pubspec.yaml
#	packages/stream_chat_flutter/CHANGELOG.md
#	packages/stream_chat_flutter/example/pubspec.yaml
#	packages/stream_chat_flutter/pubspec.yaml
#	packages/stream_chat_flutter_core/example/pubspec.yaml
#	packages/stream_chat_flutter_core/pubspec.yaml
#	packages/stream_chat_localizations/CHANGELOG.md
#	packages/stream_chat_localizations/example/pubspec.yaml
#	packages/stream_chat_localizations/pubspec.yaml
#	packages/stream_chat_persistence/CHANGELOG.md
#	packages/stream_chat_persistence/example/pubspec.yaml
#	packages/stream_chat_persistence/pubspec.yaml
#	sample_app/pubspec.yaml
# Conflicts:
#	packages/stream_chat_flutter/CHANGELOG.md
#	packages/stream_chat_flutter/lib/src/fullscreen_media/full_screen_media_desktop.dart
#	packages/stream_chat_flutter/lib/src/message_input/stream_message_input.dart
#	packages/stream_chat_flutter/lib/src/message_widget/message_widget.dart
This commit addresses the following:

- **LLC:** Ensures that the message state is correctly updated to `failed` before attempting to retry in `sendMessage`, `updateMessage`, `partialUpdateMessage`, and `deleteMessage`. Previously, the state was only updated after a successful retry or if the retry failed again.
- **LLC:** `retryFailedMessages` now correctly handles the case where there are no failed messages.
- **UI:** The `message_actions_builder` now correctly hides actions for messages that are in a `deleted` state, even if they also have a `failed` state.
- **UI:** Fixes an issue where deleted messages with a failed state would have incorrect spacing.
# Conflicts:
#	packages/stream_chat/CHANGELOG.md
#	packages/stream_chat/test/src/client/channel_test.dart
#	packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/stream_poll_creator_dialog_dark.png
#	packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/stream_poll_creator_dialog_light.png
#	packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/stream_poll_creator_full_screen_dialog_dark.png
#	packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/stream_poll_creator_full_screen_dialog_light.png
#	packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_creator_dialog_dark.png
#	packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_creator_dialog_light.png
#	packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_creator_full_screen_dialog_dark.png
#	packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_creator_full_screen_dialog_light.png
# Conflicts:
#	melos.yaml
#	packages/stream_chat/example/pubspec.yaml
#	packages/stream_chat/lib/src/client/channel.dart
#	packages/stream_chat/lib/src/client/client.dart
#	packages/stream_chat/lib/src/core/api/responses.dart
#	packages/stream_chat/lib/src/core/api/responses.g.dart
#	packages/stream_chat/lib/src/core/models/channel_state.dart
#	packages/stream_chat/lib/src/core/models/channel_state.g.dart
#	packages/stream_chat/lib/version.dart
#	packages/stream_chat/pubspec.yaml
#	packages/stream_chat/test/src/core/models/channel_state_test.dart
#	packages/stream_chat_flutter/example/pubspec.yaml
#	packages/stream_chat_flutter/pubspec.yaml
#	packages/stream_chat_flutter_core/CHANGELOG.md
#	packages/stream_chat_flutter_core/example/pubspec.yaml
#	packages/stream_chat_flutter_core/pubspec.yaml
#	packages/stream_chat_localizations/CHANGELOG.md
#	packages/stream_chat_localizations/example/pubspec.yaml
#	packages/stream_chat_localizations/pubspec.yaml
#	packages/stream_chat_persistence/CHANGELOG.md
#	packages/stream_chat_persistence/example/pubspec.yaml
#	packages/stream_chat_persistence/pubspec.yaml
#	sample_app/pubspec.yaml
Version upgrade to 10.0.0-beta.5
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Sep 18, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Introduces v10-beta updates across core and Flutter layers: new live/static location sharing, Reaction model/signature changes, event normalization via resolvers/controller, failure-state payloads, reaction groups, and assorted deprecations/removals (calls, permission type, old voice-recording widgets). Adds docs/migration guide, bumps versions, updates tests/fixtures, and adjusts UI builders, actions, and localization.

Changes

Cohort / File(s) Summary
Repo config & docs
/.gitignore, /CLAUDE.md, /melos.yaml, /migrations/v10-migration.md
EOF newline tweak; add Claude guide; switch Stream Chat deps to local paths and add map/location deps; add v10 migration guide covering breaking API changes.
Versioning & changelogs
packages/stream_chat/CHANGELOG.md, packages/stream_chat/lib/version.dart, packages/stream_chat/pubspec.yaml, packages/stream_chat_flutter/CHANGELOG.md
Add 10.0.0-beta.x sections; set PACKAGE_VERSION to 10.0.0-beta.5; pubspec version bump and publish_to none (core and Flutter).
Core client/channel & event flow
packages/stream_chat/lib/src/client/{channel.dart,client.dart,event_resolvers.dart,retry_queue.dart}, .../util/event_controller.dart
Channel: add location APIs, Reaction signature change, retries/state fixes, capability getter. Client: new live-location APIs/streams, foreground flag, openConnection returns nullable, sendReaction updated, event stream via EventController with resolvers. Retry logic tweaked. New resolvers and EventController added.
Core API surface (additions/changes/removals)
packages/stream_chat/lib/src/core/api/{message_api.dart,user_api.dart,stream_chat_api.dart,responses.dart,responses.g.dart,sort_order.dart,sort_order.g.dart}, .../api/call_api.dart (removed)
MessageApi sendReaction now takes Reaction + skipPush. UserApi adds get/update live locations. StreamChatApi removes CallApi. Responses: remove call payloads; add GetActiveLiveLocationsResponse. SortOption switches to .asc/.desc constructors; remove fromJson. Delete CallApi.
Core models & exports
packages/stream_chat/lib/src/core/models/{location.dart,location.g.dart,location_coordinates.dart,message.dart,message.g.dart,reaction.dart,reaction.g.dart,reaction_group.dart,channel_config.* ,channel_state.* ,channel_model.dart,call_payload.* (removed)}, packages/stream_chat/lib/src/event_type.dart, packages/stream_chat/lib/src/core/error/{error.dart,stream_chat_error.dart}, packages/stream_chat/lib/src/permission_type.dart (removed), packages/stream_chat/lib/stream_chat.dart, packages/stream_chat/lib/src/db/chat_persistence_client.dart
Add Location/LocationCoordinates models; Message gains sharedLocation and reactionGroups read logic; Reaction adds emojiCode/timestamps and Equatable; ReactionSorting helpers; ChannelConfig sharedLocations; ChannelState activeLiveLocations; ChannelCapability.shareLocation; new event types; export WebSocketChannelException; remove PermissionType and call-related models; export new models; persistence APIs for locations.
Examples & LLDB helpers
packages/stream_chat/example/ios/Flutter/ephemeral/*, packages/stream_chat_flutter/example/ios/Flutter/ephemeral/*
Add generated LLDB init and helper scripts for iOS debugging.
Example/pubspec adjustments
packages/stream_chat/example/pubspec.yaml, packages/stream_chat_flutter/example/pubspec.yaml
Switch Stream Chat dependencies from version pins to local path dependencies.
Flutter UI: attachments & handlers
packages/stream_chat_flutter/lib/src/attachment/{attachment.dart,attachment_widget_catalog.dart,builder/attachment_widget_builder.dart,builder/poll_attachment_builder.dart,builder/voice_recording_attachment_builder/* (removed),poll_attachment.dart,voice_recording_attachment_playlist.dart}
Export new attachment widgets; add PollAttachmentBuilder and rename PollMessage→PollAttachment with shape/constraints; remove deprecated voice-recording widgets/builders; relax empty-attachments assertion; minor import cleanup.
Flutter UI: message actions & menus
packages/stream_chat_flutter/lib/src/message_action/{message_action.dart,message_action_item.dart,message_action_type.dart,message_actions_builder.dart}, packages/stream_chat_flutter/lib/src/fullscreen_media/full_screen_media_desktop.dart, packages/stream_chat_flutter/lib/src/message_actions_modal/{copy_message_button.dart,delete_message_button.dart,edit_message_button.dart} (removed), packages/stream_chat_flutter/lib/src/context_menu_items/{context_menu_reaction_picker.dart,download_menu_item.dart,stream_chat_context_menu_item.dart} (removed)
Introduce typed message action system and item widget; builder generates context-specific actions; refactor fullscreen media to internal download action; remove legacy context menu items/buttons and reaction picker.
Flutter UI: misc
packages/stream_chat_flutter/lib/src/platform_widget_builder/src/platform_widget_builder.dart, .../src/channel/{channel_header.dart,stream_channel_avatar.dart,stream_message_preview_text.dart}, .../lib/src/indicators/unread_indicator.dart, .../lib/src/localization/translations.dart, .../lib/src/icons/stream_svg_icon.dart, .../lib/src/bottom_sheets/edit_message_sheet.dart
Add desktopOrWeb builder; AppBar transparency flag; safer grapheme initial; preview text shows location label; unread indicator ctor simplified (const, no cid); add translations.locationLabel; remove asset-based StreamSvgIcon API/factories; remove explicit poll-exclusion in edit sheet.
Core tests & fixtures
packages/stream_chat/test/{fixtures/*,src/**/*,src/mocks.dart}
Update fixtures for reaction_groups, active_live_locations, reaction emoji_code; add tests for locations, resolvers, EventController; adapt to Reaction/signature changes; update failure state constructors; remove call-related tests; extend mocks to EventController.
Flutter test config
packages/stream_chat_flutter/dart_test.yaml
Add golden test tag and timeout to suppress warnings.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor U as User
  participant UI as Flutter UI
  participant CH as Channel
  participant CL as StreamChatClient
  participant API as User/Message API
  participant S as Server

  rect rgb(245,248,255)
  note right of UI: New: Live/Static Location Sharing
  U->>UI: Share location (static/live)
  UI->>CH: sendStaticLocation()/startLiveLocationSharing()
  CH->>CL: sendMessage with shared_location payload
  CL->>API: POST /channels/.../message
  API->>S: Create message with location
  S-->>CL: Event message.new (location)
  CL->>CH: Emit via EventController (resolved to location.shared)
  CH->>CH: Update state.activeLiveLocations
  CH-->>UI: Stream update (active locations / message)
  end

  rect rgb(255,248,245)
  note right of UI: Changed: Reaction flow uses Reaction object
  U->>UI: React to message
  UI->>CH: sendReaction(message, Reaction{type,emojiCode,score})
  CH->>CL: sendReaction(messageId, Reaction, {skipPush?,enforceUnique?})
  CL->>API: POST /messages/{id}/reaction {reaction, skip_push,...}
  API->>S: Persist reaction
  S-->>CL: Event reaction.new
  CL-->>UI: Event stream (unchanged consumption)
  end
Loading

Estimated code review effort

🎯 5 (Critical) | ⏱️ ~120 minutes

Possibly related PRs

Suggested reviewers

  • renefloor
  • Brazol

Poem

hop-hop! I mapped the world, both live and still,
Reactions got smarter—what an emoji thrill!
Events flow neat through streams refined,
Old calls burrowed, left behind.
With polls and actions, I twitch my ear—
v10 carrots ripe—ship it, my dear! 🥕🐇

✨ Finishing touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between ee78069 and e1031a0.

⛔ Files ignored due to path filters (105)
  • packages/stream_chat_flutter/test/src/attachment/goldens/ci/stream_voice_recording_attachment_idle_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/attachment/goldens/ci/stream_voice_recording_attachment_idle_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/attachment/goldens/ci/stream_voice_recording_attachment_playing_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/attachment/goldens/ci/stream_voice_recording_attachment_playing_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/attachment/goldens/ci/stream_voice_recording_attachment_playlist_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/attachment/goldens/ci/stream_voice_recording_attachment_playlist_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/bottom_sheets/goldens/ci/edit_message_sheet_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/bottom_sheets/goldens/ci/error_alert_sheet_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/channel/goldens/ci/channel_header_bottom_widget.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/context_menu_items/goldens/ci/download_menu_item_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/context_menu_items/goldens/ci/stream_chat_context_menu_item_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/dialogs/goldens/ci/confirmation_dialog_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/dialogs/goldens/ci/delete_message_dialog_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/dialogs/goldens/ci/message_dialog_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/dialogs/goldens/ci/message_dialog_1.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/dialogs/goldens/ci/message_dialog_2.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/icons/goldens/ci/stream_svg_icon_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/indicators/goldens/ci/sending_indicator_1.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/indicators/goldens/ci/sending_indicator_2.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_action/goldens/ci/stream_message_action_item_custom_child_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_action/goldens/ci/stream_message_action_item_custom_child_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_action/goldens/ci/stream_message_action_item_custom_styling_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_action/goldens/ci/stream_message_action_item_custom_styling_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_action/goldens/ci/stream_message_action_item_delete_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_action/goldens/ci/stream_message_action_item_delete_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_action/goldens/ci/stream_message_action_item_reply_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_action/goldens/ci/stream_message_action_item_reply_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/audio_recorder/goldens/ci/stream_audio_recorder_button_idle_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/audio_recorder/goldens/ci/stream_audio_recorder_button_idle_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/audio_recorder/goldens/ci/stream_audio_recorder_button_recording_hold_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/audio_recorder/goldens/ci/stream_audio_recorder_button_recording_hold_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/audio_recorder/goldens/ci/stream_audio_recorder_button_recording_locked_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/audio_recorder/goldens/ci/stream_audio_recorder_button_recording_locked_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/audio_recorder/goldens/ci/stream_audio_recorder_button_recording_stopped_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/audio_recorder/goldens/ci/stream_audio_recorder_button_recording_stopped_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/goldens/ci/attachment_button_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_input/goldens/ci/countdown_button_0.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/moderated_message_actions_modal_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/moderated_message_actions_modal_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_actions_modal_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_actions_modal_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_actions_modal_reversed_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_actions_modal_reversed_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_actions_modal_reversed_with_reactions_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_actions_modal_reversed_with_reactions_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_actions_modal_with_reactions_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_actions_modal_with_reactions_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_reactions_modal_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_reactions_modal_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_reactions_modal_reversed_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_modal/goldens/ci/stream_message_reactions_modal_reversed_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_widget/goldens/ci/deleted_message_custom.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_widget/goldens/ci/deleted_message_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/message_widget/goldens/ci/deleted_message_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/reaction_bubble_2.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/reaction_bubble_3_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/reaction_bubble_3_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/reaction_bubble_like_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/reaction_bubble_like_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_custom_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_custom_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_empty_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_empty_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_inverted_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_inverted_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_less_data_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_less_data_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_progress_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_audio_waveform_slider_progress_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/stream_timestamp_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/system_message_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/misc/goldens/ci/system_message_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/poll_option_reorderable_list_view_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/poll_option_reorderable_list_view_error_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/poll_option_reorderable_list_view_error_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/poll_option_reorderable_list_view_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/poll_question_text_field_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/poll_question_text_field_error_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/poll_question_text_field_error_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/poll_question_text_field_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/stream_poll_creator_dialog_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/stream_poll_creator_dialog_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/stream_poll_creator_full_screen_dialog_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/creator/goldens/ci/stream_poll_creator_full_screen_dialog_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/poll_option_reorderable_list_view_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/poll_option_reorderable_list_view_error.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/poll_option_reorderable_list_view_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/poll_question_text_field_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/poll_question_text_field_error.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/poll_question_text_field_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_creator_dialog_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_creator_dialog_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_creator_full_screen_dialog_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_creator_full_screen_dialog_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_options_dialog_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_options_dialog_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_results_dialog_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_results_dialog_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_results_dialog_with_show_all_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/goldens/ci/stream_poll_results_dialog_with_show_all_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/interactor/goldens/ci/poll_add_comment_dialog_dark.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/interactor/goldens/ci/poll_add_comment_dialog_light.png is excluded by !**/*.png
  • packages/stream_chat_flutter/test/src/poll/interactor/goldens/ci/poll_add_comment_dialog_with_initial_value_dark.png is excluded by !**/*.png
📒 Files selected for processing (107)
  • .gitignore (1 hunks)
  • CLAUDE.md (1 hunks)
  • melos.yaml (3 hunks)
  • migrations/v10-migration.md (1 hunks)
  • packages/stream_chat/CHANGELOG.md (4 hunks)
  • packages/stream_chat/example/ios/Flutter/ephemeral/flutter_lldb_helper.py (1 hunks)
  • packages/stream_chat/example/ios/Flutter/ephemeral/flutter_lldbinit (1 hunks)
  • packages/stream_chat/example/pubspec.yaml (1 hunks)
  • packages/stream_chat/lib/src/client/channel.dart (26 hunks)
  • packages/stream_chat/lib/src/client/client.dart (11 hunks)
  • packages/stream_chat/lib/src/client/event_resolvers.dart (1 hunks)
  • packages/stream_chat/lib/src/client/retry_queue.dart (1 hunks)
  • packages/stream_chat/lib/src/core/api/call_api.dart (0 hunks)
  • packages/stream_chat/lib/src/core/api/message_api.dart (2 hunks)
  • packages/stream_chat/lib/src/core/api/responses.dart (2 hunks)
  • packages/stream_chat/lib/src/core/api/responses.g.dart (1 hunks)
  • packages/stream_chat/lib/src/core/api/sort_order.dart (1 hunks)
  • packages/stream_chat/lib/src/core/api/sort_order.g.dart (0 hunks)
  • packages/stream_chat/lib/src/core/api/stream_chat_api.dart (0 hunks)
  • packages/stream_chat/lib/src/core/api/user_api.dart (2 hunks)
  • packages/stream_chat/lib/src/core/error/error.dart (1 hunks)
  • packages/stream_chat/lib/src/core/error/stream_chat_error.dart (0 hunks)
  • packages/stream_chat/lib/src/core/models/call_payload.dart (0 hunks)
  • packages/stream_chat/lib/src/core/models/call_payload.g.dart (0 hunks)
  • packages/stream_chat/lib/src/core/models/channel_config.dart (2 hunks)
  • packages/stream_chat/lib/src/core/models/channel_config.g.dart (2 hunks)
  • packages/stream_chat/lib/src/core/models/channel_model.dart (1 hunks)
  • packages/stream_chat/lib/src/core/models/channel_state.dart (5 hunks)
  • packages/stream_chat/lib/src/core/models/channel_state.g.dart (2 hunks)
  • packages/stream_chat/lib/src/core/models/location.dart (1 hunks)
  • packages/stream_chat/lib/src/core/models/location.g.dart (1 hunks)
  • packages/stream_chat/lib/src/core/models/location_coordinates.dart (1 hunks)
  • packages/stream_chat/lib/src/core/models/message.dart (11 hunks)
  • packages/stream_chat/lib/src/core/models/message.g.dart (3 hunks)
  • packages/stream_chat/lib/src/core/models/message_state.dart (7 hunks)
  • packages/stream_chat/lib/src/core/models/message_state.freezed.dart (4 hunks)
  • packages/stream_chat/lib/src/core/models/message_state.g.dart (1 hunks)
  • packages/stream_chat/lib/src/core/models/reaction.dart (4 hunks)
  • packages/stream_chat/lib/src/core/models/reaction.g.dart (1 hunks)
  • packages/stream_chat/lib/src/core/models/reaction_group.dart (1 hunks)
  • packages/stream_chat/lib/src/core/util/event_controller.dart (1 hunks)
  • packages/stream_chat/lib/src/db/chat_persistence_client.dart (7 hunks)
  • packages/stream_chat/lib/src/event_type.dart (2 hunks)
  • packages/stream_chat/lib/src/permission_type.dart (0 hunks)
  • packages/stream_chat/lib/stream_chat.dart (1 hunks)
  • packages/stream_chat/lib/version.dart (1 hunks)
  • packages/stream_chat/pubspec.yaml (1 hunks)
  • packages/stream_chat/test/fixtures/channel_state_to_json.json (25 hunks)
  • packages/stream_chat/test/fixtures/message.json (1 hunks)
  • packages/stream_chat/test/fixtures/message_to_json.json (0 hunks)
  • packages/stream_chat/test/fixtures/reaction.json (1 hunks)
  • packages/stream_chat/test/src/client/channel_test.dart (24 hunks)
  • packages/stream_chat/test/src/client/client_test.dart (2 hunks)
  • packages/stream_chat/test/src/client/event_resolvers_test.dart (1 hunks)
  • packages/stream_chat/test/src/client/retry_queue_test.dart (2 hunks)
  • packages/stream_chat/test/src/core/api/call_api_test.dart (0 hunks)
  • packages/stream_chat/test/src/core/api/message_api_test.dart (3 hunks)
  • packages/stream_chat/test/src/core/api/responses_test.dart (0 hunks)
  • packages/stream_chat/test/src/core/api/sort_order_test.dart (0 hunks)
  • packages/stream_chat/test/src/core/api/user_api_test.dart (1 hunks)
  • packages/stream_chat/test/src/core/models/call_payload_test.dart (0 hunks)
  • packages/stream_chat/test/src/core/models/channel_state_test.dart (1 hunks)
  • packages/stream_chat/test/src/core/models/location_test.dart (1 hunks)
  • packages/stream_chat/test/src/core/models/message_state_test.dart (2 hunks)
  • packages/stream_chat/test/src/core/models/message_test.dart (2 hunks)
  • packages/stream_chat/test/src/core/models/reaction_test.dart (7 hunks)
  • packages/stream_chat/test/src/core/util/event_controller_test.dart (1 hunks)
  • packages/stream_chat/test/src/db/chat_persistence_client_test.dart (2 hunks)
  • packages/stream_chat/test/src/mocks.dart (2 hunks)
  • packages/stream_chat_flutter/CHANGELOG.md (4 hunks)
  • packages/stream_chat_flutter/dart_test.yaml (1 hunks)
  • packages/stream_chat_flutter/example/ios/Flutter/ephemeral/flutter_lldb_helper.py (1 hunks)
  • packages/stream_chat_flutter/example/ios/Flutter/ephemeral/flutter_lldbinit (1 hunks)
  • packages/stream_chat_flutter/example/pubspec.yaml (1 hunks)
  • packages/stream_chat_flutter/lib/platform_widget_builder/src/platform_widget_builder.dart (2 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/attachment.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/attachment_widget_catalog.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/builder/attachment_widget_builder.dart (3 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/builder/poll_attachment_builder.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/builder/voice_recording_attachment_builder/stream_voice_recording_list_player.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/builder/voice_recording_attachment_builder/stream_voice_recording_loading.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/builder/voice_recording_attachment_builder/stream_voice_recording_player.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/builder/voice_recording_attachment_builder/stream_voice_recording_slider.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/builder/voice_recording_attachment_builder/voice_recording_attachment_builder.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/handler/stream_attachment_handler_base.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/handler/stream_attachment_handler_html.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/handler/stream_attachment_handler_io.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/poll_attachment.dart (3 hunks)
  • packages/stream_chat_flutter/lib/src/attachment/voice_recording_attachment_playlist.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/bottom_sheets/edit_message_sheet.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/channel/channel_header.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/channel/stream_channel_avatar.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/channel/stream_message_preview_text.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/context_menu_items/context_menu_reaction_picker.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/context_menu_items/download_menu_item.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/context_menu_items/stream_chat_context_menu_item.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/fullscreen_media/full_screen_media_desktop.dart (3 hunks)
  • packages/stream_chat_flutter/lib/src/icons/stream_svg_icon.dart (2 hunks)
  • packages/stream_chat_flutter/lib/src/indicators/unread_indicator.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/localization/translations.dart (5 hunks)
  • packages/stream_chat_flutter/lib/src/message_action/message_action.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/message_action/message_action_item.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/message_action/message_action_type.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/message_action/message_actions_builder.dart (1 hunks)
  • packages/stream_chat_flutter/lib/src/message_actions_modal/copy_message_button.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/message_actions_modal/delete_message_button.dart (0 hunks)
  • packages/stream_chat_flutter/lib/src/message_actions_modal/edit_message_button.dart (0 hunks)
⛔ Files not processed due to max files limit (36)
  • packages/stream_chat_flutter/lib/src/message_actions_modal/flag_message_button.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/mam_widgets.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/mark_unread_message_button.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/message_action.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/message_actions_modal.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/moderated_message_actions_modal.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/pin_message_button.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/reply_button.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/resend_message_button.dart
  • packages/stream_chat_flutter/lib/src/message_actions_modal/thread_reply_button.dart
  • packages/stream_chat_flutter/lib/src/message_input/attachment_picker/options/stream_file_picker.dart
  • packages/stream_chat_flutter/lib/src/message_input/attachment_picker/options/stream_gallery_picker.dart
  • packages/stream_chat_flutter/lib/src/message_input/attachment_picker/stream_attachment_picker.dart
  • packages/stream_chat_flutter/lib/src/message_input/attachment_picker/stream_attachment_picker_bottom_sheet.dart
  • packages/stream_chat_flutter/lib/src/message_input/attachment_picker/stream_attachment_picker_controller.dart
  • packages/stream_chat_flutter/lib/src/message_input/attachment_picker/stream_attachment_picker_option.dart
  • packages/stream_chat_flutter/lib/src/message_input/attachment_picker/stream_attachment_picker_result.dart
  • packages/stream_chat_flutter/lib/src/message_input/dm_checkbox.dart
  • packages/stream_chat_flutter/lib/src/message_input/quoted_message_widget.dart
  • packages/stream_chat_flutter/lib/src/message_input/stream_message_input.dart
  • packages/stream_chat_flutter/lib/src/message_input/stream_message_send_button.dart
  • packages/stream_chat_flutter/lib/src/message_input/stream_message_text_field.dart
  • packages/stream_chat_flutter/lib/src/message_list_view/floating_date_divider.dart
  • packages/stream_chat_flutter/lib/src/message_list_view/message_list_view.dart
  • packages/stream_chat_flutter/lib/src/message_modal/message_action_confirmation_modal.dart
  • packages/stream_chat_flutter/lib/src/message_modal/message_actions_modal.dart
  • packages/stream_chat_flutter/lib/src/message_modal/message_modal.dart
  • packages/stream_chat_flutter/lib/src/message_modal/message_reactions_modal.dart
  • packages/stream_chat_flutter/lib/src/message_modal/moderated_message_actions_modal.dart
  • packages/stream_chat_flutter/lib/src/message_widget/ephemeral_message.dart
  • packages/stream_chat_flutter/lib/src/message_widget/message_card.dart
  • packages/stream_chat_flutter/lib/src/message_widget/message_widget.dart
  • packages/stream_chat_flutter/lib/src/message_widget/message_widget_content.dart
  • packages/stream_chat_flutter/lib/src/message_widget/message_widget_content_components.dart
  • packages/stream_chat_flutter/lib/src/message_widget/reactions/message_reactions_modal.dart
  • packages/stream_chat_flutter/lib/src/message_widget/reactions/reaction_indicator.dart

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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.

4 participants