-
Notifications
You must be signed in to change notification settings - Fork 383
feat(repo)!: v10.0.0 #2499
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
feat(repo)!: v10.0.0 #2499
Changes from all commits
Commits
Show all changes
174 commits
Select commit
Hold shift + click to select a range
9109c2d
refactor(ui)!: re-wrote message actions and modals (#2156)
xsahil03x 08600ee
refactor(ui): sync theme with figma (#2263)
xsahil03x 31b2809
refactor!(ui): add support for customising reaction picker (#2248)
xsahil03x 396fcca
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x eb9d91c
refactor(ui)!: improve reaction bubble implementation (#2277)
xsahil03x 6a5cf55
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x d2aabea
chore(ui): make `CustomMessageAction` extendable
xsahil03x 39bc67b
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x f9d454c
chore(repo): add migration guide
xsahil03x 5a2dc40
chore(repo): update CHANGELOG.md
xsahil03x 76debfd
chore(repo): update migration guide
xsahil03x 75d9d17
chore(repo): release v10.0.0-beta.1 (#2283)
xsahil03x c038038
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x dead3f9
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 0ffdd7c
chore: include latest stable release in beta changelogs
xsahil03x 8c8dbd2
chore(repo): release v10.0.0-beta.2 (#2292)
xsahil03x 74bb460
feat(ui)!: refactor poll message into attachment (#2296)
xsahil03x 3a2b3e3
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x cc69eb3
refactor(llc): introduce event controller, resolver (#2301)
xsahil03x 74188e3
refactor(ui)!: add support for non-attachment types in attachment picβ¦
xsahil03x cc33ba3
chore(repo): remove deprecated classes, methods, and properties (#2306)
xsahil03x fd1e502
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 3e95d5c
chore(repo): release v10.0.0-beta.3 (#2310)
xsahil03x 86d3220
chore(ui): hide reaction picker bubble border and mask (#2316)
xsahil03x a514537
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 7d3fa7f
feat(llc): add support for sharing live and static locations (#2305)
xsahil03x 376f0fe
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x a32d298
fix(ui): adjust reaction picker and message modal animations
xsahil03x 84b2994
feat(persistence): add support for location persistence (#2319)
xsahil03x 00c0b15
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 7fe34aa
feat(llc, ui, persistence)!: add support for reaction emoji_code (#2326)
xsahil03x bf33673
feat(ui): add `StreamChatConfiguration.maybeOf()` method
xsahil03x c37fa34
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 0a6b932
chore: Update Goldens
xsahil03x d1819c1
chore(repo): release v10.0.0-beta.4 (#2333)
xsahil03x 48b0cc7
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x ba38c8e
chore: merge fixes
xsahil03x 3ad5cab
fix(llc): fixed skipPush and skipEnrichUrl not preserving during messβ¦
VladShturma 8e06a36
fix(llc, ui): update message state on failure
xsahil03x 4ca7fe9
refactor(ui): introduce showStreamDialog and replace showStreamMessagβ¦
xsahil03x 74fecb2
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x dfa6170
chore: fix lints
xsahil03x 1433346
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 8376c94
chore: merge fixes
xsahil03x b138da2
chore: Update Goldens
xsahil03x 2b8a21e
chore(repo): release v10.0.0-beta.5 (#2354)
xsahil03x c511c68
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 0f8a4f5
chore: Update Goldens
xsahil03x 90d5bc2
fix(ui): ensure dialog confirmation for delete/flag actions (#2384)
xsahil03x c7c1dd3
fix(ui): enable sending reply in threads for users with sendReply capβ¦
xsahil03x 74f46ab
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 4d8635c
chore: Update Goldens
xsahil03x 9af6ba2
test: fix tests
xsahil03x 6a52cb0
chore(repo): release v10.0.0-beta.6 (#2393)
xsahil03x e7576f9
feat(llc, ui): add delete message for me (#2394)
xsahil03x 5a02491
feat(persistence): add deletedForMe and deletedMessages fields (#2395)
xsahil03x 4bb47e1
feat(llc)!: add standalone file/image upload/remove methods (#2396)
xsahil03x 7ba65c2
feat(llc): improve message validation for upload criteria
xsahil03x bd17255
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 37e0466
chore: merge fixes
xsahil03x e6f5e25
chore(repo): release v10.0.0-beta.7 (#2417)
xsahil03x 0db0485
feat(llc, persistence): handle user.messages.deleted event (#2423)
xsahil03x ea361cd
feat(ui): add `attachmentPickerOptionsBuilder` (#2415)
xsahil03x b38b320
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 76fdb59
chore: update migration guide
xsahil03x 3f89e28
chore(repo): release v10.0.0-beta.8 (#2425)
xsahil03x f594ac4
feat(ui)!: enhance onAttachmentTap with fallback to default behavior β¦
xsahil03x 30da524
feat(llc): Store endAt in UTC (#2428)
xsahil03x 182706c
feat(ui): add reactionIndicatorBuilder for custom reaction indicatorsβ¦
xsahil03x 341973d
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 736a7be
chore: merge fixes
xsahil03x b5874a1
chore: Update Goldens
xsahil03x 2a117b0
chore(repo): release v10.0.0-beta.9 (#2446)
xsahil03x 302ade6
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x ee5d767
chore: Update Goldens
xsahil03x e223a99
chore(repo): release v10.0.0-beta.10 (#2458)
xsahil03x 56e021f
chore: Fix version typo in changelog
xsahil03x 976b06f
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 44a4e9d
chore: Update Goldens
xsahil03x 3ceae47
chore(repo): release v10.0.0-beta.11 (#2470)
xsahil03x 276ad42
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x ae9c8ee
fix(ui): fix regression in emoji_code support for reactions (#2474)
xsahil03x 88f8a93
refactor(ui)!: replace ArgumentError with typed errors (#2479)
xsahil03x c758522
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x f8b5f71
chore(repo): bump drift and drift_dev to version 2.28.0
xsahil03x c7ac636
chore: apply review fixes
xsahil03x 43705e0
chore: fix lints
xsahil03x 7a758b1
chore: fix tests
xsahil03x 4ddccab
chore(repo): release v10.0.0-beta.12 (#2493)
xsahil03x 25bca48
Merge branch 'master' into v10.0.0
xsahil03x ae4d075
Merge branch 'master' into v10.0.0
xsahil03x 6b3ef7c
chore: update migration.md
xsahil03x 6780dc3
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 210ff93
feat(repo)!: design refresh (#2503)
xsahil03x de33f88
chore(repo): release v10.0.0-beta.13 (#2609)
renefloor 4428a96
fix release of stream_chat_flutter (#2610)
renefloor cc8eb16
feat(samples): implement `SampleAppConfig` and modernize UI architechβ¦
xsahil03x 9eaa4a9
refactor(ui): attachment upload and gallery improvements (#2612)
xsahil03x 7107dc7
feat(ui): Simplify icon set (#2619)
renefloor 0f532ff
fix(ui): increase max width for ephemeral Giphy messages (#2615)
xsahil03x 9a1d8a4
refactor(ui): redesign and modernize poll creator components (#2611)
xsahil03x ca78f2f
fix(ui): qa issues (#2620)
xsahil03x ac3528a
chore(ui): Cleanup message theme and usages (#2621)
renefloor 29750a3
chore(ui): Cleanup channel preview theme (#2622)
renefloor 97f7614
fix(ui, core, localizations): more QA fixes (#2624)
xsahil03x fa064e3
refactor(ui): reduce max visible option count for polls to 5 (#2627)
xsahil03x 1a9bcba
feat(ui): thread list banner redesign (#2608)
Brazol 65e68b7
Added exports for theming support (#2628)
renefloor ac860fb
docs(ui): screenshots (#2559)
renefloor a813128
fix(ui, persistence, samples): more QA fixes (#2629)
xsahil03x d0d1d74
feat(ui, localization): redesign poll dialogs as modal bottom sheets β¦
xsahil03x 8a514fa
docs(ui): update screenshots (#2631)
renefloor e1417b2
refactor(ui): migrate poll sheets to showStreamSheet (#2634)
xsahil03x 45dde33
docs(ui): screenshot background (#2635)
renefloor c2cdf29
fix(llc, core, ui, localization): latest QA (#2636)
xsahil03x 9ddf688
refactor(sample, ui): redesign channel info and detail sheet (#2638)
xsahil03x 85c6b10
fix(llc, ui, sample): more v10 QA fixes (#2640)
xsahil03x 4a22a44
refactor(ui, sample)!: align message item naming with android and iosβ¦
xsahil03x 76a4adf
feat(ui): Move draftlist from sdk to sample app. (#2637)
renefloor dfc9213
feat(UI): rename message input (#2642)
renefloor 3fbd3a8
fix(ui, core): rename input controller to composer controller (#2646)
renefloor 8bfb68b
refactor(ui, localization, sample)!: redesign media viewer (#2645)
xsahil03x a58afdb
chore(deps)!: bump dep floors, widen plus-plugin majors, migrate fileβ¦
xsahil03x b73bb71
chore(ui): theme cleanup (#2663)
Brazol 95c77b8
feat(ui): Improve slow mode UI (#2666)
renefloor 3e5f7d8
fix(llc): require attachment fileSize only when there is a file (#2673)
Brazol ea29e6d
docs(ui): make docs snapshots authentic to the production SDK (#2676)
xsahil03x 101cf0f
chore(sample): Set appversion to main sdk version (#2678)
renefloor 7ae7874
Feat(ui): simplify messagelist constructor (#2674)
renefloor 29fc127
docs(ui): showcase, localization, theming, and composer snapshots (#2β¦
renefloor 427609a
chore(repo): merge master into v10.0.0 (#2682)
xsahil03x 0f435f5
Add snapshots for autocomplete (#2687)
renefloor 2501f53
fix(llc)!: prevent external mutation of ClientState collections (#2686)
xsahil03x d713fee
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x f0b80d5
merge master
xsahil03x 3b50b8f
Remove use of svg icon (#2697)
renefloor b425866
docs(ui)!: correct migration docs; remove dead MessageDetails (#2680)
renefloor d54f2fd
update flutter chat tutorial (#2696)
renefloor 6d71de9
feat(ui): Update chat sdk defaults (#2691)
renefloor ee37fc1
fix(ui): apply filter of supported emoji (#2698)
renefloor 8fc3f86
fix(ui): preserve composer state when draft stream emits initial nullβ¦
xsahil03x 98097fa
feat(ui): sync default message actions with design system (#2701)
xsahil03x 0885ed2
Merge branch 'master' into v10.0.0
xsahil03x ae51c18
chore(repo): pin .fvmrc to v10's min Flutter 3.38.1
xsahil03x b25e20b
chore(sample): refresh app icons (#2707)
xsahil03x cac22c0
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 00b4ed1
fix(ui, sample): use StreamChannel.value at remaining sub-route and oβ¦
xsahil03x af2637a
fix(sample): wire onEditMessageTap in ThreadPage
xsahil03x cd25dfd
fix(ui): smooth thread-open scroll when highlighting an in-channel reply
xsahil03x d9b3105
fix(ui): Remove reactionOverlap from config (#2708)
renefloor 7795b10
fix(ui): map xxl avatar to xxl online indicator size (#2711)
xsahil03x 803b70d
feat(ui): factory slots for message item leading, header, footer (#2710)
xsahil03x b5617c1
Merge remote-tracking branch 'origin/v10.0.0' into v10.0.0
xsahil03x 96863e0
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 583f7b6
chore(core): apply dart format to stream_channel.dart
xsahil03x b0f65da
feat(llc, ui, localization)!: AppSettings API and AppSettings-driven β¦
renefloor 44caf65
chore(deps): bump jiffy to ^6.4.5 (#2719)
xsahil03x 9311072
Merge branch 'master' into v10.0.0
xsahil03x b2f33fa
chore(repo): bump min Flutter to 3.41.0 and Dart SDK to 3.11.0 (#2721)
xsahil03x 22c8453
chore(ui): Deprecate related icon classses (#2722)
renefloor cd831af
chore(samples): update launcher icons size for android (#2723)
xsahil03x 52aa76d
rename config and themedata (#2725)
renefloor 08236f5
fix(persistence): Ensure messageLimit is respected in `getChannelStatβ¦
VelikovPetar d76606b
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 5746058
chore: format files
xsahil03x f85fc95
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 4da817a
chore: format files
xsahil03x a270b1f
docs(ui): add more docs snapshots (#2716)
renefloor 6854e29
chore(ui): update core_flutter package (#2729)
renefloor 86d1c6d
perf(ui): back StreamChat.maybeOf lookup with StreamStateScope
xsahil03x ad4ed9b
Merge `master` to `v10.0.0` (08.06.2026) (#2731)
VelikovPetar 4301484
Merge remote-tracking branch 'origin/master' into v10.0.0
xsahil03x 8223f97
chore: merge fixes
xsahil03x fd6035a
docs(ui,llc): update sdk readmes (#2724)
renefloor File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,3 @@ | ||
| { | ||
| "flutter": "3.27.4" | ||
| } | ||
| "flutter": "3.41.0" | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,148 @@ | ||
| # CLAUDE.md | ||
|
|
||
| This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. | ||
|
|
||
| ## Overview | ||
|
|
||
| This is a Dart/Flutter monorepo for Stream Chat's official Flutter SDK, managed with [Melos](https://pub.dev/packages/melos). All packages live under `packages/`. | ||
|
|
||
| ## Common Commands | ||
|
|
||
| ### Setup | ||
| ```bash | ||
| melos bootstrap # Fetch and link all dependencies (equivalent to pub get for all packages) | ||
| ``` | ||
|
|
||
| ### Testing | ||
| ```bash | ||
| melos run test:all # Run all Dart & Flutter tests | ||
| melos run test:dart # Run Dart-only tests | ||
| melos run test:flutter # Run Flutter tests | ||
| # Run tests in a specific package: | ||
| cd packages/stream_chat_flutter && flutter test | ||
| cd packages/stream_chat_flutter && flutter test test/src/path/to/test_file.dart | ||
| ``` | ||
|
|
||
| ### Golden Tests | ||
| ```bash | ||
| melos run update:goldens # Regenerate all golden image files | ||
| # In CI, CI goldens are used; locally, platform goldens are used (configured via alchemist) | ||
| ``` | ||
|
|
||
| ### Linting & Formatting | ||
| ```bash | ||
| melos run lint:all # Run analyze + format | ||
| melos run analyze # Run dart analyze --fatal-infos on all packages | ||
| melos run format # Check formatting (page width: 120) | ||
| ``` | ||
|
|
||
| ### Code Generation | ||
| ```bash | ||
| melos run generate:all # Run build_runner for all packages | ||
| melos run generate:flutter # Run build_runner for Flutter packages only | ||
| melos run generate:dart # Run build_runner for Dart packages only | ||
| ``` | ||
|
|
||
| ### Versioning | ||
| ```bash | ||
| melos run version:update # Regenerate version.dart from pubspec.yaml (runs automatically after bootstrap) | ||
| ``` | ||
|
|
||
| ## Package Architecture | ||
|
|
||
| The SDK is layered β each package builds on top of the previous: | ||
|
|
||
| ``` | ||
| stream_chat # Pure Dart, no Flutter dependency | ||
| βββ stream_chat_persistence # Local disk cache using Drift (optional) | ||
| βββ stream_chat_flutter_core # Flutter business logic, no UI | ||
| βββ stream_chat_flutter # Full UI component library | ||
| βββ stream_chat_localizations # i18n for UI components | ||
| ``` | ||
|
|
||
| ### `stream_chat` | ||
| Low-level Dart client. Key types: | ||
| - `StreamChatClient` β central API client, manages WebSocket, REST, and state | ||
| - `Channel` β represents a chat channel, has its own state and streaming APIs | ||
| - Models in `lib/src/core/models/`: `Message`, `User`, `Member`, `Reaction`, `Poll`, `Event`, `Attachment`, `Draft`, etc. | ||
| - Generated code (`.g.dart`, `.freezed.dart`) for JSON serialization/immutable models β do not edit manually | ||
|
|
||
| ### `stream_chat_flutter_core` | ||
| Business logic layer. Key types: | ||
| - `StreamChatCore` β root widget, manages app lifecycle, WebSocket reconnection, and connectivity | ||
| - `StreamChannel` β provides a `Channel` to the widget tree via `StreamChannel.of(context)` | ||
| - `PagedValueNotifier<Key, Value>` β base class for all list controllers | ||
| - Controllers: `StreamChannelListController`, `StreamMessageListController` (via `MessageListCore`), `StreamUserListController`, `StreamMemberListController`, `StreamThreadListController`, `StreamDraftListController`, `StreamMessageReminderListController`, `StreamPollController` | ||
| - `BetterStreamBuilder<T>` β efficient StreamBuilder that only rebuilds when data changes | ||
|
|
||
| ### `stream_chat_flutter` | ||
| Full UI package. Key architectural points: | ||
|
|
||
| **Root widget hierarchy:** | ||
| `StreamChat` β `StreamChatTheme` β `StreamChatConfiguration` β `StreamChatCore` β app content | ||
|
|
||
| **Theming:** `StreamChatThemeData` (accessed via `StreamChatTheme.of(context)`) contains per-component theme data objects. Components read their theme from context. `StreamChatConfigurationData` holds non-theme UI config. | ||
|
|
||
| **Widget tree integration pattern:** | ||
| - `StreamChat.of(context)` β get the chat state (current user, client) | ||
| - `StreamChannel.of(context)` β get the current channel state | ||
| - `StreamChatTheme.of(context)` β get current theme data | ||
|
|
||
| **Key UI components:** | ||
| - `StreamChannelListView` + `StreamChannelListTile` β channel list using `StreamChannelListController` | ||
| - `StreamMessageListView` β message list with floating date dividers, unread indicators, thread separators | ||
| - `StreamMessageComposer` (full-featured) / `StreamChatMessageInput` (new design system, UI-only) β message composition | ||
| - `StreamMessageWidget` β renders individual messages with attachments, reactions, threads | ||
| - Scroll views in `lib/src/scroll_view/` β generic paged scroll views for channels, threads, members, users, drafts, polls | ||
|
|
||
| **New design system components** (`lib/src/components/`): | ||
| - `StreamUserAvatar`, `StreamChannelAvatar`, `StreamUserAvatarGroup` β avatar components; these are chat-domain wrappers around the base components in `stream_core_flutter` | ||
| - `StreamChatMessageInput` β new composer using `MessageComposerFactory` for custom layouts | ||
|
|
||
| **Golden tests:** Use `alchemist` package. Platform goldens used locally, CI goldens used in CI (detected via `CI`/`GITHUB_ACTIONS` env vars). Goldens stored alongside tests in `goldens/` subdirectories. | ||
|
|
||
| ### `stream_chat_localizations` | ||
| Provides `StreamChatLocalizations` β Flutter localizations delegate with translations for all UI strings. | ||
|
|
||
| ### `stream_chat_persistence` | ||
| Optional local persistence using Drift (SQLite). Implements `ChatPersistenceClient` from `stream_chat`. | ||
|
|
||
| ## Code Style | ||
|
|
||
| - Line length: **120 characters** (configured in `analysis_options.yaml`) | ||
| - Imports: always use package imports (`always_use_package_imports`), not relative imports | ||
| - All public APIs **must** have doc comments (`public_member_api_docs`) | ||
| - Sort constructors first, unnamed constructors before named | ||
| - Prefer `const` constructors, `final` locals, single quotes | ||
| - Trailing commas: `preserve` (formatter setting) | ||
| - Generated files (`.g.dart`, `.freezed.dart`) are excluded from analysis | ||
|
|
||
| ## PR & Commit Conventions | ||
|
|
||
| PR titles follow [Conventional Commits](https://www.conventionalcommits.org/): | ||
| - `fix(scope): description` β bug fix | ||
| - `feat(scope): description` β new feature | ||
| - `refactor(scope)!: description` β breaking change | ||
| - `chore(scope): description`, `docs:`, `test:`, etc. | ||
|
|
||
| After modifying any package, update its `CHANGELOG.md`. | ||
|
|
||
| ## Figma Designs | ||
|
|
||
| UI designs for this SDK are in the **Chat SDK Design system** Figma project. Use the Figma MCP server to look up designs when implementing or updating UI components. | ||
|
|
||
| ## `stream_core_flutter` (external sibling repo) | ||
|
|
||
| Basic UI components that can be shared across Stream products live in the `stream_core_flutter` package in the **stream-core-flutter** repository (a sibling repo, not inside this monorepo). These components: | ||
| - Never depend on chat domain models (`Channel`, `Message`, `User`, etc.) | ||
| - Provide primitive building blocks: avatars, layout primitives, theming tokens, etc. | ||
|
|
||
| Components in this repo can be wrappers around those base components, adding chat domain models and extra logic on top. For example, `StreamChannelAvatar` wraps the base `StreamAvatarGroup` from `stream_core_flutter` and adds channel-specific member resolution logic. | ||
|
|
||
| `stream_core_flutter` types used here are re-exported via a `show` allowlist in `lib/stream_chat_flutter.dart`. When adding a new type from `stream_core_flutter`, add it to that allowlist. | ||
|
|
||
| ## Dependency Management | ||
|
|
||
| Dependencies are centrally managed in `melos.yaml` under `command.bootstrap.dependencies`. Do **not** edit version constraints directly in individual `pubspec.yaml` files β update `melos.yaml` and run `melos bootstrap`. | ||
|
|
||
| > Note: `stream_chat_flutter` uses a local path dependency to `stream_core_flutter` (pointing to the sibling repo) when making changes to both repos together. Use a git dependency when no local changes to `stream_core_flutter` are needed. |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.