intl-tel-input-rails 11.0.14 → 12.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3c1d0988f6040e334d0d0f477c285fa03e730b5f
4
- data.tar.gz: a59b836b0efbdcb54f2405006569670744a6dda2
3
+ metadata.gz: 7d1baa9b3a718f5b83d71cb8e658ad8a69063522
4
+ data.tar.gz: 82b9f1f6bd7912519efe84ae3ffdd8d0a5340d2f
5
5
  SHA512:
6
- metadata.gz: 71a0443b29d296f37ba74eef68e6f1952823df72920e3f68aa73bde76061a946062d69643c6c3dd1c4d2299ad2023ff0d0b9fb716897ccf631d56dd533d9ce13
7
- data.tar.gz: 5f62dd3c9790beca9c02e4342ddddf63d847a90341b167c4b03717d2d7b42ec4f5a21881a1ff7e95c17778b4350b4a6256465db54601c8c1dc7dd43a78e709b0
6
+ metadata.gz: c2a3a59fce5a531c595f5ff13493aa607322c7d3d15a002569f3dbce4b5d0f5b90a1bfb3af6b5bf8482b72cabc19c07de53aa49df10389e999c62667e58af4e5
7
+ data.tar.gz: 6234f84bfe36cc60de05825bec7bc412f2d9953d80c9448e70cb5866b57f8fe361ed7e943f6c06fc44991f7fb1118203257db5d253879fdb1f47db687aa1e710
@@ -1,6 +1,4 @@
1
- Copyright (c) 2014, 2015 Ilias Spyropoulos
2
-
3
- MIT License
1
+ Copyright (c) 2014-2018 Ilias Spyropoulos
4
2
 
5
3
  Permission is hereby granted, free of charge, to any person obtaining
