You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1595 lines
38 KiB
Dart
1595 lines
38 KiB
Dart
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
|
|
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
|
|
import 'package:flutter/cupertino.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
// ignore: must_be_immutable
|
|
class SelectCountryDialog extends StatefulWidget {
|
|
final Function(dynamic) onValueSelected;
|
|
dynamic selectedCountry;
|
|
|
|
SelectCountryDialog(
|
|
{Key key, /*this.relationTypes,*/ this.onValueSelected, this.selectedCountry});
|
|
|
|
@override
|
|
_SelectCountryDialogState createState() => _SelectCountryDialogState();
|
|
}
|
|
|
|
class _SelectCountryDialogState extends State<SelectCountryDialog> {
|
|
|
|
// todo create a model for Country
|
|
List<Map> countryList =
|
|
[
|
|
{
|
|
"name": "Saudi Arabia",
|
|
"name_ar":"المملكة العربية السعودية",
|
|
"code": "+966",
|
|
"countryCode": "SA",
|
|
"pattern": "5xxxxxxxx",
|
|
"maxLength": 9
|
|
},
|
|
{
|
|
"name": "United Arab Emirates",
|
|
"name_ar":"الإمارات العربية المتحدة",
|
|
"code": "+971",
|
|
"countryCode": "AE",
|
|
"pattern": "5xxxxxxxx",
|
|
"maxLength": 9
|
|
},
|
|
{
|
|
"name": "Bahrain",
|
|
"name_ar":"البحرين",
|
|
"code": "+973",
|
|
"countryCode": "BH",
|
|
"maxLength": 8
|
|
},
|
|
{
|
|
"name": "Kuwait",
|
|
"name_ar":"الكويت",
|
|
"code": "+965",
|
|
"countryCode": "KW"
|
|
},
|
|
{
|
|
"name": "Afghanistan",
|
|
"name_ar":"أفغانستان",
|
|
"code": "+93",
|
|
"countryCode": "AF"
|
|
},
|
|
{
|
|
"name": "Aland Islands",
|
|
"name_ar":"جزر آلاند",
|
|
"code": "+358",
|
|
"countryCode": "AX"
|
|
},
|
|
{
|
|
"name": "Albania",
|
|
"name_ar":"ألبانيا",
|
|
"code": "+355",
|
|
"countryCode": "AL"
|
|
},
|
|
{
|
|
"name": "Algeria",
|
|
"name_ar":"الجزائر",
|
|
"code": "+213",
|
|
"countryCode": "DZ"
|
|
},
|
|
{
|
|
"name": "AmericanSamoa",
|
|
"name_ar":"ساموا الأمريكية",
|
|
"code": "+1 684",
|
|
"countryCode": "AS"
|
|
},
|
|
{
|
|
"name": "Andorra",
|
|
"name_ar":"أندورا",
|
|
"code": "+376",
|
|
"countryCode": "AD"
|
|
},
|
|
{
|
|
"name": "Angola",
|
|
"name_ar":"أنغولا",
|
|
"code": "+244",
|
|
"countryCode": "AO"
|
|
},
|
|
{
|
|
"name": "Anguilla",
|
|
"name_ar":"أنغيلا",
|
|
"code": "+1 264",
|
|
"countryCode": "AI"
|
|
},
|
|
{
|
|
"name": "Antarctica",
|
|
"name_ar":"القارة القطبية الجنوبية",
|
|
"code": "+672",
|
|
"countryCode": "AQ"
|
|
},
|
|
{
|
|
"name": "Antigua and Barbuda",
|
|
"name_ar":"أنتيغوا وبربودا",
|
|
"code": "+1268",
|
|
"countryCode": "AG"
|
|
},
|
|
{
|
|
"name": "Argentina",
|
|
"name_ar":"الأرجنتين",
|
|
"code": "+54",
|
|
"countryCode": "AR"
|
|
},
|
|
{
|
|
"name": "Armenia",
|
|
"name_ar":"أرمينيا",
|
|
"code": "+374",
|
|
"countryCode": "AM"
|
|
},
|
|
{
|
|
"name": "Aruba",
|
|
"name_ar":"أروبا",
|
|
"code": "+297",
|
|
"countryCode": "AW"
|
|
},
|
|
{
|
|
"name": "Australia",
|
|
"name_ar":"أستراليا",
|
|
"code": "+61",
|
|
"countryCode": "AU"
|
|
},
|
|
{
|
|
"name": "Austria",
|
|
"name_ar":"النمسا",
|
|
"code": "+43",
|
|
"countryCode": "AT"
|
|
},
|
|
{
|
|
"name": "Azerbaijan",
|
|
"name_ar":"أذربيجان",
|
|
"code": "+994",
|
|
"countryCode": "AZ"
|
|
},
|
|
{
|
|
"name": "Bahamas",
|
|
"name_ar":"الباهاما",
|
|
"code": "+1 242",
|
|
"countryCode": "BS"
|
|
},
|
|
{
|
|
"name": "Bangladesh",
|
|
"name_ar":"بنغلاديش",
|
|
"code": "+880",
|
|
"countryCode": "BD"
|
|
},
|
|
{
|
|
"name": "Barbados",
|
|
"name_ar":"بربادوس",
|
|
"code": "+1 246",
|
|
"countryCode": "BB"
|
|
},
|
|
{
|
|
"name": "Belarus",
|
|
"name_ar":"روسيا البيضاء",
|
|
"code": "+375",
|
|
"countryCode": "BY"
|
|
},
|
|
{
|
|
"name": "Belgium",
|
|
"name_ar":"بلجيكا",
|
|
"code": "+32",
|
|
"countryCode": "BE"
|
|
},
|
|
{
|
|
"name": "Belize",
|
|
"name_ar":"بليز",
|
|
"code": "+501",
|
|
"countryCode": "BZ"
|
|
},
|
|
{
|
|
"name": "Benin",
|
|
"name_ar":"بنين",
|
|
"code": "+229",
|
|
"countryCode": "BJ"
|
|
},
|
|
{
|
|
"name": "Bermuda",
|
|
"name_ar":"برمودا",
|
|
"code": "+1 441",
|
|
"countryCode": "BM"
|
|
},
|
|
{
|
|
"name": "Bhutan",
|
|
"name_ar":"بوتان",
|
|
"code": "+975",
|
|
"countryCode": "BT"
|
|
},
|
|
{
|
|
"name": "Bolivia, Plurinational State of",
|
|
"name_ar":"دولة بوليفيا المتعددة القوميات",
|
|
"code": "+591",
|
|
"countryCode": "BO"
|
|
},
|
|
{
|
|
"name": "Bosnia and Herzegovina",
|
|
"name_ar":"البوسنة والهرسك",
|
|
"code": "+387",
|
|
"countryCode": "BA"
|
|
},
|
|
{
|
|
"name": "Botswana",
|
|
"name_ar":"بوتسوانا",
|
|
"code": "+267",
|
|
"countryCode": "BW"
|
|
},
|
|
{
|
|
"name": "Brazil",
|
|
"name_ar":"البرازيل",
|
|
"code": "+55",
|
|
"countryCode": "BR"
|
|
},
|
|
{
|
|
"name": "British Indian Ocean Territory",
|
|
"name_ar":"إقليم المحيط البريطاني الهندي",
|
|
"code": "+246",
|
|
"countryCode": "IO"
|
|
},
|
|
{
|
|
"name": "Brunei Darussalam",
|
|
"name_ar":"بروناي دار السلام",
|
|
"code": "+673",
|
|
"countryCode": "BN"
|
|
},
|
|
{
|
|
"name": "Bulgaria",
|
|
"name_ar":"بلغاريا",
|
|
"code": "+359",
|
|
"countryCode": "BG"
|
|
},
|
|
{
|
|
"name": "Burkina Faso",
|
|
"name_ar":"بوركينا فاسو",
|
|
"code": "+226",
|
|
"countryCode": "BF"
|
|
},
|
|
{
|
|
"name": "Burundi",
|
|
"name_ar":"بوروندي",
|
|
"code": "+257",
|
|
"countryCode": "BI"
|
|
},
|
|
{
|
|
"name": "Cambodia",
|
|
"name_ar":"كمبوديا",
|
|
"code": "+855",
|
|
"countryCode": "KH"
|
|
},
|
|
{
|
|
"name": "Cameroon",
|
|
"name_ar":"الكاميرون",
|
|
"code": "+237",
|
|
"countryCode": "CM"
|
|
},
|
|
{
|
|
"name": "Canada",
|
|
"name_ar":"كندا",
|
|
"code": "+1",
|
|
"countryCode": "CA"
|
|
},
|
|
{
|
|
"name": "Cape Verde",
|
|
"name_ar":"الرأس الأخضر",
|
|
"code": "+238",
|
|
"countryCode": "CV"
|
|
},
|
|
{
|
|
"name": "Cayman Islands",
|
|
"name_ar":"جزر كايمان",
|
|
"code": "+345",
|
|
"countryCode": "KY"
|
|
},
|
|
{
|
|
"name": "Central African Republic",
|
|
"name_ar":"جمهورية افريقيا الوسطى",
|
|
"code": "+236",
|
|
"countryCode": "CF"
|
|
},
|
|
{
|
|
"name": "Chad",
|
|
"name_ar":"تشاد",
|
|
"code": "+235",
|
|
"countryCode": "TD"
|
|
},
|
|
{
|
|
"name": "Chile",
|
|
"name_ar":"تشيلي",
|
|
"code": "+56",
|
|
"countryCode": "CL"
|
|
},
|
|
{
|
|
"name": "China",
|
|
"name_ar":"الصين",
|
|
"code": "+86",
|
|
"countryCode": "CN"
|
|
},
|
|
{
|
|
"name": "Christmas Island",
|
|
"name_ar":"جزيرة الكريسماس",
|
|
"code": "+61",
|
|
"countryCode": "CX"
|
|
},
|
|
{
|
|
"name": "Cocos (Keeling) Islands",
|
|
"name_ar":"جزر كوكوس كيلينغ",
|
|
"code": "+61",
|
|
"countryCode": "CC"
|
|
},
|
|
{
|
|
"name": "Colombia",
|
|
"name_ar":"كولومبيا",
|
|
"code": "+57",
|
|
"countryCode": "CO"
|
|
},
|
|
{
|
|
"name": "Comoros",
|
|
"name_ar":"جزر القمر",
|
|
"code": "+269",
|
|
"countryCode": "KM"
|
|
},
|
|
{
|
|
"name": "Congo",
|
|
"name_ar":"الكونغو",
|
|
"code": "+242",
|
|
"countryCode": "CG"
|
|
},
|
|
{
|
|
"name": "Congo, The Democratic Republic of the Congo",
|
|
"name_ar":"الكونغو ، جمهورية الكونغو الديمقراطية",
|
|
"code": "+243",
|
|
"countryCode": "CD"
|
|
},
|
|
{
|
|
"name": "Cook Islands",
|
|
"name_ar":"جزر كوك",
|
|
"code": "+682",
|
|
"countryCode": "CK"
|
|
},
|
|
{
|
|
"name": "Costa Rica",
|
|
"name_ar":"كوستا ريكا",
|
|
"code": "+506",
|
|
"countryCode": "CR"
|
|
},
|
|
{
|
|
"name": "Cote d'Ivoire",
|
|
"name_ar":"ساحل العاج",
|
|
"code": "+225",
|
|
"countryCode": "CI"
|
|
},
|
|
{
|
|
"name": "Croatia",
|
|
"name_ar":"كرواتيا",
|
|
"code": "+385",
|
|
"countryCode": "HR"
|
|
},
|
|
{
|
|
"name": "Cuba",
|
|
"name_ar":"كوبا",
|
|
"code": "+53",
|
|
"countryCode": "CU"
|
|
},
|
|
{
|
|
"name": "Cyprus",
|
|
"name_ar":"قبرص",
|
|
"code": "+357",
|
|
"countryCode": "CY"
|
|
},
|
|
{
|
|
"name": "Czech Republic",
|
|
"name_ar":"جمهورية التشيك",
|
|
"code": "+420",
|
|
"countryCode": "CZ"
|
|
},
|
|
{
|
|
"name": "Denmark",
|
|
"name_ar":"الدنمارك",
|
|
"code": "+45",
|
|
"countryCode": "DK"
|
|
},
|
|
{
|
|
"name": "Djibouti",
|
|
"name_ar":"جيبوتي",
|
|
"code": "+253",
|
|
"countryCode": "DJ"
|
|
},
|
|
{
|
|
"name": "Dominica",
|
|
"name_ar":"دومينيكا",
|
|
"code": "+1 767",
|
|
"countryCode": "DM"
|
|
},
|
|
{
|
|
"name": "Dominican Republic",
|
|
"name_ar":"جمهورية الدومنيكان",
|
|
"code": "+1 849",
|
|
"countryCode": "DO"
|
|
},
|
|
{
|
|
"name": "Ecuador",
|
|
"name_ar":"الإكوادور",
|
|
"code": "+593",
|
|
"countryCode": "EC"
|
|
},
|
|
{
|
|
"name": "Egypt",
|
|
"name_ar":"مصر",
|
|
"code": "+20",
|
|
"countryCode": "EG"
|
|
},
|
|
{
|
|
"name": "El Salvador",
|
|
"name_ar":"السلفادور",
|
|
"code": "+503",
|
|
"countryCode": "SV"
|
|
},
|
|
{
|
|
"name": "Equatorial Guinea",
|
|
"name_ar":"غينيا الإستوائية",
|
|
"code": "+240",
|
|
"countryCode": "GQ"
|
|
},
|
|
{
|
|
"name": "Eritrea",
|
|
"name_ar":"إريتريا",
|
|
"code": "+291",
|
|
"countryCode": "ER"
|
|
},
|
|
{
|
|
"name": "Estonia",
|
|
"name_ar":"استونيا",
|
|
"code": "+372",
|
|
"countryCode": "EE"
|
|
},
|
|
{
|
|
"name": "Ethiopia",
|
|
"name_ar":"أثيوبيا",
|
|
"code": "+251",
|
|
"countryCode": "ET"
|
|
},
|
|
{
|
|
"name": "Falkland Islands (Malvinas)",
|
|
"name_ar":"جزر فوكلاند مالفيناس",
|
|
"code": "+500",
|
|
"countryCode": "FK"
|
|
},
|
|
{
|
|
"name": "Faroe Islands",
|
|
"name_ar":"جزر صناعية",
|
|
"code": "+298",
|
|
"countryCode": "FO"
|
|
},
|
|
{
|
|
"name": "Fiji",
|
|
"name_ar":"فيجي",
|
|
"code": "+679",
|
|
"countryCode": "FJ"
|
|
},
|
|
{
|
|
"name": "Finland",
|
|
"name_ar":"فنلندا",
|
|
"code": "+358",
|
|
"countryCode": "FI"
|
|
},
|
|
{
|
|
"name": "France",
|
|
"name_ar":"فرنسا",
|
|
"code": "+33",
|
|
"countryCode": "FR"
|
|
},
|
|
{
|
|
"name": "French Guiana",
|
|
"name_ar":"غيانا الفرنسية",
|
|
"code": "+594",
|
|
"countryCode": "GF"
|
|
},
|
|
{
|
|
"name": "French Polynesia",
|
|
"name_ar":"بولينيزيا الفرنسية",
|
|
"code": "+689",
|
|
"countryCode": "PF"
|
|
},
|
|
{
|
|
"name": "Gabon",
|
|
"name_ar":"الغابون",
|
|
"code": "+241",
|
|
"countryCode": "GA"
|
|
},
|
|
{
|
|
"name": "Gambia",
|
|
"name_ar":"غامبيا",
|
|
"code": "+220",
|
|
"countryCode": "GM"
|
|
},
|
|
{
|
|
"name": "Georgia",
|
|
"name_ar":"جورجيا",
|
|
"code": "+995",
|
|
"countryCode": "GE"
|
|
},
|
|
{
|
|
"name": "Germany",
|
|
"name_ar":"ألمانيا",
|
|
"code": "+49",
|
|
"countryCode": "DE"
|
|
},
|
|
{
|
|
"name": "Ghana",
|
|
"name_ar":"غانا",
|
|
"code": "+233",
|
|
"countryCode": "GH"
|
|
},
|
|
{
|
|
"name": "Gibraltar",
|
|
"name_ar":"جبل طارق",
|
|
"code": "+350",
|
|
"countryCode": "GI"
|
|
},
|
|
{
|
|
"name": "Greece",
|
|
"name_ar":"اليونان",
|
|
"code": "+30",
|
|
"countryCode": "GR"
|
|
},
|
|
{
|
|
"name": "Greenland",
|
|
"name_ar":"الأرض الخضراء",
|
|
"code": "+299",
|
|
"countryCode": "GL"
|
|
},
|
|
{
|
|
"name": "Grenada",
|
|
"name_ar":"غرينادا",
|
|
"code": "+1 473",
|
|
"countryCode": "GD"
|
|
},
|
|
{
|
|
"name": "Guadeloupe",
|
|
"name_ar":"جوادلوب",
|
|
"code": "+590",
|
|
"countryCode": "GP"
|
|
},
|
|
{
|
|
"name": "Guam",
|
|
"name_ar":"غوام",
|
|
"code": "+1 671",
|
|
"countryCode": "GU"
|
|
},
|
|
{
|
|
"name": "Guatemala",
|
|
"name_ar":"غواتيمالا",
|
|
"code": "+502",
|
|
"countryCode": "GT"
|
|
},
|
|
{
|
|
"name": "Guernsey",
|
|
"name_ar":"غيرنسي",
|
|
"code": "+44",
|
|
"countryCode": "GG"
|
|
},
|
|
{
|
|
"name": "Guinea",
|
|
"name_ar":"غينيا",
|
|
"code": "+224",
|
|
"countryCode": "GN"
|
|
},
|
|
{
|
|
"name": "Guinea-Bissau",
|
|
"name_ar":"غينيا بيساو",
|
|
"code": "+245",
|
|
"countryCode": "GW"
|
|
},
|
|
{
|
|
"name": "Guyana",
|
|
"name_ar":"غيانا",
|
|
"code": "+595",
|
|
"countryCode": "GY"
|
|
},
|
|
{
|
|
"name": "Haiti",
|
|
"name_ar":"هايتي",
|
|
"code": "+509",
|
|
"countryCode": "HT"
|
|
},
|
|
{
|
|
"name": "Holy See (Vatican City State)",
|
|
"name_ar":"الكرسي الرسولي دولة الفاتيكان",
|
|
"code": "+379",
|
|
"countryCode": "VA"
|
|
},
|
|
{
|
|
"name": "Honduras",
|
|
"name_ar":"هندوراس",
|
|
"code": "+504",
|
|
"countryCode": "HN"
|
|
},
|
|
{
|
|
"name": "Hong Kong",
|
|
"name_ar":"هونج كونج",
|
|
"code": "+852",
|
|
"countryCode": "HK"
|
|
},
|
|
{
|
|
"name": "Hungary",
|
|
"name_ar":"اليونان",
|
|
"code": "+36",
|
|
"countryCode": "HU"
|
|
},
|
|
{
|
|
"name": "Iceland",
|
|
"name_ar":"أيسلندا",
|
|
"code": "+354",
|
|
"countryCode": "IS"
|
|
},
|
|
{
|
|
"name": "India",
|
|
"name_ar":"الهند",
|
|
"code": "+91",
|
|
"countryCode": "IN"
|
|
},
|
|
{
|
|
"name": "Indonesia",
|
|
"name_ar":"أندونيسيا",
|
|
"code": "+62",
|
|
"countryCode": "ID"
|
|
},
|
|
{
|
|
"name": "Iran, Islamic Republic of Persian Gulf",
|
|
"name_ar":"جمهورية إيران الإسلامية الخليج الفارسي",
|
|
"code": "+98",
|
|
"countryCode": "IR"
|
|
},
|
|
{
|
|
"name": "Iraq",
|
|
"name_ar":"العراق",
|
|
"code": "+964",
|
|
"countryCode": "IQ"
|
|
},
|
|
{
|
|
"name": "Ireland",
|
|
"name_ar":"أيرلندا",
|
|
"code": "+353",
|
|
"countryCode": "IE"
|
|
},
|
|
{
|
|
"name": "Isle of Man",
|
|
"name_ar":"جزيرة آيل أوف مان",
|
|
"code": "+44",
|
|
"countryCode": "IM"
|
|
},
|
|
{
|
|
"name": "Israel",
|
|
"name_ar":"إسرائيل",
|
|
"code": "+972",
|
|
"countryCode": "IL"
|
|
},
|
|
{
|
|
"name": "Italy",
|
|
"name_ar":"إيطاليا",
|
|
"code": "+39",
|
|
"countryCode": "IT"
|
|
},
|
|
{
|
|
"name": "Jamaica",
|
|
"name_ar":"جامايكا",
|
|
"code": "+1 876",
|
|
"countryCode": "JM"
|
|
},
|
|
{
|
|
"name": "Japan",
|
|
"name_ar":"اليابان",
|
|
"code": "+81",
|
|
"countryCode": "JP"
|
|
},
|
|
{
|
|
"name": "Jersey",
|
|
"name_ar":"جيرسي",
|
|
"code": "+44",
|
|
"countryCode": "JE"
|
|
},
|
|
{
|
|
"name": "Jordan",
|
|
"name_ar":"الأردن",
|
|
"code": "+962",
|
|
"countryCode": "JO"
|
|
},
|
|
{
|
|
"name": "Kazakhstan",
|
|
"name_ar":"كازاخستان",
|
|
"code": "+77",
|
|
"countryCode": "KZ"
|
|
},
|
|
{
|
|
"name": "Kenya",
|
|
"name_ar":"كينيا",
|
|
"code": "+254",
|
|
"countryCode": "KE"
|
|
},
|
|
{
|
|
"name": "Kiribati",
|
|
"name_ar":"كيريباس",
|
|
"code": "+686",
|
|
"countryCode": "KI"
|
|
},
|
|
{
|
|
"name": "Korea, Democratic People's Republic of Korea",
|
|
"name_ar":"جمهورية كوريا الديمقراطية الشعبية",
|
|
"code": "+850",
|
|
"countryCode": "KP"
|
|
},
|
|
{
|
|
"name": "Korea, Republic of South Korea",
|
|
"name_ar":"جمهورية كوريا الديمقراطية الشعبية",
|
|
"code": "+82",
|
|
"countryCode": "KR"
|
|
},
|
|
{
|
|
"name": "Kyrgyzstan",
|
|
"name_ar":"قرغيزستان",
|
|
"code": "+996",
|
|
"countryCode": "KG"
|
|
},
|
|
{
|
|
"name": "Laos",
|
|
"name_ar":"لاوس",
|
|
"code": "+856",
|
|
"countryCode": "LA"
|
|
},
|
|
{
|
|
"name": "Latvia",
|
|
"name_ar":"لاتفيا",
|
|
"code": "+371",
|
|
"countryCode": "LV"
|
|
},
|
|
{
|
|
"name": "Lebanon",
|
|
"name_ar":"لبنان",
|
|
"code": "+961",
|
|
"countryCode": "LB"
|
|
},
|
|
{
|
|
"name": "Lesotho",
|
|
"name_ar":"ليسوتو",
|
|
"code": "+266",
|
|
"countryCode": "LS"
|
|
},
|
|
{
|
|
"name": "Liberia",
|
|
"name_ar":"ليبيريا",
|
|
"code": "+231",
|
|
"countryCode": "LR"
|
|
},
|
|
{
|
|
"name": "Libyan Arab Jamahiriya",
|
|
"name_ar":"الجماهيرية العربية الليبية",
|
|
"code": "+218",
|
|
"countryCode": "LY"
|
|
},
|
|
{
|
|
"name": "Liechtenstein",
|
|
"name_ar":"ليختنشتاين",
|
|
"code": "+423",
|
|
"countryCode": "LI"
|
|
},
|
|
{
|
|
"name": "Lithuania",
|
|
"name_ar":"ليتوانيا",
|
|
"code": "+370",
|
|
"countryCode": "LT"
|
|
},
|
|
{
|
|
"name": "Luxembourg",
|
|
"name_ar":"لوكسمبورغ",
|
|
"code": "+352",
|
|
"countryCode": "LU"
|
|
},
|
|
{
|
|
"name": "Macao",
|
|
"name_ar":"ماكاو",
|
|
"code": "+853",
|
|
"countryCode": "MO"
|
|
},
|
|
{
|
|
"name": "Macedonia",
|
|
"name_ar":"مقدونيا",
|
|
"code": "+389",
|
|
"countryCode": "MK"
|
|
},
|
|
{
|
|
"name": "Madagascar",
|
|
"name_ar":"مدغشقر",
|
|
"code": "+261",
|
|
"countryCode": "MG"
|
|
},
|
|
{
|
|
"name": "Malawi",
|
|
"name_ar":"مالاوي",
|
|
"code": "+265",
|
|
"countryCode": "MW"
|
|
},
|
|
{
|
|
"name": "Malaysia",
|
|
"name_ar":"ماليزيا",
|
|
"code": "+60",
|
|
"countryCode": "MY"
|
|
},
|
|
{
|
|
"name": "Maldives",
|
|
"name_ar":"جزر المالديف",
|
|
"code": "+960",
|
|
"countryCode": "MV"
|
|
},
|
|
{
|
|
"name": "Mali",
|
|
"name_ar":"مالي",
|
|
"code": "+223",
|
|
"countryCode": "ML"
|
|
},
|
|
{
|
|
"name": "Malta",
|
|
"name_ar":"مالطا",
|
|
"code": "+356",
|
|
"countryCode": "MT"
|
|
},
|
|
{
|
|
"name": "Marshall Islands",
|
|
"name_ar":"جزر مارشال",
|
|
"code": "+692",
|
|
"countryCode": "MH"
|
|
},
|
|
{
|
|
"name": "Martinique",
|
|
"name_ar":"مارتينيك",
|
|
"code": "+596",
|
|
"countryCode": "MQ"
|
|
},
|
|
{
|
|
"name": "Mauritania",
|
|
"name_ar":"موريتانيا",
|
|
"code": "+222",
|
|
"countryCode": "MR"
|
|
},
|
|
{
|
|
"name": "Mauritius",
|
|
"name_ar":"موريشيوس",
|
|
"code": "+230",
|
|
"countryCode": "MU"
|
|
},
|
|
{
|
|
"name": "Mayotte",
|
|
"name_ar":"مايوت",
|
|
"code": "+262",
|
|
"countryCode": "YT"
|
|
},
|
|
{
|
|
"name": "Mexico",
|
|
"name_ar":"المكسيك",
|
|
"code": "+52",
|
|
"countryCode": "MX"
|
|
},
|
|
{
|
|
"name": "Micronesia, Federated States of Micronesia",
|
|
"name_ar":"ميكرونيزيا ، ولايات ميكرونيزيا الموحدة",
|
|
"code": "+691",
|
|
"countryCode": "FM"
|
|
},
|
|
{
|
|
"name": "Moldova",
|
|
"name_ar":"مولدوفا",
|
|
"code": "+373",
|
|
"countryCode": "MD"
|
|
},
|
|
{
|
|
"name": "Monaco",
|
|
"name_ar":"موناكو",
|
|
"code": "+377",
|
|
"countryCode": "MC"
|
|
},
|
|
{
|
|
"name": "Mongolia",
|
|
"name_ar":"منغوليا",
|
|
"code": "+976",
|
|
"countryCode": "MN"
|
|
},
|
|
{
|
|
"name": "Montenegro",
|
|
"name_ar":"الجبل الأسود",
|
|
"code": "+382",
|
|
"countryCode": "ME"
|
|
},
|
|
{
|
|
"name": "Montserrat",
|
|
"name_ar":"مونتسيرات",
|
|
"code": "+1664",
|
|
"countryCode": "MS"
|
|
},
|
|
{
|
|
"name": "Morocco",
|
|
"name_ar":"المغرب",
|
|
"code": "+212",
|
|
"countryCode": "MA"
|
|
},
|
|
{
|
|
"name": "Mozambique",
|
|
"name_ar":"موزمبيق",
|
|
"code": "+258",
|
|
"countryCode": "MZ"
|
|
},
|
|
{
|
|
"name": "Myanmar",
|
|
"name_ar":"ميانمار",
|
|
"code": "+95",
|
|
"countryCode": "MM"
|
|
},
|
|
{
|
|
"name": "Namibia",
|
|
"name_ar":"ناميبيا",
|
|
"code": "+264",
|
|
"countryCode": "NA"
|
|
},
|
|
{
|
|
"name": "Nauru",
|
|
"name_ar":"ناورو",
|
|
"code": "+674",
|
|
"countryCode": "NR"
|
|
},
|
|
{
|
|
"name": "Nepal",
|
|
"name_ar":"نيبال",
|
|
"code": "+977",
|
|
"countryCode": "NP"
|
|
},
|
|
{
|
|
"name": "Netherlands",
|
|
"name_ar":"هولندا",
|
|
"code": "+31",
|
|
"countryCode": "NL"
|
|
},
|
|
{
|
|
"name": "Netherlands Antilles",
|
|
"name_ar":"جزر الأنتيل الهولندية",
|
|
"code": "+599",
|
|
"countryCode": "AN"
|
|
},
|
|
{
|
|
"name": "New Caledonia",
|
|
"name_ar":"كاليدونيا الجديدة",
|
|
"code": "+687",
|
|
"countryCode": "NC"
|
|
},
|
|
{
|
|
"name": "New Zealand",
|
|
"name_ar":"نيوزيلندا",
|
|
"code": "+64",
|
|
"countryCode": "NZ"
|
|
},
|
|
{
|
|
"name": "Nicaragua",
|
|
"name_ar":"نيكاراغوا",
|
|
"code": "+505",
|
|
"countryCode": "NI"
|
|
},
|
|
{
|
|
"name": "Niger",
|
|
"name_ar":"النيجر",
|
|
"code": "+227",
|
|
"countryCode": "NE"
|
|
},
|
|
{
|
|
"name": "Nigeria",
|
|
"name_ar":"نيجيريا",
|
|
"code": "+234",
|
|
"countryCode": "NG"
|
|
},
|
|
{
|
|
"name": "Niue",
|
|
"name_ar":"نيوي",
|
|
"code": "+683",
|
|
"countryCode": "NU"
|
|
},
|
|
{
|
|
"name": "Norfolk Island",
|
|
"name_ar":"جزيرة نورفولك",
|
|
"code": "+672",
|
|
"countryCode": "NF"
|
|
},
|
|
{
|
|
"name": "Northern Mariana Islands",
|
|
"name_ar":"جزر مريانا الشمالية",
|
|
"code": "+1 670",
|
|
"countryCode": "MP"
|
|
},
|
|
{
|
|
"name": "Norway",
|
|
"name_ar":"النرويج",
|
|
"code": "+47",
|
|
"countryCode": "NO"
|
|
},
|
|
{
|
|
"name": "Oman",
|
|
"name_ar":"سلطنة عمان",
|
|
"code": "+968",
|
|
"countryCode": "OM"
|
|
},
|
|
{
|
|
"name": "Pakistan",
|
|
"name_ar":"باكستان",
|
|
"code": "+92",
|
|
"countryCode": "PK"
|
|
},
|
|
{
|
|
"name": "Palau",
|
|
"name_ar":"بالاو",
|
|
"code": "+680",
|
|
"countryCode": "PW"
|
|
},
|
|
{
|
|
"name": "Palestinian Territory, Occupied",
|
|
"name_ar":"الأراضي الفلسطينية المحتلة",
|
|
"code": "+970",
|
|
"countryCode": "PS"
|
|
},
|
|
{
|
|
"name": "Panama",
|
|
"name_ar":"بناما",
|
|
"code": "+507",
|
|
"countryCode": "PA"
|
|
},
|
|
{
|
|
"name": "Papua New Guinea",
|
|
"name_ar":"بابوا غينيا الجديدة",
|
|
"code": "+675",
|
|
"countryCode": "PG"
|
|
},
|
|
{
|
|
"name": "Paraguay",
|
|
"name_ar":"باراغواي",
|
|
"code": "+595",
|
|
"countryCode": "PY"
|
|
},
|
|
{
|
|
"name": "Peru",
|
|
"name_ar":"بيرو",
|
|
"code": "+51",
|
|
"countryCode": "PE"
|
|
},
|
|
{
|
|
"name": "Philippines",
|
|
"name_ar":"الفلبين",
|
|
"code": "+63",
|
|
"countryCode": "PH"
|
|
},
|
|
{
|
|
"name": "Pitcairn",
|
|
"name_ar":"بيتكيرن",
|
|
"code": "+872",
|
|
"countryCode": "PN"
|
|
},
|
|
{
|
|
"name": "Poland",
|
|
"name_ar":"بولندا",
|
|
"code": "+48",
|
|
"countryCode": "PL"
|
|
},
|
|
{
|
|
"name": "Portugal",
|
|
"name_ar":"البرتغال",
|
|
"code": "+351",
|
|
"countryCode": "PT"
|
|
},
|
|
{
|
|
"name": "Puerto Rico",
|
|
"name_ar":"بورتوريكو",
|
|
"code": "+1 939",
|
|
"countryCode": "PR"
|
|
},
|
|
{
|
|
"name": "Qatar",
|
|
"name_ar":"دولة قطر",
|
|
"code": "+974",
|
|
"countryCode": "QA"
|
|
},
|
|
{
|
|
"name": "Romania",
|
|
"name_ar":"رومانيا",
|
|
"code": "+40",
|
|
"countryCode": "RO"
|
|
},
|
|
{
|
|
"name": "Russia",
|
|
"name_ar":"روسيا",
|
|
"code": "+7",
|
|
"countryCode": "RU"
|
|
},
|
|
{
|
|
"name": "Rwanda",
|
|
"name_ar":"رواندا",
|
|
"code": "+250",
|
|
"countryCode": "RW"
|
|
},
|
|
{
|
|
"name": "Reunion",
|
|
"name_ar":"جمع شمل",
|
|
"code": "+262",
|
|
"countryCode": "RE"
|
|
},
|
|
{
|
|
"name": "Saint Barthelemy",
|
|
"name_ar":"سانت بارتيليمي",
|
|
"code": "+590",
|
|
"countryCode": "BL"
|
|
},
|
|
{
|
|
"name": "Saint Helena, Ascension and Tristan Da Cunha",
|
|
"name_ar":"سانت هيلانة ، أسنشن وتريستان دا كونها",
|
|
"code": "+290",
|
|
"countryCode": "SH"
|
|
},
|
|
{
|
|
"name": "Saint Kitts and Nevis",
|
|
"name_ar":"سانت كيتس ونيفيس",
|
|
"code": "+1 869",
|
|
"countryCode": "KN"
|
|
},
|
|
{
|
|
"name": "Saint Lucia",
|
|
"name_ar":"القديسة لوسيا",
|
|
"code": "+1 758",
|
|
"countryCode": "LC"
|
|
},
|
|
{
|
|
"name": "Saint Martin",
|
|
"name_ar":"القديس مارتن",
|
|
"code": "+590",
|
|
"countryCode": "MF"
|
|
},
|
|
{
|
|
"name": "Saint Pierre and Miquelon",
|
|
"name_ar":"سانت بيير وميكلون",
|
|
"code": "+508",
|
|
"countryCode": "PM"
|
|
},
|
|
{
|
|
"name": "Saint Vincent and the Grenadines",
|
|
"name_ar":"سانت فنسنت وجزر غرينادين",
|
|
"code": "+1 784",
|
|
"countryCode": "VC"
|
|
},
|
|
{
|
|
"name": "Samoa",
|
|
"name_ar":"ساموا",
|
|
"code": "+685",
|
|
"countryCode": "WS"
|
|
},
|
|
{
|
|
"name": "San Marino",
|
|
"name_ar":"سان مارينو",
|
|
"code": "+378",
|
|
"countryCode": "SM"
|
|
},
|
|
{
|
|
"name": "Sao Tome and Principe",
|
|
"name_ar":"ساو تومي وبرينسيبي",
|
|
"code": "+239",
|
|
"countryCode": "ST"
|
|
},
|
|
{
|
|
"name": "Senegal",
|
|
"name_ar":"السنغال",
|
|
"code": "+221",
|
|
"countryCode": "SN"
|
|
},
|
|
{
|
|
"name": "Serbia",
|
|
"name_ar":"صربيا",
|
|
"code": "+381",
|
|
"countryCode": "RS"
|
|
},
|
|
{
|
|
"name": "Seychelles",
|
|
"name_ar":"سيشيل",
|
|
"code": "+248",
|
|
"countryCode": "SC"
|
|
},
|
|
{
|
|
"name": "Sierra Leone",
|
|
"name_ar":"سيرا ليون",
|
|
"code": "+232",
|
|
"countryCode": "SL"
|
|
},
|
|
{
|
|
"name": "Singapore",
|
|
"name_ar":"سنغافورة",
|
|
"code": "+65",
|
|
"countryCode": "SG"
|
|
},
|
|
{
|
|
"name": "Slovakia",
|
|
"name_ar":"سلوفاكيا",
|
|
"code": "+421",
|
|
"countryCode": "SK"
|
|
},
|
|
{
|
|
"name": "Slovenia",
|
|
"name_ar":"سلوفينيا",
|
|
"code": "+386",
|
|
"countryCode": "SI"
|
|
},
|
|
{
|
|
"name": "Solomon Islands",
|
|
"name_ar":"جزر سليمان",
|
|
"code": "+677",
|
|
"countryCode": "SB"
|
|
},
|
|
{
|
|
"name": "Somalia",
|
|
"name_ar":"الصومال",
|
|
"code": "+252",
|
|
"countryCode": "SO"
|
|
},
|
|
{
|
|
"name": "South Africa",
|
|
"name_ar":"جنوب أفريقيا",
|
|
"code": "+27",
|
|
"countryCode": "ZA"
|
|
},
|
|
{
|
|
"name": "South Georgia and the South Sandwich Islands",
|
|
"name_ar":"جورجيا الجنوبية وجزر ساندويتش الجنوبية",
|
|
"code": "+500",
|
|
"countryCode": "GS"
|
|
},
|
|
{
|
|
"name": "Spain",
|
|
"name_ar":"إسبانيا",
|
|
"code": "+34",
|
|
"countryCode": "ES"
|
|
},
|
|
{
|
|
"name": "Sri Lanka",
|
|
"name_ar":"سيريلانكا",
|
|
"code": "+94",
|
|
"countryCode": "LK"
|
|
},
|
|
{
|
|
"name": "Sudan",
|
|
"name_ar":"سودان",
|
|
"code": "+249",
|
|
"countryCode": "SD"
|
|
},
|
|
{
|
|
"name": "Suriname",
|
|
"name_ar":"سورينام",
|
|
"code": "+597",
|
|
"countryCode": "SR"
|
|
},
|
|
{
|
|
"name": "Svalbard and Jan Mayen",
|
|
"name_ar":"سفالبارد وجان ماين",
|
|
"code": "+47",
|
|
"countryCode": "SJ"
|
|
},
|
|
{
|
|
"name": "Swaziland",
|
|
"name_ar":"سوازيلاند",
|
|
"code": "+268",
|
|
"countryCode": "SZ"
|
|
},
|
|
{
|
|
"name": "Sweden",
|
|
"name_ar":"السويد",
|
|
"code": "+46",
|
|
"countryCode": "SE"
|
|
},
|
|
{
|
|
"name": "Switzerland",
|
|
"name_ar":"سويسرا",
|
|
"code": "+41",
|
|
"countryCode": "CH"
|
|
},
|
|
{
|
|
"name": "Syrian Arab Republic",
|
|
"name_ar":"الجمهورية العربية السورية",
|
|
"code": "+963",
|
|
"countryCode": "SY"
|
|
},
|
|
{
|
|
"name": "Taiwan",
|
|
"name_ar":"تايوان",
|
|
"code": "+886",
|
|
"countryCode": "TW"
|
|
},
|
|
{
|
|
"name": "Tajikistan",
|
|
"name_ar":"طاجيكستان",
|
|
"code": "+992",
|
|
"countryCode": "TJ"
|
|
},
|
|
{
|
|
"name": "Tanzania, United Republic of Tanzania",
|
|
"name_ar":"تنزانيا ، جمهورية تنزانيا المتحدة",
|
|
"code": "+255",
|
|
"countryCode": "TZ"
|
|
},
|
|
{
|
|
"name": "Thailand",
|
|
"name_ar":"تايلاند",
|
|
"code": "+66",
|
|
"countryCode": "TH"
|
|
},
|
|
{
|
|
"name": "Timor-Leste",
|
|
"name_ar":"تيمور الشرقية",
|
|
"code": "+670",
|
|
"countryCode": "TL"
|
|
},
|
|
{
|
|
"name": "Togo",
|
|
"name_ar":"ليذهب",
|
|
"code": "+228",
|
|
"countryCode": "TG"
|
|
},
|
|
{
|
|
"name": "Tokelau",
|
|
"name_ar":"توكيلاو",
|
|
"code": "+690",
|
|
"countryCode": "TK"
|
|
},
|
|
{
|
|
"name": "Tonga",
|
|
"name_ar":"تونغا",
|
|
"code": "+676",
|
|
"countryCode": "TO"
|
|
},
|
|
{
|
|
"name": "Trinidad and Tobago",
|
|
"name_ar":"ترينداد وتوباغو",
|
|
"code": "+1 868",
|
|
"countryCode": "TT"
|
|
},
|
|
{
|
|
"name": "Tunisia",
|
|
"name_ar":"تونس",
|
|
"code": "+216",
|
|
"countryCode": "TN"
|
|
},
|
|
{
|
|
"name": "Turkey",
|
|
"name_ar":"ديك رومي",
|
|
"code": "+90",
|
|
"countryCode": "TR"
|
|
},
|
|
{
|
|
"name": "Turkmenistan",
|
|
"name_ar":"تركمانستان",
|
|
"code": "+993",
|
|
"countryCode": "TM"
|
|
},
|
|
{
|
|
"name": "Turks and Caicos Islands",
|
|
"name_ar":"جزر تركس وكايكوس",
|
|
"code": "+1 649",
|
|
"countryCode": "TC"
|
|
},
|
|
{
|
|
"name": "Tuvalu",
|
|
"name_ar":"توفالو",
|
|
"code": "+688",
|
|
"countryCode": "TV"
|
|
},
|
|
{
|
|
"name": "Uganda",
|
|
"name_ar":"أوغندا",
|
|
"code": "+256",
|
|
"countryCode": "UG"
|
|
},
|
|
{
|
|
"name": "Ukraine",
|
|
"name_ar":"أوكرانيا",
|
|
"code": "+380",
|
|
"countryCode": "UA"
|
|
},
|
|
{
|
|
"name": "United Kingdom",
|
|
"name_ar":"المملكة المتحدة",
|
|
"code": "+44",
|
|
"countryCode": "GB"
|
|
},
|
|
{
|
|
"name": "United States",
|
|
"name_ar":"الولايات المتحدة الامريكانية",
|
|
"code": "+1",
|
|
"countryCode": "US"
|
|
},
|
|
{
|
|
"name": "Uruguay",
|
|
"name_ar":"أوروغواي",
|
|
"code": "+598",
|
|
"countryCode": "UY"
|
|
},
|
|
{
|
|
"name": "Uzbekistan",
|
|
"name_ar":"أوزبكستان",
|
|
"code": "+998",
|
|
"countryCode": "UZ"
|
|
},
|
|
{
|
|
"name": "Vanuatu",
|
|
"name_ar":"فانواتو",
|
|
"code": "+678",
|
|
"countryCode": "VU"
|
|
},
|
|
{
|
|
"name": "Venezuela, Bolivarian Republic of Venezuela",
|
|
"name_ar":"فنزويلا ، جمهورية فنزويلا البوليفارية",
|
|
"code": "+58",
|
|
"countryCode": "VE"
|
|
},
|
|
{
|
|
"name": "Vietnam",
|
|
"name_ar":"فيتنام",
|
|
"code": "+84",
|
|
"countryCode": "VN"
|
|
},
|
|
{
|
|
"name": "Virgin Islands, British",
|
|
"name_ar":"جزر العذراء البريطانية",
|
|
"code": "+1 284",
|
|
"countryCode": "VG"
|
|
},
|
|
{
|
|
"name": "Virgin Islands, U.S.",
|
|
"name_ar":"جزر فيرجن ، الولايات المتحدة",
|
|
"code": "+1 340",
|
|
"countryCode": "VI"
|
|
},
|
|
{
|
|
"name": "Wallis and Futuna",
|
|
"name_ar":"واليس وفوتونا",
|
|
"code": "+681",
|
|
"countryCode": "WF"
|
|
},
|
|
{
|
|
"name": "Yemen",
|
|
"name_ar":"اليمن",
|
|
"code": "+967",
|
|
"countryCode": "YE"
|
|
},
|
|
{
|
|
"name": "Zambia",
|
|
"name_ar":"زامبيا",
|
|
"code": "+260",
|
|
"countryCode": "ZM"
|
|
},
|
|
{
|
|
"name": "Zimbabwe",
|
|
"name_ar":"زيمبابوي",
|
|
"code": "+263",
|
|
"countryCode": "ZW"
|
|
}
|
|
];
|
|
|
|
@override
|
|
void initState() {
|
|
super.initState();
|
|
widget.selectedCountry = widget.selectedCountry ?? countryList[0];
|
|
}
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return SimpleDialog(
|
|
children: [
|
|
Column(
|
|
children: [
|
|
Divider(),
|
|
Container(
|
|
height: MediaQuery.of(context).size.height * 0.60,
|
|
child: SingleChildScrollView(
|
|
child: Column(
|
|
children: [
|
|
...List.generate(
|
|
countryList.length,
|
|
(index) => Column(
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
children: [
|
|
SizedBox(
|
|
height: 2,
|
|
),
|
|
Row(
|
|
children: <Widget>[
|
|
Expanded(
|
|
flex: 1,
|
|
child: InkWell(
|
|
onTap: () {
|
|
setState(() {
|
|
widget.selectedCountry = countryList[index];
|
|
});
|
|
},
|
|
child: ListTile(
|
|
title: Text(countryList[index]["name"]),
|
|
leading: Radio(
|
|
value: countryList[index],
|
|
groupValue: widget.selectedCountry,
|
|
activeColor: Colors.red[800],
|
|
onChanged: (value) {
|
|
setState(() {
|
|
widget.selectedCountry = value;
|
|
});
|
|
},
|
|
),
|
|
),
|
|
),
|
|
)
|
|
],
|
|
),
|
|
SizedBox(
|
|
height: 5.0,
|
|
),
|
|
],
|
|
),
|
|
),
|
|
],
|
|
),
|
|
)
|
|
),
|
|
|
|
SizedBox(
|
|
height: 5.0,
|
|
),
|
|
Row(
|
|
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
children: <Widget>[
|
|
Expanded(
|
|
flex: 1,
|
|
child: InkWell(
|
|
onTap: () {
|
|
Navigator.pop(context);
|
|
},
|
|
child: Padding(
|
|
padding: const EdgeInsets.all(8.0),
|
|
child: Container(
|
|
child: Center(
|
|
child: Texts(
|
|
TranslationBase.of(context).cancel.toUpperCase(),
|
|
color: Colors.red,
|
|
),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
Container(
|
|
width: 1,
|
|
height: 30,
|
|
color: Colors.grey[500],
|
|
),
|
|
Expanded(
|
|
flex: 1,
|
|
child: InkWell(
|
|
onTap: () {
|
|
widget.onValueSelected(widget.selectedCountry);
|
|
Navigator.pop(context);
|
|
},
|
|
child: Padding(
|
|
padding: const EdgeInsets.all(8.0),
|
|
child: Center(
|
|
child: Texts(
|
|
TranslationBase.of(context).ok,
|
|
fontWeight: FontWeight.w400,
|
|
)),
|
|
),
|
|
),
|
|
),
|
|
],
|
|
)
|
|
],
|
|
)
|
|
],
|
|
);
|
|
}
|
|
}
|