code merge dark/light added

This commit is contained in:
Surendiran 2025-07-25 10:35:22 +05:30
parent f5ddbcfc01
commit 5fbc97c1fb
30 changed files with 2257 additions and 2070 deletions

View File

@ -2,27 +2,27 @@ C/C++ Structured Log}
{
y/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/additional_project_files.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ãÄ¹Žƒ3  ¡¹ñÀ÷2z
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  …Žœÿƒ3  ¡¹ñÀ÷2z
x
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/android_gradle_build.json  ãÄ¹Žƒ3 £¹ñÀ÷2
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/android_gradle_build.json  …Žœÿƒ3 £¹ñÀ÷2
}
{/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/android_gradle_build_mini.json  ãÄ¹Žƒ3ƒ ¥¹ñÀ÷2l
{/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/android_gradle_build_mini.json  …Žœÿƒ3ƒ ¥¹ñÀ÷2l
j
h/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/build.ninja  ãÄ¹Žƒ3êÌ ޹ñÀ÷2p
h/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/build.ninja  …Žœÿƒ3êÌ ޹ñÀ÷2p
n
l/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/build.ninja.txt  ãÄ¹Žƒ3u
l/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/build.ninja.txt  …Žœÿƒ3u
s
q/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/build_file_index.txt  ãÄ¹Žƒ3 _ ¦¹ñÀ÷2v
q/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/build_file_index.txt  …Žœÿƒ3 _ ¦¹ñÀ÷2v
t
r/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/compile_commands.json  ãÄ¹Žƒ3z
r/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/compile_commands.json  …Žœÿƒ3z
x
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/compile_commands.json.bin  ãÄ¹Žƒ3
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/compile_commands.json.bin  …Žœÿƒ3
~
|/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/metadata_generation_command.txt  ãÄ¹Žƒ3
|/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/metadata_generation_command.txt  …Žœÿƒ3
ö ¦¹ñÀ÷2s
q
o/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/prefab_config.json  äÄ¹Žƒ3  ( ¦¹ñÀ÷2x
o/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/prefab_config.json  …Žœÿƒ3  ( ¦¹ñÀ÷2x
v
t/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/symbol_folder_index.txt  äÄ¹Žƒ3  k ¦¹ñÀ÷2c
t/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/symbol_folder_index.txt  …Žœÿƒ3  k ¦¹ñÀ÷2c
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  äÄ¹Žƒ3 ¤ òÑÞ€á2
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  …Žœÿƒ3 ¤ òÑÞ€á2

View File

@ -2,27 +2,27 @@ C/C++ Structured Log
}
{/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/additional_project_files.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  éÅ¹Žƒ3  ¸ïòÀ÷2|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  <EFBFBD>œÿƒ3  ¸ïòÀ÷2|
z
x/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/android_gradle_build.json  éÅ¹Žƒ3 ºïòÀ÷2<C3B7>
x/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/android_gradle_build.json  <EFBFBD>œÿƒ3 ºïòÀ÷2<C3B7>

}/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/android_gradle_build_mini.json  éÅ¹Žƒ3 »ïòÀ÷2n
}/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/android_gradle_build_mini.json  <EFBFBD>œÿƒ3 »ïòÀ÷2n
l
j/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/build.ninja  éÅ¹Žƒ3öÌ ªïòÀ÷2r
j/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/build.ninja  <EFBFBD>œÿƒ3öÌ ªïòÀ÷2r
p
n/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/build.ninja.txt  éÅ¹Žƒ3w
n/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/build.ninja.txt  <EFBFBD>œÿƒ3w
u
s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/build_file_index.txt  éÅ¹Žƒ3 _ »ïòÀ÷2x
s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/build_file_index.txt  <EFBFBD>œÿƒ3 _ »ïòÀ÷2x
v
t/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/compile_commands.json  éÅ¹Žƒ3|
t/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/compile_commands.json  <EFBFBD>œÿƒ3|
z
x/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/compile_commands.json.bin  éÅ¹Žƒ3 ƒ
x/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/compile_commands.json.bin  <EFBFBD>œÿƒ3 ƒ

~/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/metadata_generation_command.txt  éÅ¹Žƒ3
~/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/metadata_generation_command.txt  <EFBFBD>œÿƒ3
€ »ïòÀ÷2u
s
q/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/prefab_config.json  éÅ¹Žƒ3  ( »ïòÀ÷2z
q/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/prefab_config.json  <EFBFBD>œÿƒ3  ( »ïòÀ÷2z
x
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/symbol_folder_index.txt  éÅ¹Žƒ3  m »ïòÀ÷2c
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/symbol_folder_index.txt  <EFBFBD>œÿƒ3  m »ïòÀ÷2c
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  éÅ¹Žƒ3 ¤ òÑÞ€á2
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  <EFBFBD>œÿƒ3 ¤ òÑÞ€á2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logw
u
s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/additional_project_files.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ôÅ¹Žƒ3  „òòÀ÷2t
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  Œ<EFBFBD>œÿƒ3  „òòÀ÷2t
r
p/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/android_gradle_build.json  ôÅ¹Žƒ3ô „òòÀ÷2y
p/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/android_gradle_build.json  Œ<EFBFBD>œÿƒ3ô „òòÀ÷2y
w
u/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/android_gradle_build_mini.json  ôÅ¹Žƒ3÷ …òòÀ÷2f
u/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/android_gradle_build_mini.json  Œ<EFBFBD>œÿƒ3÷ …òòÀ÷2f
d
b/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/build.ninja  ôÅ¹Žƒ3ÆÌ ûñòÀ÷2j
b/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/build.ninja  Œ<EFBFBD>œÿƒ3ÆÌ ûñòÀ÷2j
h
f/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/build.ninja.txt  ôÅ¹Žƒ3o
f/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/build.ninja.txt  Œ<EFBFBD>œÿƒ3o
m
k/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/build_file_index.txt  ôÅ¹Žƒ3 _ …òòÀ÷2p
k/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/build_file_index.txt  Œ<EFBFBD>œÿƒ3 _ …òòÀ÷2p
n
l/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/compile_commands.json  ôÅ¹Žƒ3t
l/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/compile_commands.json  Œ<EFBFBD>œÿƒ3t
r
p/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/compile_commands.json.bin  ôÅ¹Žƒ3 z
p/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/compile_commands.json.bin  Œ<EFBFBD>œÿƒ3 z
x
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/metadata_generation_command.txt  ôÅ¹Žƒ3
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/metadata_generation_command.txt  Œ<EFBFBD>œÿƒ3
Ø …òòÀ÷2m
k
i/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/prefab_config.json  ôÅ¹Žƒ3  ( …òòÀ÷2r
i/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/prefab_config.json  Œ<EFBFBD>œÿƒ3  ( …òòÀ÷2r
p
n/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/symbol_folder_index.txt  ôÅ¹Žƒ3  e …òòÀ÷2c
n/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/symbol_folder_index.txt  Œ<EFBFBD>œÿƒ3  e …òòÀ÷2c
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  ôÅ¹Žƒ3 ¤ òÑÞ€á2
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  Œ<EFBFBD>œÿƒ3 ¤ òÑÞ€á2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logz
x
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/additional_project_files.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ýÅ¹Žƒ3  •ôòÀ÷2w
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  <EFBFBD>œÿƒ3  •ôòÀ÷2w
u
s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/android_gradle_build.json  ýÅ¹Žƒ3ú •ôòÀ÷2|
s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/android_gradle_build.json  <EFBFBD>œÿƒ3ú •ôòÀ÷2|
z
x/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/android_gradle_build_mini.json  ýÅ¹Žƒ3ý ôòÀ÷2i
x/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/android_gradle_build_mini.json  <EFBFBD>œÿƒ3ý ôòÀ÷2i
g
e/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/build.ninja  ýÅ¹Žƒ3ØÌ <20>ôòÀ÷2m
e/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/build.ninja  <EFBFBD>œÿƒ3ØÌ <20>ôòÀ÷2m
k
i/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/build.ninja.txt  ýÅ¹Žƒ3r
i/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/build.ninja.txt  <EFBFBD>œÿƒ3r
p
n/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/build_file_index.txt  ýÅ¹Žƒ3 _ ôòÀ÷2s
n/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/build_file_index.txt  <EFBFBD>œÿƒ3 _ ôòÀ÷2s
q
o/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/compile_commands.json  ýÅ¹Žƒ3w
o/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/compile_commands.json  <EFBFBD>œÿƒ3w
u
s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/compile_commands.json.bin  ýÅ¹Žƒ3 }
s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/compile_commands.json.bin  <EFBFBD>œÿƒ3 }
{
y/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/metadata_generation_command.txt  ýÅ¹Žƒ3
y/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/metadata_generation_command.txt  <EFBFBD>œÿƒ3
ç ôòÀ÷2p
n
l/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/prefab_config.json  ýÅ¹Žƒ3  ( ôòÀ÷2u
l/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/prefab_config.json  <EFBFBD>œÿƒ3  ( ôòÀ÷2u
s
q/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/symbol_folder_index.txt  ýÅ¹Žƒ3  h ôòÀ÷2c
q/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/symbol_folder_index.txt  <EFBFBD>œÿƒ3  h ôòÀ÷2c
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  ýÅ¹Žƒ3 ¤ òÑÞ€á2
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt  <EFBFBD>œÿƒ3 ¤ òÑÞ€á2

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 559 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 KiB

View File

@ -6,6 +6,8 @@ abstract class UaeNumbersAssetPath {
// static const bookmarksSelectedUae = '$_basePath/bookmarksSelectedUae.png';
// static const shareUae = '$_basePath/share.png';
static const share = '$_basePath/share.svg';
static const shareDark = '$_basePath/ShareDark.png';
static const shareLight = '$_basePath/ShareLight.png';
static const filterUae = '$_basePath/filters.png';
static const filterCharts = '$_basePath/Filter.svg';
}

View File

@ -3,7 +3,6 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:go_router/go_router.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/infrastructure/services/img_asset_paths/icons/misc_icon_asset_path.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
@ -194,123 +193,16 @@ class ListCountriesRoute extends HookConsumerWidget {
country.nameAR.toLowerCase().contains(query);
}).toList();
final List<Map<String, String>> _allCountries = [
{"name": "Afghanistan", "flag": "🇦🇫"},
{"name": "Albania", "flag": "🇦🇱"},
{"name": "Algeria", "flag": "🇩🇿"},
{"name": "American Samoa", "flag": "🇦🇸"},
{"name": "Andorra", "flag": "🇦🇩"},
{"name": "Angola", "flag": "🇦🇴"},
{"name": "Anguilla", "flag": "🇦🇮"},
{"name": "Antigua And Barbuda", "flag": "🇦🇬"},
{"name": "Argentina", "flag": "🇦🇷"},
{"name": "Armenia", "flag": "🇦🇲"},
{"name": "Aruba", "flag": "🇦🇼"},
{"name": "Australia", "flag": "🇦🇺"},
{"name": "Austria", "flag": "🇦🇹"},
{"name": "Azerbaijan", "flag": "🇦🇿"},
{"name": "Bahamas", "flag": "🇧🇸"},
{"name": "Bahrain", "flag": "🇧🇭"},
{"name": "Bangladesh", "flag": "🇧🇩"},
];
String _searchTerm = '';
void filterData(String value) {
setState(() => _searchTerm = value);
}
@override
void initState() {
super.initState();
final currentTheme = ref.read(themeProvider); // should return ThemeMode
print(currentTheme); // ThemeMode.dark, ThemeMode.light, etc.
}
@override
Widget build(BuildContext context) {
final locale = AppLocalizations.of(context)!;
final filtered = _allCountries
.where((c) => c['name']!.toLowerCase().contains(_searchTerm.toLowerCase()))
.toList();
double myheight = MediaQuery.of(context).size.height;
double mywidth = MediaQuery.of(context).size.width;
return PopScope(
canPop: false,
onPopInvokedWithResult: (didPop, result) {
if (didPop) return;
context.go('/myhomepage');
},
child: BaseScaffold(
title: Text(
context.translate(
'Country Profile',
'ملف الدولة',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
)
),
),
body: Column(
children: [
Padding(
padding: const EdgeInsets.symmetric(horizontal: 12.0, vertical: 12.0),
child: Container(
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(30.0),
border: Border.all(width: 1, color: Color(0xFFAA8E83)),
),
child: TextField(
controller: _searchController,
onChanged: (value) {
filterData(value);
},
decoration: InputDecoration(
hintText: AppLocalizations.of(context)!.searchCountry,
hintStyle: TextStyle(
color: Color(0xFFAA8E83),
fontFamily: context.translate('Roboto', 'NotoKufi'),
fontSize: 14,
height: 1.8,
),
prefixIconConstraints: BoxConstraints(
maxWidth: 42,
maxHeight: 42,
),
prefixIcon: Container(
padding: EdgeInsets.only(right: 5, left: 5),
alignment: Alignment.center,
child: SvgPicture.asset(
MiscIconAssetPath.Search,
semanticsLabel: 'Search',
colorFilter: ColorFilter.mode(Color(0xFFAA8E83), BlendMode.srcIn),
height: 18,
width: 18,
),
),
suffixIcon: _searchController.text.isNotEmpty
? IconButton(
icon: Icon(
Icons.clear,
color: Color(0xFFAA8E83),
size: 18,
),
onPressed: () {
_searchController.clear();
filterData('');
},
)
: null,
border: InputBorder.none,
contentPadding: EdgeInsets.symmetric(vertical: 9, horizontal: 18.0),
),
),
final body = BaseScaffold(
body: Column(
children: [
Padding(
padding: const EdgeInsets.symmetric(horizontal: 12.0, vertical: 12.0),
child: Container(
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(30.0),
border: Border.all(width: 1, color: Color(0xFFAA8E83)),
),
child: SearchBar(
constraints: BoxConstraints(

View File

@ -23,15 +23,14 @@ import 'package:uae_stat/presentation/Screens/charts/widgets/chart_widget.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/components/my_toggle.dart';
// import 'package:uae_stat/l10n/app_localizations.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:uae_stat/presentation/Screens/app_tour/Target_content.dart';
import '../filters/search_filter_helper.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:share_plus/share_plus.dart';
import 'package:path_provider/path_provider.dart';
import 'dart:io';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class ChartScreen1 extends ConsumerStatefulWidget {
final String dataSets;
@ -334,7 +333,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
10.0), // Adjust the radius as needed
),
side: BorderSide(
color: Color(0xFFAA8E83), // Set the outline color
color: Color(0xFFB68A34), // Set the outline color
// color: Color(0xFFAA8E83), // Set the outline color
width: 1, // Set the border width
),
),
@ -345,7 +345,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'Roboto',
'NotoKufi',
),
color: Color(0xFFAA8E83),
// color: Color(0xFFAA8E83),
color: Color(0xFFB68A34),
fontSize: 16,
),
),
@ -359,7 +360,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
removeBookmark(); // Close dialog
},
style: TextButton.styleFrom(
backgroundColor: Color(0xFFAA8E83), // Set background color
// backgroundColor: Color(0xFFAA8E83), // Set background color
backgroundColor: Color(0xFFB68A34), // Set background color
foregroundColor: Colors.white,
shape: RoundedRectangleBorder(
borderRadius:
@ -442,7 +444,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
10.0), // Adjust the radius as needed
),
side: BorderSide(
color: Color(0xFFAA8E83), // Set the outline color
color: Color(0xFFB68A34), // Set the outline color
// color: Color(0xFFAA8E83), // Set the outline color
width: 1, // Set the border width
),
),
@ -453,7 +456,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'Roboto',
'NotoKufi',
),
color: Color(0xFFAA8E83),
color: Color(0xFFB68A34),
// color: Color(0xFFAA8E83),
fontSize: 16,
),
),
@ -467,7 +471,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
addBookmark(); // Close dialog
},
style: TextButton.styleFrom(
backgroundColor: Color(0xFFAA8E83), // Set background color
backgroundColor: Color(0xFFB68A34), // Set background color
// backgroundColor: Color(0xFFAA8E83), // Set background color
foregroundColor: Colors.white,
shape: RoundedRectangleBorder(
borderRadius:
@ -1519,8 +1524,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
print('locale2- $locale');
final isDark = currentTheme == ThemeMode.dark ||
(currentTheme == ThemeMode.system &&
final isDark = ref.watch(themeProvider) == ThemeMode.dark ||
(ref.watch(themeProvider) == ThemeMode.system &&
MediaQuery.of(context).platformBrightness == Brightness.dark);
final themeMode = (isDark ? 'dark' : 'light');
@ -1972,12 +1977,14 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
ref.watch(localeProvider)?.languageCode ?? 'en';
print('locale22- $locale');
final isDark = currentTheme == ThemeMode.dark ||
(currentTheme == ThemeMode.system &&
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,
@ -2042,8 +2049,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'en';
print('locale22- $locale');
final isDark = currentTheme == ThemeMode.dark ||
(currentTheme == ThemeMode.system &&
final isDark = ref.watch(themeProvider) == ThemeMode.dark ||
(ref.watch(themeProvider) == ThemeMode.system &&
MediaQuery.of(context)
.platformBrightness ==
Brightness.dark);
@ -2495,7 +2502,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
//
final bodyColor = Color(
int.parse(
(chartScreenData['body_color'] ?? '#898C81').replaceFirst('#', '0xff'),
(chartScreenData['header_color'] ?? '#898C81').replaceFirst('#', '0xff'),
),
);
final chartHeader = chartScreenData['main_topic'] ?? '';
@ -2566,7 +2573,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
// .replaceFirst('#', '0xff'))),
child: Padding(
padding: EdgeInsets.only(
left: 30, right: 30, top: 8, bottom: 5),
left: 15, right: 15, top: 8, bottom: 5),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
@ -2652,8 +2659,14 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
child: Container(
padding: EdgeInsets.all(4),
decoration: BoxDecoration(
// color: isBookmarked
// ? Colors.white.withAlpha(90)
// : null,
color: isBookmarked
? isDarkTheme
? Colors.white.withAlpha(90)
: Colors.grey.shade200
: null, // Background color
borderRadius: BorderRadius.circular(
8), // Curved corners
@ -2673,6 +2686,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'NotoKufi',
),
fontSize: 16,
fontWeight: FontWeight.w500,
color: isDarkTheme
? Colors.grey
: Color(0xFF416587),
@ -2696,6 +2710,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'NotoKufi',
),
fontSize: 16,
fontWeight: FontWeight.w500,
color: isDarkTheme
? Colors.grey
: Color(0xFF416587),
@ -2723,14 +2738,22 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
Icon(
size: 24,
Icons.bookmarks_rounded,
color: isBookmarked
? Color(int.parse(
(chartScreenData[
'body_color'] ??
'#898C81')
.replaceFirst(
'#', '0xff')))
: Colors.white,
? isDarkTheme
? Colors.grey
: Color(0xFF416587)
: isDarkTheme
? Colors.grey
: Color(0xFF416587),
// color: isBookmarked
// ? Color(int.parse(
// (chartScreenData[
// 'body_color'] ??
// '#898C81')
// .replaceFirst(
// '#', '0xff')))
// : Colors.white,
),
],
),
@ -2754,6 +2777,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'NotoKufi',
),
fontSize: 16,
fontWeight: FontWeight.w500,
// color: Colors.white,
color: isDarkTheme
? Colors.grey
@ -2771,8 +2795,17 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
strokeWidth: 2,
),
) // Show loading spinner
: isDarkTheme
? SvgPicture.asset(
UaeNumbersAssetPath
.shareDark,
semanticsLabel: 'share',
width: 24,
height: 24,
)
: SvgPicture.asset(
UaeNumbersAssetPath.share,
UaeNumbersAssetPath
.shareLight,
semanticsLabel: 'share',
width: 24,
height: 24,
@ -2804,6 +2837,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'NotoKufi',
),
fontSize: 16,
fontWeight: FontWeight.w500,
// color: Colors.white,
color: isDarkTheme
? Colors.grey
@ -2811,12 +2845,20 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
),
),
SizedBox(width: 10),
SvgPicture.asset(
UaeNumbersAssetPath.filterCharts,
semanticsLabel: 'Filter',
width: 24,
height: 24,
Icon(
size: 26,
Icons.filter_alt_outlined,
color: isDarkTheme
? Colors.grey
: Color(0xFF416587),
),
// SvgPicture.asset(
// UaeNumbersAssetPath.filterCharts,
// semanticsLabel: 'Filter',
// width: 24,
// height: 24,
// ),
],
),
)
@ -3113,7 +3155,9 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
color: onPressed == null
? Color(int.parse((chartScreenData['header_color'] ?? '#898C81')
.replaceFirst('#', '0xff')))
: Colors.grey[400],
: isDarkTheme
? Colors.grey[700]
: Colors.grey[200],
shape: BoxShape.rectangle,
borderRadius: BorderRadius.circular(5.0),
// boxShadow: [
@ -3149,7 +3193,9 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
color: isActive
? Color(int.parse((chartScreenData['header_color'] ?? '#898C81')
.replaceFirst('#', '0xff')))
: Colors.grey[400],
: isDarkTheme
? Colors.black
: Color(0XFFDFE1DB),
borderRadius: BorderRadius.circular(5.0),
),
child: Text(
@ -3159,7 +3205,9 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'Roboto',
'NotoKufi',
),
color: isActive ? Colors.black : Colors.white,
// color: isActive ? Colors.black : Colors.white,
color: isDarkTheme ? Colors.white : Colors.black,
// color: Colors.white,
fontWeight: isActive ? FontWeight.w500 : FontWeight.w400,
fontSize: 13,
),

