CountryProfile Detailed page and popup Arabic
This commit is contained in:
parent
9d37fa04d3
commit
7f805f0a72
@ -2,27 +2,27 @@ C/C++ Structured Logo
|
|||||||
m
|
m
|
||||||
kC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\additional_project_files.txtC
|
kC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\additional_project_files.txtC
|
||||||
A
|
A
|
||||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint <EFBFBD>Åݰú2 äýŸÞø2l
|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint Ì¢é…û2 äýŸÞø2l
|
||||||
j
|
j
|
||||||
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\android_gradle_build.json <EFBFBD>Åݰú2É ŠþŸÞø2q
|
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\android_gradle_build.json Í¢é…û2É ŠþŸÞø2q
|
||||||
o
|
o
|
||||||
mC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\android_gradle_build_mini.json <EFBFBD>Åݰú2œ ·þŸÞø2^
|
mC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\android_gradle_build_mini.json Í¢é…û2œ ·þŸÞø2^
|
||||||
\
|
\
|
||||||
ZC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\build.ninja <EFBFBD>Åݰú2›Ü çúŸÞø2b
|
ZC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\build.ninja Í¢é…û2›Ü çúŸÞø2b
|
||||||
`
|
`
|
||||||
^C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\build.ninja.txt <EFBFBD>Åݰú2g
|
^C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\build.ninja.txt ꢎɞ2g
|
||||||
e
|
e
|
||||||
cC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\build_file_index.txt <EFBFBD>Åݰú2
K ÜþŸÞø2h
|
cC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\build_file_index.txt ꢎɞ2
K ÜþŸÞø2h
|
||||||
f
|
f
|
||||||
dC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\compile_commands.json <EFBFBD>Åݰú2l
|
dC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\compile_commands.json ꢎɞ2l
|
||||||
j
|
j
|
||||||
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\compile_commands.json.bin <EFBFBD>Åݰú2 r
|
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\compile_commands.json.bin ꢎɞ2 r
|
||||||
p
|
p
|
||||||
nC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\metadata_generation_command.txt <EFBFBD>Åݰú2
|
nC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\metadata_generation_command.txt ꢎɞ2
|
||||||
à ÔþŸÞø2e
|
à ÔþŸÞø2e
|
||||||
c
|
c
|
||||||
aC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\prefab_config.json <EFBFBD>Åݰú2
( ÙþŸÞø2j
|
aC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\prefab_config.json ꢎɞ2
( ÙþŸÞø2j
|
||||||
h
|
h
|
||||||
fC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\symbol_folder_index.txt <EFBFBD>Åݰú2
] ÙþŸÞø2O
|
fC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\arm64-v8a\symbol_folder_index.txt ꢎɞ2
] ÙþŸÞø2O
|
||||||
M
|
M
|
||||||
KC:\src\flutter\packages\flutter_tools\gradle\src\main\groovy\CMakeLists.txt <EFBFBD>Åݰú2
§ œ¬ùšõ2
|
KC:\src\flutter\packages\flutter_tools\gradle\src\main\groovy\CMakeLists.txt ꢎɞ2
§ œ¬ùšõ2
|
||||||
@ -2,27 +2,27 @@ C/C++ Structured Logq
|
|||||||
o
|
o
|
||||||
mC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\additional_project_files.txtC
|
mC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\additional_project_files.txtC
|
||||||
A
|
A
|
||||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ˜ÆÝ°ú2 åÇ Þø2n
|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint <EFBFBD>£é…û2 åÇ Þø2n
|
||||||
l
|
l
|
||||||
jC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\android_gradle_build.json ˜ÆÝ°ú2Í ïÇ Þø2s
|
jC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\android_gradle_build.json <EFBFBD>£é…û2Í ïÇ Þø2s
|
||||||
q
|
q
|
||||||
oC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\android_gradle_build_mini.json ˜ÆÝ°ú2 óÇ Þø2`
|
oC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\android_gradle_build_mini.json <EFBFBD>£é…û2 óÇ Þø2`
|
||||||
^
|
^
|
||||||
\C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\build.ninja ™ÆÝ°ú2¥Ü ÃÅ Þø2d
|
\C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\build.ninja <EFBFBD>£é…û2¥Ü ÃÅ Þø2d
|
||||||
b
|
b
|
||||||
`C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\build.ninja.txt ™ÆÝ°ú2i
|
`C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\build.ninja.txt <EFBFBD>£é…û2i
|
||||||
g
|
g
|
||||||
eC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\build_file_index.txt ™ÆÝ°ú2
K ýÇ Þø2j
|
eC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\build_file_index.txt <EFBFBD>£é…û2
K ýÇ Þø2j
|
||||||
h
|
h
|
||||||
fC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\compile_commands.json ™ÆÝ°ú2n
|
fC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\compile_commands.json <EFBFBD>£é…û2n
|
||||||
l
|
l
|
||||||
jC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\compile_commands.json.bin ™ÆÝ°ú2 t
|
jC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\compile_commands.json.bin <EFBFBD>£é…û2 t
|
||||||
r
|
r
|
||||||
pC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\metadata_generation_command.txt ™ÆÝ°ú2
|
pC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\metadata_generation_command.txt <EFBFBD>£é…û2
|
||||||
ê øÇ Þø2g
|
ê øÇ Þø2g
|
||||||
e
|
e
|
||||||
cC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\prefab_config.json ™ÆÝ°ú2
( ùÇ Þø2l
|
cC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\prefab_config.json <EFBFBD>£é…û2
( ùÇ Þø2l
|
||||||
j
|
j
|
||||||
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\symbol_folder_index.txt ™ÆÝ°ú2
_ ùÇ Þø2O
|
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\armeabi-v7a\symbol_folder_index.txt <EFBFBD>£é…û2
_ ùÇ Þø2O
|
||||||
M
|
M
|
||||||
KC:\src\flutter\packages\flutter_tools\gradle\src\main\groovy\CMakeLists.txt ™ÆÝ°ú2
§ œ¬ùšõ2
|
KC:\src\flutter\packages\flutter_tools\gradle\src\main\groovy\CMakeLists.txt <EFBFBD>£é…û2
§ œ¬ùšõ2
|
||||||
@ -2,27 +2,27 @@ C/C++ Structured Logi
|
|||||||
g
|
g
|
||||||
eC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\additional_project_files.txtC
|
eC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\additional_project_files.txtC
|
||||||
A
|
A
|
||||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ÍÆÝ°ú2 ÿò Þø2f
|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint <EFBFBD>¤é…û2 ÿò Þø2f
|
||||||
d
|
d
|
||||||
bC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\android_gradle_build.json ÍÆÝ°ú2½ ¤ó Þø2k
|
bC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\android_gradle_build.json <EFBFBD>¤é…û2½ ¤ó Þø2k
|
||||||
i
|
i
|
||||||
gC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\android_gradle_build_mini.json ÍÆÝ°ú2<18> °ó Þø2X
|
gC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\android_gradle_build_mini.json <EFBFBD>¤é…û2<18> °ó Þø2X
|
||||||
V
|
V
|
||||||
TC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\build.ninja ÍÆÝ°ú2ýÛ ³ï Þø2\
|
TC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\build.ninja <EFBFBD>¤é…û2ýÛ ³ï Þø2\
|
||||||
Z
|
Z
|
||||||
XC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\build.ninja.txt ÍÆÝ°ú2a
|
XC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\build.ninja.txt <EFBFBD>¤é…û2a
|
||||||
_
|
_
|
||||||
]C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\build_file_index.txt ÍÆÝ°ú2
K Âó Þø2b
|
]C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\build_file_index.txt <EFBFBD>¤é…û2
K Âó Þø2b
|
||||||
`
|
`
|
||||||
^C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\compile_commands.json ÍÆÝ°ú2f
|
^C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\compile_commands.json <EFBFBD>¤é…û2f
|
||||||
d
|
d
|
||||||
bC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\compile_commands.json.bin ÍÆÝ°ú2 l
|
bC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\compile_commands.json.bin <EFBFBD>¤é…û2 l
|
||||||
j
|
j
|
||||||
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\metadata_generation_command.txt ÍÆÝ°ú2
|
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\metadata_generation_command.txt <EFBFBD>¤é…û2
|
||||||
 ´ó Þø2_
