diff --git a/lib/presentation/Screens/charts/screens/chart_screen.dart b/lib/presentation/Screens/charts/screens/chart_screen.dart index 0f3c9842..c43cd894 100755 --- a/lib/presentation/Screens/charts/screens/chart_screen.dart +++ b/lib/presentation/Screens/charts/screens/chart_screen.dart @@ -110,7 +110,6 @@ class _ChartScreen1State extends ConsumerState { late UserService _userService; late double tourCard; late bool isDarkTheme; - String? _previousTabId; @override void initState() { @@ -1672,45 +1671,6 @@ class _ChartScreen1State extends ConsumerState { Navigator.pop(context); } - void clear() { - print('CLEAR ---'); - - // List> selectedFilters = - // selectedFiltersStorage.isNotEmpty - // ? List.from(selectedFiltersStorage) // Use stored filters - // : filters.map((filter) { - // return {"filter_key": filter["filter_key"], "filter_data": []}; - // }).toList(); // Or initialize empty filters - - // selectedFilters.forEach((filter) { - // filter["filter_data"].clear(); - // }); - setState(() { - chartsData = List.from(originalTabChartsData); - cardData = List.from(originalTabCardData); - }); - selectedFiltersStorage.clear(); - formattedFilters = []; - - final locale = ref.watch(localeProvider)?.languageCode ?? 'en'; - - print('locale22- $locale'); - final isDark = ref.watch(themeProvider) == ThemeMode.dark || - (ref.watch(themeProvider) == ThemeMode.system && - MediaQuery.of(context).platformBrightness == Brightness.dark); - print('isDark filter'); - print(isDark); - final themeMode = (isDark ? 'dark' : 'light'); - print(themeMode); - - // fetchChartData( - // widget.dataSets, - // locale, - // tabWiseKpi, // Ensure you are passing the correct KPI here - // formattedFilters, // Pass the formatted filter data here - // themeMode); - } - String capitalizeAndSplit(String text) { if (text.isEmpty) return text; return text @@ -2081,40 +2041,48 @@ class _ChartScreen1State extends ConsumerState { print( "Selected Filters before applying: $selectedFilters"); - final hasAnyFilterData = selectedFilters.any( - (filter) => - (filter['filter_data'] as List).isNotEmpty, - ); + if (selectedFilters.every( + (filter) => filter['filter_data'].isEmpty)) { + setState(() { + isLoading = true; + }); + selectedFilters.forEach((filter) { + filter["filter_data"].clear(); + }); + setState(() { + chartsData = List.from(originalTabChartsData); + cardData = List.from(originalTabCardData); + }); + selectedFiltersStorage.clear(); + formattedFilters = []; - if (hasAnyFilterData) { - print("⛔ No filter data, resetting"); - if (selectedFilters.every( - (filter) => filter['filter_data'].isEmpty)) { - setState(() { - isLoading = true; - }); - selectedFilters.forEach((filter) { - filter["filter_data"].clear(); - }); - setState(() { - chartsData = List.from(originalTabChartsData); - cardData = List.from(originalTabCardData); - }); - selectedFiltersStorage.clear(); - formattedFilters = []; + final locale = + ref.watch(localeProvider)?.languageCode ?? + 'en'; - final locale = - ref.watch(localeProvider)?.languageCode ?? - 'en'; + print('locale22- $locale'); + final isDark = + ref.watch(themeProvider) == ThemeMode.dark || + (ref.watch(themeProvider) == + ThemeMode.system && + MediaQuery.of(context) + .platformBrightness == + Brightness.dark); - print('locale22- $locale'); - final isDark = ref.watch(themeProvider) == - ThemeMode.dark || - (ref.watch(themeProvider) == - ThemeMode.system && - MediaQuery.of(context) - .platformBrightness == - Brightness.dark); + final themeMode = (isDark ? 'dark' : 'light'); + fetchChartData( + widget.dataSets, + locale, + tabWiseKpi, // Ensure you are passing the correct KPI here + formattedFilters, // Pass the formatted filter data here + themeMode); + Navigator.pop(context); + } else { + setState(() { + // isLoading = true; + chartsData = originalTabChartsData; + cardData = originalTabCardData; + }); applyFilters(context, filters, chartsData, cardData, selectedFilters);