Conversation
* poc of button and gallery * chore: fix analysis issues * chore: format * chore: format * add temporary branch for PR title --------- Co-authored-by: Sahil Kumar <sahil@getstream.io>
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Tip Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs). 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. Comment |
Codecov Report❌ Patch coverage is ❌ Your patch check has failed because the patch coverage (21.15%) is below the target coverage (80.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## main #30 +/- ##
==========================================
- Coverage 40.39% 39.96% -0.44%
==========================================
Files 53 53
Lines 1057 1041 -16
==========================================
- Hits 427 416 -11
+ Misses 630 625 -5 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
…31) * feat: Introduce Stream Design System foundations and gallery app This commit introduces the foundational elements of the new Stream Design System and a comprehensive gallery application (Widgetbook) for showcasing and customizing components. **Core Package (`stream_core_flutter`):** * **Design Tokens**: Added foundational design tokens for colors, spacing, radius, typography, and box shadows. These tokens are organized into primitive and semantic layers. * `StreamColors`: Defines the primitive color palette. * `StreamColorScheme`: Provides semantic color roles (e.g., `accentPrimary`, `textSecondary`). * `StreamTypography`, `StreamTextTheme`: Defines font primitives and semantic text styles. * `StreamSpacing`, `StreamRadius`, `StreamBoxShadow`: Adds tokens for layout and elevation. * **`StreamTheme`**: Implemented a new `ThemeExtension` to aggregate all design tokens and component themes, enabling centralized theming. * **New Components**: Added `StreamAvatar`, `StreamAvatarStack`, and `StreamOnlineIndicator`. * **Theming Infrastructure**: Added `theme_extensions_builder` to auto-generate `copyWith`, `lerp`, and `==`/`hashCode` for theme classes. **Design System Gallery (`design_system_gallery`):** * **Gallery App**: Replaced the basic Widgetbook setup with a new, fully-featured gallery application (`StreamDesignSystemGallery`). * **Theme Studio**: Added a "Theme Studio" panel for real-time customization of all `StreamColorScheme` properties. * **Enhanced Previews**: * Added a toolbar with controls for device selection (`DeviceFrame`), text scaling, and light/dark mode toggles. * Created a `PreviewWrapper` to apply theme, device frame, and text scale to all use cases. * **New Use Cases**: * Added comprehensive use cases for new components (`StreamAvatar`, `StreamAvatarStack`, `StreamOnlineIndicator`). * Added showcases for semantic tokens (`Typography`, `Elevations`). * Improved `StreamButton` use cases with more variants and real-world examples. * **Agent Guide**: Added `AGENTS.md`, a guide for AI agents on contributing to the gallery. * chore: format code * refactor: Remove StreamButtonTheme The `StreamButtonTheme` and its related data classes have been removed from the core theme structure. This simplifies the theme by removing the button-specific theming. Additionally, the `lerp` function for `StreamBrandColor` has been adjusted, and `StreamAvatarColorPair` is now generated using `themeGen`. * refactor: Remove StreamButtonTheme The `StreamButtonTheme` and its related data classes have been removed from the core theme structure. This simplifies the theme by removing the button-specific theming. Additionally, the `lerp` function for `StreamBrandColor` has been adjusted, and `StreamAvatarColorPair` is now generated using `themeGen`. * chore: update code to use Dart 3 shorthand syntax
* chore(repo): Add workflow to publish design system gallery (#32) * Add workflow to publish design system gallery * remove specific flutter version * don't fetch remote branch
* add swatch from single color * remove print statement * remove unused import
* improvements on old button component * add todo * add colors for disabled button * use tokens for border * format * update button theme with more layering * add snapshot tests enabled lfs for snapshots * update git checkout for workflow * improve CI param * add workflow to update goldens (#39) * chore: Update Goldens * disable CI snapshots for local tests --------- Co-authored-by: renefloor <15101411+renefloor@users.noreply.github.com>
Co-authored-by: Sahil Kumar <sahil@getstream.io>
Co-authored-by: Sahil Kumar <sahil@getstream.io>
* make gallery more usable on mobile * add const * feat: animate theme panel and fix layout overflows - Refactor `GalleryShell` to use `AnimatedSlide` for the theme panel and `AnimatedPadding` for the content. - Fix text overflow issues in `GalleryHomePage` and color swatches. - Set minimum window size for macOS. * feat: integrate Marionette --------- Co-authored-by: Sahil Kumar <sahil@getstream.io>
* update design system tokens source: GetStream/design-system-tokens@ee59239 * updating border colors in gallery * chore: Update Goldens * missing border colors * feat: add headingXs to StreamTextTheme * feat(gallery): enhance theme config and add backgroundDisabled - Add `backgroundDisabled` to `ThemeConfiguration` and customization panel - Refactor color derivation logic for brand, accents, and borders in `_rebuildTheme` - Update Material theme mappings for borders, dividers, and inputs - Add `headingXs` to typography showcase - Replace `Colors` with `StreamColors` for consistency --------- Co-authored-by: renefloor <15101411+renefloor@users.noreply.github.com> Co-authored-by: Sahil Kumar <sahil@getstream.io>
* refactor(ui): decouple StreamComponentFactory from StreamTheme - Convert `StreamComponentFactory` to `InheritedWidget` for subtree overrides. - Remove `componentFactory` from `StreamTheme`. - Introduce `StreamComponentBuilders` for component customization. - Update `StreamButton` and `StreamFileTypeIcon` to use the new factory lookup. * feat(ui): add factory support for avatars, badges, and indicators Refactors StreamAvatar, StreamAvatarGroup, StreamAvatarStack, StreamBadgeCount, and StreamOnlineIndicator to use StreamComponentFactory. * refactor(ui): update imports in stream_file_type_icon.dart for component factory and theme extensions
* Add basic message composer structure * Add textinputcontroller * Add option for floating * improve bottom padding in message composer * Started with attachments * fix some factory properties * simplified design system composer * fix icon button * Added focusNode for input field * update gallery * chore: Update Goldens --------- Co-authored-by: renefloor <15101411+renefloor@users.noreply.github.com>
* Add attachment - reply * Add component for reply * Add GestureDetector on RemoveControl * chore: Update Goldens * formatting * rename chat theme to message theme * rename chat_theme file --------- Co-authored-by: renefloor <15101411+renefloor@users.noreply.github.com>
* Add link preview component * Update max height of composer input field * chore: Update Goldens * Fix chat rename * remove old todo --------- Co-authored-by: renefloor <15101411+renefloor@users.noreply.github.com>
* remove expands on inputfield * align inputfields on bottom
Co-authored-by: xsahil03x <25670178+xsahil03x@users.noreply.github.com>
* refactor message theme to separate incoming and outgoing * chore: Update Goldens * rename message style * remove unused import * chore: Update Goldens --------- Co-authored-by: renefloor <15101411+renefloor@users.noreply.github.com>
* refactor(ui): centralize button defaults and add iconSize property * feat: add target platform override to preview toolbar - Add `PlatformSelector` component to switch between target platforms (Android, iOS, etc.). - Update `PreviewConfiguration` to store and notify platform changes. - Apply platform override in `PreviewWrapper` to ensure `StreamTheme` and `Theme` reflect the selected platform. - Add the selector to the main `Toolbar`. * chore: flutter format * feat: add StreamContextMenu and StreamContextMenuItem components with playground examples * feat: add applyPlatform to StreamTheme and update gallery platform override
* feat(ui): add StreamProgressBar component and theme - Add `StreamProgressBar` component with determinate and indeterminate states. - Add `StreamProgressBarTheme` and integrate into `StreamTheme`. - Update `backgroundCoreSurfaceStrong` and `accentNeutral` color tokens. - Add playground examples to the gallery. * feat(ui): enhance StreamButton and StreamButtonTheme with interpolation methods * feat(ui): add StreamProgressBar component with playground and showcase examples * refactor: move StreamProgressBar to common * feat(ui): add StreamCheckbox component and theme - Added `StreamCheckbox` component with support for standard and circular shapes. - Implemented `StreamCheckboxTheme` and `StreamCheckboxStyle` for customization. - Updated `StreamComponentFactory` to support custom checkbox builders. - Exposed checkbox theme via `StreamTheme` and extensions. - Added playground and showcase examples to the design system gallery. * feat(ui): add custom builder support for StreamProgressBar
* Improved media and file attachments * Allow override of input body * simplify StreamBaseMessageComposerInputTrailing * cleanup unnecessary fields * formatting * publicly export StreamRemoveControl * attachment and composer renaming * formatting
Co-authored-by: renefloor <15101411+renefloor@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
* return empty factory when no factory is found * update docs * replaced all maybeOffs
* add channel list item * update avatar sizes * Add badge notification and snapshot tests * Improve channel list item for implementation * chore: Update Goldens * remove unused imports * Merge channel list item with list tile * fix gallery * chore: Update Goldens * Fix background color theming * fix avatar size * Added claude code file * remove channel list item from core * cleanup channel list item * update generated files --------- Co-authored-by: renefloor <15101411+renefloor@users.noreply.github.com>
… title and subtitle (#68) Co-authored-by: xsahil03x <25670178+xsahil03x@users.noreply.github.com>
No description provided.