|
 ´ó Þø2_
|
||||||
]
|
]
|
||||||
[C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\prefab_config.json ÍÆÝ°ú2
( ´ó Þø2d
|
[C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\prefab_config.json <EFBFBD>¤é…û2
( ´ó Þø2d
|
||||||
b
|
b
|
||||||
`C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\symbol_folder_index.txt ÍÆÝ°ú2
W ¹ó Þø2O
|
`C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86\symbol_folder_index.txt <EFBFBD>¤é…û2
W ¹ó Þø2O
|
||||||
M
|
M
|
||||||
KC:\src\flutter\packages\flutter_tools\gradle\src\main\groovy\CMakeLists.txt ÍÆÝ°ú2
§ œ¬ùšõ2
|
KC:\src\flutter\packages\flutter_tools\gradle\src\main\groovy\CMakeLists.txt <EFBFBD>¤é…û2
§ œ¬ùšõ2
|
||||||
@ -2,27 +2,27 @@ C/C++ Structured Logl
|
|||||||
j
|
j
|
||||||
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\additional_project_files.txtC
|
hC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\additional_project_files.txtC
|
||||||
A
|
A
|
||||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ïÆÝ°ú2 ù”¡Þø2i
|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ¿¤é…û2 ù”¡Þø2i
|
||||||
g
|
g
|
||||||
eC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\android_gradle_build.json ðÆÝ°ú2à ‚•¡Þø2n
|
eC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\android_gradle_build.json ¿¤é…û2à ‚•¡Þø2n
|
||||||
l
|
l
|
||||||
jC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\android_gradle_build_mini.json ðÆÝ°ú2– †•¡Þø2[
|
jC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\android_gradle_build_mini.json ¿¤é…û2– †•¡Þø2[
|
||||||
Y
|
Y
|
||||||
WC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\build.ninja ðÆÝ°ú2ŒÜ þ’¡Þø2_
|
WC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\build.ninja ¿¤é…û2ŒÜ þ’¡Þø2_
|
||||||
]
|
]
|
||||||
[C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\build.ninja.txt ðÆÝ°ú2d
|
[C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\build.ninja.txt ¿¤é…û2d
|
||||||
b
|
b
|
||||||
`C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\build_file_index.txt ðÆÝ°ú2
K <20>•¡Þø2e
|
`C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\build_file_index.txt ¿¤é…û2
K <20>•¡Þø2e
|
||||||
c
|
c
|
||||||
aC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\compile_commands.json ðÆÝ°ú2i
|
aC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\compile_commands.json ¿¤é…û2i
|
||||||
g
|
g
|
||||||
eC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\compile_commands.json.bin ðÆÝ°ú2 o
|
eC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\compile_commands.json.bin À¤é…û2 o
|
||||||
m
|
m
|
||||||
kC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\metadata_generation_command.txt ðÆÝ°ú2
|
kC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\metadata_generation_command.txt À¤é…û2
|
||||||
Ñ ‰•¡Þø2b
|
Ñ ‰•¡Þø2b
|
||||||
`
|
`
|
||||||
^C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\prefab_config.json ðÆÝ°ú2
( ‹•¡Þø2g
|
^C:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\prefab_config.json À¤é…û2
( ‹•¡Þø2g
|
||||||
e
|
e
|
||||||
cC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\symbol_folder_index.txt ðÆÝ°ú2
Z Œ•¡Þø2O
|
cC:\Flutter Applications\Git_New\FCSC\android\app\.cxx\Debug\29y7472m\x86_64\symbol_folder_index.txt À¤é…û2
Z Œ•¡Þø2O
|
||||||
M
|
M
|
||||||
KC:\src\flutter\packages\flutter_tools\gradle\src\main\groovy\CMakeLists.txt ðÆÝ°ú2
§ œ¬ùšõ2
|
KC:\src\flutter\packages\flutter_tools\gradle\src\main\groovy\CMakeLists.txt À¤é…û2
§ œ¬ùšõ2
|
||||||
BIN
assets/country-profile/president.png
Normal file
BIN
assets/country-profile/president.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 370 KiB |
BIN
assets/country-profile/vicePresident.png
Normal file
BIN
assets/country-profile/vicePresident.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 256 KiB |
@ -1,8 +1,10 @@
|
|||||||
import 'dart:ui';
|
import 'dart:ui';
|
||||||
|
import 'package:external_repos/external_repos.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:dotted_border/dotted_border.dart';
|
import 'package:dotted_border/dotted_border.dart';
|
||||||
import 'package:uae_stat/infrastructure/services/img_asset_paths/icons/popup_asset_path.dart';
|
import 'package:uae_stat/infrastructure/services/img_asset_paths/icons/popup_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';
|
||||||
|
import 'package:uae_stat/domain/use_cases/language.dart';
|
||||||
|
|
||||||
class DetailedCountryProfilePage extends StatelessWidget {
|
class DetailedCountryProfilePage extends StatelessWidget {
|
||||||
final String countryName;
|
final String countryName;
|
||||||
@ -17,134 +19,157 @@ class DetailedCountryProfilePage extends StatelessWidget {
|
|||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
double width = MediaQuery.of(context).size.width;
|
double width = MediaQuery.of(context).size.width;
|
||||||
|
final country = ISOCountry.fromAlpha2(flag);
|
||||||
return BaseScaffold(
|
return Theme(
|
||||||
title: const Text('Country Profile'),
|
data: ThemeData(
|
||||||
showBackButton: true,
|
fontFamily: context.translate(
|
||||||
body: Padding(
|
'Roboto',
|
||||||
padding: const EdgeInsets.all(16.0),
|
'NotoKufi',
|
||||||
child: Column(
|
),
|
||||||
children: [
|
),
|
||||||
// Country name and flag (Header Section)
|
child: BaseScaffold(
|
||||||
Center(
|
title: const Text('Country Profile'),
|
||||||
child: Column(
|
showBackButton: true,
|
||||||
children: [
|
body: Padding(
|
||||||
Text(
|
padding: const EdgeInsets.all(16.0),
|
||||||
flag,
|
child: Column(
|
||||||
style: const TextStyle(fontSize: 48),
|
children: [
|
||||||
),
|
// Country name and flag (Header Section)
|
||||||
const SizedBox(height: 8),
|
Center(
|
||||||
Text(
|
child: Column(
|
||||||
countryName.toUpperCase(),
|
children: [
|
||||||
style: const TextStyle(
|
Container(
|
||||||
fontSize: 22,
|
padding: EdgeInsets.zero, // optional inner spacing
|
||||||
fontWeight: FontWeight.bold,
|
decoration: BoxDecoration(
|
||||||
|
shape: BoxShape.circle,
|
||||||
|
border: Border.all(color: Colors.white, width: 3),
|
||||||
|
boxShadow: [
|
||||||
|
BoxShadow(
|
||||||
|
color: Colors.black.withValues(alpha:0.3),
|
||||||
|
spreadRadius: 2,
|
||||||
|
blurRadius: 6,
|
||||||
|
offset: Offset(0, 4),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
child: CircleAvatar(
|
||||||
|
radius: 20,
|
||||||
|
backgroundImage: AssetImage(country.flagImgPath),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
const SizedBox(height: 8),
|
||||||
],
|
Text(
|
||||||
|
countryName.toUpperCase(),
|
||||||
|
style: const TextStyle(
|
||||||
|
fontSize: 22,
|
||||||
|
fontWeight: FontWeight.bold,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
const SizedBox(height: 16),
|
||||||
const SizedBox(height: 16),
|
|
||||||
|
|
||||||
// Government Officials (Grid Section)
|
// Government Officials (Grid Section)
|
||||||
SizedBox(
|
SizedBox(
|
||||||
height: 220, // Fixed height for the GridView to control its size
|
height: 220, // Fixed height for the GridView to control its size
|
||||||
child: GridView.count(
|
child: GridView.count(
|
||||||
crossAxisCount: 2,
|
crossAxisCount: 2,
|
||||||
shrinkWrap: true,
|
shrinkWrap: true,
|
||||||
physics: const NeverScrollableScrollPhysics(),
|
physics: const NeverScrollableScrollPhysics(),
|
||||||
mainAxisSpacing: 12,
|
mainAxisSpacing: 10,
|
||||||
crossAxisSpacing: 12,
|
crossAxisSpacing: 4,
|
||||||
childAspectRatio: 2.0,
|
childAspectRatio: 2.0,
|
||||||
children: const [
|
children: [
|
||||||
_LeaderCard(
|
_LeaderCard(
|
||||||
imagePath: 'assets/country-profile/alberto.png',
|
imagePath: 'assets/country-profile/president.png',
|
||||||
name: 'Alberto Fernández',
|
name: context.translate('Alberto Fernández','ألبرتو فرناندس'),
|
||||||
position: 'President',
|
position: context.translate('President','الرئيس'),
|
||||||
),
|
),
|
||||||
_LeaderCard(
|
_LeaderCard(
|
||||||
imagePath: 'assets/country-profile/alberto.png',
|
imagePath: 'assets/country-profile/president.png',
|
||||||
name: 'Cristina Fernández de Kirchner',
|
name: context.translate('Cristina Fernández de Kirchner','كريستينا فرنانديز دي كيرشنر'),
|
||||||
position: 'Vice-President',
|
position: context.translate('Vice-President','رئيس الجمهورية'),
|
||||||
),
|
),
|
||||||
_LeaderCard(
|
_LeaderCard(
|
||||||
imagePath: 'assets/country-profile/alberto.png',
|
imagePath: 'assets/country-profile/vicePresident.png',
|
||||||
name: 'Agustin Rossi',
|
name: context.translate('Agustin Rossi','أغوستين روسي'),
|
||||||
position: 'Chief of the Cabinet of Ministers',
|
position: context.translate('Chief of the Cabinet of Ministers','رئيس مجلس الوزراء'),
|
||||||
),
|
),
|
||||||
_LeaderCard(
|
_LeaderCard(
|
||||||
imagePath: 'assets/country-profile/alberto.png',
|
imagePath: 'assets/country-profile/vicePresident.png',
|
||||||
name: 'Cecilia Moreau',
|
name: context.translate('Cecilia Moreau','سيسيليا موريو'),
|
||||||
position: 'President of Chamber of Deputies',
|
position: context.translate('President of Chamber of Deputies','رئيس غرفة النواب'),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
const SizedBox(height: 12), // Further reduced spacing
|
||||||
const SizedBox(height: 12), // Further reduced spacing
|
|
||||||
|
|
||||||
// Category Buttons (Button Section)
|
// Category Buttons (Button Section)
|
||||||
Flexible(
|
Flexible(
|
||||||
fit: FlexFit.loose, // Allow the section to take only the space it needs
|
fit: FlexFit.loose, // Allow the section to take only the space it needs
|
||||||
child: Column(
|
child: Column(
|
||||||
crossAxisAlignment: CrossAxisAlignment.stretch,
|
crossAxisAlignment: CrossAxisAlignment.stretch,
|
||||||
children: [
|
children: [
|
||||||
Row(
|
Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
||||||
children: [
|
children: [
|
||||||
Expanded(
|
Expanded(
|
||||||
child: _CategoryButton(
|
child: _CategoryButton(
|
||||||
title: 'Demography',
|
title: context.translate('Demography','التركيبة السكانية'),
|
||||||
overlayColor: const Color(0xE6AA947F),
|
overlayColor: const Color(0xE6AA947F),
|
||||||
backgroundImagePath: 'assets/country-profile/CategoryFile/Demo.png',
|
backgroundImagePath: 'assets/country-profile/CategoryFile/Demo.png',
|
||||||
onTap: () => showCategoryPopup(context, 'Demography'),
|
onTap: () => showCategoryPopup(context, 'Demography'),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
const SizedBox(width: 12),
|
||||||
const SizedBox(width: 12),
|
Expanded(
|
||||||
Expanded(
|
child: _CategoryButton(
|
||||||
child: _CategoryButton(
|
title: context.translate('GDP','الناتج المحلي الإجمالي'),
|
||||||
title: 'GDP',
|
overlayColor: const Color(0xFFAEC6CF),
|
||||||
overlayColor: const Color(0xFFAEC6CF),
|
backgroundImagePath: 'assets/country-profile/CategoryFile/GDP.png',
|
||||||
backgroundImagePath: 'assets/country-profile/CategoryFile/GDP.png',
|
onTap: () => showCategoryPopup(context, 'GDP'),
|
||||||
onTap: () => showCategoryPopup(context, 'GDP'),
|
),
|
||||||
),
|
),
|
||||||
),
|
],
|
||||||
],
|
),
|
||||||
),
|
const SizedBox(height: 12),
|
||||||
const SizedBox(height: 12),
|
Row(
|
||||||
Row(
|
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
children: [
|
||||||
children: [
|
Expanded(
|
||||||
Expanded(
|
child: _CategoryButton(
|
||||||
child: _CategoryButton(
|
title: context.translate('FDI','الاستثمار الأجنبي المباشر'),
|
||||||
title: 'FDI',
|
overlayColor: const Color(0xD8C39898),
|
||||||
overlayColor: const Color(0xD8C39898),
|
backgroundImagePath: 'assets/country-profile/CategoryFile/FDI.png',
|
||||||
backgroundImagePath: 'assets/country-profile/CategoryFile/FDI.png',
|
onTap: () => showCategoryPopup(context, 'FDI'),
|
||||||
onTap: () => showCategoryPopup(context, 'FDI'),
|
),
|
||||||
),
|
),
|
||||||
),
|
const SizedBox(width: 12),
|
||||||
const SizedBox(width: 12),
|
Expanded(
|
||||||
Expanded(
|
child: _CategoryButton(
|
||||||
child: _CategoryButton(
|
title: context.translate('Trade','التجارة'),
|
||||||
title: 'Trade',
|
overlayColor: const Color(0xD8B0C5A4),
|
||||||
overlayColor: const Color(0xD8B0C5A4),
|
backgroundImagePath: 'assets/country-profile/CategoryFile/Trade.png',
|
||||||
backgroundImagePath: 'assets/country-profile/CategoryFile/Trade.png',
|
onTap: () => showCategoryPopup(context, 'Trade'),
|
||||||
onTap: () => showCategoryPopup(context, 'Trade'),
|
),
|
||||||
),
|
),
|
||||||
),
|
],
|
||||||
],
|
),
|
||||||
),
|
const SizedBox(height: 12),
|
||||||
const SizedBox(height: 12),
|
// Full-width button
|
||||||
// Full-width button
|
_CategoryButton(
|
||||||
_CategoryButton(
|
title: context.translate('Bilateral Trade','التجارة الثنائية'),
|
||||||
title: 'Bilateral Trade',
|
overlayColor: const Color(0xB29CAFAB),
|
||||||
overlayColor: const Color(0xB29CAFAB),
|
backgroundImagePath: 'assets/country-profile/CategoryFile/BilateralTrade.png',
|
||||||
backgroundImagePath: 'assets/country-profile/CategoryFile/BilateralTrade.png',
|
onTap: () => showCategoryPopup(context, 'Bilateral Trade'),
|
||||||
onTap: () => showCategoryPopup(context, 'Bilateral Trade'),
|
),
|
||||||
),
|
],
|
||||||
],
|
),
|
||||||
),
|
),
|
||||||
),
|
],
|
||||||
],
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
@ -308,12 +333,14 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
children: [
|
children: [
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
_DemographyItem(
|
_DemographyItem(
|
||||||
|
context:context,
|
||||||
icon: PopupAssetPath.capital,
|
icon: PopupAssetPath.capital,
|
||||||
title: 'Capital City',
|
title: context.translate('Capital City','العاصمة'),
|
||||||
value: 'Buenos Aires',
|
value: context.translate('Buenos Aires','بوينس آيرس'),
|
||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_DemographyItem(
|
_DemographyItem(
|
||||||
|
context:context,
|
||||||
icon: PopupAssetPath.area,
|
icon: PopupAssetPath.area,
|
||||||
title: 'Surface Area',
|
title: 'Surface Area',
|
||||||
value: '2,780,400 sq. km',
|
value: '2,780,400 sq. km',
|
||||||
@ -321,30 +348,30 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
lineBorder,
|
lineBorder,
|
||||||
_DemographyStatItem(
|
_DemographyStatItem(
|
||||||
icon: PopupAssetPath.population,
|
icon: PopupAssetPath.population,
|
||||||
title: '2021 Population',
|
title: context.translate('2021 Population','السكان 2021'),
|
||||||
value: '45.81 M',
|
value: '45.81 M',
|
||||||
suffix: '32',
|
suffix: '32',
|
||||||
arrow:Icons.arrow_upward,
|
arrow:Icons.arrow_upward,
|
||||||
suffixText: 'Rank',
|
suffixText: context.translate('Rank','رتبة'),
|
||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_DemographyStatItem(
|
_DemographyStatItem(
|
||||||
icon: PopupAssetPath.male,
|
icon: PopupAssetPath.male,
|
||||||
title: '2021 Male Population',
|
title: context.translate('2021 Male Population','السكان الذكور 2021 '),
|
||||||
value: '22.35 M',
|
value: '22.35 M',
|
||||||
suffix: '0.98%',
|
suffix: '0.98%',
|
||||||
arrow:Icons.arrow_upward,
|
arrow:Icons.arrow_upward,
|
||||||
suffixText: 'Growth Rate',
|
suffixText: context.translate('Growth Rate','معدل النمو'),
|
||||||
valueColor: Color(0xFF00205B),
|
valueColor: Color(0xFF00205B),
|
||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_DemographyStatItem(
|
_DemographyStatItem(
|
||||||
icon:PopupAssetPath.female,
|
icon:PopupAssetPath.female,
|
||||||
title: '2021 Female Population',
|
title: context.translate('2021 Female Population','السكان الإناث 2021'),
|
||||||
value: '23.46 M',
|
value: '23.46 M',
|
||||||
suffix: '0.93%',
|
suffix: '0.93%',
|
||||||
arrow:Icons.arrow_upward,
|
arrow:Icons.arrow_upward,
|
||||||
suffixText: 'Growth Rate',
|
suffixText: context.translate('Growth Rate','معدل النمو'),
|
||||||
valueColor: Color(0xFF751398),
|
valueColor: Color(0xFF751398),
|
||||||
),
|
),
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
@ -357,8 +384,9 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
children: [
|
children: [
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
_GDPMetricItem(
|
_GDPMetricItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.nominal,
|
icon: PopupAssetPath.nominal,
|
||||||
title: '2021 Nominal GDP (AED)',
|
title: context.translate('2021 Nominal GDP (AED)','2021 الناتج المحلي الإجمالي الاسمي (درهم)'),
|
||||||
value: '1.8 T',
|
value: '1.8 T',
|
||||||
rank: '26',
|
rank: '26',
|
||||||
rankDirection: Icons.arrow_downward,
|
rankDirection: Icons.arrow_downward,
|
||||||
@ -366,8 +394,9 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_GDPMetricItem(
|
_GDPMetricItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.real,
|
icon: PopupAssetPath.real,
|
||||||
title: '2021 Real GDP (AED)',
|
title: context.translate('2021 Real GDP (AED)','2021 الناتج المحلي الإجمالي الحقيقي (درهم)'),
|
||||||
value: '2.08 T',
|
value: '2.08 T',
|
||||||
rank: '22',
|
rank: '22',
|
||||||
rankDirection: Icons.arrow_downward,
|
rankDirection: Icons.arrow_downward,
|
||||||
@ -375,8 +404,9 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_GDPMetricItem(
|
_GDPMetricItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.perCapita,
|
icon: PopupAssetPath.perCapita,
|
||||||
title: '2021 GDP Per Capita (AED)',
|
title: context.translate('2021 GDP Per Capita (AED)','الناتج المحلي الإجمالي الحقيقي'),
|
||||||
value: '39.38 K',
|
value: '39.38 K',
|
||||||
rank: '64',
|
rank: '64',
|
||||||
rankDirection: Icons.arrow_downward,
|
rankDirection: Icons.arrow_downward,
|
||||||
@ -386,13 +416,13 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
const SizedBox(height: 8),
|
const SizedBox(height: 8),
|
||||||
Image.asset(PopupAssetPath.IncomeLevel,width: 40,height: 40,),
|
Image.asset(PopupAssetPath.IncomeLevel,width: 40,height: 40,),
|
||||||
const SizedBox(height: 4),
|
const SizedBox(height: 4),
|
||||||
const Text(
|
Text(
|
||||||
'Income Level',
|
context.translate('Income Level','مستوى الدخل'),
|
||||||
style: TextStyle(color: Color(0xFF666666),fontSize: 16),
|
style: TextStyle(color: Color(0xFF666666),fontSize: 16),
|
||||||
),
|
),
|
||||||
const SizedBox(height: 4),
|
const SizedBox(height: 4),
|
||||||
const Text(
|
Text(
|
||||||
'Upper Middle Income',
|
context.translate('Upper Middle Income','الدخل المتوسط الأعلى'),
|
||||||
style: TextStyle(fontWeight: FontWeight.bold, fontSize: 28),
|
style: TextStyle(fontWeight: FontWeight.bold, fontSize: 28),
|
||||||
),
|
),
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
@ -405,24 +435,27 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
children: [
|
children: [
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
_FDIItem(
|
_FDIItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.outflows,
|
icon: PopupAssetPath.outflows,
|
||||||
title: '2020 FDI Outflows (AED)',
|
title: context.translate('2020 FDI Outflows (AED)','2020 تدفقات الاستثمار الأجنبي المباشر الخارجية (درهم)'),
|
||||||
value: '4.75 B',
|
value: '4.75 B',
|
||||||
growthRate: '-15.94%',
|
growthRate: '-15.94%',
|
||||||
isPositive: false,
|
isPositive: false,
|
||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_FDIItem(
|
_FDIItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.inflows,
|
icon: PopupAssetPath.inflows,
|
||||||
title: '2020 FDI Inflows (AED)',
|
title: context.translate('2020 FDI Inflows (AED)','2020 تدفقات الاستثمار الأجنبي المباشر (درهم)'),
|
||||||
value: '14.75 B',
|
value: '14.75 B',
|
||||||
growthRate: '-39.68%',
|
growthRate: '-39.68%',
|
||||||
isPositive: false,
|
isPositive: false,
|
||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_FDIItem(
|
_FDIItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.stocks,
|
icon: PopupAssetPath.stocks,
|
||||||
title: '2021 FDI Stocks (AED)',
|
title: context.translate('2021 FDI Stocks (AED)','2021 أسهم الاستثمار الأجنبي المباشر (درهم)'),
|
||||||
value: '18.98 B',
|
value: '18.98 B',
|
||||||
growthRate: '89.75%',
|
growthRate: '89.75%',
|
||||||
isPositive: true,
|
isPositive: true,
|
||||||
@ -437,24 +470,27 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
children: [
|
children: [
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
_TradeItem(
|
_TradeItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.trade,
|
icon: PopupAssetPath.trade,
|
||||||
title: '2021 Total Trade (AED)',
|
title: context.translate('2021 Total Trade (AED)','2021 إجمالي التجارة (درهم)'),
|
||||||
value: '603 B',
|
value: '603 B',
|
||||||
growthRate: '39.89%',
|
growthRate: '39.89%',
|
||||||
isPositive: true,
|
isPositive: true,
|
||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_TradeItem(
|
_TradeItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.imports,
|
icon: PopupAssetPath.imports,
|
||||||
title: '2021 Imports (AED)',
|
title: context.translate('2021 Imports (AED)','2021 الواردات (درهم)'),
|
||||||
value: '272.9 B',
|
value: '272.9 B',
|
||||||
growthRate: '40.79%',
|
growthRate: '40.79%',
|
||||||
isPositive: true,
|
isPositive: true,
|
||||||
),
|
),
|
||||||
lineBorder,
|
lineBorder,
|
||||||
_TradeItem(
|
_TradeItem(
|
||||||
|
context: context,
|
||||||
icon: PopupAssetPath.exports,
|
icon: PopupAssetPath.exports,
|
||||||
title: '2021 Exports (AED)',
|
title: context.translate('2021 Exports (AED)','الصادرات (درهم)'),
|
||||||
value: '330.1 B',
|
value: '330.1 B',
|
||||||
growthRate: '39.15%',
|
growthRate: '39.15%',
|
||||||
isPositive: true,
|
isPositive: true,
|
||||||
@ -468,17 +504,21 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
const Center(
|
Padding(
|
||||||
child: Text(
|
padding: const EdgeInsets.all(16.0),
|
||||||
'UAE Bilateral Trade (2022)',
|
child: Center(
|
||||||
style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold),
|
child: Text(
|
||||||
|
textAlign: TextAlign.center,
|
||||||
|
context.translate('UAE Bilateral Trade (2022)','التجارة الثنائية بين الإمارات العربية المتحدة (2022)'),
|
||||||
|
style: TextStyle(fontSize: 16, fontWeight: FontWeight.bold),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
const SizedBox(height: 8),
|
const SizedBox(height: 8),
|
||||||
const Center(
|
Center(
|
||||||
child: Text.rich(
|
child: Text.rich(
|
||||||
TextSpan(
|
TextSpan(
|
||||||
text:'Total ',
|
text:context.translate('Total ','المجموع '),
|
||||||
style: TextStyle(fontSize: 20,),
|
style: TextStyle(fontSize: 20,),
|
||||||
children: [
|
children: [
|
||||||
TextSpan(
|
TextSpan(
|
||||||
@ -501,21 +541,21 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
width: screenWidth * 0.90,
|
width: screenWidth * 0.90,
|
||||||
child:Row(
|
child:Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
||||||
children: const [
|
children: [
|
||||||
_BilateralTradeValueBox(
|
_BilateralTradeValueBox(
|
||||||
label: 'Total Import',
|
label: context.translate('Total Import','إجمالي الواردات'),
|
||||||
value: '\$390.2M',
|
value: '\$390.2M',
|
||||||
color: Color(0xFF5BB3AA),
|
color: Color(0xFF5BB3AA),
|
||||||
isSelected: true,
|
isSelected: true,
|
||||||
),
|
),
|
||||||
_BilateralTradeValueBox(
|
_BilateralTradeValueBox(
|
||||||
label: 'Total Export',
|
label: context.translate('Total Export','إجمالي الصادرات'),
|
||||||
value: '\$42.2M',
|
value: '\$42.2M',
|
||||||
color: Color(0xFFB57184),
|
color: Color(0xFFB57184),
|
||||||
isSelected: false,
|
isSelected: false,
|
||||||
),
|
),
|
||||||
_BilateralTradeValueBox(
|
_BilateralTradeValueBox(
|
||||||
label: 'Total ReExport',
|
label: context.translate('Total ReExport','إجمالي إعادة التصدير'),
|
||||||
value: '\$40.2M',
|
value: '\$40.2M',
|
||||||
color: Color(0xFF243E83),
|
color: Color(0xFF243E83),
|
||||||
isSelected: false,
|
isSelected: false,
|
||||||
@ -525,9 +565,9 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
const SizedBox(height: 24),
|
const SizedBox(height: 24),
|
||||||
const Center(
|
Center(
|
||||||
child: Text(
|
child: Text(
|
||||||
'Top 5 Import Commodities',
|
context.translate('Top 5 Import Commodities','أهم 5 سلع مستوردة'),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
fontWeight: FontWeight.bold,
|
fontWeight: FontWeight.bold,
|
||||||
@ -538,27 +578,27 @@ class CategoryPopupContent extends StatelessWidget {
|
|||||||
yellowDivider,
|
yellowDivider,
|
||||||
_CommodityRow(
|
_CommodityRow(
|
||||||
icon: PopupAssetPath.vegetable,
|
icon: PopupAssetPath.vegetable,
|
||||||
label: 'Vegetable Products',
|
label: context.translate('Vegetable Products','المنتجات النباتية'),
|
||||||
value: '\$198.6M',),
|
value: '\$198.6M',),
|
||||||
yellowDivider,
|
yellowDivider,
|
||||||
_CommodityRow(
|
_CommodityRow(
|
||||||
icon: PopupAssetPath.food,
|
icon: PopupAssetPath.food,
|
||||||
label: 'Foodstuffs, Beverages, Spirits And Tobacco',
|
label: context.translate('Foodstuffs, Beverages, Spirits And Tobacco','المواد الغذائية والمشروبات والمشروبات الروحية والتبغ'),
|
||||||
value: '\$89.9M',),
|
value: '\$89.9M',),
|
||||||
yellowDivider,
|
yellowDivider,
|
||||||
_CommodityRow(
|
_CommodityRow(
|
||||||
icon: PopupAssetPath.metal,
|
icon: PopupAssetPath.metal,
|
||||||
label: 'Base Metals And Articles Of Base Metal',
|
label: context.translate('Base Metals And Articles Of Base Metal','المعادن الأساسية ومصنوعاتها'),
|
||||||
value: '\$65.6M',),
|
value: '\$65.6M',),
|
||||||
yellowDivider,
|
yellowDivider,
|
||||||
_CommodityRow(
|
_CommodityRow(
|
||||||
icon: PopupAssetPath.animal,
|
icon: PopupAssetPath.animal,
|
||||||
label: 'Live Animals And Their Products',
|
label: context.translate('Live Animals And Their Products','الحيوانات الحية ومنتجاتها'),
|
||||||
value: '\$23.7M',),
|
value: '\$23.7M',),
|
||||||
yellowDivider,
|
yellowDivider,
|
||||||
_CommodityRow(
|
_CommodityRow(
|
||||||
icon: PopupAssetPath.chemical,
|
icon: PopupAssetPath.chemical,
|
||||||
label: 'Products Of The Chemical or Allied Industries',
|
label: context.translate('Products Of The Chemical or Allied Industries','منتجات الصناعات الكيميائية أو المرتبطة بها'),
|
||||||
value: '\$4.7M',),
|
value: '\$4.7M',),
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
],
|
],
|
||||||
@ -573,6 +613,7 @@ Widget _DemographyItem({
|
|||||||
required String icon,
|
required String icon,
|
||||||
required String title,
|
required String title,
|
||||||
required String value,
|
required String value,
|
||||||
|
required BuildContext context,
|
||||||
}) {
|
}) {
|
||||||
return Column(
|
return Column(
|
||||||
children: [
|
children: [
|
||||||
@ -582,7 +623,7 @@ Widget _DemographyItem({
|
|||||||
height: 40,
|
height: 40,
|
||||||
),
|
),
|
||||||
const SizedBox(height: 4),
|
const SizedBox(height: 4),
|
||||||
Text(title, style: const TextStyle(color: Color(0xFF666666),fontSize: 20)),
|
Text(title, style: const TextStyle(color: Color(0xFF666666),fontSize: 20),),
|
||||||
const SizedBox(height: 4),
|
const SizedBox(height: 4),
|
||||||
Text(
|
Text(
|
||||||
value,
|
value,
|
||||||
@ -654,6 +695,7 @@ Widget _DemographyStatItem({
|
|||||||
}
|
}
|
||||||
|
|
||||||
Widget _GDPMetricItem({
|
Widget _GDPMetricItem({
|
||||||
|
required BuildContext context,
|
||||||
required String icon,
|
required String icon,
|
||||||
required String title,
|
required String title,
|
||||||
required String value,
|
required String value,
|
||||||
@ -695,7 +737,7 @@ Widget _GDPMetricItem({
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
'Rank',
|
context.translate('Rank','رتبة'),
|
||||||
style: const TextStyle(fontSize: 12, color: Color(0xFF666666)),
|
style: const TextStyle(fontSize: 12, color: Color(0xFF666666)),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
@ -712,6 +754,7 @@ Widget _FDIItem({
|
|||||||
required String value,
|
required String value,
|
||||||
required String growthRate,
|
required String growthRate,
|
||||||
required bool isPositive,
|
required bool isPositive,
|
||||||
|
required BuildContext context,
|
||||||
}) {
|
}) {
|
||||||
return Column(
|
return Column(
|
||||||
children: [
|
children: [
|
||||||
@ -748,7 +791,7 @@ Widget _FDIItem({
|
|||||||
),
|
),
|
||||||
|
|
||||||
Text(
|
Text(
|
||||||
'Growth Rate',
|
context.translate('Growth Rate',''),
|
||||||
style: const TextStyle(fontSize: 12, color: Color(0xFF666666)),
|
style: const TextStyle(fontSize: 12, color: Color(0xFF666666)),
|
||||||
),
|
),
|
||||||
|
|
||||||
@ -768,6 +811,7 @@ Widget _TradeItem({
|
|||||||
required String value,
|
required String value,
|
||||||
required String growthRate,
|
required String growthRate,
|
||||||
required bool isPositive,
|
required bool isPositive,
|
||||||
|
required BuildContext context,
|
||||||
}) {
|
}) {
|
||||||
return Column(
|
return Column(
|
||||||
children: [
|
children: [
|
||||||
@ -804,7 +848,7 @@ Widget _TradeItem({
|
|||||||
),
|
),
|
||||||
|
|
||||||
Text(
|
Text(
|
||||||
'Growth Rate',
|
context.translate('Growth Rate','معدل النمو'),
|
||||||
style: const TextStyle(fontSize: 12, color: Color(0xFF666666)),
|
style: const TextStyle(fontSize: 12, color: Color(0xFF666666)),
|
||||||
),
|
),
|
||||||
|
|
||||||
@ -835,7 +879,7 @@ class _BilateralTradeValueBox extends StatelessWidget {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Container(
|
return Container(
|
||||||
height: 90,
|
height: 90,
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8),
|
padding: const EdgeInsets.symmetric(horizontal: 5, vertical: 8),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: isSelected?Colors.white:Colors.transparent,
|
color: isSelected?Colors.white:Colors.transparent,
|
||||||
borderRadius: BorderRadius.circular(10),
|
borderRadius: BorderRadius.circular(10),
|
||||||
@ -857,7 +901,7 @@ class _BilateralTradeValueBox extends StatelessWidget {
|
|||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
label,
|
label,
|
||||||
style: TextStyle(fontSize: 13,),
|
style: TextStyle(fontSize: 13),
|
||||||
),
|
),
|
||||||
const SizedBox(height: 4),
|
const SizedBox(height: 4),
|
||||||
Text(
|
Text(
|
||||||
@ -909,13 +953,20 @@ void showCategoryPopup(BuildContext context, String category) {
|
|||||||
barrierColor: Colors.black.withValues(alpha: 0.3),
|
barrierColor: Colors.black.withValues(alpha: 0.3),
|
||||||
builder: (context) => BackdropFilter(
|
builder: (context) => BackdropFilter(
|
||||||
filter: ImageFilter.blur(sigmaX: 5, sigmaY: 5),
|
filter: ImageFilter.blur(sigmaX: 5, sigmaY: 5),
|
||||||
child: Dialog(
|
child: Theme(
|
||||||
backgroundColor: Colors.white,
|
data: ThemeData(
|
||||||
insetPadding: const EdgeInsets.symmetric(horizontal: 20, vertical: 40),
|
fontFamily: context.translate(
|
||||||
shape: RoundedRectangleBorder(
|
'Roboto',
|
||||||
borderRadius: BorderRadius.circular(16),
|
'NotoKufi',
|
||||||
|
),),
|
||||||
|
child: Dialog(
|
||||||
|
backgroundColor: Colors.white,
|
||||||
|
insetPadding: const EdgeInsets.symmetric(horizontal: 20, vertical: 40),
|
||||||
|
shape: RoundedRectangleBorder(
|
||||||
|
borderRadius: BorderRadius.circular(16),
|
||||||
|
),
|
||||||
|
child: CategoryPopupContent(category: category),
|
||||||
),
|
),
|
||||||
child: CategoryPopupContent(category: category),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@ -22,23 +22,23 @@ class _CountryProfilePageState extends ConsumerState<CountryProfilePage> {
|
|||||||
final TextEditingController _searchController = TextEditingController();
|
final TextEditingController _searchController = TextEditingController();
|
||||||
|
|
||||||
final List<Map<String, String>> _allCountries = [
|
final List<Map<String, String>> _allCountries = [
|
||||||
{"name": "Afghanistan", "flag": "🇦🇫"},
|
{"name": "Afghanistan", "flag": "🇦🇫",'code':'AF'},
|
||||||
{"name": "Albania", "flag": "🇦🇱"},
|
{"name": "Albania", "flag": "🇦🇱",'code':'AL'},
|
||||||
{"name": "Algeria", "flag": "🇩🇿"},
|
{"name": "Algeria", "flag": "🇩🇿",'code':'DZ'},
|
||||||
{"name": "American Samoa", "flag": "🇦🇸"},
|
{"name": "American Samoa", "flag": "🇦🇸",'code':'AS'},
|
||||||
{"name": "Andorra", "flag": "🇦🇩"},
|
{"name": "Andorra", "flag": "🇦🇩",'code':'AD'},
|
||||||
{"name": "Angola", "flag": "🇦🇴"},
|
{"name": "Angola", "flag": "🇦🇴",'code':'AO'},
|
||||||
{"name": "Anguilla", "flag": "🇦🇮"},
|
{"name": "Anguilla", "flag": "🇦🇮",'code':'AI'},
|
||||||
{"name": "Antigua And Barbuda", "flag": "🇦🇬"},
|
{"name": "Antigua And Barbuda", "flag": "🇦🇬",'code':'AG'},
|
||||||
{"name": "Argentina", "flag": "🇦🇷"},
|
{"name": "Argentina", "flag": "🇦🇷",'code':'AR'},
|
||||||
{"name": "Armenia", "flag": "🇦🇲"},
|
{"name": "Armenia", "flag": "🇦🇲",'code':'AM'},
|
||||||
{"name": "Aruba", "flag": "🇦🇼"},
|
{"name": "Aruba", "flag": "🇦🇼",'code':'AW'},
|
||||||
{"name": "Australia", "flag": "🇦🇺"},
|
{"name": "Australia", "flag": "🇦🇺",'code':'AU'},
|
||||||
{"name": "Austria", "flag": "🇦🇹"},
|
{"name": "Austria", "flag": "🇦🇹",'code':'AT'},
|
||||||
{"name": "Azerbaijan", "flag": "🇦🇿"},
|
{"name": "Azerbaijan", "flag": "🇦🇿",'code':'AZ'},
|
||||||
{"name": "Bahamas", "flag": "🇧🇸"},
|
{"name": "Bahamas", "flag": "🇧🇸",'code':'BS'},
|
||||||
{"name": "Bahrain", "flag": "🇧🇭"},
|
{"name": "Bahrain", "flag": "🇧🇭",'code':'BH'},
|
||||||
{"name": "Bangladesh", "flag": "🇧🇩"},
|
{"name": "Bangladesh", "flag": "🇧🇩",'code':'BD'},
|
||||||
];
|
];
|
||||||
|
|
||||||
String _searchTerm = '';
|
String _searchTerm = '';
|
||||||
@ -160,7 +160,7 @@ class _CountryProfilePageState extends ConsumerState<CountryProfilePage> {
|
|||||||
onTap: () {
|
onTap: () {
|
||||||
context.push('/country-profile-detail', extra: {
|
context.push('/country-profile-detail', extra: {
|
||||||
'countryName': country['name'] as String,
|
'countryName': country['name'] as String,
|
||||||
'flag': country['flag'] as String,
|
'flag': country['code'] as String,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user