merge with conflict

This commit is contained in:
amirrezaghabeli
2025-09-25 12:48:32 +03:30
parent 9d22bccef0
commit e49c12b6cc
8 changed files with 130 additions and 39 deletions
@@ -1,9 +1,11 @@
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:go_router/go_router.dart';
import 'package:provider/provider.dart';
import 'package:tm_app/core/constants/assets.dart';
import 'package:tm_app/core/theme/colors.dart';
import 'package:tm_app/core/utils/size_config.dart';
import 'package:tm_app/view_models/home_view_model.dart';
import 'package:tm_app/views/profile/strings/profile_strings.dart';
import '../../../views/home/strings/home_strings.dart';
@@ -63,6 +65,7 @@ class MobileShellPage extends StatelessWidget {
onTap: () => onTap(3),
iconPath: AssetsManager.notify,
activeIconPath: AssetsManager.notifyActive,
showBadge: context.watch<HomeViewModel>().hasUnreadNotification,
),
_bottomNavigationItem(
context: context,
@@ -85,6 +88,7 @@ class MobileShellPage extends StatelessWidget {
required VoidCallback onTap,
required String iconPath,
required String activeIconPath,
bool showBadge = false,
}) {
return InkWell(
onTap: onTap,
@@ -96,8 +100,25 @@ class MobileShellPage extends StatelessWidget {
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
SvgPicture.asset(isActive ? activeIconPath : iconPath),
Stack(
clipBehavior: Clip.none,
children: [
SvgPicture.asset(isActive ? activeIconPath : iconPath),
if (showBadge)
Positioned(
right: -5,
top: -2,
child: Container(
width: 8,
height: 8,
decoration: const BoxDecoration(
color: Colors.red,
shape: BoxShape.circle,
),
),
),
],
),
Text(
text,
maxLines: 1,