m3e_card_list 0.1.0
m3e_card_list: ^0.1.0 copied to clipboard
A Flutter package providing expressive Material 3 card lists with dynamically rounded corners for ListView, SliverList and Column.
0.1.0 #
Breaking Changes #
- Haptic API changed: Integer
haptic: 3replaced withM3EHapticFeedbackenum (none,light,medium,heavy). - Color opacity API:
withOpacity()replaced withwithValues(alpha:). - Margin behavior changed:
marginnow wraps the entire list/group instead of each individual card. This fixes visual gaps between cards. marginremoved fromM3ECard: UseM3ECardList.marginorM3ECardColumn.margininstead.- Default padding changed:
EdgeInsets.all(16.0)→EdgeInsets.all(12.0)for tighter internal spacing. M3ECardColumnparameter renamed:itemPadding→padding.RepaintBoundaryremoved:M3ECardno longer wraps inRepaintBoundaryfor lower GPU memory usage.- New
M3ECardwidget: Individual card widget withindex,position(M3ECardPosition),outerRadius,innerRadius,gapparameters. M3ECardPositionenum added:first,middle,last,singlefor use withM3ECard.calculateCardPositionis now public: Exported fromm3e_card_widget.dart.
New Features #
onLongPresscallback: Added toM3ECard,M3ECardList,SliverM3ECardList, andM3ECardColumn.- Accessibility:
semanticLabel(M3ECard) andsemanticLabelBuilder(lists) for screen reader support. mouseCursor: Custom mouse cursor support, defaults toclickwhen interactive.focusColor/hoverColor: Custom focus and hover indicators for desktop/mouse interactions.onFocusChangecallback: Notified when focus state changes.emptyBuilder: Shown whenitemCountis 0 for all three list components.addAutomaticKeepAlives: Parity with Flutter'sListView.builder.addRepaintBoundaries: Parity with Flutter'sListView.builder.addSemanticIndexes: Parity with Flutter'sListView.builder.
Behavioral Changes (Non-Breaking) #
- Margin no longer compounds: Previously each card got the same margin causing gaps; now margin only surrounds the whole group.
- Sliver list is always lazy:
SliverM3ECardListhas no non-lazy variant by design.
0.0.1 #
- Initial release.
- Adds
M3ECardListfor standard ListViews. - Adds
SliverM3ECardListfor CustomScrollViews. - Adds
M3ECardColumn, a lightweight rendering alternative for static card lists. - Supports customizable corners, colors, borders, haptics, margin, and custom ink splashes following Material 3 Expressive guidelines.