diff --git a/Frontend/lib/mih_components/mih_objects/arguments.dart b/Frontend/lib/mih_components/mih_objects/arguments.dart index c22ea0d0..6bb378cd 100644 --- a/Frontend/lib/mih_components/mih_objects/arguments.dart +++ b/Frontend/lib/mih_components/mih_objects/arguments.dart @@ -221,10 +221,12 @@ class WalletArguments { class MzansiAiArguments { final AppUser signedInUser; final String? startUpQuestion; + final bool personalSelected; MzansiAiArguments( this.signedInUser, this.startUpQuestion, + this.personalSelected, ); } @@ -240,6 +242,16 @@ class MzansiDirectoryArguments { }); } +class AboutArguments { + final bool personalSelected; + final int? packageIndex; + + AboutArguments( + this.personalSelected, + this.packageIndex, + ); +} + class TestArguments { final AppUser user; final Business? business; diff --git a/Frontend/lib/mih_config/mih_go_router.dart b/Frontend/lib/mih_config/mih_go_router.dart index b3164dac..7ac1e756 100644 --- a/Frontend/lib/mih_config/mih_go_router.dart +++ b/Frontend/lib/mih_config/mih_go_router.dart @@ -150,12 +150,14 @@ class MihGoRouter { path: MihGoRouterPaths.aboutMih, builder: (BuildContext context, GoRouterState state) { KenLogger.success("MihGoRouter: aboutMih"); - final int? packageIndex = state.extra as int?; + final AboutArguments? args = state.extra as AboutArguments?; int index = 0; - if (packageIndex != null) { - index = packageIndex; + bool personalSelected = true; + if (args != null) { + index = args.packageIndex ?? 0; + personalSelected = args.personalSelected; } - return AboutMih(packageIndex: index); + return AboutMih(arguments: AboutArguments(personalSelected, index)); }, ), // ========================== Mzansi Profile Personal ================================== diff --git a/Frontend/lib/mih_packages/about_mih/about_mih.dart b/Frontend/lib/mih_packages/about_mih/about_mih.dart index 7d89b12d..e18dcf45 100644 --- a/Frontend/lib/mih_packages/about_mih/about_mih.dart +++ b/Frontend/lib/mih_packages/about_mih/about_mih.dart @@ -1,4 +1,5 @@ import 'package:go_router/go_router.dart'; +import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_action.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tools.dart'; @@ -9,10 +10,10 @@ import 'package:mzansi_innovation_hub/mih_packages/about_mih/package_tools/mih_t import 'package:flutter/material.dart'; class AboutMih extends StatefulWidget { - final int? packageIndex; + final AboutArguments? arguments; const AboutMih({ super.key, - this.packageIndex, + this.arguments, }); @override @@ -21,15 +22,18 @@ class AboutMih extends StatefulWidget { class _AboutMihState extends State { late int _selcetedIndex; + late bool _personalSelected; @override void initState() { super.initState(); setState(() { - if (widget.packageIndex == null) { + if (widget.arguments == null) { _selcetedIndex = 0; + _personalSelected = true; } else { - _selcetedIndex = widget.packageIndex!; + _selcetedIndex = widget.arguments!.packageIndex!; + _personalSelected = widget.arguments!.personalSelected; } }); } @@ -58,7 +62,7 @@ class _AboutMihState extends State { onTap: () { context.goNamed( 'mihHome', - extra: true, + extra: _personalSelected, ); FocusScope.of(context).unfocus(); }, diff --git a/Frontend/lib/mih_packages/about_mih/package_tile/about_mih_tile.dart b/Frontend/lib/mih_packages/about_mih/package_tile/about_mih_tile.dart index 90759872..28b03444 100644 --- a/Frontend/lib/mih_packages/about_mih/package_tile/about_mih_tile.dart +++ b/Frontend/lib/mih_packages/about_mih/package_tile/about_mih_tile.dart @@ -1,5 +1,6 @@ import 'package:go_router/go_router.dart'; import 'package:mzansi_innovation_hub/main.dart'; +import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tile.dart'; import 'package:flutter/material.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart'; @@ -7,9 +8,11 @@ import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; class AboutMihTile extends StatefulWidget { final double packageSize; + final bool personalSelected; const AboutMihTile({ super.key, required this.packageSize, + required this.personalSelected, }); @override @@ -23,7 +26,10 @@ class _AboutMihTileState extends State { onTap: () { context.goNamed( "aboutMih", - extra: 0, + extra: AboutArguments( + widget.personalSelected, + 0, + ), ); // Navigator.of(context).pushNamed( // '/about', diff --git a/Frontend/lib/mih_packages/calendar/mzansi_calendar.dart b/Frontend/lib/mih_packages/calendar/mzansi_calendar.dart index 34819e20..2e5bbd51 100644 --- a/Frontend/lib/mih_packages/calendar/mzansi_calendar.dart +++ b/Frontend/lib/mih_packages/calendar/mzansi_calendar.dart @@ -45,7 +45,7 @@ class _MzansiCalendarState extends State { // Navigator.of(context).pop(); context.goNamed( 'mihHome', - extra: true, + extra: widget.arguments.personalSelected, ); FocusScope.of(context).unfocus(); }, diff --git a/Frontend/lib/mih_packages/mih_home/package_tools/mih_business_home.dart b/Frontend/lib/mih_packages/mih_home/package_tools/mih_business_home.dart index 34a1864a..b9b1ae12 100644 --- a/Frontend/lib/mih_packages/mih_home/package_tools/mih_business_home.dart +++ b/Frontend/lib/mih_packages/mih_home/package_tools/mih_business_home.dart @@ -118,6 +118,7 @@ class _MihBusinessHomeState extends State temp.add({ "Mzansi Directory": MzansiDirectoryTile( packageSize: packageSize, + personalSelected: false, ) }); //=============== Calculator =============== @@ -130,12 +131,21 @@ class _MihBusinessHomeState extends State //=============== Mzansi AI =============== temp.add({ "Mzansi AI": MzansiAiTile( - signedInUser: widget.signedInUser, + arguments: MzansiAiArguments( + widget.signedInUser, + "", + false, + ), packageSize: packageSize, ) }); //=============== About MIH =============== - temp.add({"About MIH": AboutMihTile(packageSize: packageSize)}); + temp.add({ + "About MIH": AboutMihTile( + packageSize: packageSize, + personalSelected: false, + ) + }); return temp; } @@ -252,6 +262,7 @@ class _MihBusinessHomeState extends State searchController.text.isEmpty ? null : searchController.text, + false, ), ); // Navigator.of(context).pushNamed( diff --git a/Frontend/lib/mih_packages/mih_home/package_tools/mih_personal_home.dart b/Frontend/lib/mih_packages/mih_home/package_tools/mih_personal_home.dart index 7e07e9dc..8c17cf56 100644 --- a/Frontend/lib/mih_packages/mih_home/package_tools/mih_personal_home.dart +++ b/Frontend/lib/mih_packages/mih_home/package_tools/mih_personal_home.dart @@ -120,6 +120,7 @@ class _MihPersonalHomeState extends State temp.add({ "Mzansi Directory": MzansiDirectoryTile( packageSize: packageSize, + personalSelected: true, ) }); //=============== Calendar =============== @@ -137,7 +138,11 @@ class _MihPersonalHomeState extends State //=============== Mzansi AI =============== temp.add({ "Mzansi AI": MzansiAiTile( - signedInUser: widget.signedInUser, + arguments: MzansiAiArguments( + widget.signedInUser, + "", + true, + ), packageSize: packageSize, ) }); @@ -156,7 +161,12 @@ class _MihPersonalHomeState extends State ) }); //=============== About MIH =============== - temp.add({"About MIH": AboutMihTile(packageSize: packageSize)}); + temp.add({ + "About MIH": AboutMihTile( + packageSize: packageSize, + personalSelected: true, + ) + }); //=============== Dev =============== if (widget.isDevActive) { temp.add({ @@ -290,6 +300,7 @@ class _MihPersonalHomeState extends State searchController.text.isEmpty ? null : searchController.text, + true, ), ); // Navigator.of(context).pushNamed( diff --git a/Frontend/lib/mih_packages/mzansi_ai/mzansi_ai.dart b/Frontend/lib/mih_packages/mzansi_ai/mzansi_ai.dart index 0cc11ad6..ccb43d38 100644 --- a/Frontend/lib/mih_packages/mzansi_ai/mzansi_ai.dart +++ b/Frontend/lib/mih_packages/mzansi_ai/mzansi_ai.dart @@ -31,7 +31,7 @@ class _MzansiAiState extends State { onTap: () { context.goNamed( 'mihHome', - extra: true, + extra: widget.arguments.personalSelected, ); FocusScope.of(context).unfocus(); }, diff --git a/Frontend/lib/mih_packages/mzansi_ai/package_tiles/mzansi_ai_tile.dart b/Frontend/lib/mih_packages/mzansi_ai/package_tiles/mzansi_ai_tile.dart index 5361524e..24633b33 100644 --- a/Frontend/lib/mih_packages/mzansi_ai/package_tiles/mzansi_ai_tile.dart +++ b/Frontend/lib/mih_packages/mzansi_ai/package_tiles/mzansi_ai_tile.dart @@ -2,18 +2,17 @@ import 'package:go_router/go_router.dart'; import 'package:mzansi_innovation_hub/main.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tile.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart'; -import 'package:mzansi_innovation_hub/mih_components/mih_objects/app_user.dart'; import 'package:flutter/material.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; class MzansiAiTile extends StatefulWidget { - final AppUser signedInUser; + final MzansiAiArguments arguments; final double packageSize; const MzansiAiTile({ super.key, - required this.signedInUser, + required this.arguments, required this.packageSize, }); @@ -28,10 +27,7 @@ class _MzansiAiTileState extends State { onTap: () { context.goNamed( 'mzansiAi', - extra: MzansiAiArguments( - widget.signedInUser, - "", - ), + extra: widget.arguments, ); // Navigator.of(context).pushNamed( // '/mzansi-ai', diff --git a/Frontend/lib/mih_packages/mzansi_directory/mzansi_directory.dart b/Frontend/lib/mih_packages/mzansi_directory/mzansi_directory.dart index 5719cbe5..eb390b29 100644 --- a/Frontend/lib/mih_packages/mzansi_directory/mzansi_directory.dart +++ b/Frontend/lib/mih_packages/mzansi_directory/mzansi_directory.dart @@ -100,7 +100,7 @@ class _MzansiDirectoryState extends State { onTap: () { context.goNamed( 'mihHome', - extra: true, + extra: widget.arguments.personalSearch, ); FocusScope.of(context).unfocus(); }, diff --git a/Frontend/lib/mih_packages/mzansi_directory/package_tiles/mzansi_directory_tile.dart b/Frontend/lib/mih_packages/mzansi_directory/package_tiles/mzansi_directory_tile.dart index 9185b8d2..ee72ba50 100644 --- a/Frontend/lib/mih_packages/mzansi_directory/package_tiles/mzansi_directory_tile.dart +++ b/Frontend/lib/mih_packages/mzansi_directory/package_tiles/mzansi_directory_tile.dart @@ -8,9 +8,11 @@ import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; class MzansiDirectoryTile extends StatefulWidget { final double packageSize; + final bool personalSelected; const MzansiDirectoryTile({ super.key, required this.packageSize, + required this.personalSelected, }); @override @@ -25,7 +27,7 @@ class _MzansiDirectoryTileState extends State { context.goNamed( "mzansiDirectory", extra: MzansiDirectoryArguments( - personalSearch: true, + personalSearch: widget.personalSelected, startSearchText: null, ), );