diff --git a/lib/config/provider_routes.dart b/lib/config/provider_routes.dart index f487d38..7250a5b 100644 --- a/lib/config/provider_routes.dart +++ b/lib/config/provider_routes.dart @@ -4,18 +4,18 @@ import 'package:car_provider_app/views/appoinments/appointment_page.dart'; import 'package:car_provider_app/views/appoinments/merge_appointment_page.dart'; import 'package:car_provider_app/views/appoinments/update_appointment_page.dart'; import 'package:car_provider_app/views/dashboard/dashboard_view.dart'; -import 'package:car_provider_app/views/settings/branch/branch_detail_page.dart'; -import 'package:car_provider_app/views/settings/branch/dealer/dealer_user_page.dart'; -import 'package:car_provider_app/views/settings/branch/define_branch_view.dart'; -import 'package:car_provider_app/views/settings/schedule/add_schedules_page.dart'; -import 'package:car_provider_app/views/settings/schedule/schedules_list_page.dart'; -import 'package:car_provider_app/views/settings/services/create_item_page.dart'; -import 'package:car_provider_app/views/settings/branch/dealer/dealership_view.dart'; -import 'package:car_provider_app/views/settings/services/create_services_page3.dart'; -import 'package:car_provider_app/views/settings/services/duplication/matched_services_page.dart'; -import 'package:car_provider_app/views/settings/services/duplication/sheet/approved_branches_list_sheet.dart'; -import 'package:car_provider_app/views/settings/services/items_list_page.dart'; -import 'package:car_provider_app/views/settings/services/services_list_page.dart'; +import 'package:car_provider_app/views/branch_management/branch/branch_detail_page.dart'; +import 'package:car_provider_app/views/branch_management/branch/dealer/dealer_user_page.dart'; +import 'package:car_provider_app/views/branch_management/branch/define_branch_view.dart'; +import 'package:car_provider_app/views/branch_management/schedule/add_schedules_page.dart'; +import 'package:car_provider_app/views/branch_management/schedule/schedules_list_page.dart'; +import 'package:car_provider_app/views/branch_management/services/create_item_page.dart'; +import 'package:car_provider_app/views/branch_management/branch/dealer/dealership_view.dart'; +import 'package:car_provider_app/views/branch_management/services/create_services_page3.dart'; +import 'package:car_provider_app/views/branch_management/services/duplication/matched_services_page.dart'; +import 'package:car_provider_app/views/branch_management/services/duplication/sheet/approved_branches_list_sheet.dart'; +import 'package:car_provider_app/views/branch_management/services/items_list_page.dart'; +import 'package:car_provider_app/views/branch_management/services/services_list_page.dart'; import 'package:car_provider_app/views/subscriptions/my_subscritions_page.dart'; import 'package:car_provider_app/views/subscriptions/all_subscriptions_page.dart'; import 'package:mc_common_app/config/routes.dart'; diff --git a/lib/main.dart b/lib/main.dart index a2fa5ad..09635bc 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -6,6 +6,7 @@ import 'package:mc_common_app/repositories/schedule_repo.dart'; import 'package:car_provider_app/view_models/dashboard_view_model.dart'; import 'package:car_provider_app/view_models/items_view_model.dart'; import 'package:car_provider_app/view_models/schedule_view_model.dart'; +import 'package:mc_common_app/repositories/setting_options_repo.dart'; import 'package:mc_common_app/repositories/shipping_repo.dart'; import 'package:mc_common_app/services/firebase_service.dart'; import 'package:mc_common_app/view_models/service_view_model.dart'; @@ -34,6 +35,7 @@ import 'package:mc_common_app/view_models/base_view_model.dart'; import 'package:mc_common_app/view_models/chat_view_model.dart'; import 'package:mc_common_app/view_models/payment_view_model.dart'; import 'package:mc_common_app/view_models/requests_view_model.dart'; +import 'package:mc_common_app/view_models/setting_options_view_model.dart'; import 'package:mc_common_app/view_models/shipping_management_view_model.dart'; import 'package:mc_common_app/view_models/subscriptions_view_model.dart'; import 'package:mc_common_app/view_models/user_view_model.dart'; @@ -139,6 +141,10 @@ Future main() async { shippingRepo: injector.get(), commonRepo: injector.get(), )), + ChangeNotifierProvider( + create: (_) => SettingOptionsVM( + settingOptionsRepo: injector.get(), + )), ], child: const MyApp(), ).setupLocale()); diff --git a/lib/view_models/dashboard_view_model.dart b/lib/view_models/dashboard_view_model.dart index 2303352..45f7f1a 100644 --- a/lib/view_models/dashboard_view_model.dart +++ b/lib/view_models/dashboard_view_model.dart @@ -1,6 +1,6 @@ import 'dart:io'; import 'package:car_provider_app/config/provider_routes.dart'; -import 'package:car_provider_app/views/settings/branch/dealer/widget/add_phone_num_wiget.dart'; +import 'package:car_provider_app/views/branch_management/branch/dealer/widget/add_phone_num_wiget.dart'; import 'package:google_maps_flutter/google_maps_flutter.dart'; import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/cupertino.dart'; diff --git a/lib/view_models/items_view_model.dart b/lib/view_models/items_view_model.dart index f2c2c42..e1bef9d 100644 --- a/lib/view_models/items_view_model.dart +++ b/lib/view_models/items_view_model.dart @@ -1,5 +1,6 @@ import 'dart:io'; +import 'package:car_provider_app/views/branch_management/schedule/widgets/chips_picker_item.dart'; import 'package:mc_common_app/generated/locale_keys.g.dart'; import 'package:mc_common_app/models/general_models/generic_resp_model.dart'; import 'package:mc_common_app/repositories/items_repo.dart'; @@ -13,8 +14,6 @@ import 'package:mc_common_app/view_models/base_view_model.dart'; import 'package:file_picker/file_picker.dart'; import 'package:easy_localization/easy_localization.dart'; -import '../views/settings/schedule/widgets/chips_picker_item.dart'; - class ItemsVM extends BaseVM { final ItemsRepo itemsRepo; final CommonAppServices commonServices; diff --git a/lib/view_models/schedule_view_model.dart b/lib/view_models/schedule_view_model.dart index 95177d5..a7a7757 100644 --- a/lib/view_models/schedule_view_model.dart +++ b/lib/view_models/schedule_view_model.dart @@ -2,7 +2,7 @@ import 'package:mc_common_app/models/appointments_models/schedule_model.dart'; import 'package:mc_common_app/models/general_models/generic_resp_model.dart'; import 'package:mc_common_app/models/provider_branches_models/profile/services.dart'; import 'package:mc_common_app/repositories/schedule_repo.dart'; -import 'package:car_provider_app/views/settings/schedule/widgets/chips_picker_item.dart'; +import 'package:car_provider_app/views/branch_management/schedule/widgets/chips_picker_item.dart'; import 'package:mc_common_app/utils/enums.dart'; import 'package:mc_common_app/utils/utils.dart'; import 'package:mc_common_app/view_models/base_view_model.dart'; diff --git a/lib/views/appoinments/add_new_service_appointment_page.dart b/lib/views/appoinments/add_new_service_appointment_page.dart index 3b24bfc..5f5975e 100644 --- a/lib/views/appoinments/add_new_service_appointment_page.dart +++ b/lib/views/appoinments/add_new_service_appointment_page.dart @@ -1,7 +1,6 @@ import 'dart:async'; - import 'package:car_provider_app/views/dashboard/widget/general_appointment_widget.dart'; -import 'package:car_provider_app/views/settings/schedule/widgets/chips_picker_item.dart'; +import 'package:car_provider_app/views/branch_management/schedule/widgets/chips_picker_item.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/widgets.dart'; import 'package:mc_common_app/generated/locale_keys.g.dart'; diff --git a/lib/views/appoinments/widget/select_items_sheet.dart b/lib/views/appoinments/widget/select_items_sheet.dart index c1780ca..71a6ada 100644 --- a/lib/views/appoinments/widget/select_items_sheet.dart +++ b/lib/views/appoinments/widget/select_items_sheet.dart @@ -1,4 +1,5 @@ import 'package:car_provider_app/view_models/items_view_model.dart'; +import 'package:car_provider_app/views/branch_management/schedule/widgets/chips_picker_item.dart'; import 'package:flutter/material.dart'; import 'package:mc_common_app/extensions/int_extensions.dart'; import 'package:mc_common_app/extensions/string_extensions.dart'; @@ -8,9 +9,7 @@ import 'package:mc_common_app/theme/colors.dart'; import 'package:mc_common_app/widgets/button/show_fill_button.dart'; import 'package:mc_common_app/widgets/empty_widget.dart'; import 'package:mc_common_app/widgets/extensions/extensions_widget.dart'; -import 'package:mc_common_app/widgets/txt_field.dart'; import 'package:provider/provider.dart'; -import '../../settings/schedule/widgets/chips_picker_item.dart'; import 'package:easy_localization/easy_localization.dart'; class SelectItemsSheet extends StatelessWidget { diff --git a/lib/views/settings/branch/branch_detail_page.dart b/lib/views/branch_management/branch/branch_detail_page.dart similarity index 98% rename from lib/views/settings/branch/branch_detail_page.dart rename to lib/views/branch_management/branch/branch_detail_page.dart index c4c7e07..ac282fe 100644 --- a/lib/views/settings/branch/branch_detail_page.dart +++ b/lib/views/branch_management/branch/branch_detail_page.dart @@ -1,10 +1,10 @@ import 'dart:async'; import 'package:car_provider_app/config/provider_routes.dart'; -import 'package:car_provider_app/views/settings/branch/dealer/widget/assign_dealer_user_sheet.dart'; +import 'package:car_provider_app/views/branch_management/branch/dealer/widget/assign_dealer_user_sheet.dart'; import 'package:mc_common_app/generated/locale_keys.g.dart'; import 'package:mc_common_app/utils/utils.dart'; import 'package:mc_common_app/view_models/service_view_model.dart'; -import 'package:car_provider_app/views/settings/services/services_list_page.dart'; +import 'package:car_provider_app/views/branch_management/services/services_list_page.dart'; import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; diff --git a/lib/views/settings/branch/branch_list_page.dart b/lib/views/branch_management/branch/branch_list_page.dart similarity index 100% rename from lib/views/settings/branch/branch_list_page.dart rename to lib/views/branch_management/branch/branch_list_page.dart diff --git a/lib/views/settings/branch/dealer/dealer_user_page.dart b/lib/views/branch_management/branch/dealer/dealer_user_page.dart similarity index 97% rename from lib/views/settings/branch/dealer/dealer_user_page.dart rename to lib/views/branch_management/branch/dealer/dealer_user_page.dart index 257fceb..8809a58 100644 --- a/lib/views/settings/branch/dealer/dealer_user_page.dart +++ b/lib/views/branch_management/branch/dealer/dealer_user_page.dart @@ -1,7 +1,7 @@ import 'package:mc_common_app/generated/locale_keys.g.dart'; import 'package:mc_common_app/models/general_models/generic_resp_model.dart'; import 'package:mc_common_app/view_models/service_view_model.dart'; -import 'package:car_provider_app/views/settings/branch/dealer/widget/assign_dealer_user_sheet.dart'; +import 'package:car_provider_app/views/branch_management/branch/dealer/widget/assign_dealer_user_sheet.dart'; import 'package:flutter/material.dart'; import 'package:mc_common_app/classes/app_state.dart'; import 'package:mc_common_app/extensions/int_extensions.dart'; diff --git a/lib/views/settings/branch/dealer/dealership_view.dart b/lib/views/branch_management/branch/dealer/dealership_view.dart similarity index 100% rename from lib/views/settings/branch/dealer/dealership_view.dart rename to lib/views/branch_management/branch/dealer/dealership_view.dart diff --git a/lib/views/settings/branch/dealer/widget/add_phone_num_wiget.dart b/lib/views/branch_management/branch/dealer/widget/add_phone_num_wiget.dart similarity index 100% rename from lib/views/settings/branch/dealer/widget/add_phone_num_wiget.dart rename to lib/views/branch_management/branch/dealer/widget/add_phone_num_wiget.dart diff --git a/lib/views/settings/branch/dealer/widget/assign_dealer_user_sheet.dart b/lib/views/branch_management/branch/dealer/widget/assign_dealer_user_sheet.dart similarity index 100% rename from lib/views/settings/branch/dealer/widget/assign_dealer_user_sheet.dart rename to lib/views/branch_management/branch/dealer/widget/assign_dealer_user_sheet.dart diff --git a/lib/views/settings/branch/define_branch_view.dart b/lib/views/branch_management/branch/define_branch_view.dart similarity index 100% rename from lib/views/settings/branch/define_branch_view.dart rename to lib/views/branch_management/branch/define_branch_view.dart diff --git a/lib/views/settings/schedule/add_schedules_page.dart b/lib/views/branch_management/schedule/add_schedules_page.dart similarity index 97% rename from lib/views/settings/schedule/add_schedules_page.dart rename to lib/views/branch_management/schedule/add_schedules_page.dart index 5f2e3c1..3ab7ab7 100644 --- a/lib/views/settings/schedule/add_schedules_page.dart +++ b/lib/views/branch_management/schedule/add_schedules_page.dart @@ -1,9 +1,9 @@ import 'dart:async'; import 'package:car_provider_app/view_models/schedule_view_model.dart'; -import 'package:car_provider_app/views/settings/schedule/widgets/chips_picker_item.dart'; -import 'package:car_provider_app/views/settings/schedule/widgets/select_days_sheet.dart'; -import 'package:car_provider_app/views/settings/schedule/widgets/select_services_sheet.dart'; +import 'package:car_provider_app/views/branch_management/schedule/widgets/chips_picker_item.dart'; +import 'package:car_provider_app/views/branch_management/schedule/widgets/select_days_sheet.dart'; +import 'package:car_provider_app/views/branch_management/schedule/widgets/select_services_sheet.dart'; import 'package:flutter/material.dart'; import 'package:mc_common_app/extensions/int_extensions.dart'; import 'package:mc_common_app/extensions/string_extensions.dart'; @@ -13,7 +13,6 @@ import 'package:mc_common_app/models/appointments_models/schedule_model.dart'; import 'package:mc_common_app/models/general_models/generic_resp_model.dart'; import 'package:mc_common_app/theme/colors.dart'; import 'package:mc_common_app/utils/date_helper.dart'; -import 'package:mc_common_app/utils/dialogs_and_bottomsheets.dart'; import 'package:mc_common_app/utils/navigator.dart'; import 'package:mc_common_app/utils/utils.dart'; import 'package:mc_common_app/widgets/button/show_fill_button.dart'; diff --git a/lib/views/settings/schedule/schedules_list_page.dart b/lib/views/branch_management/schedule/schedules_list_page.dart similarity index 100% rename from lib/views/settings/schedule/schedules_list_page.dart rename to lib/views/branch_management/schedule/schedules_list_page.dart diff --git a/lib/views/settings/schedule/widgets/chips_picker_item.dart b/lib/views/branch_management/schedule/widgets/chips_picker_item.dart similarity index 100% rename from lib/views/settings/schedule/widgets/chips_picker_item.dart rename to lib/views/branch_management/schedule/widgets/chips_picker_item.dart diff --git a/lib/views/settings/schedule/widgets/select_days_sheet.dart b/lib/views/branch_management/schedule/widgets/select_days_sheet.dart similarity index 96% rename from lib/views/settings/schedule/widgets/select_days_sheet.dart rename to lib/views/branch_management/schedule/widgets/select_days_sheet.dart index 69b33f1..9ae331b 100644 --- a/lib/views/settings/schedule/widgets/select_days_sheet.dart +++ b/lib/views/branch_management/schedule/widgets/select_days_sheet.dart @@ -1,5 +1,5 @@ import 'package:car_provider_app/view_models/schedule_view_model.dart'; -import 'package:car_provider_app/views/settings/schedule/widgets/chips_picker_item.dart'; +import 'package:car_provider_app/views/branch_management/schedule/widgets/chips_picker_item.dart'; import 'package:flutter/material.dart'; import 'package:mc_common_app/extensions/int_extensions.dart'; import 'package:mc_common_app/extensions/string_extensions.dart'; diff --git a/lib/views/settings/schedule/widgets/select_services_sheet.dart b/lib/views/branch_management/schedule/widgets/select_services_sheet.dart similarity index 100% rename from lib/views/settings/schedule/widgets/select_services_sheet.dart rename to lib/views/branch_management/schedule/widgets/select_services_sheet.dart diff --git a/lib/views/settings/services/create_item_page.dart b/lib/views/branch_management/services/create_item_page.dart similarity index 100% rename from lib/views/settings/services/create_item_page.dart rename to lib/views/branch_management/services/create_item_page.dart diff --git a/lib/views/settings/services/create_services_page3.dart b/lib/views/branch_management/services/create_services_page3.dart similarity index 99% rename from lib/views/settings/services/create_services_page3.dart rename to lib/views/branch_management/services/create_services_page3.dart index fb9ff83..024b6f3 100644 --- a/lib/views/settings/services/create_services_page3.dart +++ b/lib/views/branch_management/services/create_services_page3.dart @@ -1,10 +1,9 @@ import 'dart:async'; -import 'dart:developer'; import 'package:mc_common_app/generated/locale_keys.g.dart'; import 'package:mc_common_app/models/general_models/generic_resp_model.dart'; import 'package:mc_common_app/utils/navigator.dart'; import 'package:mc_common_app/view_models/service_view_model.dart'; -import 'package:car_provider_app/views/settings/services/services_list_page.dart'; +import 'package:car_provider_app/views/branch_management/services/services_list_page.dart'; import 'package:flutter/material.dart'; import 'package:mc_common_app/extensions/int_extensions.dart'; import 'package:mc_common_app/extensions/string_extensions.dart'; diff --git a/lib/views/settings/services/create_services_view.dart b/lib/views/branch_management/services/create_services_view.dart similarity index 100% rename from lib/views/settings/services/create_services_view.dart rename to lib/views/branch_management/services/create_services_view.dart diff --git a/lib/views/settings/services/duplication/matched_services_page.dart b/lib/views/branch_management/services/duplication/matched_services_page.dart similarity index 96% rename from lib/views/settings/services/duplication/matched_services_page.dart rename to lib/views/branch_management/services/duplication/matched_services_page.dart index 1058866..c073f20 100644 --- a/lib/views/settings/services/duplication/matched_services_page.dart +++ b/lib/views/branch_management/services/duplication/matched_services_page.dart @@ -1,7 +1,7 @@ import 'package:mc_common_app/generated/locale_keys.g.dart'; import 'package:mc_common_app/view_models/service_view_model.dart'; -import 'package:car_provider_app/views/settings/services/duplication/sheet/approved_branches_list_sheet.dart'; -import 'package:car_provider_app/views/settings/services/duplication/sheet/items_selection_sheet.dart'; +import 'package:car_provider_app/views/branch_management/services/duplication/sheet/approved_branches_list_sheet.dart'; +import 'package:car_provider_app/views/branch_management/services/duplication/sheet/items_selection_sheet.dart'; import 'package:flutter/material.dart'; import 'package:mc_common_app/classes/consts.dart'; import 'package:mc_common_app/extensions/int_extensions.dart'; diff --git a/lib/views/settings/services/duplication/sheet/approved_branches_list_sheet.dart b/lib/views/branch_management/services/duplication/sheet/approved_branches_list_sheet.dart similarity index 100% rename from lib/views/settings/services/duplication/sheet/approved_branches_list_sheet.dart rename to lib/views/branch_management/services/duplication/sheet/approved_branches_list_sheet.dart diff --git a/lib/views/settings/services/duplication/sheet/items_selection_sheet.dart b/lib/views/branch_management/services/duplication/sheet/items_selection_sheet.dart similarity index 100% rename from lib/views/settings/services/duplication/sheet/items_selection_sheet.dart rename to lib/views/branch_management/services/duplication/sheet/items_selection_sheet.dart diff --git a/lib/views/settings/services/items_list_page.dart b/lib/views/branch_management/services/items_list_page.dart similarity index 100% rename from lib/views/settings/services/items_list_page.dart rename to lib/views/branch_management/services/items_list_page.dart diff --git a/lib/views/settings/services/services_list_page.dart b/lib/views/branch_management/services/services_list_page.dart similarity index 98% rename from lib/views/settings/services/services_list_page.dart rename to lib/views/branch_management/services/services_list_page.dart index 41280f0..6891e31 100644 --- a/lib/views/settings/services/services_list_page.dart +++ b/lib/views/branch_management/services/services_list_page.dart @@ -1,7 +1,7 @@ import 'dart:developer'; import 'package:car_provider_app/config/provider_routes.dart'; -import 'package:car_provider_app/views/settings/services/duplication/sheet/approved_branches_list_sheet.dart'; +import 'package:car_provider_app/views/branch_management/services/duplication/sheet/approved_branches_list_sheet.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; import 'package:mc_common_app/classes/consts.dart'; diff --git a/lib/views/dashboard/dashboard_view.dart b/lib/views/dashboard/dashboard_view.dart index 61b2d70..34680e4 100644 --- a/lib/views/dashboard/dashboard_view.dart +++ b/lib/views/dashboard/dashboard_view.dart @@ -1,6 +1,6 @@ import 'dart:async'; import 'package:car_provider_app/view_models/dashboard_view_model.dart'; -import 'package:car_provider_app/views/settings/branch/branch_list_page.dart'; +import 'package:car_provider_app/views/branch_management/branch/branch_list_page.dart'; import 'package:flutter/material.dart'; import 'package:mc_common_app/views/common_fragments/requests_fragment.dart'; import 'package:mc_common_app/widgets/common_widgets/bottom_nav_bar.dart'; diff --git a/lib/views/dashboard/fragments/home_fragment.dart b/lib/views/dashboard/fragments/home_fragment.dart index 07d9a76..3d55d1c 100644 --- a/lib/views/dashboard/fragments/home_fragment.dart +++ b/lib/views/dashboard/fragments/home_fragment.dart @@ -33,26 +33,19 @@ class HomeFragment extends StatelessWidget { isDrawerEnabled: true, leadingWidth: 100, toolbarHeight: 59, - onTap: () => navigateWithName(context, AppRoutes.settingOptionsLanguages), - actions: const [ - // IconButton( - // onPressed: () {}, - // icon: const b.Badge( - // badgeContent: Text( - // '3', - // style: TextStyle( - // fontSize: 10, - // color: Colors.white, - // ), - // ), - // badgeStyle: b.BadgeStyle( - // badgeColor: MyColors.primaryColor, - // padding: EdgeInsets.all(5), - // ), - // child: Icon(Icons.notifications_active), - // ), - // ), - // 10.width, + onTap: () => navigateWithName(context, AppRoutes.settingOptionsMore), + actions: [ + IconButton( + onPressed: () => context.read().onGeneralChatMessagesButtonPressed(context: context), + icon: b.Badge( + badgeContent: '3'.toText(color: MyColors.white), + badgeStyle: const b.BadgeStyle( + badgeColor: MyColors.primaryColor, + padding: EdgeInsets.all(5), + ), + child: const Padding(padding: EdgeInsets.only(top: 8, bottom: 8, right: 25, left: 10), child: Icon(Icons.message, size: 21))), + ), + 10.width, ], ), body: SizedBox( @@ -161,7 +154,7 @@ class HomeFragment extends StatelessWidget { ); } }, - ).toContainer(backgroundColor: Color(0xFFF8F8F8), padding: EdgeInsets.zero, margin: EdgeInsets.zero), + ).toContainer(backgroundColor: const Color(0xFFF8F8F8), padding: EdgeInsets.zero, margin: EdgeInsets.zero), 21.height, ], ), diff --git a/lib/views/dashboard/widget/drawer_widget.dart b/lib/views/dashboard/widget/drawer_widget.dart index 87e0bf7..3eb947d 100644 --- a/lib/views/dashboard/widget/drawer_widget.dart +++ b/lib/views/dashboard/widget/drawer_widget.dart @@ -1,194 +1,194 @@ -import 'package:car_provider_app/config/provider_routes.dart'; -import 'package:easy_localization/easy_localization.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:image_picker/image_picker.dart'; - -import 'package:car_provider_app/view_models/dashboard_view_model.dart'; -import 'package:mc_common_app/classes/app_state.dart'; -import 'package:mc_common_app/classes/consts.dart'; -import 'package:mc_common_app/config/routes.dart'; -import 'package:mc_common_app/extensions/int_extensions.dart'; -import 'package:mc_common_app/extensions/string_extensions.dart'; -import 'package:mc_common_app/generated/locale_keys.g.dart'; -import 'package:mc_common_app/models/user_models/image_response.dart'; -import 'package:mc_common_app/theme/colors.dart'; -import 'package:mc_common_app/utils/navigator.dart'; -import 'package:mc_common_app/utils/utils.dart'; -import 'package:mc_common_app/widgets/button/show_fill_button.dart'; -import 'package:mc_common_app/widgets/extensions/extensions_widget.dart'; - -class CustomDrawer extends StatefulWidget { - final DashboardVM dashboardVM; - - const CustomDrawer({Key? key, required this.dashboardVM}) : super(key: key); - - @override - State createState() => _CustomDrawerState(); -} - -class _CustomDrawerState extends State { - void _openImagePicker() { - showDialog( - context: context, - builder: (context) => AlertDialog( - content: const Text("Choose image source"), - actions: [ - TextButton(child: const Text("Camera"), onPressed: () => widget.dashboardVM.pickImageFromPhone(context, 0)), - TextButton(child: const Text("Gallery"), onPressed: () => widget.dashboardVM.pickImageFromPhone(context, 1)), - ], - ), - ); - } - - @override - Widget build(BuildContext context) { - return Drawer( - child: Column( - children: [ - Stack( - children: [ - Container( - width: double.infinity, - height: 200, - color: MyColors.darkPrimaryColor.withOpacity(0.01), - child: Image.network( - // ApiConsts.baseUrlServices + - AppState().getUser.data!.userInfo!.userImageUrl.toString(), - ), - ), - Positioned( - top: 10, - right: 10, - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Column( - children: [ - Container( - width: 40, - height: 40, - decoration: BoxDecoration( - color: Colors.grey[200], - borderRadius: BorderRadius.circular(30), - ), - child: const Icon( - Icons.edit, - color: MyColors.darkPrimaryColor, - ).onPress(() { - _openImagePicker(); - // _handleURLButtonPress(context, ImageSourceType.camera); - }), - ), - 12.height, - Container( - width: 40, - height: 40, - decoration: BoxDecoration( - color: Colors.grey[200], - borderRadius: BorderRadius.circular(30), - ), - child: const Icon( - Icons.delete, - color: Colors.red, - ).onPress(() async { - Utils.showLoading(context); - ImageResponse response = await widget.dashboardVM.updateUserImage(""); - if (response.messageStatus == 1) { - Utils.showToast("Image is Deleted"); - setState(() { - AppState().getUser.data!.userInfo!.userImageUrl = response.data; - }); - } - Utils.hideLoading(context); - }), - ), - ], - ), - ], - ), - ) - ], - ), - Container( - width: double.infinity, - color: MyColors.darkPrimaryColor.withOpacity(0.1), - padding: const EdgeInsets.all(20), - child: Row( - children: [ - Expanded( - child: Column( - mainAxisAlignment: MainAxisAlignment.start, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - AppState().getUser.data!.userInfo!.firstName!.toText( - isBold: true, - fontSize: 20, - letterSpacing: -1.44, - ), - AppState().getUser.data!.userInfo!.roleName! == "ServiceProvider_Dealership" || AppState().getUser.data!.userInfo!.roleName! == "ServiceProvider_Individual" - ? (AppState().getUser.data!.userInfo!.roleName!.split("_").first.toString() + " " + AppState().getUser.data!.userInfo!.roleName!.split("_").last.toString()).toText() - : AppState().getUser.data!.userInfo!.roleName!.toText(fontSize: 10), - ], - ), - ), - ShowFillButton( - title: LocaleKeys.edit.tr(), - fontSize: 12, - maxHeight: 35, - maxWidth: 70, - onPressed: () { - navigateWithName(context, AppRoutes.editAccountPage); - }, - ), - ], - ), - ), - ListTile( - leading: SvgPicture.asset(MyAssets.nextIcon, color: MyColors.darkPrimaryColor), - title: LocaleKeys.defineLicences.tr().toText(fontSize: 12), - onTap: () { - // AppPermissions.checkStoragePermissions(context); - navigateWithName(context, ProviderAppRoutes.defineLicense); - }, - ), - ListTile( - leading: SvgPicture.asset(MyAssets.nextIcon, color: MyColors.darkPrimaryColor), - title: "Subscriptions".toText(fontSize: 12), - onTap: () { - navigateWithName(context, ProviderAppRoutes.mySubscriptionsPage); - }, - ), - ListTile( - leading: Image.asset( - MyAssets.icWorldPng, - width: 20, - height: 20, - color: MyColors.darkPrimaryColor, - ), - title: LocaleKeys.english.tr().toText(fontSize: 12), - onTap: () { - if (EasyLocalization.of(context)?.currentLocale?.countryCode == "SA") { - context.setLocale(const Locale("en", "US")); - } else { - context.setLocale(const Locale('ar', 'SA')); - } - }, - ), - ListTile( - leading: const Icon( - Icons.logout, - color: MyColors.darkPrimaryColor, - ), - title: LocaleKeys.signOut.tr().toText(fontSize: 12), - onTap: () { - pop(context); - navigateReplaceWithName(context, AppRoutes.registerSelection); - }, - ), - ], - ), - ); - } -} +// import 'package:car_provider_app/config/provider_routes.dart'; +// import 'package:easy_localization/easy_localization.dart'; +// import 'package:flutter/material.dart'; +// import 'package:flutter_svg/flutter_svg.dart'; +// import 'package:image_picker/image_picker.dart'; +// +// import 'package:car_provider_app/view_models/dashboard_view_model.dart'; +// import 'package:mc_common_app/classes/app_state.dart'; +// import 'package:mc_common_app/classes/consts.dart'; +// import 'package:mc_common_app/config/routes.dart'; +// import 'package:mc_common_app/extensions/int_extensions.dart'; +// import 'package:mc_common_app/extensions/string_extensions.dart'; +// import 'package:mc_common_app/generated/locale_keys.g.dart'; +// import 'package:mc_common_app/models/user_models/image_response.dart'; +// import 'package:mc_common_app/theme/colors.dart'; +// import 'package:mc_common_app/utils/navigator.dart'; +// import 'package:mc_common_app/utils/utils.dart'; +// import 'package:mc_common_app/widgets/button/show_fill_button.dart'; +// import 'package:mc_common_app/widgets/extensions/extensions_widget.dart'; +// +// class CustomDrawer extends StatefulWidget { +// final DashboardVM dashboardVM; +// +// const CustomDrawer({Key? key, required this.dashboardVM}) : super(key: key); +// +// @override +// State createState() => _CustomDrawerState(); +// } +// +// class _CustomDrawerState extends State { +// void _openImagePicker() { +// showDialog( +// context: context, +// builder: (context) => AlertDialog( +// content: const Text("Choose image source"), +// actions: [ +// TextButton(child: const Text("Camera"), onPressed: () => widget.dashboardVM.pickImageFromPhone(context, 0)), +// TextButton(child: const Text("Gallery"), onPressed: () => widget.dashboardVM.pickImageFromPhone(context, 1)), +// ], +// ), +// ); +// } +// +// @override +// Widget build(BuildContext context) { +// return Drawer( +// child: Column( +// children: [ +// Stack( +// children: [ +// Container( +// width: double.infinity, +// height: 200, +// color: MyColors.darkPrimaryColor.withOpacity(0.01), +// child: Image.network( +// // ApiConsts.baseUrlServices + +// AppState().getUser.data!.userInfo!.userImageUrl.toString(), +// ), +// ), +// Positioned( +// top: 10, +// right: 10, +// child: Row( +// mainAxisAlignment: MainAxisAlignment.center, +// crossAxisAlignment: CrossAxisAlignment.center, +// children: [ +// Column( +// children: [ +// Container( +// width: 40, +// height: 40, +// decoration: BoxDecoration( +// color: Colors.grey[200], +// borderRadius: BorderRadius.circular(30), +// ), +// child: const Icon( +// Icons.edit, +// color: MyColors.darkPrimaryColor, +// ).onPress(() { +// _openImagePicker(); +// // _handleURLButtonPress(context, ImageSourceType.camera); +// }), +// ), +// 12.height, +// Container( +// width: 40, +// height: 40, +// decoration: BoxDecoration( +// color: Colors.grey[200], +// borderRadius: BorderRadius.circular(30), +// ), +// child: const Icon( +// Icons.delete, +// color: Colors.red, +// ).onPress(() async { +// Utils.showLoading(context); +// ImageResponse response = await widget.dashboardVM.updateUserImage(""); +// if (response.messageStatus == 1) { +// Utils.showToast("Image is Deleted"); +// setState(() { +// AppState().getUser.data!.userInfo!.userImageUrl = response.data; +// }); +// } +// Utils.hideLoading(context); +// }), +// ), +// ], +// ), +// ], +// ), +// ) +// ], +// ), +// Container( +// width: double.infinity, +// color: MyColors.darkPrimaryColor.withOpacity(0.1), +// padding: const EdgeInsets.all(20), +// child: Row( +// children: [ +// Expanded( +// child: Column( +// mainAxisAlignment: MainAxisAlignment.start, +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// AppState().getUser.data!.userInfo!.firstName!.toText( +// isBold: true, +// fontSize: 20, +// letterSpacing: -1.44, +// ), +// AppState().getUser.data!.userInfo!.roleName! == "ServiceProvider_Dealership" || AppState().getUser.data!.userInfo!.roleName! == "ServiceProvider_Individual" +// ? ("${AppState().getUser.data!.userInfo!.roleName!.split("_").first} ${AppState().getUser.data!.userInfo!.roleName!.split("_").last}").toText() +// : AppState().getUser.data!.userInfo!.roleName!.toText(fontSize: 10), +// ], +// ), +// ), +// ShowFillButton( +// title: LocaleKeys.edit.tr(), +// fontSize: 12, +// maxHeight: 35, +// maxWidth: 70, +// onPressed: () { +// navigateWithName(context, AppRoutes.editAccountPage); +// }, +// ), +// ], +// ), +// ), +// ListTile( +// leading: SvgPicture.asset(MyAssets.nextIcon, color: MyColors.darkPrimaryColor), +// title: LocaleKeys.defineLicences.tr().toText(fontSize: 12), +// onTap: () { +// // AppPermissions.checkStoragePermissions(context); +// navigateWithName(context, ProviderAppRoutes.defineLicense); +// }, +// ), +// ListTile( +// leading: SvgPicture.asset(MyAssets.nextIcon, color: MyColors.darkPrimaryColor), +// title: "Subscriptions".toText(fontSize: 12), +// onTap: () { +// navigateWithName(context, ProviderAppRoutes.mySubscriptionsPage); +// }, +// ), +// ListTile( +// leading: Image.asset( +// MyAssets.icWorldPng, +// width: 20, +// height: 20, +// color: MyColors.darkPrimaryColor, +// ), +// title: LocaleKeys.english.tr().toText(fontSize: 12), +// onTap: () { +// if (EasyLocalization.of(context)?.currentLocale?.countryCode == "SA") { +// context.setLocale(const Locale("en", "US")); +// } else { +// context.setLocale(const Locale('ar', 'SA')); +// } +// }, +// ), +// ListTile( +// leading: const Icon( +// Icons.logout, +// color: MyColors.darkPrimaryColor, +// ), +// title: LocaleKeys.signOut.tr().toText(fontSize: 12), +// onTap: () { +// pop(context); +// navigateReplaceWithName(context, AppRoutes.registerSelection); +// }, +// ), +// ], +// ), +// ); +// } +// }