6
4
  a copy of this software and associated documentation files (the
data/README.md CHANGED
@@ -50,6 +50,6 @@ More options for [initializing the plugin](https://github.com/jackocnr/intl-tel-
50
50
 
51
51
  ## Versioning
52
52
 
53
- intl-tel-input-rails 11.0.14.x == intl-tel-input 11.0.14
53
+ intl-tel-input-rails 12.3.0.x == intl-tel-input 12.3.0
54
54
 
55
55
  Where x is used for gem fixes while keeping the same original library version.
File without changes
File without changes
@@ -1,5 +1,5 @@
1
1
  /*
2
- * International Telephone Input v11.0.14
2
+ * International Telephone Input v12.3.0
3
3
  * https://github.com/jackocnr/intl-tel-input.git
4
4
  * Licensed under the MIT license
5
5
  */
@@ -36,6 +36,8 @@
36
36
  formatOnDisplay: true,
37
37
  // geoIp lookup function
38
38
  geoIpLookup: null,
39
+ // inject a hidden input with this name, and on submit, populate it with the result of getNumber
40
+ hiddenInput: "",
39
41
  // initial country
40
42
  initialCountry: "",
41
43
  // don't insert international dial codes
@@ -146,6 +148,7 @@
146
148
  this.countries = allCountries.filter(function(country) {
147
149
  return lowerCaseOnlyCountries.indexOf(country.iso2) > -1;
148
150
  });
151
+ this.countries.sort(this._countryNameSort);
149
152
  } else if (this.options.excludeCountries.length) {
150
153
  var lowerCaseExcludeCountries = this.options.excludeCountries.map(function(country) {
151
154
  return country.toLowerCase();
@@ -157,6 +160,10 @@
157
160
  this.countries = allCountries;
158
161
  }
159
162
  },
163
+ // sort by country name
164
+ _countryNameSort: function(a, b) {
165
+ return a.name.localeCompare(b.name);
166
+ },
160
167
  // process the countryCodes map
161
168
  _processCountryCodes: function() {
162
169
  this.countryCodes = {};
@@ -245,6 +252,12 @@
245
252
  // a little hack so we don't break anything
246
253
  this.countryListItems = $();
247
254
  }
255
+ if (this.options.hiddenInput) {
256
+ this.hiddenInput = $("<input>", {
257
+ type: "hidden",
258
+ name: this.options.hiddenInput
259
+ }).insertAfter(this.telInput);
260
+ }
248
261
  },
249
262
  // add a country <li> to the countryList <ul> container
250
263
  _appendListItems: function(countries, className) {
@@ -273,8 +286,9 @@
273
286
  // 4. picking the first country
274
287
  _setInitialState: function() {
275
288
  var val = this.telInput.val();
276
- // if we already have a dial code, and it's not a regionlessNanp we can go ahead and set the flag, else fall back to default
277
- if (this._getDialCode(val) && !this._isRegionlessNanp(val)) {
289
+ // if we already have a dial code, and it's not a regionlessNanp, we can go ahead and set the flag, else fall back to the default country
290
+ // UPDATE: actually we do want to set the flag for a regionlessNanp in one situation: if we're in nationalMode and there's no initialCountry - otherwise we lose the +1 and we're left with an invalid number
291
+ if (this._getDialCode(val) && (!this._isRegionlessNanp(val) || this.options.nationalMode && !this.options.initialCountry)) {
278
292
  this._updateFlagFromNumber(val);
279
293
  } else if (this.options.initialCountry !== "auto") {
280
294
  // see if we should select a flag
@@ -308,6 +322,19 @@
308
322
  if (this.options.allowDropdown) {
309
323
  this._initDropdownListeners();
310
324
  }
325
+ if (this.hiddenInput) {
326
+ this._initHiddenInputListener();
327
+ }
328
+ },
329
+ // update hidden input on form submit
330
+ _initHiddenInputListener: function() {
331
+ var that = this;
332
+ var form = this.telInput.closest("form");
333
+ if (form.length) {
334
+ form.submit(function() {
335
+ that.hiddenInput.val(that.getNumber());
336
+ });
337
+ }
311
338
  },
312
339
  // initialise the dropdown listeners
313
340
  _initDropdownListeners: function() {
@@ -495,6 +522,7 @@
495
522
  this._bindDropdownListeners();
496
523
  // update the arrow
497
524
  this.selectedFlagInner.children(".iti-arrow").addClass("up");
525
+ this.telInput.trigger("open:countrydropdown");
498
526
  },
499
527
  // decide where to position dropdown (depends on position within viewport, and scroll)
500
528
  _setDropdownPosition: function() {
@@ -779,6 +807,7 @@
779
807
  }
780
808
  this.dropdown.detach();
781
809
  }
810
+ this.telInput.trigger("close:countrydropdown");
782
811
  },
783
812
  // check if an element is visible within it's container, else scroll until it is
784
813
  _scrollTo: function(element, middle) {
@@ -1005,6 +1034,11 @@
1005
1034
  if (flagChanged) {
1006
1035
  this._triggerCountryChange();
1007
1036
  }
1037
+ },
1038
+ // set the placeholder number typ
1039
+ setPlaceholderNumberType: function(type) {
1040
+ this.options.placeholderNumberType = type;
1041
+ this._updatePlaceholder();
1008
1042
  }
1009
1043
  };
1010
1044
  // using https://github.com/jquery-boilerplate/jquery-boilerplate/wiki/Extending-jQuery-Boilerplate
@@ -1083,7 +1117,7 @@
1083
1117
  // default options
1084
1118
  $.fn[pluginName].defaults = defaults;
1085
1119
  // version
1086
- $.fn[pluginName].version = "11.0.14";
1120
+ $.fn[pluginName].version = "12.3.0";
1087
1121
  // Array of country objects for the flag dropdown.
1088
1122
  // Here is the criteria for the plugin to support a given country/territory
1089
1123
  // - It has an iso2 code: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
@@ -1098,7 +1132,7 @@
1098
1132
  // Order (if >1 country with same dial code),
1099
1133
  // Area codes
1100
1134
  // ]
1101
- var allCountries = [ [ "Afghanistan (‫افغانستان‬‎)", "af", "93" ], [ "Albania (Shqipëri)", "al", "355" ], [ "Algeria (‫الجزائر‬‎)", "dz", "213" ], [ "American Samoa", "as", "1684" ], [ "Andorra", "ad", "376" ], [ "Angola", "ao", "244" ], [ "Anguilla", "ai", "1264" ], [ "Antigua and Barbuda", "ag", "1268" ], [ "Argentina", "ar", "54" ], [ "Armenia (Հայաստան)", "am", "374" ], [ "Aruba", "aw", "297" ], [ "Australia", "au", "61", 0 ], [ "Austria (Österreich)", "at", "43" ], [ "Azerbaijan (Azərbaycan)", "az", "994" ], [ "Bahamas", "bs", "1242" ], [ "Bahrain (‫البحرين‬‎)", "bh", "973" ], [ "Bangladesh (বাংলাদেশ)", "bd", "880" ], [ "Barbados", "bb", "1246" ], [ "Belarus (Беларусь)", "by", "375" ], [ "Belgium (België)", "be", "32" ], [ "Belize", "bz", "501" ], [ "Benin (Bénin)", "bj", "229" ], [ "Bermuda", "bm", "1441" ], [ "Bhutan (འབྲུག)", "bt", "975" ], [ "Bolivia", "bo", "591" ], [ "Bosnia and Herzegovina (Босна и Херцеговина)", "ba", "387" ], [ "Botswana", "bw", "267" ], [ "Brazil (Brasil)", "br", "55" ], [ "British Indian Ocean Territory", "io", "246" ], [ "British Virgin Islands", "vg", "1284" ], [ "Brunei", "bn", "673" ], [ "Bulgaria (България)", "bg", "359" ], [ "Burkina Faso", "bf", "226" ], [ "Burundi (Uburundi)", "bi", "257" ], [ "Cambodia (កម្ពុជា)", "kh", "855" ], [ "Cameroon (Cameroun)", "cm", "237" ], [ "Canada", "ca", "1", 1, [ "204", "226", "236", "249", "250", "289", "306", "343", "365", "387", "403", "416", "418", "431", "437", "438", "450", "506", "514", "519", "548", "579", "581", "587", "604", "613", "639", "647", "672", "705", "709", "742", "778", "780", "782", "807", "819", "825", "867", "873", "902", "905" ] ], [ "Cape Verde (Kabu Verdi)", "cv", "238" ], [ "Caribbean Netherlands", "bq", "599", 1 ], [ "Cayman Islands", "ky", "1345" ], [ "Central African Republic (République centrafricaine)", "cf", "236" ], [ "Chad (Tchad)", "td", "235" ], [ "Chile", "cl", "56" ], [ "China (中国)", "cn", "86" ], [ "Christmas Island", "cx", "61", 2 ], [ "Cocos (Keeling) Islands", "cc", "61", 1 ], [ "Colombia", "co", "57" ], [ "Comoros (‫جزر القمر‬‎)", "km", "269" ], [ "Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)", "cd", "243" ], [ "Congo (Republic) (Congo-Brazzaville)", "cg", "242" ], [ "Cook Islands", "ck", "682" ], [ "Costa Rica", "cr", "506" ], [ "Côte d’Ivoire", "ci", "225" ], [ "Croatia (Hrvatska)", "hr", "385" ], [ "Cuba", "cu", "53" ], [ "Curaçao", "cw", "599", 0 ], [ "Cyprus (Κύπρος)", "cy", "357" ], [ "Czech Republic (Česká republika)", "cz", "420" ], [ "Denmark (Danmark)", "dk", "45" ], [ "Djibouti", "dj", "253" ], [ "Dominica", "dm", "1767" ], [ "Dominican Republic (República Dominicana)", "do", "1", 2, [ "809", "829", "849" ] ], [ "Ecuador", "ec", "593" ], [ "Egypt (‫مصر‬‎)", "eg", "20" ], [ "El Salvador", "sv", "503" ], [ "Equatorial Guinea (Guinea Ecuatorial)", "gq", "240" ], [ "Eritrea", "er", "291" ], [ "Estonia (Eesti)", "ee", "372" ], [ "Ethiopia", "et", "251" ], [ "Falkland Islands (Islas Malvinas)", "fk", "500" ], [ "Faroe Islands (Føroyar)", "fo", "298" ], [ "Fiji", "fj", "679" ], [ "Finland (Suomi)", "fi", "358", 0 ], [ "France", "fr", "33" ], [ "French Guiana (Guyane française)", "gf", "594" ], [ "French Polynesia (Polynésie française)", "pf", "689" ], [ "Gabon", "ga", "241" ], [ "Gambia", "gm", "220" ], [ "Georgia (საქართველო)", "ge", "995" ], [ "Germany (Deutschland)", "de", "49" ], [ "Ghana (Gaana)", "gh", "233" ], [ "Gibraltar", "gi", "350" ], [ "Greece (Ελλάδα)", "gr", "30" ], [ "Greenland (Kalaallit Nunaat)", "gl", "299" ], [ "Grenada", "gd", "1473" ], [ "Guadeloupe", "gp", "590", 0 ], [ "Guam", "gu", "1671" ], [ "Guatemala", "gt", "502" ], [ "Guernsey", "gg", "44", 1 ], [ "Guinea (Guinée)", "gn", "224" ], [ "Guinea-Bissau (Guiné Bissau)", "gw", "245" ], [ "Guyana", "gy", "592" ], [ "Haiti", "ht", "509" ], [ "Honduras", "hn", "504" ], [ "Hong Kong (香港)", "hk", "852" ], [ "Hungary (Magyarország)", "hu", "36" ], [ "Iceland (Ísland)", "is", "354" ], [ "India (भारत)", "in", "91" ], [ "Indonesia", "id", "62" ], [ "Iran (‫ایران‬‎)", "ir", "98" ], [ "Iraq (‫العراق‬‎)", "iq", "964" ], [ "Ireland", "ie", "353" ], [ "Isle of Man", "im", "44", 2 ], [ "Israel (‫ישראל‬‎)", "il", "972" ], [ "Italy (Italia)", "it", "39", 0 ], [ "Jamaica", "jm", "1876" ], [ "Japan (日本)", "jp", "81" ], [ "Jersey", "je", "44", 3 ], [ "Jordan (‫الأردن‬‎)", "jo", "962" ], [ "Kazakhstan (Казахстан)", "kz", "7", 1 ], [ "Kenya", "ke", "254" ], [ "Kiribati", "ki", "686" ], [ "Kosovo", "xk", "383" ], [ "Kuwait (‫الكويت‬‎)", "kw", "965" ], [ "Kyrgyzstan (Кыргызстан)", "kg", "996" ], [ "Laos (ລາວ)", "la", "856" ], [ "Latvia (Latvija)", "lv", "371" ], [ "Lebanon (‫لبنان‬‎)", "lb", "961" ], [ "Lesotho", "ls", "266" ], [ "Liberia", "lr", "231" ], [ "Libya (‫ليبيا‬‎)", "ly", "218" ], [ "Liechtenstein", "li", "423" ], [ "Lithuania (Lietuva)", "lt", "370" ], [ "Luxembourg", "lu", "352" ], [ "Macau (澳門)", "mo", "853" ], [ "Macedonia (FYROM) (Македонија)", "mk", "389" ], [ "Madagascar (Madagasikara)", "mg", "261" ], [ "Malawi", "mw", "265" ], [ "Malaysia", "my", "60" ], [ "Maldives", "mv", "960" ], [ "Mali", "ml", "223" ], [ "Malta", "mt", "356" ], [ "Marshall Islands", "mh", "692" ], [ "Martinique", "mq", "596" ], [ "Mauritania (‫موريتانيا‬‎)", "mr", "222" ], [ "Mauritius (Moris)", "mu", "230" ], [ "Mayotte", "yt", "262", 1 ], [ "Mexico (México)", "mx", "52" ], [ "Micronesia", "fm", "691" ], [ "Moldova (Republica Moldova)", "md", "373" ], [ "Monaco", "mc", "377" ], [ "Mongolia (Монгол)", "mn", "976" ], [ "Montenegro (Crna Gora)", "me", "382" ], [ "Montserrat", "ms", "1664" ], [ "Morocco (‫المغرب‬‎)", "ma", "212", 0 ], [ "Mozambique (Moçambique)", "mz", "258" ], [ "Myanmar (Burma) (မြန်မာ)", "mm", "95" ], [ "Namibia (Namibië)", "na", "264" ], [ "Nauru", "nr", "674" ], [ "Nepal (नेपाल)", "np", "977" ], [ "Netherlands (Nederland)", "nl", "31" ], [ "New Caledonia (Nouvelle-Calédonie)", "nc", "687" ], [ "New Zealand", "nz", "64" ], [ "Nicaragua", "ni", "505" ], [ "Niger (Nijar)", "ne", "227" ], [ "Nigeria", "ng", "234" ], [ "Niue", "nu", "683" ], [ "Norfolk Island", "nf", "672" ], [ "North Korea (조선 민주주의 인민 공화국)", "kp", "850" ], [ "Northern Mariana Islands", "mp", "1670" ], [ "Norway (Norge)", "no", "47", 0 ], [ "Oman (‫عُمان‬‎)", "om", "968" ], [ "Pakistan (‫پاکستان‬‎)", "pk", "92" ], [ "Palau", "pw", "680" ], [ "Palestine (‫فلسطين‬‎)", "ps", "970" ], [ "Panama (Panamá)", "pa", "507" ], [ "Papua New Guinea", "pg", "675" ], [ "Paraguay", "py", "595" ], [ "Peru (Perú)", "pe", "51" ], [ "Philippines", "ph", "63" ], [ "Poland (Polska)", "pl", "48" ], [ "Portugal", "pt", "351" ], [ "Puerto Rico", "pr", "1", 3, [ "787", "939" ] ], [ "Qatar (‫قطر‬‎)", "qa", "974" ], [ "Réunion (La Réunion)", "re", "262", 0 ], [ "Romania (România)", "ro", "40" ], [ "Russia (Россия)", "ru", "7", 0 ], [ "Rwanda", "rw", "250" ], [ "Saint Barthélemy (Saint-Barthélemy)", "bl", "590", 1 ], [ "Saint Helena", "sh", "290" ], [ "Saint Kitts and Nevis", "kn", "1869" ], [ "Saint Lucia", "lc", "1758" ], [ "Saint Martin (Saint-Martin (partie française))", "mf", "590", 2 ], [ "Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)", "pm", "508" ], [ "Saint Vincent and the Grenadines", "vc", "1784" ], [ "Samoa", "ws", "685" ], [ "San Marino", "sm", "378" ], [ "São Tomé and Príncipe (São Tomé e Príncipe)", "st", "239" ], [ "Saudi Arabia (‫المملكة العربية السعودية‬‎)", "sa", "966" ], [ "Senegal (Sénégal)", "sn", "221" ], [ "Serbia (Србија)", "rs", "381" ], [ "Seychelles", "sc", "248" ], [ "Sierra Leone", "sl", "232" ], [ "Singapore", "sg", "65" ], [ "Sint Maarten", "sx", "1721" ], [ "Slovakia (Slovensko)", "sk", "421" ], [ "Slovenia (Slovenija)", "si", "386" ], [ "Solomon Islands", "sb", "677" ], [ "Somalia (Soomaaliya)", "so", "252" ], [ "South Africa", "za", "27" ], [ "South Korea (대한민국)", "kr", "82" ], [ "South Sudan (‫جنوب السودان‬‎)", "ss", "211" ], [ "Spain (España)", "es", "34" ], [ "Sri Lanka (ශ්‍රී ලංකාව)", "lk", "94" ], [ "Sudan (‫السودان‬‎)", "sd", "249" ], [ "Suriname", "sr", "597" ], [ "Svalbard and Jan Mayen", "sj", "47", 1 ], [ "Swaziland", "sz", "268" ], [ "Sweden (Sverige)", "se", "46" ], [ "Switzerland (Schweiz)", "ch", "41" ], [ "Syria (‫سوريا‬‎)", "sy", "963" ], [ "Taiwan (台灣)", "tw", "886" ], [ "Tajikistan", "tj", "992" ], [ "Tanzania", "tz", "255" ], [ "Thailand (ไทย)", "th", "66" ], [ "Timor-Leste", "tl", "670" ], [ "Togo", "tg", "228" ], [ "Tokelau", "tk", "690" ], [ "Tonga", "to", "676" ], [ "Trinidad and Tobago", "tt", "1868" ], [ "Tunisia (‫تونس‬‎)", "tn", "216" ], [ "Turkey (Türkiye)", "tr", "90" ], [ "Turkmenistan", "tm", "993" ], [ "Turks and Caicos Islands", "tc", "1649" ], [ "Tuvalu", "tv", "688" ], [ "U.S. Virgin Islands", "vi", "1340" ], [ "Uganda", "ug", "256" ], [ "Ukraine (Україна)", "ua", "380" ], [ "United Arab Emirates (‫الإمارات العربية المتحدة‬‎)", "ae", "971" ], [ "United Kingdom", "gb", "44", 0 ], [ "United States", "us", "1", 0 ], [ "Uruguay", "uy", "598" ], [ "Uzbekistan (Oʻzbekiston)", "uz", "998" ], [ "Vanuatu", "vu", "678" ], [ "Vatican City (Città del Vaticano)", "va", "39", 1 ], [ "Venezuela", "ve", "58" ], [ "Vietnam (Việt Nam)", "vn", "84" ], [ "Wallis and Futuna", "wf", "681" ], [ "Western Sahara (‫الصحراء الغربية‬‎)", "eh", "212", 1 ], [ "Yemen (‫اليمن‬‎)", "ye", "967" ], [ "Zambia", "zm", "260" ], [ "Zimbabwe", "zw", "263" ], [ "Åland Islands", "ax", "358", 1 ] ];
1135
+ var allCountries = [ [ "Afghanistan (‫افغانستان‬‎)", "af", "93" ], [ "Albania (Shqipëri)", "al", "355" ], [ "Algeria (‫الجزائر‬‎)", "dz", "213" ], [ "American Samoa", "as", "1684" ], [ "Andorra", "ad", "376" ], [ "Angola", "ao", "244" ], [ "Anguilla", "ai", "1264" ], [ "Antigua and Barbuda", "ag", "1268" ], [ "Argentina", "ar", "54" ], [ "Armenia (Հայաստան)", "am", "374" ], [ "Aruba", "aw", "297" ], [ "Australia", "au", "61", 0 ], [ "Austria (Österreich)", "at", "43" ], [ "Azerbaijan (Azərbaycan)", "az", "994" ], [ "Bahamas", "bs", "1242" ], [ "Bahrain (‫البحرين‬‎)", "bh", "973" ], [ "Bangladesh (বাংলাদেশ)", "bd", "880" ], [ "Barbados", "bb", "1246" ], [ "Belarus (Беларусь)", "by", "375" ], [ "Belgium (België)", "be", "32" ], [ "Belize", "bz", "501" ], [ "Benin (Bénin)", "bj", "229" ], [ "Bermuda", "bm", "1441" ], [ "Bhutan (འབྲུག)", "bt", "975" ], [ "Bolivia", "bo", "591" ], [ "Bosnia and Herzegovina (Босна и Херцеговина)", "ba", "387" ], [ "Botswana", "bw", "267" ], [ "Brazil (Brasil)", "br", "55" ], [ "British Indian Ocean Territory", "io", "246" ], [ "British Virgin Islands", "vg", "1284" ], [ "Brunei", "bn", "673" ], [ "Bulgaria (България)", "bg", "359" ], [ "Burkina Faso", "bf", "226" ], [ "Burundi (Uburundi)", "bi", "257" ], [ "Cambodia (កម្ពុជា)", "kh", "855" ], [ "Cameroon (Cameroun)", "cm", "237" ], [ "Canada", "ca", "1", 1, [ "204", "226", "236", "249", "250", "289", "306", "343", "365", "387", "403", "416", "418", "431", "437", "438", "450", "506", "514", "519", "548", "579", "581", "587", "604", "613", "639", "647", "672", "705", "709", "742", "778", "780", "782", "807", "819", "825", "867", "873", "902", "905" ] ], [ "Cape Verde (Kabu Verdi)", "cv", "238" ], [ "Caribbean Netherlands", "bq", "599", 1 ], [ "Cayman Islands", "ky", "1345" ], [ "Central African Republic (République centrafricaine)", "cf", "236" ], [ "Chad (Tchad)", "td", "235" ], [ "Chile", "cl", "56" ], [ "China (中国)", "cn", "86" ], [ "Christmas Island", "cx", "61", 2 ], [ "Cocos (Keeling) Islands", "cc", "61", 1 ], [ "Colombia", "co", "57" ], [ "Comoros (‫جزر القمر‬‎)", "km", "269" ], [ "Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)", "cd", "243" ], [ "Congo (Republic) (Congo-Brazzaville)", "cg", "242" ], [ "Cook Islands", "ck", "682" ], [ "Costa Rica", "cr", "506" ], [ "Côte d’Ivoire", "ci", "225" ], [ "Croatia (Hrvatska)", "hr", "385" ], [ "Cuba", "cu", "53" ], [ "Curaçao", "cw", "599", 0 ], [ "Cyprus (Κύπρος)", "cy", "357" ], [ "Czech Republic (Česká republika)", "cz", "420" ], [ "Denmark (Danmark)", "dk", "45" ], [ "Djibouti", "dj", "253" ], [ "Dominica", "dm", "1767" ], [ "Dominican Republic (República Dominicana)", "do", "1", 2, [ "809", "829", "849" ] ], [ "Ecuador", "ec", "593" ], [ "Egypt (‫مصر‬‎)", "eg", "20" ], [ "El Salvador", "sv", "503" ], [ "Equatorial Guinea (Guinea Ecuatorial)", "gq", "240" ], [ "Eritrea", "er", "291" ], [ "Estonia (Eesti)", "ee", "372" ], [ "Ethiopia", "et", "251" ], [ "Falkland Islands (Islas Malvinas)", "fk", "500" ], [ "Faroe Islands (Føroyar)", "fo", "298" ], [ "Fiji", "fj", "679" ], [ "Finland (Suomi)", "fi", "358", 0 ], [ "France", "fr", "33" ], [ "French Guiana (Guyane française)", "gf", "594" ], [ "French Polynesia (Polynésie française)", "pf", "689" ], [ "Gabon", "ga", "241" ], [ "Gambia", "gm", "220" ], [ "Georgia (საქართველო)", "ge", "995" ], [ "Germany (Deutschland)", "de", "49" ], [ "Ghana (Gaana)", "gh", "233" ], [ "Gibraltar", "gi", "350" ], [ "Greece (Ελλάδα)", "gr", "30" ], [ "Greenland (Kalaallit Nunaat)", "gl", "299" ], [ "Grenada", "gd", "1473" ], [ "Guadeloupe", "gp", "590", 0 ], [ "Guam", "gu", "1671" ], [ "Guatemala", "gt", "502" ], [ "Guernsey", "gg", "44", 1 ], [ "Guinea (Guinée)", "gn", "224" ], [ "Guinea-Bissau (Guiné Bissau)", "gw", "245" ], [ "Guyana", "gy", "592" ], [ "Haiti", "ht", "509" ], [ "Honduras", "hn", "504" ], [ "Hong Kong (香港)", "hk", "852" ], [ "Hungary (Magyarország)", "hu", "36" ], [ "Iceland (Ísland)", "is", "354" ], [ "India (भारत)", "in", "91" ], [ "Indonesia", "id", "62" ], [ "Iran (‫ایران‬‎)", "ir", "98" ], [ "Iraq (‫العراق‬‎)", "iq", "964" ], [ "Ireland", "ie", "353" ], [ "Isle of Man", "im", "44", 2 ], [ "Israel (‫ישראל‬‎)", "il", "972" ], [ "Italy (Italia)", "it", "39", 0 ], [ "Jamaica", "jm", "1", 4, [ "876", "658" ] ], [ "Japan (日本)", "jp", "81" ], [ "Jersey", "je", "44", 3 ], [ "Jordan (‫الأردن‬‎)", "jo", "962" ], [ "Kazakhstan (Казахстан)", "kz", "7", 1 ], [ "Kenya", "ke", "254" ], [ "Kiribati", "ki", "686" ], [ "Kosovo", "xk", "383" ], [ "Kuwait (‫الكويت‬‎)", "kw", "965" ], [ "Kyrgyzstan (Кыргызстан)", "kg", "996" ], [ "Laos (ລາວ)", "la", "856" ], [ "Latvia (Latvija)", "lv", "371" ], [ "Lebanon (‫لبنان‬‎)", "lb", "961" ], [ "Lesotho", "ls", "266" ], [ "Liberia", "lr", "231" ], [ "Libya (‫ليبيا‬‎)", "ly", "218" ], [ "Liechtenstein", "li", "423" ], [ "Lithuania (Lietuva)", "lt", "370" ], [ "Luxembourg", "lu", "352" ], [ "Macau (澳門)", "mo", "853" ], [ "Macedonia (FYROM) (Македонија)", "mk", "389" ], [ "Madagascar (Madagasikara)", "mg", "261" ], [ "Malawi", "mw", "265" ], [ "Malaysia", "my", "60" ], [ "Maldives", "mv", "960" ], [ "Mali", "ml", "223" ], [ "Malta", "mt", "356" ], [ "Marshall Islands", "mh", "692" ], [ "Martinique", "mq", "596" ], [ "Mauritania (‫موريتانيا‬‎)", "mr", "222" ], [ "Mauritius (Moris)", "mu", "230" ], [ "Mayotte", "yt", "262", 1 ], [ "Mexico (México)", "mx", "52" ], [ "Micronesia", "fm", "691" ], [ "Moldova (Republica Moldova)", "md", "373" ], [ "Monaco", "mc", "377" ], [ "Mongolia (Монгол)", "mn", "976" ], [ "Montenegro (Crna Gora)", "me", "382" ], [ "Montserrat", "ms", "1664" ], [ "Morocco (‫المغرب‬‎)", "ma", "212", 0 ], [ "Mozambique (Moçambique)", "mz", "258" ], [ "Myanmar (Burma) (မြန်မာ)", "mm", "95" ], [ "Namibia (Namibië)", "na", "264" ], [ "Nauru", "nr", "674" ], [ "Nepal (नेपाल)", "np", "977" ], [ "Netherlands (Nederland)", "nl", "31" ], [ "New Caledonia (Nouvelle-Calédonie)", "nc", "687" ], [ "New Zealand", "nz", "64" ], [ "Nicaragua", "ni", "505" ], [ "Niger (Nijar)", "ne", "227" ], [ "Nigeria", "ng", "234" ], [ "Niue", "nu", "683" ], [ "Norfolk Island", "nf", "672" ], [ "North Korea (조선 민주주의 인민 공화국)", "kp", "850" ], [ "Northern Mariana Islands", "mp", "1670" ], [ "Norway (Norge)", "no", "47", 0 ], [ "Oman (‫عُمان‬‎)", "om", "968" ], [ "Pakistan (‫پاکستان‬‎)", "pk", "92" ], [ "Palau", "pw", "680" ], [ "Palestine (‫فلسطين‬‎)", "ps", "970" ], [ "Panama (Panamá)", "pa", "507" ], [ "Papua New Guinea", "pg", "675" ], [ "Paraguay", "py", "595" ], [ "Peru (Perú)", "pe", "51" ], [ "Philippines", "ph", "63" ], [ "Poland (Polska)", "pl", "48" ], [ "Portugal", "pt", "351" ], [ "Puerto Rico", "pr", "1", 3, [ "787", "939" ] ], [ "Qatar (‫قطر‬‎)", "qa", "974" ], [ "Réunion (La Réunion)", "re", "262", 0 ], [ "Romania (România)", "ro", "40" ], [ "Russia (Россия)", "ru", "7", 0 ], [ "Rwanda", "rw", "250" ], [ "Saint Barthélemy", "bl", "590", 1 ], [ "Saint Helena", "sh", "290" ], [ "Saint Kitts and Nevis", "kn", "1869" ], [ "Saint Lucia", "lc", "1758" ], [ "Saint Martin (Saint-Martin (partie française))", "mf", "590", 2 ], [ "Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)", "pm", "508" ], [ "Saint Vincent and the Grenadines", "vc", "1784" ], [ "Samoa", "ws", "685" ], [ "San Marino", "sm", "378" ], [ "São Tomé and Príncipe (São Tomé e Príncipe)", "st", "239" ], [ "Saudi Arabia (‫المملكة العربية السعودية‬‎)", "sa", "966" ], [ "Senegal (Sénégal)", "sn", "221" ], [ "Serbia (Србија)", "rs", "381" ], [ "Seychelles", "sc", "248" ], [ "Sierra Leone", "sl", "232" ], [ "Singapore", "sg", "65" ], [ "Sint Maarten", "sx", "1721" ], [ "Slovakia (Slovensko)", "sk", "421" ], [ "Slovenia (Slovenija)", "si", "386" ], [ "Solomon Islands", "sb", "677" ], [ "Somalia (Soomaaliya)", "so", "252" ], [ "South Africa", "za", "27" ], [ "South Korea (대한민국)", "kr", "82" ], [ "South Sudan (‫جنوب السودان‬‎)", "ss", "211" ], [ "Spain (España)", "es", "34" ], [ "Sri Lanka (ශ්‍රී ලංකාව)", "lk", "94" ], [ "Sudan (‫السودان‬‎)", "sd", "249" ], [ "Suriname", "sr", "597" ], [ "Svalbard and Jan Mayen", "sj", "47", 1 ], [ "Swaziland", "sz", "268" ], [ "Sweden (Sverige)", "se", "46" ], [ "Switzerland (Schweiz)", "ch", "41" ], [ "Syria (‫سوريا‬‎)", "sy", "963" ], [ "Taiwan (台灣)", "tw", "886" ], [ "Tajikistan", "tj", "992" ], [ "Tanzania", "tz", "255" ], [ "Thailand (ไทย)", "th", "66" ], [ "Timor-Leste", "tl", "670" ], [ "Togo", "tg", "228" ], [ "Tokelau", "tk", "690" ], [ "Tonga", "to", "676" ], [ "Trinidad and Tobago", "tt", "1868" ], [ "Tunisia (‫تونس‬‎)", "tn", "216" ], [ "Turkey (Türkiye)", "tr", "90" ], [ "Turkmenistan", "tm", "993" ], [ "Turks and Caicos Islands", "tc", "1649" ], [ "Tuvalu", "tv", "688" ], [ "U.S. Virgin Islands", "vi", "1340" ], [ "Uganda", "ug", "256" ], [ "Ukraine (Україна)", "ua", "380" ], [ "United Arab Emirates (‫الإمارات العربية المتحدة‬‎)", "ae", "971" ], [ "United Kingdom", "gb", "44", 0 ], [ "United States", "us", "1", 0 ], [ "Uruguay", "uy", "598" ], [ "Uzbekistan (Oʻzbekiston)", "uz", "998" ], [ "Vanuatu", "vu", "678" ], [ "Vatican City (Città del Vaticano)", "va", "39", 1 ], [ "Venezuela", "ve", "58" ], [ "Vietnam (Việt Nam)", "vn", "84" ], [ "Wallis and Futuna (Wallis-et-Futuna)", "wf", "681" ], [ "Western Sahara (‫الصحراء الغربية‬‎)", "eh", "212", 1 ], [ "Yemen (‫اليمن‬‎)", "ye", "967" ], [ "Zambia", "zm", "260" ], [ "Zimbabwe", "zw", "263" ], [ "Åland Islands", "ax", "358", 1 ] ];
1102
1136
  // loop over all of the countries above
1103
1137
  for (var i = 0; i < allCountries.length; i++) {
1104
1138
  var c = allCountries[i];
@@ -1110,4 +1144,4 @@
1110
1144
  areaCodes: c[4] || null
1111
1145
  };
1112
1146
  }
