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 y/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/arm64-v8a/additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ãÄ¹Žƒ3  ¡¹ñÀ÷2z ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  …Žœÿƒ3  ¡¹ñÀ÷2z
x 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 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 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 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 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 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 ö ¦¹ñÀ÷2s
q 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 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 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 {/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/armeabi-v7a/additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  éÅ¹Žƒ3  ¸ïòÀ÷2| ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  <EFBFBD>œÿƒ3  ¸ïòÀ÷2|
z 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 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 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 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 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 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 € »ïòÀ÷2u
s 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 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 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 u
s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/additional_project_files.txtC s/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86/additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ôÅ¹Žƒ3  „òòÀ÷2t ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  Œ<EFBFBD>œÿƒ3  „òòÀ÷2t
r 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 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 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 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 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 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 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 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 Ø …òòÀ÷2m
k 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 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 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 x
v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/additional_project_files.txtC v/Users/venbateam/Documents/UAE_Stats/FCSC/frontend/android/app/.cxx/Debug/4y161to1/x86_64/additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ýÅ¹Žƒ3  •ôòÀ÷2w ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  <EFBFBD>œÿƒ3  •ôòÀ÷2w
u 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 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 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 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 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 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 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 ç ôòÀ÷2p
n 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 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 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 bookmarksSelectedUae = '$_basePath/bookmarksSelectedUae.png';
// static const shareUae = '$_basePath/share.png'; // static const shareUae = '$_basePath/share.png';
static const share = '$_basePath/share.svg'; 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 filterUae = '$_basePath/filters.png';
static const filterCharts = '$_basePath/Filter.svg'; 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:flutter_riverpod/flutter_riverpod.dart';
import 'package:go_router/go_router.dart'; import 'package:go_router/go_router.dart';
import 'package:flutter_svg/flutter_svg.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/domain/use_cases/language.dart';
import 'package:uae_stat/infrastructure/services/img_asset_paths/icons/misc_icon_asset_path.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'; 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); country.nameAR.toLowerCase().contains(query);
}).toList(); }).toList();
final List<Map<String, String>> _allCountries = [ final body = BaseScaffold(
{"name": "Afghanistan", "flag": "🇦🇫"}, body: Column(
{"name": "Albania", "flag": "🇦🇱"}, children: [
{"name": "Algeria", "flag": "🇩🇿"}, Padding(
{"name": "American Samoa", "flag": "🇦🇸"}, padding: const EdgeInsets.symmetric(horizontal: 12.0, vertical: 12.0),
{"name": "Andorra", "flag": "🇦🇩"}, child: Container(
{"name": "Angola", "flag": "🇦🇴"}, decoration: BoxDecoration(
{"name": "Anguilla", "flag": "🇦🇮"}, color: Colors.white,
{"name": "Antigua And Barbuda", "flag": "🇦🇬"}, borderRadius: BorderRadius.circular(30.0),
{"name": "Argentina", "flag": "🇦🇷"}, border: Border.all(width: 1, color: Color(0xFFAA8E83)),
{"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),
),
),
), ),
child: SearchBar( child: SearchBar(
constraints: BoxConstraints( 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/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/components/my_toggle.dart'; import 'package:uae_stat/presentation/components/my_toggle.dart';
// import 'package:uae_stat/l10n/app_localizations.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/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:uae_stat/presentation/Screens/app_tour/Target_content.dart'; import 'package:uae_stat/presentation/Screens/app_tour/Target_content.dart';
import '../filters/search_filter_helper.dart'; import '../filters/search_filter_helper.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart'; import 'package:flutter_svg/flutter_svg.dart';
import 'package:share_plus/share_plus.dart'; import 'package:share_plus/share_plus.dart';
import 'package:path_provider/path_provider.dart'; import 'package:path_provider/path_provider.dart';
import 'dart:io'; import 'dart:io';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class ChartScreen1 extends ConsumerStatefulWidget { class ChartScreen1 extends ConsumerStatefulWidget {
final String dataSets; final String dataSets;
@ -334,7 +333,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
10.0), // Adjust the radius as needed 10.0), // Adjust the radius as needed
), ),
side: BorderSide( 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 width: 1, // Set the border width
), ),
), ),
@ -345,7 +345,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'Roboto', 'Roboto',
'NotoKufi', 'NotoKufi',
), ),
color: Color(0xFFAA8E83), // color: Color(0xFFAA8E83),
color: Color(0xFFB68A34),
fontSize: 16, fontSize: 16,
), ),
), ),
@ -359,7 +360,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
removeBookmark(); // Close dialog removeBookmark(); // Close dialog
}, },
style: TextButton.styleFrom( style: TextButton.styleFrom(
backgroundColor: Color(0xFFAA8E83), // Set background color // backgroundColor: Color(0xFFAA8E83), // Set background color
backgroundColor: Color(0xFFB68A34), // Set background color
foregroundColor: Colors.white, foregroundColor: Colors.white,
shape: RoundedRectangleBorder( shape: RoundedRectangleBorder(
borderRadius: borderRadius:
@ -442,7 +444,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
10.0), // Adjust the radius as needed 10.0), // Adjust the radius as needed
), ),
side: BorderSide( 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 width: 1, // Set the border width
), ),
), ),
@ -453,7 +456,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'Roboto', 'Roboto',
'NotoKufi', 'NotoKufi',
), ),
color: Color(0xFFAA8E83), color: Color(0xFFB68A34),
// color: Color(0xFFAA8E83),
fontSize: 16, fontSize: 16,
), ),
), ),
@ -467,7 +471,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
addBookmark(); // Close dialog addBookmark(); // Close dialog
}, },
style: TextButton.styleFrom( style: TextButton.styleFrom(
backgroundColor: Color(0xFFAA8E83), // Set background color backgroundColor: Color(0xFFB68A34), // Set background color
// backgroundColor: Color(0xFFAA8E83), // Set background color
foregroundColor: Colors.white, foregroundColor: Colors.white,
shape: RoundedRectangleBorder( shape: RoundedRectangleBorder(
borderRadius: borderRadius:
@ -1519,8 +1524,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
print('locale2- $locale'); print('locale2- $locale');
final isDark = currentTheme == ThemeMode.dark || final isDark = ref.watch(themeProvider) == ThemeMode.dark ||
(currentTheme == ThemeMode.system && (ref.watch(themeProvider) == ThemeMode.system &&
MediaQuery.of(context).platformBrightness == Brightness.dark); MediaQuery.of(context).platformBrightness == Brightness.dark);
final themeMode = (isDark ? 'dark' : 'light'); final themeMode = (isDark ? 'dark' : 'light');
@ -1972,12 +1977,14 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
ref.watch(localeProvider)?.languageCode ?? 'en'; ref.watch(localeProvider)?.languageCode ?? 'en';
print('locale22- $locale'); print('locale22- $locale');
final isDark = currentTheme == ThemeMode.dark || final isDark = ref.watch(themeProvider) == ThemeMode.dark ||
(currentTheme == ThemeMode.system && (ref.watch(themeProvider) == ThemeMode.system &&
MediaQuery.of(context).platformBrightness == MediaQuery.of(context).platformBrightness ==
Brightness.dark); Brightness.dark);
print('isDark filter');
print(isDark);
final themeMode = (isDark ? 'dark' : 'light'); final themeMode = (isDark ? 'dark' : 'light');
print(themeMode);
fetchChartData( fetchChartData(
widget.dataSets, widget.dataSets,
@ -2042,8 +2049,8 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'en'; 'en';
print('locale22- $locale'); print('locale22- $locale');
final isDark = currentTheme == ThemeMode.dark || final isDark = ref.watch(themeProvider) == ThemeMode.dark ||
(currentTheme == ThemeMode.system && (ref.watch(themeProvider) == ThemeMode.system &&
MediaQuery.of(context) MediaQuery.of(context)
.platformBrightness == .platformBrightness ==
Brightness.dark); Brightness.dark);
@ -2495,7 +2502,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
// //
final bodyColor = Color( final bodyColor = Color(
int.parse( int.parse(
(chartScreenData['body_color'] ?? '#898C81').replaceFirst('#', '0xff'), (chartScreenData['header_color'] ?? '#898C81').replaceFirst('#', '0xff'),
), ),
); );
final chartHeader = chartScreenData['main_topic'] ?? ''; final chartHeader = chartScreenData['main_topic'] ?? '';
@ -2566,7 +2573,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
// .replaceFirst('#', '0xff'))), // .replaceFirst('#', '0xff'))),
child: Padding( child: Padding(
padding: EdgeInsets.only( padding: EdgeInsets.only(
left: 30, right: 30, top: 8, bottom: 5), left: 15, right: 15, top: 8, bottom: 5),
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
@ -2652,8 +2659,14 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
child: Container( child: Container(
padding: EdgeInsets.all(4), padding: EdgeInsets.all(4),
decoration: BoxDecoration( decoration: BoxDecoration(
// color: isBookmarked
// ? Colors.white.withAlpha(90)
// : null,
color: isBookmarked color: isBookmarked
? isDarkTheme
? Colors.white.withAlpha(90) ? Colors.white.withAlpha(90)
: Colors.grey.shade200
: null, // Background color : null, // Background color
borderRadius: BorderRadius.circular( borderRadius: BorderRadius.circular(
8), // Curved corners 8), // Curved corners
@ -2673,6 +2686,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 16, fontSize: 16,
fontWeight: FontWeight.w500,
color: isDarkTheme color: isDarkTheme
? Colors.grey ? Colors.grey
: Color(0xFF416587), : Color(0xFF416587),
@ -2696,6 +2710,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 16, fontSize: 16,
fontWeight: FontWeight.w500,
color: isDarkTheme color: isDarkTheme
? Colors.grey ? Colors.grey
: Color(0xFF416587), : Color(0xFF416587),
@ -2723,14 +2738,22 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
Icon( Icon(
size: 24, size: 24,
Icons.bookmarks_rounded, Icons.bookmarks_rounded,
color: isBookmarked color: isBookmarked
? Color(int.parse( ? isDarkTheme
(chartScreenData[ ? Colors.grey
'body_color'] ?? : Color(0xFF416587)
'#898C81') : isDarkTheme
.replaceFirst( ? Colors.grey
'#', '0xff'))) : Color(0xFF416587),
: Colors.white, // color: isBookmarked
// ? Color(int.parse(
// (chartScreenData[
// 'body_color'] ??
// '#898C81')
// .replaceFirst(
// '#', '0xff')))
// : Colors.white,
), ),
], ],
), ),
@ -2754,6 +2777,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 16, fontSize: 16,
fontWeight: FontWeight.w500,
// color: Colors.white, // color: Colors.white,
color: isDarkTheme color: isDarkTheme
? Colors.grey ? Colors.grey
@ -2771,8 +2795,17 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
strokeWidth: 2, strokeWidth: 2,
), ),
) // Show loading spinner ) // Show loading spinner
: isDarkTheme
? SvgPicture.asset(
UaeNumbersAssetPath
.shareDark,
semanticsLabel: 'share',
width: 24,
height: 24,
)
: SvgPicture.asset( : SvgPicture.asset(
UaeNumbersAssetPath.share, UaeNumbersAssetPath
.shareLight,
semanticsLabel: 'share', semanticsLabel: 'share',
width: 24, width: 24,
height: 24, height: 24,
@ -2804,6 +2837,7 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 16, fontSize: 16,
fontWeight: FontWeight.w500,
// color: Colors.white, // color: Colors.white,
color: isDarkTheme color: isDarkTheme
? Colors.grey ? Colors.grey
@ -2811,12 +2845,20 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
), ),
), ),
SizedBox(width: 10), SizedBox(width: 10),
SvgPicture.asset(
UaeNumbersAssetPath.filterCharts, Icon(
semanticsLabel: 'Filter', size: 26,
width: 24, Icons.filter_alt_outlined,
height: 24, 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: onPressed == null
? Color(int.parse((chartScreenData['header_color'] ?? '#898C81') ? Color(int.parse((chartScreenData['header_color'] ?? '#898C81')
.replaceFirst('#', '0xff'))) .replaceFirst('#', '0xff')))
: Colors.grey[400], : isDarkTheme
? Colors.grey[700]
: Colors.grey[200],
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
borderRadius: BorderRadius.circular(5.0), borderRadius: BorderRadius.circular(5.0),
// boxShadow: [ // boxShadow: [
@ -3149,7 +3193,9 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
color: isActive color: isActive
? Color(int.parse((chartScreenData['header_color'] ?? '#898C81') ? Color(int.parse((chartScreenData['header_color'] ?? '#898C81')
.replaceFirst('#', '0xff'))) .replaceFirst('#', '0xff')))
: Colors.grey[400], : isDarkTheme
? Colors.black
: Color(0XFFDFE1DB),
borderRadius: BorderRadius.circular(5.0), borderRadius: BorderRadius.circular(5.0),
), ),
child: Text( child: Text(
@ -3159,7 +3205,9 @@ class _ChartScreen1State extends ConsumerState<ChartScreen1> {
'Roboto', 'Roboto',
'NotoKufi', '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, fontWeight: isActive ? FontWeight.w500 : FontWeight.w400,
fontSize: 13, fontSize: 13,
), ),

View File

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

View File

@ -539,9 +539,8 @@ class _EditProfileState extends ConsumerState<EditProfile> {
await _fetchUserData(); await _fetchUserData();
}); });
final themeMode = ref.read(themeProvider); final isDarkTheme = ref.watch(themeProvider) == ThemeMode.dark ||
final isDarkTheme = themeMode == ThemeMode.dark || (ref.watch(themeProvider) == ThemeMode.system &&
(themeMode == ThemeMode.system &&
MediaQuery.of(context).platformBrightness == Brightness.dark); MediaQuery.of(context).platformBrightness == Brightness.dark);
return PopScope( 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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
class aboutFCSC extends ConsumerStatefulWidget { class aboutFCSC extends ConsumerStatefulWidget {
@ -133,7 +133,7 @@ class _aboutFCSCState extends ConsumerState<aboutFCSC> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
// fontWeight: FontWeight.normal, // fontWeight: FontWeight.normal,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
), ),
@ -166,10 +166,17 @@ class _aboutFCSCState extends ConsumerState<aboutFCSC> {
SizedBox( SizedBox(
width: MediaQuery.of(context).size.width, width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height * 0.36, height: MediaQuery.of(context).size.height * 0.36,
child: Image.asset( child:
'assets/user_guide/AboutFCSC.png', Image.asset(
fit: BoxFit.contain, isDarkTheme
), ? 'assets/user_guide/aboutfcscdark.png'
: 'assets/user_guide/aboutfcsclight.png',
)
// Image.asset(
// 'assets/user_guide/about fcsc dark.png',
// fit: BoxFit.contain,
// ),
), ),
SizedBox( SizedBox(
height: 5, 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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
class GetStarted extends ConsumerStatefulWidget { class GetStarted extends ConsumerStatefulWidget {
@ -150,7 +150,8 @@ class _GetStartedState extends ConsumerState<GetStarted> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
// color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500, // fontWeight: FontWeight.w500,
), ),
@ -166,7 +167,7 @@ class _GetStartedState extends ConsumerState<GetStarted> {
Align( Align(
alignment: Alignment.topLeft, alignment: Alignment.topLeft,
child: Text( child: Text(
context.translate('How to Get Started', 'كيفية البدء'), context.translate('How to Get Started?', 'كيفية البدء؟'),
style: TextStyle( style: TextStyle(
fontFamily: context.translate( fontFamily: context.translate(
'Roboto', 'Roboto',
@ -174,49 +175,70 @@ class _GetStartedState extends ConsumerState<GetStarted> {
), ),
fontSize: 20, fontSize: 20,
color: isDarkTheme ? Colors.white : Color(0xFF414042), color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600, fontWeight: FontWeight.w500,
), ),
), ),
), ),
SizedBox( SizedBox(height: 10),
width: MediaQuery.of(context).size.width, // SizedBox(
height: MediaQuery.of(context).size.height * 0.36, // width: MediaQuery.of(context).size.width,
child: Image.asset( // height: MediaQuery.of(context).size.height * 0.36,
'assets/user_guide/getStarted.png', // child: Image.asset(
fit: BoxFit.contain, // 'assets/user_guide/getStarted.png',
), // fit: BoxFit.contain,
), // ),
Text( // ),
context.translate( Padding(padding: const EdgeInsets.all(30.0),
'1. Download the app from the App Store or Google Play Store.', child: Column(
'1 .قم بتحميل التطبيق من متجر التطبيقات (Appstore) أو متجر جوجل بلاي (Google Play)..', crossAxisAlignment: CrossAxisAlignment.start,
), children: [
textAlign: TextAlign.justify, // Align the text Text(
softWrap: true, context.translate(
style: TextStyle( '1. Download the app from the App Store or Google Play Store.',
color: isDarkTheme ? Colors.white : Colors.black54, '1 .قم بتحميل التطبيق من متجر التطبيقات (Appstore) أو متجر جوجل بلاي (Google Play)..',
), ),
), textAlign: TextAlign.justify, // Align the text
SizedBox( softWrap: true,
height: 2, style: TextStyle(
), color: isDarkTheme ? Colors.white : Colors.black54,
Text( ),
context.translate( ),
'2. Log in to access advanced features', SizedBox(
'2 .قم بتسجيل الدخول لفتح الميزات المتقدمة.', height: 20,
), ),
textAlign: TextAlign.justify, // Align the text Text(
softWrap: true, context.translate(
style: TextStyle( '2. Log in to unlock advanced features or continue as a guest.',
color: isDarkTheme ? Colors.white : Colors.black54, '2 .قم بتسجيل الدخول لفتح الميزات المتقدمة أو الاستمرار كضيف.',
), ),
), textAlign: TextAlign.justify, // Align the text
SizedBox( softWrap: true,
height: MediaQuery.of(context).size.height * 0.12, style: TextStyle(
), color: isDarkTheme ? Colors.white : Colors.black54,
SizedBox( ),
height: 20, ),
), 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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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 '../../../../../../infrastructure/services/img_asset_paths/banner_asset_path.dart';
import '../../../custom_drawer_routes.dart'; import '../../../custom_drawer_routes.dart';
class AppFeatures extends ConsumerStatefulWidget { class AppFeatures extends ConsumerStatefulWidget {
const AppFeatures({super.key}); const AppFeatures({super.key});
@ -145,7 +147,7 @@ class _AppFeaturesState extends ConsumerState<AppFeatures> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500, // fontWeight: FontWeight.w500,
), ),
@ -174,238 +176,385 @@ class _AppFeaturesState extends ConsumerState<AppFeatures> {
), ),
), ),
), ),
SizedBox( SizedBox(height: 20,),
width: MediaQuery.of(context).size.width, // SizedBox(
height: MediaQuery.of(context).size.height * 0.36, // width: MediaQuery.of(context).size.width,
child: Image.asset( // height: MediaQuery.of(context).size.height * 0.36,
'assets/user_guide/appFeatures.png', // child: Image.asset(
fit: BoxFit.contain, // 'assets/user_guide/appFeatures.png',
), // fit: BoxFit.contain,
), // ),
Text( // ),
context.translate('1. Comprehensive Statistics:', Padding(padding: const EdgeInsets.all(30.0),
'1. رؤى مستندة إلى البيانات '), child: Column(
style: TextStyle( crossAxisAlignment: CrossAxisAlignment.start,
fontFamily: context.translate( children: [
'Roboto', Text(
'NotoKufi', context.translate('1. Comprehensive Statistics:',
), '1. رؤى مستندة إلى البيانات '),
fontSize: 16, style: TextStyle(
color: isDarkTheme ? Colors.white : Color(0xFF414042), fontFamily: context.translate(
fontWeight: FontWeight.w600, 'Roboto',
), 'NotoKufi',
), ),
SizedBox(height: 8), fontSize: 16,
Padding( color: isDarkTheme ? Colors.white : Color(0xFF414042),
padding: const EdgeInsets.only(left: 7.0), fontWeight: FontWeight.w600,
child: Column( ),
children: [ ),
Row( SizedBox(height: 8),
crossAxisAlignment: CrossAxisAlignment.start, Padding(
children: [ padding: const EdgeInsets.only(left: 7.0),
Padding( child: Column(
padding: const EdgeInsets.only(top: 6.0), children: [
child: Icon( Row(
Icons.brightness_1, crossAxisAlignment: CrossAxisAlignment.start,
size: 5, children: [
color: isDarkTheme ? Colors.white : Colors.black, Padding(
), padding: const EdgeInsets.only(top: 6.0),
), // Bullet point child: Icon(
SizedBox(width: 8), // Space between bullet and text Icons.brightness_1,
Expanded( size: 5,
child: RichText( color: isDarkTheme ? Colors.white : Colors.black,
text: TextSpan( ),
text: context.translate( ), // Bullet point
'Access detailed datasets across categories such as ', SizedBox(width: 8), // Space between bullet and text
'الوصول إلى مجموعات بيانات تفصيلية عبر فئات مثل الاقتصاد، البيئة، الاجتماعية، وغيرها.', Expanded(
), child: RichText(
style: TextStyle( text: TextSpan(
color: isDarkTheme text: context.translate(
? Colors.white 'Access detailed datasets across categories such as ',
: Color(0xFF898C81), 'الوصول إلى مجموعات بيانات تفصيلية عبر فئات مثل الاقتصاد، البيئة، الاجتماعية، وغيرها.',
fontSize: 16, ),
fontFamily: context.translate( style: TextStyle(
'Roboto', color: isDarkTheme
'NotoKufi', ? Colors.white
), : Color(0xFF898C81),
), fontSize: 16,
children: <TextSpan>[ fontFamily: context.translate(
TextSpan( 'Roboto',
text: context.translate( 'NotoKufi',
'Economy, Environment, Social, ', ''), ),
style: TextStyle( ),
fontWeight: FontWeight.bold, children: <TextSpan>[
color: isDarkTheme TextSpan(
? Colors.white text: context.translate(
: Color(0xFF414042), 'Economy, Environment, Social, ', ''),
fontFamily: context.translate( style: TextStyle(
'Roboto', fontWeight: FontWeight.bold,
'NotoKufi', color: isDarkTheme
), ? Colors.white
), : Color(0xFF414042),
), fontFamily: context.translate(
TextSpan( 'Roboto',
text: context.translate('and more.', ''), 'NotoKufi',
style: TextStyle( ),
color: isDarkTheme ),
? Colors.white ),
: Color(0xFF898C81), TextSpan(
fontSize: 16, text: context.translate('and more.', ''),
fontFamily: context.translate( style: TextStyle(
'Roboto', color: isDarkTheme
'NotoKufi', ? 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( Row(
Icons.brightness_1, crossAxisAlignment: CrossAxisAlignment.start,
size: 5, children: [
color: isDarkTheme Padding(
? Colors.white padding: const EdgeInsets.only(top: 8.0),
: Color(0xFF414042), child: Icon(
), Icons.brightness_1,
), // Bullet point size: 5,
SizedBox(width: 8), // Space between bullet and text color: isDarkTheme
Expanded( ? Colors.white
child: Text( : Color(0xFF414042),
context.translate( ),
'Explore statistics presented as smart metrics, graphs, and charts for better understanding.', ), // Bullet point
'استكشاف الإحصائيات المقدمة على هيئة مقاييس ذكية ورسوم بيانية ومخططات لتعزيز الفهم.', SizedBox(width: 8), // Space between bullet and text
), Expanded(
textAlign: TextAlign.justify, // Align the text child: Text(
softWrap: true, context.translate(
style: TextStyle( 'Explore statistics presented as smart metrics, graphs, and charts for better understanding.',
color: isDarkTheme 'استكشاف الإحصائيات المقدمة على هيئة مقاييس ذكية ورسوم بيانية ومخططات لتعزيز الفهم.',
? Colors.white ),
: Color(0xFF898C81), 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( SizedBox(height: 30),
'Roboto', Text(
'NotoKufi', context.translate(
), '2. Drilldown Navigation:', '2. التنقل التفصيلي'),
fontSize: 16, style: TextStyle(
color: isDarkTheme ? Colors.white : Color(0xFF414042), fontFamily: context.translate(
fontWeight: FontWeight.w600, 'Roboto',
), 'NotoKufi',
), ),
SizedBox(height: 8), fontSize: 16,
Padding( color: isDarkTheme ? Colors.white : Color(0xFF414042),
padding: const EdgeInsets.only(left: 7.0), fontWeight: FontWeight.w600,
child: Column( ),
children: [ ),
Row( SizedBox(height: 8),
crossAxisAlignment: CrossAxisAlignment.start, Padding(
children: [ padding: const EdgeInsets.only(left: 7.0),
Padding( child: Column(
padding: const EdgeInsets.only(top: 8.0), children: [
child: Icon( Row(
Icons.brightness_1, crossAxisAlignment: CrossAxisAlignment.start,
size: 5, children: [
color: isDarkTheme Padding(
? Colors.white padding: const EdgeInsets.only(top: 8.0),
: Color(0xFF414042), child: Icon(
), Icons.brightness_1,
), // Bullet point size: 5,
SizedBox(width: 8), // Space between bullet and text color: isDarkTheme
Expanded( ? Colors.white
child: Text( : Color(0xFF414042),
context.translate( ),
'Start with high-level categories and drill down to specific KPIs and metrics for deeper insights.', ), // Bullet point
'البدء بالفئات العامة والتنقل وصولًا إلى مؤشرات الأداء الرئيسية (KPIs) والمقاييس المحددة للحصول على رؤى أعمق.', SizedBox(width: 8), // Space between bullet and text
), Expanded(
textAlign: TextAlign.justify, // Align the text child: Text(
softWrap: true, context.translate(
style: TextStyle( 'Start with high-level categories and drill down to specific KPIs and metrics for deeper insights.',
color: isDarkTheme 'البدء بالفئات العامة والتنقل وصولًا إلى مؤشرات الأداء الرئيسية (KPIs) والمقاييس المحددة للحصول على رؤى أعمق.',
? Colors.white ),
: Color(0xFF898C81), 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( SizedBox(height: 30),
'Roboto', Text(
'NotoKufi', context.translate('3. Interactive Visualizations:',
), '3. التصورات التفاعلية:'),
fontSize: 16, style: TextStyle(
color: isDarkTheme ? Colors.white : Color(0xFF414042), fontFamily: context.translate(
fontWeight: FontWeight.w600, 'Roboto',
), 'NotoKufi',
), ),
SizedBox(height: 8), fontSize: 16,
Padding( color: isDarkTheme ? Colors.white : Color(0xFF414042),
padding: const EdgeInsets.only(left: 7.0), fontWeight: FontWeight.w600,
child: Column( ),
children: [ ),
Row( SizedBox(height: 8),
crossAxisAlignment: CrossAxisAlignment.start, Padding(
children: [ padding: const EdgeInsets.only(left: 7.0),
Padding( child: Column(
padding: const EdgeInsets.only(top: 8.0), children: [
child: Icon( Row(
Icons.brightness_1, crossAxisAlignment: CrossAxisAlignment.start,
size: 5, children: [
color: isDarkTheme Padding(
? Colors.white padding: const EdgeInsets.only(top: 8.0),
: Color(0xFF414042), child: Icon(
), Icons.brightness_1,
), // Bullet point size: 5,
SizedBox(width: 8), // Space between bullet and text color: isDarkTheme
Expanded( ? Colors.white
child: Text( : Color(0xFF414042),
context.translate( ),
'View trends and relationships with interactive graphs and charts, including bar graphs, line charts, and more.', ), // Bullet point
'عرض الاتجاهات والعلاقات باستخدام الرسوم البيانية التفاعلية مثل المخططات الشريطية، المخططات الخطية، وغيرها.', SizedBox(width: 8), // Space between bullet and text
), Expanded(
textAlign: TextAlign.justify, // Align the text child: Text(
softWrap: true, context.translate(
style: TextStyle( 'View trends and relationships with interactive graphs and charts, including bar graphs, line charts, and more.',
color: isDarkTheme 'عرض الاتجاهات والعلاقات باستخدام الرسوم البيانية التفاعلية مثل المخططات الشريطية، المخططات الخطية، وغيرها.',
? Colors.white ),
: Color(0xFF898C81), textAlign: TextAlign.justify, // Align the text
), softWrap: true,
), style: TextStyle(
), color: isDarkTheme
], ? Colors.white
), : Color(0xFF898C81),
], ),
), ),
), ),
SizedBox( ],
height: 20, ),
), ],
),
),
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/domain/use_cases/language.dart';
import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.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/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:uae_stat/presentation/components/indicators/locale_provider.dart';
class ChangeMyPassword extends ConsumerStatefulWidget { class ChangeMyPassword extends ConsumerStatefulWidget {
const ChangeMyPassword({super.key}); const ChangeMyPassword({super.key});
@ -150,7 +151,7 @@ class _ChangeMyPasswordState extends ConsumerState<ChangeMyPassword> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// 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( SizedBox(
height: 20, 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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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'; import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
class HowUseTheApp extends ConsumerStatefulWidget { class HowUseTheApp extends ConsumerStatefulWidget {
@ -152,7 +153,7 @@ class _HowUseTheAppState extends ConsumerState<HowUseTheApp> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500, // fontWeight: FontWeight.w500,
), ),
@ -182,191 +183,196 @@ class _HowUseTheAppState extends ConsumerState<HowUseTheApp> {
), ),
), ),
SizedBox( SizedBox(
width: MediaQuery.of(context).size.width, height:10,
height: MediaQuery.of(context).size.height * 0.36, // width: MediaQuery.of(context).size.width,
child: Image.asset( // height: MediaQuery.of(context).size.height * 0.36,
'assets/user_guide/howUse.png', // child: Image.asset(
fit: BoxFit.contain, // 'assets/user_guide/howUse.png',
), // fit: BoxFit.contain,
// ),
), ),
Text( Padding(
context.translate( padding: const EdgeInsets.all(30.0),
'1. Registration and Approval:', child: Column(
'1. التسجيل والموافقة:',
),
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, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Padding( Text(
padding: const EdgeInsets.only(top: 8.0), context.translate(
child: Icon( '1. Registration and Approval:',
Icons.brightness_1, '1. التسجيل والموافقة:',
size: 5,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
), ),
), // Bullet point style: TextStyle(
SizedBox(width: 8), // Space between bullet and text fontFamily: context.translate(
Expanded( 'Roboto',
child: Text( 'NotoKufi',
context.translate(
'Sign up for the app and wait for admin approval.',
'قم بالتسجيل في التطبيق وانتظر الموافقة من الإدارة.',
), ),
textAlign: TextAlign.justify, // Align the text fontSize: 16,
softWrap: true, color: isDarkTheme ? Colors.white : Color(0xFF414042),
style: TextStyle( fontWeight: FontWeight.w600,
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(
'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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class Purpose extends ConsumerStatefulWidget { class Purpose extends ConsumerStatefulWidget {
const Purpose({super.key}); const Purpose({super.key});
@ -152,7 +154,7 @@ class _PurposeState extends ConsumerState<Purpose> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500, // fontWeight: FontWeight.w500,
), ),
@ -181,128 +183,132 @@ class _PurposeState extends ConsumerState<Purpose> {
), ),
), ),
SizedBox( SizedBox(
width: MediaQuery.of(context).size.width, height: 10,
height: MediaQuery.of(context).size.height * 0.36, // width: MediaQuery.of(context).size.width,
child: Image.asset( // height: MediaQuery.of(context).size.height * 0.36,
'assets/user_guide/purpose.png', // child: Image.asset(
fit: BoxFit.contain, // 'assets/user_guide/purpose.png',
), // fit: BoxFit.contain,
// ),
), ),
SizedBox(height: 8), Padding(padding: const EdgeInsets.all(30.0),
Row( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Padding( Row(
padding: const EdgeInsets.only(top: 8.0), crossAxisAlignment: CrossAxisAlignment.start,
child: Icon( children: [
Icons.brightness_1, Padding(
size: 5, padding: const EdgeInsets.only(top: 8.0),
color: isDarkTheme ? Colors.white : Color(0xFF414042), child: Icon(
), Icons.brightness_1,
), // Bullet point size: 5,
SizedBox(width: 8), // Space between bullet and text color: isDarkTheme ? Colors.white : Color(0xFF414042),
Expanded(
child: RichText(
text: TextSpan(
text: context.translate(
'Provide ',
'توفير الإحصائيات الرسمية لدولة الإمارات بشكل سهل الوصول.',
), ),
style: TextStyle( ), // Bullet point
color: SizedBox(width: 8), // Space between bullet and text
isDarkTheme ? Colors.white : Color(0xFF898C81), Expanded(
fontSize: 16, child: RichText(
fontFamily: context.translate( text: TextSpan(
'Roboto', text: context.translate(
'NotoKufi', 'Provide ',
), 'توفير الإحصائيات الرسمية لدولة الإمارات بشكل سهل الوصول.',
), ),
children: <TextSpan>[
TextSpan(
text:
context.translate('official statistics ', ''),
style: TextStyle( style: TextStyle(
fontWeight: FontWeight.bold, color:
color: isDarkTheme isDarkTheme ? Colors.white : Color(0xFF898C81),
? Colors.white fontSize: 16,
: Color(0xFF414042),
fontFamily: context.translate( fontFamily: context.translate(
'Roboto', 'Roboto',
'NotoKufi', '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 Row(
? Colors.white crossAxisAlignment: CrossAxisAlignment.start,
: Color(0xFF898C81)), 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:
],
),
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:
isDarkTheme ? Colors.white : Color(0xFF898C81)), 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( Row(
color: 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)), 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/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart'; import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class StayUpdate extends ConsumerStatefulWidget { class StayUpdate extends ConsumerStatefulWidget {
const StayUpdate({super.key}); const StayUpdate({super.key});
@ -150,7 +151,7 @@ class _StayUpdateState extends ConsumerState<StayUpdate> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500, // fontWeight: FontWeight.w500,
), ),
@ -179,44 +180,45 @@ class _StayUpdateState extends ConsumerState<StayUpdate> {
), ),
), ),
SizedBox( SizedBox(
width: MediaQuery.of(context).size.width, height: 10,
height: MediaQuery.of(context).size.height * 0.36, // width: MediaQuery.of(context).size.width,
child: Image.asset( // height: MediaQuery.of(context).size.height * 0.36,
'assets/user_guide/stayUpdate.png', // child: Image.asset(
fit: BoxFit.contain, // '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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class WhoUseTheApp extends ConsumerStatefulWidget { class WhoUseTheApp extends ConsumerStatefulWidget {
const WhoUseTheApp({super.key}); const WhoUseTheApp({super.key});
@ -150,7 +152,7 @@ class _WhoUseTheAppState extends ConsumerState<WhoUseTheApp> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500, // fontWeight: FontWeight.w500,
), ),
@ -167,7 +169,7 @@ class _WhoUseTheAppState extends ConsumerState<WhoUseTheApp> {
alignment: Alignment.topLeft, alignment: Alignment.topLeft,
child: Text( child: Text(
context.translate( context.translate(
'Who can use the App?', 'من يمكنه استخدام التطبيق؟'), 'Who can use the App', 'من يمكنه استخدام التطبيق؟'),
style: TextStyle( style: TextStyle(
fontFamily: context.translate( fontFamily: context.translate(
'Roboto', 'Roboto',
@ -179,112 +181,118 @@ class _WhoUseTheAppState extends ConsumerState<WhoUseTheApp> {
), ),
), ),
), ),
SizedBox( SizedBox(height: 10),
width: MediaQuery.of(context).size.width, // SizedBox(
height: MediaQuery.of(context).size.height * 0.36, // width: MediaQuery.of(context).size.width,
child: Image.asset( // height: MediaQuery.of(context).size.height * 0.36,
'assets/user_guide/whoUse.png', // child: Image.asset(
fit: BoxFit.contain, // 'assets/user_guide/whoUse.png',
), // fit: BoxFit.contain,
), // ),
Text( // ),
context.translate( Padding(
'This app is intended for:', 'يستهدف هذا التطبيق:'), padding: const EdgeInsets.all(30.0),
style: TextStyle( child: Column(
fontFamily: context.translate(
'Roboto',
'NotoKufi',
),
fontSize: 16,
color: isDarkTheme ? Colors.white : Color(0xFF414042),
fontWeight: FontWeight.w600,
),
),
SizedBox(height: 8),
Row(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Padding( Text(
padding: const EdgeInsets.only(top: 8.0), context.translate(
child: Icon( 'This app is intended for:', 'يستهدف هذا التطبيق:'),
Icons.brightness_1, style: TextStyle(
size: 5, fontFamily: context.translate(
color: isDarkTheme ? Colors.white : Color(0xFF414042), 'Roboto',
), 'NotoKufi',
), // 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 fontSize: 16,
softWrap: true, color: isDarkTheme ? Colors.white : Color(0xFF414042),
style: TextStyle( fontWeight: FontWeight.w600,
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)),
), ),
), ),
], SizedBox(height: 8),
), Row(
Row( crossAxisAlignment: CrossAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start, children: [
children: [ Padding(
Padding( padding: const EdgeInsets.only(top: 8.0),
padding: const EdgeInsets.only(top: 8.0), child: Icon(
child: Icon( Icons.brightness_1,
Icons.brightness_1, size: 5,
size: 5, color: isDarkTheme ? Colors.white : Color(0xFF414042),
color: isDarkTheme ? Colors.white : Color(0xFF414042), ),
), ), // Bullet point
), // Bullet point SizedBox(width: 8), // Space between bullet and text
SizedBox(width: 8), // Space between bullet and text Expanded(
Expanded( child: Text(
child: Text( context.translate(
context.translate( 'Government officials requiring UAE statistics for decision-making.',
'Business professionals and researchers analyzing market trends.', 'المسؤولين الحكوميين الذين يحتاجون إلى إحصاءات دولة الإمارات العربية المتحدة لاتخاذ القرارات.',
'المتخصصين في مجال الأعمال والباحثين الذين يقومون بتحليل اتجاهات السوق.', ),
), textAlign: TextAlign.justify, // Align the text
textAlign: TextAlign.justify, // Align the text softWrap: true,
softWrap: true, style: TextStyle(
style: TextStyle( color:
color:
isDarkTheme ? Colors.white : Color(0xFF898C81)), 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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class aboutTheApp extends ConsumerStatefulWidget { class aboutTheApp extends ConsumerStatefulWidget {
const aboutTheApp({super.key}); const aboutTheApp({super.key});
@ -132,7 +135,7 @@ class _aboutTheAppState extends ConsumerState<aboutTheApp> {
'Roboto', 'Roboto',
'NotoKufi', 'NotoKufi',
), ),
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// 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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class FAQPage extends ConsumerStatefulWidget { class FAQPage extends ConsumerStatefulWidget {
const FAQPage({super.key}); const FAQPage({super.key});
@ -130,7 +133,7 @@ class _FAQPageState extends ConsumerState<FAQPage> {
'NotoKufi', 'NotoKufi',
), ),
fontSize: 22, fontSize: 22,
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black ,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// fontWeight: FontWeight.w500, // fontWeight: FontWeight.w500,
), ),
@ -932,7 +935,7 @@ class _QuestionAnswerCardState extends State<QuestionAnswerCard> {
trailing: Icon(isExpanded trailing: Icon(isExpanded
? Icons.keyboard_arrow_up ? Icons.keyboard_arrow_up
: Icons.keyboard_arrow_down), : Icons.keyboard_arrow_down),
iconColor: widget.isDarkTheme ? Colors.white : Color(0xFF414042), iconColor: widget.isDarkTheme ? Colors.white : Color(0xFF898C81),
onTap: () { onTap: () {
setState(() { setState(() {
isExpanded = !isExpanded; 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/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/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: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'; import 'package:uae_stat/infrastructure/services/img_asset_paths/banner_asset_path.dart';
class UsingFeatures extends ConsumerStatefulWidget { class UsingFeatures extends ConsumerStatefulWidget {
@ -135,7 +136,7 @@ class _UsingFeaturesState extends ConsumerState<UsingFeatures> {
'Roboto', 'Roboto',
'NotoKufi', 'NotoKufi',
), ),
color: Color(0xFF7DAFBC), color: isDarkTheme ? Colors.white : Colors.black,
fontWeight: FontWeight.w500, fontWeight: FontWeight.w500,
// 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/theme/theme_provider.dart';
import 'package:uae_stat/config/toggle_lang_service.dart'; import 'package:uae_stat/config/toggle_lang_service.dart';
import 'package:uae_stat/domain/use_cases/language.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/components/indicators/locale_provider.dart';
// import 'package:uae_stat/presentation/Screens/Bottom%20Navigation%20Pages/Country_Profile/country_profile.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/routes/drawer_routes/custom_drawer_routes.dart';
import 'package:iconify_design/iconify_design.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'; // import 'package:uae_stat/l10n/app_localizations.dart';
class Userguide extends ConsumerStatefulWidget { class Userguide extends ConsumerStatefulWidget {
@ -108,7 +109,12 @@ class _UserguideState extends ConsumerState<Userguide> {
bottomColor: isDarkTheme ? Color(0xFF111111) : Colors.white, bottomColor: isDarkTheme ? Color(0xFF111111) : Colors.white,
dividerColor: isDarkTheme ? Color(0xFF111111) : Colors.grey[300], dividerColor: isDarkTheme ? Color(0xFF111111) : Colors.grey[300],
appbarColor: isDarkTheme ? Color(0xFF111111) : Colors.white, 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( body: Container(
color: isDarkTheme ? Color(0xFF111111) : Colors.white, color: isDarkTheme ? Color(0xFF111111) : Colors.white,
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 20), padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 20),
@ -175,7 +181,8 @@ class _HoverContainerState extends ConsumerState<HoverContainer> {
width: screenWidth * 0.30, width: screenWidth * 0.30,
margin: EdgeInsets.all(1), margin: EdgeInsets.all(1),
decoration: BoxDecoration( decoration: BoxDecoration(
color: isDarkTheme ? Color(0xFF111111) : Colors.white, color: isDarkTheme ? Color(0xFF111111) : Colors.white,
borderRadius: BorderRadius.circular(10), borderRadius: BorderRadius.circular(10),
boxShadow: isHovered 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, alignment: Alignment.center,
// duration: Duration(milliseconds: 200), // duration: Duration(milliseconds: 200),
@ -200,7 +208,8 @@ class _HoverContainerState extends ConsumerState<HoverContainer> {
children: [ children: [
IconifyIcon( IconifyIcon(
icon: widget.iconName, icon: widget.iconName,
color: Color(0xFF7DAFBC), // color: Color(0xFF7DAFBC),
color: Color(0xFFB68A34),
size: containerHeight * 0.45, size: containerHeight * 0.45,
), ),
// buildDynamicWidget(data['icon'], Color(0xFF7DAFBC)), // buildDynamicWidget(data['icon'], Color(0xFF7DAFBC)),
@ -213,9 +222,9 @@ class _HoverContainerState extends ConsumerState<HoverContainer> {
padding: EdgeInsets.symmetric(horizontal: 4, vertical: 4), padding: EdgeInsets.symmetric(horizontal: 4, vertical: 4),
margin: EdgeInsets.only(bottom: 3), margin: EdgeInsets.only(bottom: 3),
decoration: BoxDecoration( decoration: BoxDecoration(
color: Color(0xFF7DAFBC), color: Color(0xFFB68A34),
borderRadius: BorderRadius.circular(5), borderRadius: BorderRadius.circular(5),
border: Border.all(color: Color(0xFF7DAFBC))), border: Border.all(color: Color(0xFFB68A34))),
child: Text( child: Text(
widget.title, widget.title,
style: TextStyle( 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:package_info_plus/package_info_plus.dart';
import 'package:pocketbase/pocketbase.dart'; import 'package:pocketbase/pocketbase.dart';
import 'package:shared_preferences/shared_preferences.dart'; import 'package:shared_preferences/shared_preferences.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:tutorial_coach_mark/tutorial_coach_mark.dart'; import 'package:tutorial_coach_mark/tutorial_coach_mark.dart';
import 'package:uae_stat/config/injector.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/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/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/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/indicators/locale_provider.dart';
import 'package:uae_stat/presentation/components/my_toggle.dart'; import 'package:uae_stat/presentation/components/my_toggle.dart';
@ -245,7 +247,8 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
child: IconButton( child: IconButton(
icon: const Icon( icon: const Icon(
Icons.arrow_back, Icons.arrow_back,
color: Colors.white, // color: Colors.white,
color: Colors.grey,
), ),
onPressed: () { onPressed: () {
if (locale.languageCode == 'ar') { if (locale.languageCode == 'ar') {
@ -403,7 +406,8 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
child: IconButton( child: IconButton(
icon: const Icon( icon: const Icon(
Icons.arrow_back, Icons.arrow_back,
color: Colors.white, // color: Colors.white,
color: Colors.grey,
), ),
onPressed: () { onPressed: () {
locale.languageCode == 'ar' locale.languageCode == 'ar'
@ -569,7 +573,8 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
locale.languageCode == 'ar' locale.languageCode == 'ar'
? Icons.arrow_forward ? Icons.arrow_forward
: Icons.arrow_back, : Icons.arrow_back,
color: Colors.white, // color: Colors.white,
color: Colors.grey,
), ),
onPressed: () { onPressed: () {
tutorialCoachMark.previous(); tutorialCoachMark.previous();
@ -983,7 +988,7 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
scrolledUnderElevation: 0, scrolledUnderElevation: 0,
titleSpacing: 0, titleSpacing: 0,
flexibleSpace: Container( flexibleSpace: Container(
decoration: BoxDecoration( decoration: BoxDecoration(
color: isDarkTheme ? Color(0xFF000000) : Color(0xFFFFFFFF), color: isDarkTheme ? Color(0xFF000000) : Color(0xFFFFFFFF),
), ),
), ),
@ -1056,14 +1061,14 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
padding: EdgeInsets.zero, padding: EdgeInsets.zero,
constraints: BoxConstraints(), constraints: BoxConstraints(),
// color: widget.colorChange ? Colors.white : Colors.black, // color: widget.colorChange ? Colors.white : Colors.black,
color: isDarkTheme // color: isDarkTheme
? widget.colorChange // ? widget.colorChange
? Colors.black // ? Colors.black
: Colors.white // : Colors.white
: widget.colorChange // : widget.colorChange
? Colors.white // ? Colors.white
: Colors.black, // : Colors.black,
color: Colors.grey,
icon: const Icon(Icons.arrow_back_ios_new, size: 24), icon: const Icon(Icons.arrow_back_ios_new, size: 24),
onPressed: () { onPressed: () {
if (widget.navBackArrow is Text && if (widget.navBackArrow is Text &&
@ -1418,7 +1423,6 @@ class _BaseScaffoldState extends ConsumerState<BaseScaffold> {
), ),
onTap: () => context.go('/register'), onTap: () => context.go('/register'),
), ),
], ],
), ),
), ),

View File

@ -433,6 +433,14 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.1.1" 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: equatable:
dependency: transitive dependency: transitive
description: description:
@ -1156,6 +1164,14 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.9.1" 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: path_parsing:
dependency: transitive dependency: transitive
description: description:

View File

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