easy_sidemenu 1.0.0
easy_sidemenu: ^1.0.0 copied to clipboard
An easy to use side menu (navigation rail) in flutter and can used for navigation
1.0.0 #
This is a full rewrite. See MIGRATION.md for a step-by-step upgrade guide.
Breaking changes #
- Minimum SDK: Dart
>=3.4.0, Flutter>=3.22.0 providerremoved: no longer a transitive dependencySideMenuStyleremoved: replaced bySideMenuThemeData(aThemeExtension)SideMenuController: now extendsChangeNotifier;changePage(i)→goTo(i),currentPage→currentIndex, stream-based listener removedSideMenuItemTypeinterface renamed toSideMenuItemBaseSideMenuExpansionItem.initialExpandedrenamed toinitiallyExpandedSideMenuItem.badgeContentrenamed tobadge;badgeColorremoved (style the badge widget directly)- Internal types
SideMenuItemWithGlobal,Global,DisplayModeNotifierremoved from public exports
New features #
SideMenuThemeDatais a fullThemeExtension— register once inThemeData.extensionsfor app-wide defaults, or pass toSideMenu.themeper-widgetmenuDecoration: BoxDecoration?— full decoration control (gradient, shadow, border) for the menu containerbackdropSigma: double?— enables glassmorphism viaBackdropFilter; wrap the menu in a transparentmenuDecorationto see through to the backgroundselectedItemDecoration: BoxDecoration?— full decoration for the selected item (gradient pill, left-border indicator, glow)SideMenuThemeData.resolve(context)— fillsnullfields from the ambientColorScheme/TextTheme(Material 3)SideMenu.heightnow stretches to available space (double.infinity) so the widget works correctly inside aPaddingwrapper- Timers are properly cancelled on
dispose()— no more widget-test timer leaks
Bug fixes #
- Compact width no longer resets after navigating away and returning (#46)
- All
SideMenuExpansionItemchildren receive correct stable flat indices viaSideMenuItemIndexInheritedWidget
Other #
providerdependency dropped entirely- Architecture rewritten:
SideMenuScope(InheritedNotifier) replacesproviderglobals - 25 unit + widget tests added; GitHub Actions CI pipeline added
MIGRATION.mddocuments every breaking change with before/after examples
0.7.1 #
0.7.0 #
- Refactored the
Globalclass to extendChangeNotifier. - Optimized Width Calculation
- Removed
itemsUpdateMechanism SideMenuItemTypeas a base interface forSideMenuItemandSideMenuExpansionItem.
0.6.1 #
-
New Features
- add onTap event ->
SideMenuExpansionItem#85
- add onTap event ->
-
Removed
Badgedependencies and use Flutter builtinBadge -
Fix RTL issues
0.6.0 #
0.5.0 #
- Braking: priority has been removed from
SideMenuItem - builder has been changed and now can use any widget as
SideMenuItem - Fix some performance issue
0.4.2 #
0.4.1+1 #
- Fix Badge error on flutter 3.7.0
0.4.0 #
0.3.1 #
- Fix null exception on
onDisplayModeChanged - Fix
WidgetsBinding.instancenull checker in flutter 3
0.3.0 #
- Add listener to
SideMenuDisplayModechanged - Add toggle button to open and compact sidemenu
- Refactor code by myConsciousness - #8
0.2.1 #
- Support RTL languages
- Add
decorationtoSideMenuStyle - Fix initialPage bug
0.2.0 #
- Add badge support to the sidemenu
- Change IconData to Icon for more flexibility
0.1.1+1 #
- Add demo to readme
0.1.1 #
- Add readme to package
0.1.0 #
- First release