1113
- });
1147
+ });
@@ -12,968 +12,334 @@
12
12
  * // import the scss file after the overrides
13
13
  * @import "bower_component/intl-tel-input/src/css/intlTelInput";
14
14
  */
15
+
16
+ // rgba is needed for the selected flag hover state to blend in with
17
+ // the border-highlighting some browsers give the input on focus
18
+ $hoverColor: rgba(0, 0, 0, 0.05) !default;
19
+ $greyText: #999 !default;
20
+ $greyBorder: #CCC !default;
21
+
22
+ $flagHeight: 15px !default;
23
+ $flagWidth: 20px !default;
24
+ $flagPadding: 8px !default;
25
+ // this border width is used for the popup and divider, but it is also
26
+ // assumed to be the border width of the input, which we do not control
27
+ $borderWidth: 1px !default;
28
+
29
+ $arrowHeight: 4px !default;
30
+ $arrowWidth: 6px !default;
31
+ $triangleBorder: 3px !default;
32
+ $arrowPadding: 6px !default;
33
+ $arrowColor: #555 !default;
34
+
35
+ $inputPadding: 6px !default;
36
+ $selectedFlagWidth: $flagWidth + (2 * $flagPadding) !default;
37
+ $selectedFlagArrowWidth: $flagWidth + $flagPadding + $arrowWidth + (2 * $arrowPadding) !default;
38
+ $selectedFlagDialCodeWidth: $selectedFlagWidth + $flagPadding !default;
39
+ $selectedFlagArrowDialCodeWidth: $selectedFlagArrowWidth + $flagPadding !default;
40
+
41
+ // image related variables
42
+ $flagsImagePath: "" !default;
43
+ $flagsImageName: "flags" !default;
44
+ $flagsImageExtension: "png" !default;
45
+
46
+ // enough space for them to click off to close
47
+ $mobilePopupMargin: 30px;
48
+
15
49
  .intl-tel-input {
50
+ // need position on the container so the selected flag can be
51
+ // absolutely positioned over the input
16
52
  position: relative;
17
- display: inline-block; }
18
- .intl-tel-input * {
53
+ // keep the input's default inline properties
54
+ display: inline-block;
55
+
56
+ // paul irish says this is ok
57
+ // http://www.paulirish.com/2012/box-sizing-border-box-ftw/
58
+ * {
19
59
  box-sizing: border-box;
20
- -moz-box-sizing: border-box; }
21
- .intl-tel-input .hide {
22
- display: none; }
23
- .intl-tel-input .v-hide {
24
- visibility: hidden; }
25
- .intl-tel-input input, .intl-tel-input input[type=text], .intl-tel-input input[type=tel] {
60
+ -moz-box-sizing: border-box;
61
+ }
62
+
63
+ .hide {
64
+ display: none;
65
+ }
66
+ // need this during init, to get the height of the dropdown
67
+ .v-hide {
68
+ visibility: hidden;
69
+ }
70
+
71
+ // specify types to increase specificity e.g. to override bootstrap v2.3
72
+ input, input[type=text], input[type=tel] {
26
73
  position: relative;
74
+ // input is bottom level, below selected flag and dropdown
27
75
  z-index: 0;
76
+
77
+ // any vertical margin the user has on their inputs would no longer work as expected
78
+ // because we wrap everything in a container div. i justify the use of !important
79
+ // here because i don't think the user should ever have vertical margin here - when
80
+ // the input is wrapped in a container, vertical margin messes up alignment with other
81
+ // inline elements (e.g. an adjacent button) in firefox, and probably other browsers.
28
82
  margin-top: 0 !important;
29
83
  margin-bottom: 0 !important;
30
- padding-right: 36px;
31
- margin-right: 0; }
32
- .intl-tel-input .flag-container {
84
+
85
+ // make space for the selected flag
86
+ // Note: no !important here, as the user may want to tweak this so that the
87
+ // perceived input padding matches their existing styles
88
+ padding-right: $selectedFlagWidth;
89
+
90
+ // any margin-right here will push the selected-flag away
91
+ margin-right: 0;
92
+ }
93
+
94
+ .flag-container {
95
+ // positioned over the top of the input
33
96
  position: absolute;
97
+ // full height
34
98
  top: 0;
35
99
  bottom: 0;
36
100
  right: 0;
37
- padding: 1px; }
38
- .intl-tel-input .selected-flag {
101
+ // prevent the highlighted child from overlapping the input border
102
+ padding: $borderWidth;
103
+ }
104
+
105
+ .selected-flag {
106
+ // render above the input
39
107
  z-index: 1;
40
108
  position: relative;
41
- width: 36px;
109
+ width: $selectedFlagWidth;
110
+ // this must be full-height both for the hover highlight, and to push down the
111
+ // dropdown so it appears below the input
42
112
  height: 100%;
43
- padding: 0 0 0 8px; }
44
- .intl-tel-input .selected-flag .iti-flag {
113
+ padding: 0 0 0 $flagPadding;
114
+
115
+ // vertically center the flag
116
+ .iti-flag {
45
117
  position: absolute;
46
118
  top: 0;
47
119
  bottom: 0;
48
- margin: auto; }
49
- .intl-tel-input .selected-flag .iti-arrow {
120
+ margin: auto;
121
+ }
122
+
123
+ .iti-arrow {
50
124
  position: absolute;
125
+ // split the difference between the flag and the arrow height to verically center
51
126
  top: 50%;
52
- margin-top: -2px;
53
- right: 6px;
127
+ margin-top: -1 * ($arrowHeight / 2);
128
+ right: $arrowPadding;
129
+
130
+ // css triangle
54
131
  width: 0;
55
132
  height: 0;
56
- border-left: 3px solid transparent;
57
- border-right: 3px solid transparent;
58
- border-top: 4px solid #555; }
59
- .intl-tel-input .selected-flag .iti-arrow.up {
133
+ border-left: $triangleBorder solid transparent;
134
+ border-right: $triangleBorder solid transparent;
135
+ border-top: $arrowHeight solid $arrowColor;
136
+
137
+ &.up {
60
138
  border-top: none;
61
- border-bottom: 4px solid #555; }
62
- .intl-tel-input .country-list {
139
+ border-bottom: $arrowHeight solid $arrowColor;
140
+ }
141
+ }
142
+ }
143
+
144
+ // the dropdown
145
+ .country-list {
63
146
  position: absolute;
147
+ // popup so render above everything else
64
148
  z-index: 2;
149
+
150
+ // override default list styles
65
151
  list-style: none;
152
+ // in case any container has text-align:center
66
153
  text-align: left;
154
+
155
+ // place menu above the input element
156
+ &.dropup {
157
+ bottom: 100%;
158
+ margin-bottom: (-$borderWidth);
159
+ }
160
+
161
+ // dropdown flags need consistent width, so wrap in a container
162
+ .flag-box {
163
+ display: inline-block;
164
+ width: $flagWidth;
165
+ }
166
+
67
167
  padding: 0;
68
- margin: 0 0 0 -1px;
69
- box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
168
+ // margin-left to compensate for the padding on the parent
169
+ margin: 0 0 0 (-$borderWidth);
170
+
171
+ box-shadow: 1px 1px 4px rgba(0,0,0,0.2);
70
172
  background-color: white;
71
- border: 1px solid #CCC;
173
+ border: $borderWidth solid $greyBorder;
174
+
175
+ // don't let the contents wrap AKA the container will be as wide as the contents
72
176
  white-space: nowrap;
73
- max-height: 200px;
74
- overflow-y: scroll; }
75
- .intl-tel-input .country-list.dropup {
76
- bottom: 100%;
77
- margin-bottom: -1px; }
78
- .intl-tel-input .country-list .flag-box {
79
- display: inline-block;
80
- width: 20px; }
177
+ // except on small screens, where we force the dropdown width to match the input
81
178
  @media (max-width: 500px) {
82
- .intl-tel-input .country-list {
83
- white-space: normal; } }
84
- .intl-tel-input .country-list .divider {
179
+ white-space: normal;
180
+ }
181
+
182
+ max-height: 200px;
183
+ overflow-y: scroll;
184
+
185
+ // the divider below the preferred countries
186
+ .divider {
85
187
  padding-bottom: 5px;
86
188
  margin-bottom: 5px;
87
- border-bottom: 1px solid #CCC; }
88
- .intl-tel-input .country-list .country {
89
- padding: 5px 10px; }
90
- .intl-tel-input .country-list .country .dial-code {
91
- color: #999; }
92
- .intl-tel-input .country-list .country.highlight {
93
- background-color: rgba(0, 0, 0, 0.05); }
94
- .intl-tel-input .country-list .flag-box, .intl-tel-input .country-list .country-name, .intl-tel-input .country-list .dial-code {
95
- vertical-align: middle; }
96
- .intl-tel-input .country-list .flag-box, .intl-tel-input .country-list .country-name {
97
- margin-right: 6px; }
98
- .intl-tel-input.allow-dropdown input, .intl-tel-input.allow-dropdown input[type=text], .intl-tel-input.allow-dropdown input[type=tel], .intl-tel-input.separate-dial-code input, .intl-tel-input.separate-dial-code input[type=text], .intl-tel-input.separate-dial-code input[type=tel] {
99
- padding-right: 6px;
100
- padding-left: 52px;
101
- margin-left: 0; }
102
- .intl-tel-input.allow-dropdown .flag-container, .intl-tel-input.separate-dial-code .flag-container {
103
- right: auto;
104
- left: 0; }
105
- .intl-tel-input.allow-dropdown .selected-flag, .intl-tel-input.separate-dial-code .selected-flag {
106
- width: 46px; }
107
- .intl-tel-input.allow-dropdown .flag-container:hover {
108
- cursor: pointer; }
109
- .intl-tel-input.allow-dropdown .flag-container:hover .selected-flag {
110
- background-color: rgba(0, 0, 0, 0.05); }
111
- .intl-tel-input.allow-dropdown input[disabled] + .flag-container:hover, .intl-tel-input.allow-dropdown input[readonly] + .flag-container:hover {
112
- cursor: default; }
113
- .intl-tel-input.allow-dropdown input[disabled] + .flag-container:hover .selected-flag, .intl-tel-input.allow-dropdown input[readonly] + .flag-container:hover .selected-flag {
114
- background-color: transparent; }
115
- .intl-tel-input.separate-dial-code .selected-flag {
116
- background-color: rgba(0, 0, 0, 0.05);
117
- display: table; }
118
- .intl-tel-input.separate-dial-code .selected-dial-code {
119
- display: table-cell;
120
- vertical-align: middle;
121
- padding-left: 28px; }
122
- .intl-tel-input.separate-dial-code.iti-sdc-2 input, .intl-tel-input.separate-dial-code.iti-sdc-2 input[type=text], .intl-tel-input.separate-dial-code.iti-sdc-2 input[type=tel] {
123
- padding-left: 66px; }
124
- .intl-tel-input.separate-dial-code.iti-sdc-2 .selected-flag {
125
- width: 60px; }
126
- .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input[type=text], .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input[type=tel] {
127
- padding-left: 76px; }
128
- .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 .selected-flag {
129
- width: 70px; }
130
- .intl-tel-input.separate-dial-code.iti-sdc-3 input, .intl-tel-input.separate-dial-code.iti-sdc-3 input[type=text], .intl-tel-input.separate-dial-code.iti-sdc-3 input[type=tel] {
131
- padding-left: 74px; }
132
- .intl-tel-input.separate-dial-code.iti-sdc-3 .selected-flag {
133
- width: 68px; }
134
- .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input[type=text], .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input[type=tel] {
135
- padding-left: 84px; }
136
- .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 .selected-flag {
137
- width: 78px; }
138
- .intl-tel-input.separate-dial-code.iti-sdc-4 input, .intl-tel-input.separate-dial-code.iti-sdc-4 input[type=text], .intl-tel-input.separate-dial-code.iti-sdc-4 input[type=tel] {
139
- padding-left: 82px; }
140
- .intl-tel-input.separate-dial-code.iti-sdc-4 .selected-flag {
141
- width: 76px; }
142
- .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input[type=text], .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input[type=tel] {
143
- padding-left: 92px; }
144
- .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 .selected-flag {
145
- width: 86px; }
146
- .intl-tel-input.separate-dial-code.iti-sdc-5 input, .intl-tel-input.separate-dial-code.iti-sdc-5 input[type=text], .intl-tel-input.separate-dial-code.iti-sdc-5 input[type=tel] {
147
- padding-left: 90px; }
148
- .intl-tel-input.separate-dial-code.iti-sdc-5 .selected-flag {
149
- width: 84px; }
150
- .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input[type=text], .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input[type=tel] {
151
- padding-left: 100px; }
152
- .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 .selected-flag {
153
- width: 94px; }
154
- .intl-tel-input.iti-container {
189
+ border-bottom: $borderWidth solid $greyBorder;
190
+ }
191
+
192
+ // each country item in dropdown (we must have separate class to differentiate from dividers)
193
+ .country {
194
+ // Note: decided not to use line-height here for alignment because it causes issues e.g. large font-sizes will overlap, and also looks bad if one country overflows onto 2 lines
195
+ padding: 5px 10px;
196
+ // the dial codes after the country names are greyed out
197
+ .dial-code {
198
+ color: $greyText;
199
+ }
200
+ }
201
+ .country.highlight {
202
+ background-color: $hoverColor;
203
+ }
204
+
205
+ // spacing between country flag, name and dial code
206
+ .flag-box, .country-name, .dial-code {
207
+ vertical-align: middle;
208
+ }
209
+ .flag-box, .country-name {
210
+ margin-right: 6px;
211
+ }
212
+ }
213
+
214
+ &.allow-dropdown, &.separate-dial-code {
215
+ input, input[type=text], input[type=tel] {
216
+ padding-right: $inputPadding;
217
+ padding-left: $selectedFlagArrowWidth + $inputPadding;
218
+ margin-left: 0;
219
+ }
220
+ .flag-container {
221
+ right: auto;
222
+ left: 0;
223
+ }
224
+ .selected-flag {
225
+ width: $selectedFlagArrowWidth;
226
+ }
227
+ }
228
+
229
+ &.allow-dropdown {
230
+ // hover state - show flag is clickable
231
+ .flag-container:hover {
232
+ cursor: pointer;
233
+ .selected-flag {
234
+ background-color: $hoverColor;
235
+ }
236
+ }
237
+ // disable hover state when input is disabled
238
+ input[disabled] + .flag-container:hover, input[readonly] + .flag-container:hover {
239
+ cursor: default;
240
+ .selected-flag {
241
+ background-color: transparent;
242
+ }
243
+ }
244
+ }
245
+
246
+ &.separate-dial-code {
247
+ .selected-flag {
248
+ // now that we have digits in this section, it needs this visual separation
249
+ background-color: $hoverColor;
250
+ // for vertical centering
251
+ display: table;
252
+ }
253
+ .selected-dial-code {
254
+ // for vertical centering
255
+ display: table-cell;
256
+ vertical-align: middle;
257
+
258
+ padding-left: $flagWidth + $flagPadding;
259
+ }
260
+
261
+ // .iti-sdc is for Separate Dial Code, with lengths from 2-5 because shortest is "+1", longest is "+1684"
262
+ $charLength: 8px;
263
+ @for $i from 2 through 5 {
264
+ &.iti-sdc-#{$i} {
265
+ input, input[type=text], input[type=tel] {
266
+ padding-left: $selectedFlagDialCodeWidth + $inputPadding + ($i * $charLength);
267
+ }
268
+ .selected-flag {
269
+ width: $selectedFlagDialCodeWidth + ($i * $charLength);
270
+ }
271
+ }
272
+ &.allow-dropdown.iti-sdc-#{$i} {
273
+ input, input[type=text], input[type=tel] {
274
+ padding-left: $selectedFlagArrowDialCodeWidth + $inputPadding + ($i * $charLength);
275
+ }
276
+ .selected-flag {
277
+ width: $selectedFlagArrowDialCodeWidth + ($i * $charLength);
278
+ }
279
+ }
280
+ }
281
+ }
282
+
283
+ // if dropdownContainer option is set, increase z-index to prevent display issues
284
+ &.iti-container {
155
285
  position: absolute;
156
286
  top: -1000px;
157
287
  left: -1000px;
288
+ // higher than default Bootstrap modal z-index of 1050
158
289
  z-index: 1060;
159
- padding: 1px; }
160
- .intl-tel-input.iti-container:hover {
161
- cursor: pointer; }
162
-
163
- .iti-mobile .intl-tel-input.iti-container {
164
- top: 30px;
165
- bottom: 30px;
166
- left: 30px;
167
- right: 30px;
168
- position: fixed; }
169
-
170
- .iti-mobile .intl-tel-input .country-list {
171
- max-height: 100%;
172
- width: 100%; }
173
- .iti-mobile .intl-tel-input .country-list .country {
174
- padding: 10px 10px;
175
- line-height: 1.5em; }
290
+ // to keep styling consistent with .flag-container
291
+ padding: $borderWidth;
292
+ &:hover {
293
+ cursor: pointer;
294
+ }
295
+ }
296
+ }
297
+
298
+ // overrides for mobile popup
299
+ .iti-mobile .intl-tel-input {
300
+ &.iti-container {
301
+ top: $mobilePopupMargin;
302
+ bottom: $mobilePopupMargin;
303
+ left: $mobilePopupMargin;
304
+ right: $mobilePopupMargin;
305
+ position: fixed;
306
+ }
307
+ .country-list {
308
+ max-height: 100%;
309
+ width: 100%;
310
+ .country {
311
+ padding: 10px 10px;
312
+ // increase line height because dropdown copy is v likely to overflow on mobile and when it does it needs to be well spaced
313
+ line-height: 1.5em;
314
+ }
315
+ }
316
+ }
317
+
318
+
176
319
 