View File

@ -353,9 +353,6 @@ class LoginRoute extends HookConsumerWidget {
// });
// }
final hasValidated = useState(false);
final locale = ref.watch(localeProvider);
final emailCtl = useTextEditingController();

View File

@ -539,9 +539,8 @@ class _EditProfileState extends ConsumerState<EditProfile> {
await _fetchUserData();
});
final themeMode = ref.read(themeProvider);
final isDarkTheme = themeMode == ThemeMode.dark ||
(themeMode == ThemeMode.system &&
final isDarkTheme = ref.watch(themeProvider) == ThemeMode.dark ||
(ref.watch(themeProvider) == ThemeMode.system &&
MediaQuery.of(context).platformBrightness == Brightness.dark);
return PopScope(

View File

@ -8,7 +8,7 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
class aboutFCSC extends ConsumerStatefulWidget {
@ -133,7 +133,7 @@ class _aboutFCSCState extends ConsumerState<aboutFCSC> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
// fontWeight: FontWeight.normal,
fontWeight: FontWeight.w500,
),
@ -166,10 +166,17 @@ class _aboutFCSCState extends ConsumerState<aboutFCSC> {
SizedBox(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset(
'assets/user_guide/AboutFCSC.png',
fit: BoxFit.contain,
),
child:
Image.asset(
isDarkTheme
? 'assets/user_guide/aboutfcscdark.png'
: 'assets/user_guide/aboutfcsclight.png',
)
// Image.asset(
// 'assets/user_guide/about fcsc dark.png',
// fit: BoxFit.contain,
// ),
),
SizedBox(
height: 5,

View File

@ -8,7 +8,7 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
class GetStarted extends ConsumerStatefulWidget {
@ -150,7 +150,8 @@ class _GetStartedState extends ConsumerState<GetStarted> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
// color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),
@ -166,7 +167,7 @@ class _GetStartedState extends ConsumerState<GetStarted> {
Align(
alignment: Alignment.topLeft,
child: Text(
context.translate('How to Get Started', 'كيفية البدء'),
context.translate('How to Get Started?', 'كيفية البدء؟'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
@ -174,49 +175,70 @@ class _GetStartedState extends ConsumerState<GetStarted> {
),
fontSize: 20,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
fontWeight: FontWeight.w500,
),
),
),
SizedBox(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset(
'assets/user_guide/getStarted.png',
fit: BoxFit.contain,
),
),
Text(
context.translate(
'1. Download the app from the App Store or Google Play Store.',
'1 .قم بتحميل التطبيق من متجر التطبيقات (Appstore) أو متجر جوجل بلاي (Google Play)..',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme ? Colors.white : Colors.black54,
),
),
SizedBox(
height: 2,
),
Text(
context.translate(
'2. Log in to access advanced features',
'2 .قم بتسجيل الدخول لفتح الميزات المتقدمة.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme ? Colors.white : Colors.black54,
),
),
SizedBox(
height: MediaQuery.of(context).size.height * 0.12,
),
SizedBox(
height: 20,
),
SizedBox(height: 10),
// SizedBox(
// width: MediaQuery.of(context).size.width,
// height: MediaQuery.of(context).size.height * 0.36,
// child: Image.asset(
// 'assets/user_guide/getStarted.png',
// fit: BoxFit.contain,
// ),
// ),
Padding(padding: const EdgeInsets.all(30.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
context.translate(
'1. Download the app from the App Store or Google Play Store.',
'1 .قم بتحميل التطبيق من متجر التطبيقات (Appstore) أو متجر جوجل بلاي (Google Play)..',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme ? Colors.white : Colors.black54,
),
),
SizedBox(
height: 20,
),
Text(
context.translate(
'2. Log in to unlock advanced features or continue as a guest.',
'2 .قم بتسجيل الدخول لفتح الميزات المتقدمة أو الاستمرار كضيف.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme ? Colors.white : Colors.black54,
),
),
SizedBox(
height: 20,
),
Text(
context.translate(
'3. Navigate through categories, explore metrics, and bookmark essential information.',
'3 .تنقل عبر الفئات، واستكشف المقاييس، وقم بإضافة إشارة مرجعية إلى المعلومات الأساسية.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme ? Colors.white : Colors.black54,
),
),
],
),)
// SizedBox(
// height: MediaQuery.of(context).size.height * 0.12,
// ),
// SizedBox(
// height: 20,
// ),
],
),
),

View File

@ -8,10 +8,12 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import '../../../../../../infrastructure/services/img_asset_paths/banner_asset_path.dart';
import '../../../custom_drawer_routes.dart';
class AppFeatures extends ConsumerStatefulWidget {
const AppFeatures({super.key});
@ -145,7 +147,7 @@ class _AppFeaturesState extends ConsumerState<AppFeatures> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),
@ -174,238 +176,385 @@ class _AppFeaturesState extends ConsumerState<AppFeatures> {
),
),
),
SizedBox(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset(
'assets/user_guide/appFeatures.png',
fit: BoxFit.contain,
),
),
Text(
context.translate('1. Comprehensive Statistics:',
'1. رؤى مستندة إلى البيانات '),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 6.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Colors.black,
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'Access detailed datasets across categories such as ',
'الوصول إلى مجموعات بيانات تفصيلية عبر فئات مثل الاقتصاد، البيئة، الاجتماعية، وغيرها.',
),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
fontSize: 16,
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
children: <TextSpan>[
TextSpan(
text: context.translate(
'Economy, Environment, Social, ', ''),
style: TextStyle(
fontWeight: FontWeight.bold,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
TextSpan(
text: context.translate('and more.', ''),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
fontSize: 16,
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
],
),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Explore statistics presented as smart metrics, graphs, and charts for better understanding.',
'استكشاف الإحصائيات المقدمة على هيئة مقاييس ذكية ورسوم بيانية ومخططات لتعزيز الفهم.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'2. Drilldown Navigation:', '2. التنقل التفصيلي'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Start with high-level categories and drill down to specific KPIs and metrics for deeper insights.',
'البدء بالفئات العامة والتنقل وصولًا إلى مؤشرات الأداء الرئيسية (KPIs) والمقاييس المحددة للحصول على رؤى أعمق.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate('3. Interactive Visualizations:',
'3. التصورات التفاعلية:'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'View trends and relationships with interactive graphs and charts, including bar graphs, line charts, and more.',
'عرض الاتجاهات والعلاقات باستخدام الرسوم البيانية التفاعلية مثل المخططات الشريطية، المخططات الخطية، وغيرها.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(
height: 20,
),
SizedBox(height: 20,),
// SizedBox(
// width: MediaQuery.of(context).size.width,
// height: MediaQuery.of(context).size.height * 0.36,
// child: Image.asset(
// 'assets/user_guide/appFeatures.png',
// fit: BoxFit.contain,
// ),
// ),
Padding(padding: const EdgeInsets.all(30.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
context.translate('1. Comprehensive Statistics:',
'1. رؤى مستندة إلى البيانات '),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 6.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Colors.black,
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'Access detailed datasets across categories such as ',
'الوصول إلى مجموعات بيانات تفصيلية عبر فئات مثل الاقتصاد، البيئة، الاجتماعية، وغيرها.',
),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
fontSize: 16,
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
children: <TextSpan>[
TextSpan(
text: context.translate(
'Economy, Environment, Social, ', ''),
style: TextStyle(
fontWeight: FontWeight.bold,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
TextSpan(
text: context.translate('and more.', ''),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
fontSize: 16,
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
],
),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Explore statistics presented as smart metrics, graphs, and charts for better understanding.',
'استكشاف الإحصائيات المقدمة على هيئة مقاييس ذكية ورسوم بيانية ومخططات لتعزيز الفهم.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 30),
Text(
context.translate(
'2. Drilldown Navigation:', '2. التنقل التفصيلي'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Start with high-level categories and drill down to specific KPIs and metrics for deeper insights.',
'البدء بالفئات العامة والتنقل وصولًا إلى مؤشرات الأداء الرئيسية (KPIs) والمقاييس المحددة للحصول على رؤى أعمق.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 30),
Text(
context.translate('3. Interactive Visualizations:',
'3. التصورات التفاعلية:'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'View trends and relationships with interactive graphs and charts, including bar graphs, line charts, and more.',
'عرض الاتجاهات والعلاقات باستخدام الرسوم البيانية التفاعلية مثل المخططات الشريطية، المخططات الخطية، وغيرها.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(
height: 30,
),
Text(
context.translate('4. Secure User Access:',
'4. الوصول الآمن للمستخدم:'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8),
Expanded(
child: Text(
context.translate(
'Available only to registered users whose accounts have been approved by an admin.',
'متاح فقط للمستخدمين المسجلين الذين تمت الموافقة على حساباتهم من قبل المسؤول.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
), // Space between bullet and text
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Login ensures secure access to sensitive statistical information.',
'يضمن تسجيل الدخول الوصول الآمن إلى المعلومات الإحصائية الحساسة.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(
height: 30,
),
Text(
context.translate('5. Profile Customization:',
'5. تخصيص الملف الشخصي:'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8),
Expanded(
child: Text(
context.translate(
'Update your profile details, such as name, password, and region, to personalize your experience.',
'قم بتحديث تفاصيل ملفك الشخصي، مثل الاسم وكلمة المرور والمنطقة، لتخصيص تجربتك.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
), // Space between bullet and text
],
),
],
),
),
],
),)
],
),
),

View File

@ -9,6 +9,7 @@ import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
class ChangeMyPassword extends ConsumerStatefulWidget {
const ChangeMyPassword({super.key});
@ -150,7 +151,7 @@ class _ChangeMyPasswordState extends ConsumerState<ChangeMyPassword> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),
@ -181,487 +182,491 @@ class _ChangeMyPasswordState extends ConsumerState<ChangeMyPassword> {
),
),
),
SizedBox(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset(
'assets/user_guide/changePassword.png',
fit: BoxFit.contain,
),
),
Text(
context.translate(
'Changing your password helps keep your account secure. Follow these steps to update your password:',
'يُساعد تغيير كلمة المرور في الحفاظ على أمان حسابك. اتبع هذه الخطوات لتحديث كلمة مرور',
),
style: TextStyle(
color: isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
SizedBox(height: 12),
Text(
context.translate(
'Steps to Change Password', 'خطوات تغيير كلمة المرور '),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 22,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Text(
context.translate(
'1. Access the Change Password Page:',
'1. الدخول إلى صفحة تغيير كلمة المرور:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'From the Profile page, tap on the ',
'من صفحة الملف الشخصي، انقر على رابط ',
),
style: TextStyle(
fontSize: 16,
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
children: <TextSpan>[
TextSpan(
text: context.translate(
'"Change Password"',
'"تغيير كلمة المرور" ',
),
style: TextStyle(
fontWeight: FontWeight.w600,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
TextSpan(
text: context.translate(
' link at the bottom.',
'في الأسفل.',
),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
],
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'2. Enter Old Password:',
'2. إدخال كلمة المرور القديمة:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Enter your current password in the first field.',
'أدخل كلمة المرور الحالية في الحقل الأول.',
),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'3. Set a New Password:',
'3. تعيين كلمة مرور جديدة:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Enter your new password in the second field.',
'أدخل كلمة المرور الجديدة في الحقل الثاني.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Re-enter the new password in the third field for confirmation.',
'أعد إدخال كلمة المرور الجديدة في الحقل الثالث للتأكيد.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'4. Password Requirements:',
'4. متطلبات كلمة المرور:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Your new password must be different from the previously used password.',
'جب أن تكون كلمة المرور الجديدة مختلفة عن كلمة المرور المستخدمة سابقًا',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'5. Save Your Password:', '5. حفظ كلمة المرور '),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'Tap the ', 'انقرعلى زر '),
style: TextStyle(
fontSize: 16,
// color: Color(0xFF898C81),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
children: <TextSpan>[
TextSpan(
text: context.translate('Save ', '"حفظ".'),
style: TextStyle(
fontWeight: FontWeight.w600,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
TextSpan(
text: context.translate('button', ''),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
],
),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'A confirmation message will appear: “Password has been successfully updated.”',
'ستظهر رسالة تأكيد: "تم تحديث كلمة المرور بنجاح".',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate('6. Re-Login:', '6. إعادة تسجيل الدخول'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Log in again using your new password to continue using the app',
'قم بتسجيل الدخول مرة أخرى باستخدام كلمة المرور الجديدة للاستمرار في استخدام التطبيق.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(
height: 20,
// width: MediaQuery.of(context).size.width,
// height: MediaQuery.of(context).size.height * 0.36,
// child: Image.asset(
// 'assets/user_guide/changePassword.png',
// fit: BoxFit.contain,
// ),
),
Padding(padding: const EdgeInsets.all(30.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
context.translate(
'Changing your password helps keep your account secure. Follow these steps to update your password:',
'يُساعد تغيير كلمة المرور في الحفاظ على أمان حسابك. اتبع هذه الخطوات لتحديث كلمة مرور',
),
style: TextStyle(
color: isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
SizedBox(height: 12),
Text(
context.translate(
'Steps to Change Password', 'خطوات تغيير كلمة المرور '),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 22,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Text(
context.translate(
'1. Access the Change Password Page:',
'1. الدخول إلى صفحة تغيير كلمة المرور:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'From the Profile page, tap on the ',
'من صفحة الملف الشخصي، انقر على رابط ',
),
style: TextStyle(
fontSize: 16,
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
children: <TextSpan>[
TextSpan(
text: context.translate(
'"Change Password"',
'"تغيير كلمة المرور" ',
),
style: TextStyle(
fontWeight: FontWeight.w600,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
TextSpan(
text: context.translate(
' link at the bottom.',
'في الأسفل.',
),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
],
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'2. Enter Old Password:',
'2. إدخال كلمة المرور القديمة:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Enter your current password in the first field.',
'أدخل كلمة المرور الحالية في الحقل الأول.',
),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'3. Set a New Password:',
'3. تعيين كلمة مرور جديدة:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Enter your new password in the second field.',
'أدخل كلمة المرور الجديدة في الحقل الثاني.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Re-enter the new password in the third field for confirmation.',
'أعد إدخال كلمة المرور الجديدة في الحقل الثالث للتأكيد.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'4. Password Requirements:',
'4. متطلبات كلمة المرور:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Your new password must be different from the previously used password.',
'جب أن تكون كلمة المرور الجديدة مختلفة عن كلمة المرور المستخدمة سابقًا',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate(
'5. Save Your Password:', '5. حفظ كلمة المرور '),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'Tap the ', 'انقرعلى زر '),
style: TextStyle(
fontSize: 16,
// color: Color(0xFF898C81),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
children: <TextSpan>[
TextSpan(
text: context.translate('Save ', '"حفظ".'),
style: TextStyle(
fontWeight: FontWeight.w600,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
TextSpan(
text: context.translate('button', ''),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
],
),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'A confirmation message will appear: “Password has been successfully updated.”',
'ستظهر رسالة تأكيد: "تم تحديث كلمة المرور بنجاح".',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
SizedBox(height: 8),
Text(
context.translate('6. Re-Login:', '6. إعادة تسجيل الدخول'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Padding(
padding: const EdgeInsets.only(left: 8.0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Log in again using your new password to continue using the app',
'قم بتسجيل الدخول مرة أخرى باستخدام كلمة المرور الجديدة للاستمرار في استخدام التطبيق.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81),
),
),
),
],
),
],
),
),
],
),)
],
),
),

View File

@ -8,7 +8,8 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
class HowUseTheApp extends ConsumerStatefulWidget {
@ -152,7 +153,7 @@ class _HowUseTheAppState extends ConsumerState<HowUseTheApp> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),
@ -182,191 +183,196 @@ class _HowUseTheAppState extends ConsumerState<HowUseTheApp> {
),
),
SizedBox(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset(
'assets/user_guide/howUse.png',
fit: BoxFit.contain,
),
height:10,
// width: MediaQuery.of(context).size.width,
// height: MediaQuery.of(context).size.height * 0.36,
// child: Image.asset(
// 'assets/user_guide/howUse.png',
// fit: BoxFit.contain,
// ),
),
Text(
context.translate(
'1. Registration and Approval:',
'1. التسجيل والموافقة:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
Padding(
padding: const EdgeInsets.all(30.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
Text(
context.translate(
'1. Registration and Approval:',
'1. التسجيل والموافقة:',
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Sign up for the app and wait for admin approval.',
'قم بالتسجيل في التطبيق وانتظر الموافقة من الإدارة.',
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Sign up for the app and wait for admin approval.',
'قم بالتسجيل في التطبيق وانتظر الموافقة من الإدارة.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
SizedBox(height: 8),
Text(
context.translate(
'2. Login and Navigation:',
'2. تسجيل الدخول والتصفح:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Once approved, log in to access the app. Navigate through the categories on the home screen.',
'بعد الموافقة، قم بتسجيل الدخول للوصول إلى التطبيق. تصفح الفئات المختلفة على الشاشة الرئيسية.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
SizedBox(height: 8),
Text(
context.translate(
'3. Access Data:',
'3. الوصول إلى البيانات:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Drill down into specific categories like "Economy" or "Environment" to view detailed KPIs and visual insights.',
'قم بالتعمق في الفئات المحددة مثل "الاقتصاد" أو "البيئة" لعرض مؤشرات الأداء الرئيسية والرؤى المرئية بالتفصيل.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
SizedBox(height: 8),
Text(
context.translate(
'4. Bookmark Metrics:',
'4. وضع إشارة مرجعية للمقاييس:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Save important statistics for easy reference.',
'احفظ الإحصائيات المهمة للرجوع إليها بسهولة.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
],
),
SizedBox(height: 8),
Text(
context.translate(
'2. Login and Navigation:',
'2. تسجيل الدخول والتصفح:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Once approved, log in to access the app. Navigate through the categories on the home screen.',
'بعد الموافقة، قم بتسجيل الدخول للوصول إلى التطبيق. تصفح الفئات المختلفة على الشاشة الرئيسية.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
SizedBox(height: 8),
Text(
context.translate(
'3. Access Data:',
'3. الوصول إلى البيانات:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Drill down into specific categories like "Economy" or "Environment" to view detailed KPIs and visual insights.',
'قم بالتعمق في الفئات المحددة مثل "الاقتصاد" أو "البيئة" لعرض مؤشرات الأداء الرئيسية والرؤى المرئية بالتفصيل.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
SizedBox(height: 8),
Text(
context.translate(
'4. Bookmark Metrics:',
'4. وضع إشارة مرجعية للمقاييس:',
),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Drill down into specific categories like "Economy" or "Environment" to view detailed KPIs and visual insights.',
'احفظ الإحصائيات المهمة للرجوع إليها بسهولة.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
SizedBox(
height: 20,
),
),)
],
),
),

View File

@ -8,8 +8,10 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class Purpose extends ConsumerStatefulWidget {
const Purpose({super.key});
@ -152,7 +154,7 @@ class _PurposeState extends ConsumerState<Purpose> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),
@ -181,128 +183,132 @@ class _PurposeState extends ConsumerState<Purpose> {
),
),
SizedBox(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset(
'assets/user_guide/purpose.png',
fit: BoxFit.contain,
),
height: 10,
// width: MediaQuery.of(context).size.width,
// height: MediaQuery.of(context).size.height * 0.36,
// child: Image.asset(
// 'assets/user_guide/purpose.png',
// fit: BoxFit.contain,
// ),
),
SizedBox(height: 8),
Row(
Padding(padding: const EdgeInsets.all(30.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'Provide ',
'توفير الإحصائيات الرسمية لدولة الإمارات بشكل سهل الوصول.',
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81),
fontSize: 16,
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
children: <TextSpan>[
TextSpan(
text:
context.translate('official statistics ', ''),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'Provide ',
'توفير الإحصائيات الرسمية لدولة الإمارات بشكل سهل الوصول.',
),
style: TextStyle(
fontWeight: FontWeight.bold,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
color:
isDarkTheme ? Colors.white : Color(0xFF898C81),
fontSize: 16,
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
children: <TextSpan>[
TextSpan(
text:
context.translate('official statistics ', ''),
style: TextStyle(
fontWeight: FontWeight.bold,
color: isDarkTheme
? Colors.white
: Color(0xFF414042),
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
),
),
TextSpan(
text: context.translate(
'on the UAE in an accessible format.', ''),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81)),
),
],
),
TextSpan(
text: context.translate(
'on the UAE in an accessible format.', ''),
style: TextStyle(
color: isDarkTheme
? Colors.white
: Color(0xFF898C81)),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Support decision-making and research with reliable, up-to-date data.',
'دعم اتخاذ القرارات والبحوث من خلال بيانات موثوقة ومحدثة.',
),
],
),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Support decision-making and research with reliable, up-to-date data.',
'دعم اتخاذ القرارات والبحوث من خلال بيانات موثوقة ومحدثة.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Enable users to interact with data visually through graphs and metrics.',
'تمكين المستخدمين من التفاعل مع البيانات بصريًا من خلال الرسوم البيانية والمقاييس.',
),
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Enable users to interact with data visually through graphs and metrics.',
'تمكين المستخدمين من التفاعل مع البيانات بصريًا من خلال الرسوم البيانية والمقاييس.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
),
],
),
],
),
SizedBox(
height: 20,
),
),)
],
),
),

View File

@ -7,9 +7,10 @@ import 'package:uae_stat/config/api_config.dart';
import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class StayUpdate extends ConsumerStatefulWidget {
const StayUpdate({super.key});
@ -150,7 +151,7 @@ class _StayUpdateState extends ConsumerState<StayUpdate> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),
@ -179,44 +180,45 @@ class _StayUpdateState extends ConsumerState<StayUpdate> {
),
),
SizedBox(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset(
'assets/user_guide/stayUpdate.png',
fit: BoxFit.contain,
height: 10,
// width: MediaQuery.of(context).size.width,
// height: MediaQuery.of(context).size.height * 0.36,
// child: Image.asset(
// 'assets/user_guide/stayUpdate.png',
// fit: BoxFit.contain,
// ),
),
Padding(
padding: const EdgeInsets.all(30),
child: Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
// Padding(
// padding: const EdgeInsets.only(top: 8.0),
// child: Icon(
// Icons.brightness_1,
// size: 5,
// color: isDarkTheme ? Colors.white : Color(0xFF414042),
// ),
// ), // Bullet point
// SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'The app regularly updates datasets and features to reflect the latest information. Notifications will alert you about new data or improvements.',
'يتم تحديث مجموعات البيانات وميزات التطبيق بانتظام لتعكس أحدث المعلومات. ستتلقى إشعارات تنبهك حول البيانات الجديدة والتحسينات.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'The app regularly updates datasets and features to reflect the latest information. Notifications will alert you about new data or improvements.',
'يتم تحديث مجموعات البيانات وميزات التطبيق بانتظام لتعكس أحدث المعلومات. ستتلقى إشعارات تنبهك حول البيانات الجديدة والتحسينات.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
SizedBox(
height: 20,
),
],
),
),

View File

@ -8,7 +8,9 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class WhoUseTheApp extends ConsumerStatefulWidget {
const WhoUseTheApp({super.key});
@ -150,7 +152,7 @@ class _WhoUseTheAppState extends ConsumerState<WhoUseTheApp> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),
@ -167,7 +169,7 @@ class _WhoUseTheAppState extends ConsumerState<WhoUseTheApp> {
alignment: Alignment.topLeft,
child: Text(
context.translate(
'Who can use the App?', 'من يمكنه استخدام التطبيق؟'),
'Who can use the App', 'من يمكنه استخدام التطبيق؟'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
@ -179,112 +181,118 @@ class _WhoUseTheAppState extends ConsumerState<WhoUseTheApp> {
),
),
),
SizedBox(
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset(
'assets/user_guide/whoUse.png',
fit: BoxFit.contain,
),
),
Text(
context.translate(
'This app is intended for:', 'يستهدف هذا التطبيق:'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
SizedBox(height: 10),
// SizedBox(
// width: MediaQuery.of(context).size.width,
// height: MediaQuery.of(context).size.height * 0.36,
// child: Image.asset(
// 'assets/user_guide/whoUse.png',
// fit: BoxFit.contain,
// ),
// ),
Padding(
padding: const EdgeInsets.all(30.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Government officials requiring UAE statistics for decision-making.',
'المسؤولين الحكوميين الذين يحتاجون إلى إحصاءات دولة الإمارات العربية المتحدة لاتخاذ القرارات.',
Text(
context.translate(
'This app is intended for:', 'يستهدف هذا التطبيق:'),
style: TextStyle(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Business professionals and researchers analyzing market trends.',
'المتخصصين في مجال الأعمال والباحثين الذين يقومون بتحليل اتجاهات السوق.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Government officials requiring UAE statistics for decision-making.',
'المسؤولين الحكوميين الذين يحتاجون إلى إحصاءات دولة الإمارات العربية المتحدة لاتخاذ القرارات.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Business professionals and researchers analyzing market trends.',
'المتخصصين في مجال الأعمال والباحثين الذين يقومون بتحليل اتجاهات السوق.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Students and educators needing reliable data for study and teaching.',
'الطلاب والمعلمين الذين يحتاجون إلى بيانات موثوقة للدراسة والتعليم.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
],
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Icon(
Icons.brightness_1,
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
),
), // Bullet point
SizedBox(width: 8), // Space between bullet and text
Expanded(
child: Text(
context.translate(
'Students and educators needing reliable data for study and teaching.',
'الطلاب والمعلمين الذين يحتاجون إلى بيانات موثوقة للدراسة والتعليم.',
),
textAlign: TextAlign.justify, // Align the text
softWrap: true,
style: TextStyle(
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
),
),
],
),
SizedBox(
height: 20,
),
),)
],
),
),