177
- .iti-flag {
178
- width: 20px; }
179
- .iti-flag.be {
180
- width: 18px; }
181
- .iti-flag.ch {
182
- width: 15px; }
183
- .iti-flag.mc {
184
- width: 19px; }
185
- .iti-flag.ne {
186
- width: 18px; }
187
- .iti-flag.np {
188
- width: 13px; }
189
- .iti-flag.va {
190
- width: 15px; }
191
- @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
192
- .iti-flag {
193
- background-size: 5630px 15px; } }
194
- .iti-flag.ac {
195
- height: 10px;
196
- background-position: 0px 0px; }
197
- .iti-flag.ad {
198
- height: 14px;
199
- background-position: -22px 0px; }
200
- .iti-flag.ae {
201
- height: 10px;
202
- background-position: -44px 0px; }
203
- .iti-flag.af {
204
- height: 14px;
205
- background-position: -66px 0px; }
206
- .iti-flag.ag {
207
- height: 14px;
208
- background-position: -88px 0px; }
209
- .iti-flag.ai {
210
- height: 10px;
211
- background-position: -110px 0px; }
212
- .iti-flag.al {
213
- height: 15px;
214
- background-position: -132px 0px; }
215
- .iti-flag.am {
216
- height: 10px;
217
- background-position: -154px 0px; }
218
- .iti-flag.ao {
219
- height: 14px;
220
- background-position: -176px 0px; }
221
- .iti-flag.aq {
222
- height: 14px;
223
- background-position: -198px 0px; }
224
- .iti-flag.ar {
225
- height: 13px;
226
- background-position: -220px 0px; }
227
- .iti-flag.as {
228
- height: 10px;
229
- background-position: -242px 0px; }
230
- .iti-flag.at {
231
- height: 14px;
232
- background-position: -264px 0px; }
233
- .iti-flag.au {
234
- height: 10px;
235
- background-position: -286px 0px; }
236
- .iti-flag.aw {
237
- height: 14px;
238
- background-position: -308px 0px; }
239
- .iti-flag.ax {
240
- height: 13px;
241
- background-position: -330px 0px; }
242
- .iti-flag.az {
243
- height: 10px;
244
- background-position: -352px 0px; }
245
- .iti-flag.ba {
246
- height: 10px;
247
- background-position: -374px 0px; }
248
- .iti-flag.bb {
249
- height: 14px;
250
- background-position: -396px 0px; }
251
- .iti-flag.bd {
252
- height: 12px;
253
- background-position: -418px 0px; }
254
- .iti-flag.be {
255
- height: 15px;
256
- background-position: -440px 0px; }
257
- .iti-flag.bf {
258
- height: 14px;
259
- background-position: -460px 0px; }
260
- .iti-flag.bg {
261
- height: 12px;
262
- background-position: -482px 0px; }
263
- .iti-flag.bh {
264
- height: 12px;
265
- background-position: -504px 0px; }
266
- .iti-flag.bi {
267
- height: 12px;
268
- background-position: -526px 0px; }
269
- .iti-flag.bj {
270
- height: 14px;
271
- background-position: -548px 0px; }
272
- .iti-flag.bl {
273
- height: 14px;
274
- background-position: -570px 0px; }
275
- .iti-flag.bm {
276
- height: 10px;
277
- background-position: -592px 0px; }
278
- .iti-flag.bn {
279
- height: 10px;
280
- background-position: -614px 0px; }
281
- .iti-flag.bo {
282
- height: 14px;
283
- background-position: -636px 0px; }
284
- .iti-flag.bq {
285
- height: 14px;
286
- background-position: -658px 0px; }
287
- .iti-flag.br {
288
- height: 14px;
289
- background-position: -680px 0px; }
290
- .iti-flag.bs {
291
- height: 10px;
292
- background-position: -702px 0px; }
293
- .iti-flag.bt {
294
- height: 14px;
295
- background-position: -724px 0px; }
296
- .iti-flag.bv {
297
- height: 15px;
298
- background-position: -746px 0px; }
299
- .iti-flag.bw {
300
- height: 14px;
301
- background-position: -768px 0px; }
302
- .iti-flag.by {
303
- height: 10px;
304
- background-position: -790px 0px; }
305
- .iti-flag.bz {
306
- height: 14px;
307
- background-position: -812px 0px; }
308
- .iti-flag.ca {
309
- height: 10px;
310
- background-position: -834px 0px; }
311
- .iti-flag.cc {
312
- height: 10px;
313
- background-position: -856px 0px; }
314
- .iti-flag.cd {
315
- height: 15px;
316
- background-position: -878px 0px; }
317
- .iti-flag.cf {
318
- height: 14px;
319
- background-position: -900px 0px; }
320
- .iti-flag.cg {
321
- height: 14px;
322
- background-position: -922px 0px; }
323
- .iti-flag.ch {
324
- height: 15px;
325
- background-position: -944px 0px; }
326
- .iti-flag.ci {
327
- height: 14px;
328
- background-position: -961px 0px; }
329
- .iti-flag.ck {
330
- height: 10px;
331
- background-position: -983px 0px; }
332
- .iti-flag.cl {
333
- height: 14px;
334
- background-position: -1005px 0px; }
335
- .iti-flag.cm {
336
- height: 14px;
337
- background-position: -1027px 0px; }
338
- .iti-flag.cn {
339
- height: 14px;
340
- background-position: -1049px 0px; }
341
- .iti-flag.co {
342
- height: 14px;
343
- background-position: -1071px 0px; }
344
- .iti-flag.cp {
345
- height: 14px;
346
- background-position: -1093px 0px; }
347
- .iti-flag.cr {
348
- height: 12px;
349
- background-position: -1115px 0px; }
350
- .iti-flag.cu {
351
- height: 10px;
352
- background-position: -1137px 0px; }
353
- .iti-flag.cv {
354
- height: 12px;
355
- background-position: -1159px 0px; }
356
- .iti-flag.cw {
357
- height: 14px;
358
- background-position: -1181px 0px; }
359
- .iti-flag.cx {
360
- height: 10px;
361
- background-position: -1203px 0px; }
362
- .iti-flag.cy {
363
- height: 13px;
364
- background-position: -1225px 0px; }
365
- .iti-flag.cz {
366
- height: 14px;
367
- background-position: -1247px 0px; }
368
- .iti-flag.de {
369
- height: 12px;
370
- background-position: -1269px 0px; }
371
- .iti-flag.dg {
372
- height: 10px;
373
- background-position: -1291px 0px; }
374
- .iti-flag.dj {
375
- height: 14px;
376
- background-position: -1313px 0px; }
377
- .iti-flag.dk {
378
- height: 15px;
379
- background-position: -1335px 0px; }
380
- .iti-flag.dm {
381
- height: 10px;
382
- background-position: -1357px 0px; }
383
- .iti-flag.do {
384
- height: 13px;
385
- background-position: -1379px 0px; }
386
- .iti-flag.dz {
387
- height: 14px;
388
- background-position: -1401px 0px; }
389
- .iti-flag.ea {
390
- height: 14px;
391
- background-position: -1423px 0px; }
392
- .iti-flag.ec {
393
- height: 14px;
394
- background-position: -1445px 0px; }
395
- .iti-flag.ee {
396
- height: 13px;
397
- background-position: -1467px 0px; }
398
- .iti-flag.eg {
399
- height: 14px;
400
- background-position: -1489px 0px; }
401
- .iti-flag.eh {
402
- height: 10px;
403
- background-position: -1511px 0px; }
404
- .iti-flag.er {
405
- height: 10px;
406
- background-position: -1533px 0px; }
407
- .iti-flag.es {
408
- height: 14px;
409
- background-position: -1555px 0px; }
410
- .iti-flag.et {
411
- height: 10px;
412
- background-position: -1577px 0px; }
413
- .iti-flag.eu {
414
- height: 14px;
415
- background-position: -1599px 0px; }
416
- .iti-flag.fi {
417
- height: 12px;
418
- background-position: -1621px 0px; }
419
- .iti-flag.fj {
420
- height: 10px;
421
- background-position: -1643px 0px; }
422
- .iti-flag.fk {
423
- height: 10px;
424
- background-position: -1665px 0px; }
425
- .iti-flag.fm {
426
- height: 11px;
427
- background-position: -1687px 0px; }
428
- .iti-flag.fo {
429
- height: 15px;
430
- background-position: -1709px 0px; }
431
- .iti-flag.fr {
432
- height: 14px;
433
- background-position: -1731px 0px; }
434
- .iti-flag.ga {
435
- height: 15px;
436
- background-position: -1753px 0px; }
437
- .iti-flag.gb {
438
- height: 10px;
439
- background-position: -1775px 0px; }
440
- .iti-flag.gd {
441
- height: 12px;
442
- background-position: -1797px 0px; }
443
- .iti-flag.ge {
444
- height: 14px;
445
- background-position: -1819px 0px; }
446
- .iti-flag.gf {
447
- height: 14px;
448
- background-position: -1841px 0px; }
449
- .iti-flag.gg {
450
- height: 14px;
451
- background-position: -1863px 0px; }
452
- .iti-flag.gh {
453
- height: 14px;
454
- background-position: -1885px 0px; }
455
- .iti-flag.gi {
456
- height: 10px;
457
- background-position: -1907px 0px; }
458
- .iti-flag.gl {
459
- height: 14px;
460
- background-position: -1929px 0px; }
461
- .iti-flag.gm {
462
- height: 14px;
463
- background-position: -1951px 0px; }
464
- .iti-flag.gn {
465
- height: 14px;
466
- background-position: -1973px 0px; }
467
- .iti-flag.gp {
468
- height: 14px;
469
- background-position: -1995px 0px; }
470
- .iti-flag.gq {
471
- height: 14px;
472
- background-position: -2017px 0px; }
473
- .iti-flag.gr {
474
- height: 14px;
475
- background-position: -2039px 0px; }
476
- .iti-flag.gs {
477
- height: 10px;
478
- background-position: -2061px 0px; }
479
- .iti-flag.gt {
480
- height: 13px;
481
- background-position: -2083px 0px; }
482
- .iti-flag.gu {
483
- height: 11px;
484
- background-position: -2105px 0px; }
485
- .iti-flag.gw {
486
- height: 10px;
487
- background-position: -2127px 0px; }
488
- .iti-flag.gy {
489
- height: 12px;
490
- background-position: -2149px 0px; }
491
- .iti-flag.hk {
492
- height: 14px;
493
- background-position: -2171px 0px; }
494
- .iti-flag.hm {
495
- height: 10px;
496
- background-position: -2193px 0px; }
497
- .iti-flag.hn {
498
- height: 10px;
499
- background-position: -2215px 0px; }
500
- .iti-flag.hr {
501
- height: 10px;
502
- background-position: -2237px 0px; }
503
- .iti-flag.ht {
504
- height: 12px;
505
- background-position: -2259px 0px; }
506
- .iti-flag.hu {
507
- height: 10px;
508
- background-position: -2281px 0px; }
509
- .iti-flag.ic {
510
- height: 14px;
511
- background-position: -2303px 0px; }
512
- .iti-flag.id {
513
- height: 14px;
514
- background-position: -2325px 0px; }
515
- .iti-flag.ie {
516
- height: 10px;
517
- background-position: -2347px 0px; }
518
- .iti-flag.il {
519
- height: 15px;
520
- background-position: -2369px 0px; }
521
- .iti-flag.im {
522
- height: 10px;
523
- background-position: -2391px 0px; }
524
- .iti-flag.in {
525
- height: 14px;
526
- background-position: -2413px 0px; }
527
- .iti-flag.io {
528
- height: 10px;
529
- background-position: -2435px 0px; }
530
- .iti-flag.iq {
531
- height: 14px;
532
- background-position: -2457px 0px; }
533
- .iti-flag.ir {
534
- height: 12px;
535
- background-position: -2479px 0px; }
536
- .iti-flag.is {
537
- height: 15px;
538
- background-position: -2501px 0px; }
539
- .iti-flag.it {
540
- height: 14px;
541
- background-position: -2523px 0px; }
542
- .iti-flag.je {
543
- height: 12px;
544
- background-position: -2545px 0px; }
545
- .iti-flag.jm {
546
- height: 10px;
547
- background-position: -2567px 0px; }
548
- .iti-flag.jo {
549
- height: 10px;
550
- background-position: -2589px 0px; }
551
- .iti-flag.jp {
552
- height: 14px;
553
- background-position: -2611px 0px; }
554
- .iti-flag.ke {
555
- height: 14px;
556
- background-position: -2633px 0px; }
557
- .iti-flag.kg {
558
- height: 12px;
559
- background-position: -2655px 0px; }
560
- .iti-flag.kh {
561
- height: 13px;
562
- background-position: -2677px 0px; }
563
- .iti-flag.ki {
564
- height: 10px;
565
- background-position: -2699px 0px; }
566
- .iti-flag.km {
567
- height: 12px;
568
- background-position: -2721px 0px; }
569
- .iti-flag.kn {
570
- height: 14px;
571
- background-position: -2743px 0px; }
572
- .iti-flag.kp {
573
- height: 10px;
574
- background-position: -2765px 0px; }
575
- .iti-flag.kr {
576
- height: 14px;
577
- background-position: -2787px 0px; }
578
- .iti-flag.kw {
579
- height: 10px;
580
- background-position: -2809px 0px; }
581
- .iti-flag.ky {
582
- height: 10px;
583
- background-position: -2831px 0px; }
584
- .iti-flag.kz {
585
- height: 10px;
586
- background-position: -2853px 0px; }
587
- .iti-flag.la {
588
- height: 14px;
589
- background-position: -2875px 0px; }
590
- .iti-flag.lb {
591
- height: 14px;
592
- background-position: -2897px 0px; }
593
- .iti-flag.lc {
594
- height: 10px;
595
- background-position: -2919px 0px; }
596
- .iti-flag.li {
597
- height: 12px;
598
- background-position: -2941px 0px; }
599
- .iti-flag.lk {
600
- height: 10px;
601
- background-position: -2963px 0px; }
602
- .iti-flag.lr {
603
- height: 11px;
604
- background-position: -2985px 0px; }
605
- .iti-flag.ls {
606
- height: 14px;
607
- background-position: -3007px 0px; }
608
- .iti-flag.lt {
609
- height: 12px;
610
- background-position: -3029px 0px; }
611
- .iti-flag.lu {
612
- height: 12px;
613
- background-position: -3051px 0px; }
614
- .iti-flag.lv {
615
- height: 10px;
616
- background-position: -3073px 0px; }
617
- .iti-flag.ly {
618
- height: 10px;
619
- background-position: -3095px 0px; }
620
- .iti-flag.ma {
621
- height: 14px;
622
- background-position: -3117px 0px; }
623
- .iti-flag.mc {
624
- height: 15px;
625
- background-position: -3139px 0px; }
626
- .iti-flag.md {
627
- height: 10px;
628
- background-position: -3160px 0px; }
629
- .iti-flag.me {
630
- height: 10px;
631
- background-position: -3182px 0px; }
632
- .iti-flag.mf {
633
- height: 14px;
634
- background-position: -3204px 0px; }
635
- .iti-flag.mg {
636
- height: 14px;
637
- background-position: -3226px 0px; }
638
- .iti-flag.mh {
639
- height: 11px;
640
- background-position: -3248px 0px; }
641
- .iti-flag.mk {
642
- height: 10px;
643
- background-position: -3270px 0px; }
644
- .iti-flag.ml {
645
- height: 14px;
646
- background-position: -3292px 0px; }
647
- .iti-flag.mm {
648
- height: 14px;
649
- background-position: -3314px 0px; }
650
- .iti-flag.mn {
651
- height: 10px;
652
- background-position: -3336px 0px; }
653
- .iti-flag.mo {
654
- height: 14px;
655
- background-position: -3358px 0px; }
656
- .iti-flag.mp {
657
- height: 10px;
658
- background-position: -3380px 0px; }
659
- .iti-flag.mq {
660
- height: 14px;
661
- background-position: -3402px 0px; }
662
- .iti-flag.mr {
663
- height: 14px;
664
- background-position: -3424px 0px; }
665
- .iti-flag.ms {
666
- height: 10px;
667
- background-position: -3446px 0px; }
668
- .iti-flag.mt {
669
- height: 14px;
670
- background-position: -3468px 0px; }
671
- .iti-flag.mu {
672
- height: 14px;
673
- background-position: -3490px 0px; }
674
- .iti-flag.mv {
675
- height: 14px;
676
- background-position: -3512px 0px; }
677
- .iti-flag.mw {
678
- height: 14px;
679
- background-position: -3534px 0px; }
680
- .iti-flag.mx {
681
- height: 12px;
682
- background-position: -3556px 0px; }
683
- .iti-flag.my {
684
- height: 10px;
685
- background-position: -3578px 0px; }
686
- .iti-flag.mz {
687
- height: 14px;
688
- background-position: -3600px 0px; }
689
- .iti-flag.na {
690
- height: 14px;
691
- background-position: -3622px 0px; }
692
- .iti-flag.nc {
693
- height: 10px;
694
- background-position: -3644px 0px; }
695
- .iti-flag.ne {
696
- height: 15px;
697
- background-position: -3666px 0px; }
698
- .iti-flag.nf {
699
- height: 10px;
700
- background-position: -3686px 0px; }
701
- .iti-flag.ng {
702
- height: 10px;
703
- background-position: -3708px 0px; }
704
- .iti-flag.ni {
705
- height: 12px;
706
- background-position: -3730px 0px; }
707
- .iti-flag.nl {
708
- height: 14px;
709
- background-position: -3752px 0px; }
710
- .iti-flag.no {
711
- height: 15px;
712
- background-position: -3774px 0px; }
713
- .iti-flag.np {
714
- height: 15px;
715
- background-position: -3796px 0px; }
716
- .iti-flag.nr {
717
- height: 10px;
718
- background-position: -3811px 0px; }
719
- .iti-flag.nu {
720
- height: 10px;
721
- background-position: -3833px 0px; }
722
- .iti-flag.nz {
723
- height: 10px;
724
- background-position: -3855px 0px; }
725
- .iti-flag.om {
726
- height: 10px;
727
- background-position: -3877px 0px; }
728
- .iti-flag.pa {
729
- height: 14px;
730
- background-position: -3899px 0px; }
731
- .iti-flag.pe {
732
- height: 14px;
733
- background-position: -3921px 0px; }
734
- .iti-flag.pf {
735
- height: 14px;
736
- background-position: -3943px 0px; }
737
- .iti-flag.pg {
738
- height: 15px;
739
- background-position: -3965px 0px; }
740
- .iti-flag.ph {
741
- height: 10px;
742
- background-position: -3987px 0px; }
743
- .iti-flag.pk {
744
- height: 14px;
745
- background-position: -4009px 0px; }
746
- .iti-flag.pl {
747
- height: 13px;
748
- background-position: -4031px 0px; }
749
- .iti-flag.pm {
750
- height: 14px;
751
- background-position: -4053px 0px; }
752
- .iti-flag.pn {
753
- height: 10px;
754
- background-position: -4075px 0px; }
755
- .iti-flag.pr {
756
- height: 14px;
757
- background-position: -4097px 0px; }
758
- .iti-flag.ps {
759
- height: 10px;
760
- background-position: -4119px 0px; }
761
- .iti-flag.pt {
762
- height: 14px;
763
- background-position: -4141px 0px; }
764
- .iti-flag.pw {
765
- height: 13px;
766
- background-position: -4163px 0px; }
767
- .iti-flag.py {
768
- height: 11px;
769
- background-position: -4185px 0px; }
770
- .iti-flag.qa {
771
- height: 8px;
772
- background-position: -4207px 0px; }
773
- .iti-flag.re {
774
- height: 14px;
775
- background-position: -4229px 0px; }
776
- .iti-flag.ro {
777
- height: 14px;
778
- background-position: -4251px 0px; }
779
- .iti-flag.rs {
780
- height: 14px;
781
- background-position: -4273px 0px; }
782
- .iti-flag.ru {
783
- height: 14px;
784
- background-position: -4295px 0px; }
785
- .iti-flag.rw {
786
- height: 14px;
787
- background-position: -4317px 0px; }
788
- .iti-flag.sa {
789
- height: 14px;
790
- background-position: -4339px 0px; }
791
- .iti-flag.sb {
792
- height: 10px;
793
- background-position: -4361px 0px; }
794
- .iti-flag.sc {
795
- height: 10px;
796
- background-position: -4383px 0px; }
797
- .iti-flag.sd {
798
- height: 10px;
799
- background-position: -4405px 0px; }
800
- .iti-flag.se {
801
- height: 13px;
802
- background-position: -4427px 0px; }
803
- .iti-flag.sg {
804
- height: 14px;
805
- background-position: -4449px 0px; }
806
- .iti-flag.sh {
807
- height: 10px;
808
- background-position: -4471px 0px; }
809
- .iti-flag.si {
810
- height: 10px;
811
- background-position: -4493px 0px; }
812
- .iti-flag.sj {
813
- height: 15px;
814
- background-position: -4515px 0px; }
815
- .iti-flag.sk {
816
- height: 14px;
817
- background-position: -4537px 0px; }
818
- .iti-flag.sl {
819
- height: 14px;
820
- background-position: -4559px 0px; }
821
- .iti-flag.sm {
822
- height: 15px;
823
- background-position: -4581px 0px; }
824
- .iti-flag.sn {
825
- height: 14px;
826
- background-position: -4603px 0px; }
827
- .iti-flag.so {
828
- height: 14px;
829
- background-position: -4625px 0px; }
830
- .iti-flag.sr {
831
- height: 14px;
832
- background-position: -4647px 0px; }
833
- .iti-flag.ss {
834
- height: 10px;
835
- background-position: -4669px 0px; }
836
- .iti-flag.st {
837
- height: 10px;
838
- background-position: -4691px 0px; }
839
- .iti-flag.sv {
840
- height: 12px;
841
- background-position: -4713px 0px; }
842
- .iti-flag.sx {
843
- height: 14px;
844
- background-position: -4735px 0px; }
845
- .iti-flag.sy {
846
- height: 14px;
847
- background-position: -4757px 0px; }
848
- .iti-flag.sz {
849
- height: 14px;
850
- background-position: -4779px 0px; }
851
- .iti-flag.ta {
852
- height: 10px;
853
- background-position: -4801px 0px; }
854
- .iti-flag.tc {
855
- height: 10px;
856
- background-position: -4823px 0px; }
857
- .iti-flag.td {
858
- height: 14px;
859
- background-position: -4845px 0px; }
860
- .iti-flag.tf {
861
- height: 14px;
862
- background-position: -4867px 0px; }
863
- .iti-flag.tg {
864
- height: 13px;
865
- background-position: -4889px 0px; }
866
- .iti-flag.th {
867
- height: 14px;
868
- background-position: -4911px 0px; }
869
- .iti-flag.tj {
870
- height: 10px;
871
- background-position: -4933px 0px; }
872
- .iti-flag.tk {
873
- height: 10px;
874
- background-position: -4955px 0px; }
875
- .iti-flag.tl {
876
- height: 10px;
877
- background-position: -4977px 0px; }
878
- .iti-flag.tm {
879
- height: 14px;
880
- background-position: -4999px 0px; }
881
- .iti-flag.tn {
882
- height: 14px;
883
- background-position: -5021px 0px; }
884
- .iti-flag.to {
885
- height: 10px;
886
- background-position: -5043px 0px; }
887
- .iti-flag.tr {
888
- height: 14px;
889
- background-position: -5065px 0px; }
890
- .iti-flag.tt {
891
- height: 12px;
892
- background-position: -5087px 0px; }
893
- .iti-flag.tv {
894
- height: 10px;
895
- background-position: -5109px 0px; }
896
- .iti-flag.tw {
897
- height: 14px;
898
- background-position: -5131px 0px; }
899
- .iti-flag.tz {
900
- height: 14px;
901
- background-position: -5153px 0px; }
902
- .iti-flag.ua {
903
- height: 14px;
904
- background-position: -5175px 0px; }
905
- .iti-flag.ug {
906
- height: 14px;
907
- background-position: -5197px 0px; }
908
- .iti-flag.um {
909
- height: 11px;
910
- background-position: -5219px 0px; }
911
- .iti-flag.us {
912
- height: 11px;
913
- background-position: -5241px 0px; }
914
- .iti-flag.uy {
915
- height: 14px;
916
- background-position: -5263px 0px; }
917
- .iti-flag.uz {
918
- height: 10px;
919
- background-position: -5285px 0px; }
920
- .iti-flag.va {
921
- height: 15px;
922
- background-position: -5307px 0px; }
923
- .iti-flag.vc {
924
- height: 14px;
925
- background-position: -5324px 0px; }
926
- .iti-flag.ve {
927
- height: 14px;
928
- background-position: -5346px 0px; }
929
- .iti-flag.vg {
930
- height: 10px;
931
- background-position: -5368px 0px; }
932
- .iti-flag.vi {
933
- height: 14px;
934
- background-position: -5390px 0px; }
935
- .iti-flag.vn {
936
- height: 14px;
937
- background-position: -5412px 0px; }
938
- .iti-flag.vu {
939
- height: 12px;
940
- background-position: -5434px 0px; }
941
- .iti-flag.wf {
942
- height: 14px;
943
- background-position: -5456px 0px; }
944
- .iti-flag.ws {
945
- height: 10px;
946
- background-position: -5478px 0px; }
947
- .iti-flag.xk {
948
- height: 15px;
949
- background-position: -5500px 0px; }
950
- .iti-flag.ye {
951
- height: 14px;
952
- background-position: -5522px 0px; }
953
- .iti-flag.yt {
954
- height: 14px;
955
- background-position: -5544px 0px; }
956
- .iti-flag.za {
957
- height: 14px;
958
- background-position: -5566px 0px; }
959
- .iti-flag.zm {
960
- height: 14px;
961
- background-position: -5588px 0px; }
962
- .iti-flag.zw {
963
- height: 10px;
964
- background-position: -5610px 0px; }
320
+
321
+
322
+
323
+ @import "sprite";
965
324
 
966
325
  .iti-flag {
967
- width: 20px;
968
- height: 15px;
326
+ width: $flagWidth;
327
+ height: $flagHeight;
969
328
  box-shadow: 0px 0px 1px 0px #888;
970
- background-image: url("../img/flags.png");
329
+ background-image: image-url("#{$flagsImagePath}#{$flagsImageName}.#{$flagsImageExtension}");
971
330
  background-repeat: no-repeat;
331
+ // empty state
972
332
  background-color: #DBDBDB;
973
- background-position: 20px 0; }
333
+ background-position: $flagWidth 0;
334
+
974
335
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
975
- .iti-flag {
976
- background-image: url("../img/flags@2x.png"); } }
336
+ background-image: image-url("#{$flagsImagePath}#{$flagsImageName}@2x.#{$flagsImageExtension}");
337
+ }
338
+ }
339
+
340
+
977
341
 
342
+ // hack for Nepal which is the only flag that is not square/rectangle, so it has transparency, so you can see the default grey behind it
978
343
  .iti-flag.np {
979
- background-color: transparent; }
344
+ background-color: transparent;
345
+ }