View File

@ -9,7 +9,10 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class aboutTheApp extends ConsumerStatefulWidget {
const aboutTheApp({super.key});
@ -132,7 +135,7 @@ class _aboutTheAppState extends ConsumerState<aboutTheApp> {
'Roboto',
'NotoKufi',
),
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),

View File

@ -8,7 +8,10 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class FAQPage extends ConsumerStatefulWidget {
const FAQPage({super.key});
@ -130,7 +133,7 @@ class _FAQPageState extends ConsumerState<FAQPage> {
'NotoKufi',
),
fontSize: 22,
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black ,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),
@ -932,7 +935,7 @@ class _QuestionAnswerCardState extends State<QuestionAnswerCard> {
trailing: Icon(isExpanded
? Icons.keyboard_arrow_up
: Icons.keyboard_arrow_down),
iconColor: widget.isDarkTheme ? Colors.white : Color(0xFF414042),
iconColor: widget.isDarkTheme ? Colors.white : Color(0xFF898C81),
onTap: () {
setState(() {
isExpanded = !isExpanded;

View File

@ -9,8 +9,9 @@ import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:uae_stat/infrastructure/services/img_asset_paths/banner_asset_path.dart';
class UsingFeatures extends ConsumerStatefulWidget {
@ -135,7 +136,7 @@ class _UsingFeaturesState extends ConsumerState<UsingFeatures> {
'Roboto',
'NotoKufi',
),
color: Color(0xFF7DAFBC),
color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500,
),

View File

@ -4,11 +4,12 @@ import 'package:go_router/go_router.dart';
import 'package:uae_stat/config/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
// import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.dart';
import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:iconify_design/iconify_design.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
// import 'package:flutter_gen/gen_l10n/app_localizations.dart';
// import 'package:uae_stat/l10n/app_localizations.dart';
class Userguide extends ConsumerStatefulWidget {
@ -108,7 +109,12 @@ class _UserguideState extends ConsumerState<Userguide> {
bottomColor: isDarkTheme ? Color(0xFF111111) : Colors.white,
dividerColor: isDarkTheme ? Color(0xFF111111) : Colors.grey[300],
appbarColor: isDarkTheme ? Color(0xFF111111) : Colors.white,
title: Text(AppLocalizations.of(context)!.guide_title,style: TextStyle(color: isDarkTheme ? Colors.white : Color(0xFF414042) ),),
title: Text(
AppLocalizations.of(context)!.guide_title,
style: TextStyle(
color: isDarkTheme ? Colors.white : Color(0xFF414042)
)
),
body: Container(
color: isDarkTheme ? Color(0xFF111111) : Colors.white,
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 20),
@ -175,7 +181,8 @@ class _HoverContainerState extends ConsumerState<HoverContainer> {
width: screenWidth * 0.30,
margin: EdgeInsets.all(1),
decoration: BoxDecoration(
color: isDarkTheme ? Color(0xFF111111) : Colors.white,
color: isDarkTheme ? Color(0xFF111111) : Colors.white,
borderRadius: BorderRadius.circular(10),
boxShadow: isHovered
? [
@ -187,7 +194,8 @@ class _HoverContainerState extends ConsumerState<HoverContainer> {
),
]
: [],
border: Border.all(color: Color(0xFF7DAFBC), width: 1.0),
// border: Border.all(color: Color(0xFF7DAFBC), width: 1.0),
border: Border.all(color: Color(0xFFB68A34), width: 1.0),
),
alignment: Alignment.center,
// duration: Duration(milliseconds: 200),
@ -200,7 +208,8 @@ class _HoverContainerState extends ConsumerState<HoverContainer> {
children: [
IconifyIcon(
icon: widget.iconName,
color: Color(0xFF7DAFBC),
// color: Color(0xFF7DAFBC),
color: Color(0xFFB68A34),
size: containerHeight * 0.45,
),
// buildDynamicWidget(data['icon'], Color(0xFF7DAFBC)),
@ -213,9 +222,9 @@ class _HoverContainerState extends ConsumerState<HoverContainer> {
padding: EdgeInsets.symmetric(horizontal: 4, vertical: 4),
margin: EdgeInsets.only(bottom: 3),
decoration: BoxDecoration(
color: Color(0xFF7DAFBC),
color: Color(0xFFB68A34),
borderRadius: BorderRadius.circular(5),
border: Border.all(color: Color(0xFF7DAFBC))),
border: Border.all(color: Color(0xFFB68A34))),
child: Text(
widget.title,
style: TextStyle(

View File

@ -11,6 +11,7 @@ import 'package:go_router/go_router.dart';
import 'package:package_info_plus/package_info_plus.dart';
import 'package:pocketbase/pocketbase.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:tutorial_coach_mark/tutorial_coach_mark.dart';
import 'package:uae_stat/config/injector.dart';
@ -23,6 +24,7 @@ import 'package:uae_stat/domain/use_cases/language.dart';
import 'package:uae_stat/infrastructure/data/p_auth_repo.dart';
import 'package:uae_stat/infrastructure/services/img_asset_paths/icons/bottom_bar_asset_icon_path.dart';
import 'package:uae_stat/infrastructure/services/img_asset_paths/icons/drawer_asset_icon_path.dart';
// import 'package:uae_stat/l10n/app_localizations.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/components/my_toggle.dart';
@ -245,7 +247,8 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
child: IconButton(
icon: const Icon(
Icons.arrow_back,
color: Colors.white,
// color: Colors.white,
color: Colors.grey,
),
onPressed: () {
if (locale.languageCode == 'ar') {
@ -403,7 +406,8 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
child: IconButton(
icon: const Icon(
Icons.arrow_back,
color: Colors.white,
// color: Colors.white,
color: Colors.grey,
),
onPressed: () {
locale.languageCode == 'ar'
@ -569,7 +573,8 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
locale.languageCode == 'ar'
? Icons.arrow_forward
: Icons.arrow_back,
color: Colors.white,
// color: Colors.white,
color: Colors.grey,
),
onPressed: () {
tutorialCoachMark.previous();
@ -983,7 +988,7 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
scrolledUnderElevation: 0,
titleSpacing: 0,
flexibleSpace: Container(
decoration: BoxDecoration(
decoration: BoxDecoration(
color: isDarkTheme ? Color(0xFF000000) : Color(0xFFFFFFFF),
),
),
@ -1056,14 +1061,14 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
padding: EdgeInsets.zero,
constraints: BoxConstraints(),
// color: widget.colorChange ? Colors.white : Colors.black,
color: isDarkTheme
? widget.colorChange
? Colors.black
: Colors.white
: widget.colorChange
? Colors.white
: Colors.black,
// color: isDarkTheme
// ? widget.colorChange
// ? Colors.black
// : Colors.white
// : widget.colorChange
// ? Colors.white
// : Colors.black,
color: Colors.grey,
icon: const Icon(Icons.arrow_back_ios_new, size: 24),
onPressed: () {
if (widget.navBackArrow is Text &&
@ -1418,7 +1423,6 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
),
onTap: () => context.go('/register'),
),
],
),
),

View File

@ -433,6 +433,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.1"
dotted_border:
dependency: "direct main"
description:
name: dotted_border
sha256: "108837e11848ca776c53b30bc870086f84b62ed6e01c503ed976e8f8c7df9c04"
url: "https://pub.dev"
source: hosted
version: "2.1.0"
equatable:
dependency: transitive
description:
@ -1156,6 +1164,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.9.1"
path_drawing:
dependency: transitive
description:
name: path_drawing
sha256: bbb1934c0cbb03091af082a6389ca2080345291ef07a5fa6d6e078ba8682f977
url: "https://pub.dev"
source: hosted
version: "1.0.1"
path_parsing:
dependency: transitive
description:

View File

@ -76,6 +76,7 @@ dependencies:
android_intent_plus: ^5.3.0
app_settings: ^6.1.1
appsflyer_sdk: ^6.16.2
dotted_border: ^2.1.0
dependency_overrides:
fading_edge_scrollview: ^4.1.1
@ -162,6 +163,8 @@ flutter:
- assets/country-profile/
- assets/country-profile/CategoryFile/
- assets/competitiveness/
- assets/icons/uae_numbers/ShareDark.png
- assets/icons/uae_numbers/ShareLight.png
fonts:
- family: Segoe