country-data-filter 1.1.2 → 1.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.
- package/README.md +757 -186
- package/package.json +100 -6
- package/src/angular/dropdown/location-picker.component.html +62 -0
- package/src/angular/dropdown/location-picker.component.ts +223 -0
- package/src/angular/index.ts +12 -0
- package/src/angular/location-picker.component.css +13 -0
- package/src/angular/location-picker.service.ts +51 -0
- package/src/angular/location-picker.types.ts +36 -0
- package/src/angular/select/location-picker.component.html +62 -0
- package/src/angular/select/location-picker.component.ts +224 -0
- package/src/countries/AE/district/abuDhabi.js +5 -5
- package/src/countries/AF/district/badakhshan.js +3 -3
- package/src/countries/AF/district/badghis.js +2 -2
- package/src/countries/AF/district/baghlan.js +3 -3
- package/src/countries/AF/district/balkh.js +3 -3
- package/src/countries/AF/district/bamyan.js +3 -3
- package/src/countries/AF/district/daykundi.js +2 -2
- package/src/countries/AF/district/farah.js +2 -2
- package/src/countries/AF/district/faryab.js +3 -3
- package/src/countries/AF/district/ghazni.js +3 -3
- package/src/countries/AF/district/ghor.js +2 -2
- package/src/countries/AF/district/helmand.js +3 -3
- package/src/countries/AF/district/herat.js +3 -3
- package/src/countries/AF/district/jowzjan.js +3 -3
- package/src/countries/AF/district/kabul.js +3 -3
- package/src/countries/AF/district/kandahar.js +3 -3
- package/src/countries/AF/district/kapisa.js +2 -2
- package/src/countries/AF/district/khost.js +3 -3
- package/src/countries/AF/district/kunar.js +3 -3
- package/src/countries/AF/district/kunduz.js +3 -3
- package/src/countries/AF/district/laghman.js +3 -3
- package/src/countries/AF/district/logar.js +3 -3
- package/src/countries/AF/district/maidenWardak.js +3 -3
- package/src/countries/AF/district/nangarhar.js +3 -3
- package/src/countries/AF/district/nimroz.js +2 -2
- package/src/countries/AF/district/nuristan.js +2 -2
- package/src/countries/AF/district/paktia.js +3 -3
- package/src/countries/AF/district/paktika.js +2 -2
- package/src/countries/AF/district/panjshir.js +2 -2
- package/src/countries/AF/district/parwan.js +3 -3
- package/src/countries/AF/district/samangan.js +2 -2
- package/src/countries/AF/district/sarEPol.js +2 -2
- package/src/countries/AF/district/takhar.js +3 -3
- package/src/countries/AF/district/uruzgan.js +2 -2
- package/src/countries/AF/district/zabul.js +2 -2
- package/src/countries/AM/district/aragatsotn.js +3 -3
- package/src/countries/AM/district/ararat.js +3 -3
- package/src/countries/AM/district/armavir.js +3 -3
- package/src/countries/AM/district/gegharkunik.js +4 -4
- package/src/countries/AM/district/kotayk.js +4 -4
- package/src/countries/AM/district/lori.js +4 -4
- package/src/countries/AM/district/shirak.js +3 -3
- package/src/countries/AM/district/syunik.js +4 -4
- package/src/countries/AM/district/tavush.js +4 -4
- package/src/countries/AM/district/vayotsDzor.js +3 -3
- package/src/countries/AM/district/yerevan.js +5 -5
- package/src/countries/BA/district/brckoDistrict.js +1 -1
- package/src/countries/BA/district/federationBiH.js +10 -10
- package/src/countries/BA/district/republikaSrpska.js +5 -5
- package/src/countries/BB/district/saintAndrew.js +1 -1
- package/src/countries/BB/district/saintJohn.js +1 -1
- package/src/countries/BB/district/saintJoseph.js +1 -1
- package/src/countries/BB/district/saintThomas.js +1 -1
- package/src/countries/BH/district/capital.js +3 -3
- package/src/countries/BH/district/muharraq.js +2 -2
- package/src/countries/BH/district/northern.js +2 -2
- package/src/countries/BH/district/southern.js +3 -3
- package/src/countries/BN/district/belait.js +2 -2
- package/src/countries/BN/district/bruneiMuara.js +2 -2
- package/src/countries/BN/district/temburong.js +1 -1
- package/src/countries/BN/district/tutong.js +2 -2
- package/src/countries/BT/district/bumthang.js +1 -1
- package/src/countries/BT/district/chhukha.js +1 -1
- package/src/countries/BT/district/dagana.js +1 -1
- package/src/countries/BT/district/gasa.js +1 -1
- package/src/countries/BT/district/haa.js +1 -1
- package/src/countries/BT/district/lhuntse.js +1 -1
- package/src/countries/BT/district/mongar.js +1 -1
- package/src/countries/BT/district/paro.js +1 -1
- package/src/countries/BT/district/pemagatshel.js +1 -1
- package/src/countries/BT/district/punakha.js +1 -1
- package/src/countries/BT/district/samdrupJongkhar.js +1 -1
- package/src/countries/BT/district/samtse.js +1 -1
- package/src/countries/BT/district/sarpang.js +1 -1
- package/src/countries/BT/district/thimphu.js +1 -1
- package/src/countries/BT/district/trashiYangste.js +1 -1
- package/src/countries/BT/district/trashigang.js +1 -1
- package/src/countries/BT/district/trongsa.js +1 -1
- package/src/countries/BT/district/tsirang.js +1 -1
- package/src/countries/BT/district/wangduePhodrang.js +1 -1
- package/src/countries/BT/district/zhemgang.js +1 -1
- package/src/countries/CU/district/artemisa.js +2 -2
- package/src/countries/CU/district/camaguey.js +2 -2
- package/src/countries/CU/district/ciegoDeAvila.js +2 -2
- package/src/countries/CU/district/cienfuegos.js +2 -2
- package/src/countries/CU/district/granma.js +2 -2
- package/src/countries/CU/district/guantanamo.js +2 -2
- package/src/countries/CU/district/holguin.js +2 -2
- package/src/countries/CU/district/islaJuventud.js +1 -1
- package/src/countries/CU/district/laHabana.js +2 -2
- package/src/countries/CU/district/lasTunas.js +2 -2
- package/src/countries/CU/district/matanzas.js +2 -2
- package/src/countries/CU/district/mayabeque.js +1 -1
- package/src/countries/CU/district/pinarDelRio.js +2 -2
- package/src/countries/CU/district/sanctiSpiritus.js +2 -2
- package/src/countries/CU/district/santiagoDeCuba.js +2 -2
- package/src/countries/CU/district/villaClara.js +2 -2
- package/src/countries/CV/district/boaVista.js +1 -1
- package/src/countries/CV/district/brava.js +1 -1
- package/src/countries/CV/district/fogo.js +1 -1
- package/src/countries/CV/district/maio.js +1 -1
- package/src/countries/CV/district/sal.js +1 -1
- package/src/countries/CV/district/santiago.js +2 -2
- package/src/countries/CV/district/santoAntao.js +2 -2
- package/src/countries/CV/district/saoNicolau.js +1 -1
- package/src/countries/CV/district/saoVicente.js +1 -1
- package/src/countries/DZ/district/adrar.js +1 -1
- package/src/countries/DZ/district/ainDefla.js +1 -1
- package/src/countries/DZ/district/ainTemouchent.js +1 -1
- package/src/countries/DZ/district/algiers.js +2 -2
- package/src/countries/DZ/district/annaba.js +1 -1
- package/src/countries/DZ/district/batna.js +1 -1
- package/src/countries/DZ/district/bechar.js +1 -1
- package/src/countries/DZ/district/bejaia.js +1 -1
- package/src/countries/DZ/district/beniAbbes.js +1 -1
- package/src/countries/DZ/district/biskra.js +1 -1
- package/src/countries/DZ/district/blida.js +1 -1
- package/src/countries/DZ/district/bordjBadjiMokhtar.js +1 -1
- package/src/countries/DZ/district/bordjBouArreridj.js +1 -1
- package/src/countries/DZ/district/bouira.js +1 -1
- package/src/countries/DZ/district/boumerdes.js +1 -1
- package/src/countries/DZ/district/chlef.js +1 -1
- package/src/countries/DZ/district/constantine.js +2 -2
- package/src/countries/DZ/district/djanet.js +1 -1
- package/src/countries/DZ/district/djelfa.js +1 -1
- package/src/countries/DZ/district/elBayadh.js +1 -1
- package/src/countries/DZ/district/elMeghaier.js +1 -1
- package/src/countries/DZ/district/elMeniaa.js +1 -1
- package/src/countries/DZ/district/elOued.js +1 -1
- package/src/countries/DZ/district/elTarf.js +1 -1
- package/src/countries/DZ/district/ghardaia.js +1 -1
- package/src/countries/DZ/district/guelma.js +1 -1
- package/src/countries/DZ/district/illizi.js +1 -1
- package/src/countries/DZ/district/inGuezzam.js +1 -1
- package/src/countries/DZ/district/inSalah.js +1 -1
- package/src/countries/DZ/district/jijel.js +1 -1
- package/src/countries/DZ/district/khenchela.js +1 -1
- package/src/countries/DZ/district/laghouat.js +1 -1
- package/src/countries/DZ/district/mascara.js +1 -1
- package/src/countries/DZ/district/medea.js +1 -1
- package/src/countries/DZ/district/mila.js +1 -1
- package/src/countries/DZ/district/mostaganem.js +1 -1
- package/src/countries/DZ/district/msila.js +1 -1
- package/src/countries/DZ/district/naama.js +1 -1
- package/src/countries/DZ/district/oran.js +2 -2
- package/src/countries/DZ/district/ouargla.js +1 -1
- package/src/countries/DZ/district/ouledDjellal.js +1 -1
- package/src/countries/DZ/district/oumElBouaghi.js +1 -1
- package/src/countries/DZ/district/relizane.js +1 -1
- package/src/countries/DZ/district/saida.js +1 -1
- package/src/countries/DZ/district/setif.js +1 -1
- package/src/countries/DZ/district/sidiBelAbbes.js +1 -1
- package/src/countries/DZ/district/skikda.js +1 -1
- package/src/countries/DZ/district/soukAhras.js +1 -1
- package/src/countries/DZ/district/tamanrasset.js +1 -1
- package/src/countries/DZ/district/tebessa.js +1 -1
- package/src/countries/DZ/district/tiaret.js +1 -1
- package/src/countries/DZ/district/timimoun.js +1 -1
- package/src/countries/DZ/district/tindouf.js +1 -1
- package/src/countries/DZ/district/tipaza.js +1 -1
- package/src/countries/DZ/district/tissemsilt.js +1 -1
- package/src/countries/DZ/district/tiziOuzou.js +1 -1
- package/src/countries/DZ/district/tlemcen.js +1 -1
- package/src/countries/DZ/district/touggourt.js +1 -1
- package/src/countries/EG/district/alexandria.js +1 -1
- package/src/countries/EG/district/aswan.js +1 -1
- package/src/countries/EG/district/asyut.js +1 -1
- package/src/countries/EG/district/beheira.js +1 -1
- package/src/countries/EG/district/cairo.js +1 -1
- package/src/countries/EG/district/dakahlia.js +1 -1
- package/src/countries/EG/district/damietta.js +1 -1
- package/src/countries/EG/district/fayoum.js +1 -1
- package/src/countries/EG/district/gharbia.js +1 -1
- package/src/countries/EG/district/giza.js +1 -1
- package/src/countries/EG/district/ismailia.js +1 -1
- package/src/countries/EG/district/kafrElSheikh.js +1 -1
- package/src/countries/EG/district/luxor.js +1 -1
- package/src/countries/EG/district/matruh.js +1 -1
- package/src/countries/EG/district/menofia.js +1 -1
- package/src/countries/EG/district/minya.js +1 -1
- package/src/countries/EG/district/newValley.js +1 -1
- package/src/countries/EG/district/northSinai.js +1 -1
- package/src/countries/EG/district/northUpperEgypt.js +1 -1
- package/src/countries/EG/district/portSaid.js +1 -1
- package/src/countries/EG/district/qalyubia.js +1 -1
- package/src/countries/EG/district/qena.js +1 -1
- package/src/countries/EG/district/redSea.js +1 -1
- package/src/countries/EG/district/sharqia.js +1 -1
- package/src/countries/EG/district/sohag.js +1 -1
- package/src/countries/EG/district/southSinai.js +1 -1
- package/src/countries/EG/district/suez.js +1 -1
- package/src/countries/ET/district/addisAbaba.js +2 -2
- package/src/countries/ET/district/afar.js +2 -2
- package/src/countries/ET/district/amhara.js +3 -3
- package/src/countries/ET/district/benishangul.js +1 -1
- package/src/countries/ET/district/diredawa.js +1 -1
- package/src/countries/ET/district/gambela.js +1 -1
- package/src/countries/ET/district/harari.js +1 -1
- package/src/countries/ET/district/oromia.js +3 -3
- package/src/countries/ET/district/sidama.js +1 -1
- package/src/countries/ET/district/somali.js +2 -2
- package/src/countries/ET/district/southernNations.js +2 -2
- package/src/countries/ET/district/tigray.js +2 -2
- package/src/countries/GE/district/adjara.js +2 -2
- package/src/countries/GE/district/guria.js +1 -1
- package/src/countries/GE/district/imereti.js +2 -2
- package/src/countries/GE/district/kakheti.js +1 -1
- package/src/countries/GE/district/kvemoKartli.js +2 -2
- package/src/countries/GE/district/mtskheta.js +1 -1
- package/src/countries/GE/district/rachaLechkhumi.js +1 -1
- package/src/countries/GE/district/samegrelo.js +1 -1
- package/src/countries/GE/district/samtskhe.js +1 -1
- package/src/countries/GE/district/shidaKartli.js +1 -1
- package/src/countries/GE/district/tbilisi.js +2 -2
- package/src/countries/GH/district/ahafo.js +1 -1
- package/src/countries/GH/district/ashanti.js +1 -1
- package/src/countries/GH/district/northern.js +1 -1
- package/src/countries/GH/district/volta.js +1 -1
- package/src/countries/GR/district/attica.js +2 -2
- package/src/countries/GR/district/centralGreece.js +1 -1
- package/src/countries/GR/district/centralMacedonia.js +2 -2
- package/src/countries/GR/district/crete.js +2 -2
- package/src/countries/GR/district/easternMacedonia.js +1 -1
- package/src/countries/GR/district/epirus.js +1 -1
- package/src/countries/GR/district/ionianIslands.js +1 -1
- package/src/countries/GR/district/northAegean.js +1 -1
- package/src/countries/GR/district/peloponnese.js +1 -1
- package/src/countries/GR/district/southAegean.js +1 -1
- package/src/countries/GR/district/thessaly.js +2 -2
- package/src/countries/GR/district/westernGreece.js +1 -1
- package/src/countries/GR/district/westernMacedonia.js +1 -1
- package/src/countries/GW/district/bissau.js +1 -1
- package/src/countries/IL/district/central.js +2 -2
- package/src/countries/IL/district/haifa.js +1 -1
- package/src/countries/IL/district/jerusalem.js +1 -1
- package/src/countries/IL/district/northern.js +1 -1
- package/src/countries/IL/district/southern.js +1 -1
- package/src/countries/IL/district/telAviv.js +2 -2
- package/src/countries/IQ/district/alAnbar.js +2 -2
- package/src/countries/IQ/district/babil.js +1 -1
- package/src/countries/IQ/district/baghdad.js +2 -2
- package/src/countries/IQ/district/basra.js +1 -1
- package/src/countries/IQ/district/dhiQar.js +1 -1
- package/src/countries/IQ/district/diyala.js +1 -1
- package/src/countries/IQ/district/duhok.js +1 -1
- package/src/countries/IQ/district/erbil.js +1 -1
- package/src/countries/IQ/district/karbala.js +1 -1
- package/src/countries/IQ/district/kirkuk.js +1 -1
- package/src/countries/IQ/district/maysan.js +1 -1
- package/src/countries/IQ/district/muthanna.js +1 -1
- package/src/countries/IQ/district/najaf.js +1 -1
- package/src/countries/IQ/district/nineveh.js +1 -1
- package/src/countries/IQ/district/qadisiyah.js +1 -1
- package/src/countries/IQ/district/salahAdDin.js +1 -1
- package/src/countries/IQ/district/sulaymaniyah.js +1 -1
- package/src/countries/IQ/district/wasit.js +1 -1
- package/src/countries/IR/district/alborz.js +1 -1
- package/src/countries/IR/district/ardabil.js +1 -1
- package/src/countries/IR/district/bushehr.js +1 -1
- package/src/countries/IR/district/chaharmahalAndBakhtiari.js +1 -1
- package/src/countries/IR/district/eastAzerbaijan.js +1 -1
- package/src/countries/IR/district/fars.js +1 -1
- package/src/countries/IR/district/gilan.js +1 -1
- package/src/countries/IR/district/golestan.js +1 -1
- package/src/countries/IR/district/hamadan.js +1 -1
- package/src/countries/IR/district/hormozgan.js +1 -1
- package/src/countries/IR/district/ilam.js +1 -1
- package/src/countries/IR/district/isfahan.js +1 -1
- package/src/countries/IR/district/kerman.js +1 -1
- package/src/countries/IR/district/kermanshah.js +1 -1
- package/src/countries/IR/district/khuzestan.js +1 -1
- package/src/countries/IR/district/kohgiluyehAndBoyerAhmad.js +1 -1
- package/src/countries/IR/district/kurdistan.js +1 -1
- package/src/countries/IR/district/lorestan.js +1 -1
- package/src/countries/IR/district/markazi.js +1 -1
- package/src/countries/IR/district/mazandaran.js +1 -1
- package/src/countries/IR/district/northKhorasan.js +1 -1
- package/src/countries/IR/district/qazvin.js +1 -1
- package/src/countries/IR/district/qom.js +1 -1
- package/src/countries/IR/district/razaviKhorasan.js +1 -1
- package/src/countries/IR/district/semnan.js +1 -1
- package/src/countries/IR/district/sistanAndBaluchestan.js +1 -1
- package/src/countries/IR/district/southKhorasan.js +1 -1
- package/src/countries/IR/district/tehran.js +1 -1
- package/src/countries/IR/district/westAzerbaijan.js +1 -1
- package/src/countries/IR/district/yazd.js +1 -1
- package/src/countries/IR/district/zanjan.js +1 -1
- package/src/countries/JM/district/clarendon.js +1 -1
- package/src/countries/JM/district/hanover.js +1 -1
- package/src/countries/JM/district/kingston.js +1 -1
- package/src/countries/JM/district/manchester.js +1 -1
- package/src/countries/JM/district/portland.js +1 -1
- package/src/countries/JM/district/saintAndrew.js +1 -1
- package/src/countries/JM/district/saintAnn.js +1 -1
- package/src/countries/JM/district/saintCatherine.js +1 -1
- package/src/countries/JM/district/saintElizabeth.js +1 -1
- package/src/countries/JM/district/saintJames.js +1 -1
- package/src/countries/JM/district/saintMary.js +1 -1
- package/src/countries/JM/district/saintThomas.js +1 -1
- package/src/countries/JM/district/trelawny.js +1 -1
- package/src/countries/JM/district/westmoreland.js +1 -1
- package/src/countries/JO/district/ajloun.js +1 -1
- package/src/countries/JO/district/amman.js +2 -2
- package/src/countries/JO/district/aqaba.js +1 -1
- package/src/countries/JO/district/balqa.js +1 -1
- package/src/countries/JO/district/irbid.js +1 -1
- package/src/countries/JO/district/jarash.js +1 -1
- package/src/countries/JO/district/karak.js +1 -1
- package/src/countries/JO/district/maan.js +1 -1
- package/src/countries/JO/district/madaba.js +1 -1
- package/src/countries/JO/district/mafraq.js +1 -1
- package/src/countries/JO/district/tafilah.js +1 -1
- package/src/countries/JO/district/zarqa.js +1 -1
- package/src/countries/KG/district/batken.js +2 -2
- package/src/countries/KG/district/bishkek.js +1 -1
- package/src/countries/KG/district/chuy.js +2 -2
- package/src/countries/KG/district/issykKul.js +2 -2
- package/src/countries/KG/district/jalalAbad.js +2 -2
- package/src/countries/KG/district/naryn.js +1 -1
- package/src/countries/KG/district/osh.js +2 -2
- package/src/countries/KG/district/talas.js +1 -1
- package/src/countries/KH/district/banteayMeanchey.js +1 -1
- package/src/countries/KH/district/battambang.js +1 -1
- package/src/countries/KH/district/kampongCham.js +1 -1
- package/src/countries/KH/district/kampongChhnang.js +1 -1
- package/src/countries/KH/district/kampongSpeu.js +1 -1
- package/src/countries/KH/district/kampongThom.js +1 -1
- package/src/countries/KH/district/kampot.js +1 -1
- package/src/countries/KH/district/kandal.js +1 -1
- package/src/countries/KH/district/kep.js +1 -1
- package/src/countries/KH/district/kohKong.js +1 -1
- package/src/countries/KH/district/kratie.js +1 -1
- package/src/countries/KH/district/mondulkiri.js +1 -1
- package/src/countries/KH/district/oddarMeanchey.js +1 -1
- package/src/countries/KH/district/pailin.js +1 -1
- package/src/countries/KH/district/phnomPenh.js +1 -1
- package/src/countries/KH/district/preahSihanouk.js +1 -1
- package/src/countries/KH/district/preahVihear.js +1 -1
- package/src/countries/KH/district/preyVeng.js +1 -1
- package/src/countries/KH/district/pursat.js +1 -1
- package/src/countries/KH/district/ratanakiri.js +1 -1
- package/src/countries/KH/district/siemReap.js +1 -1
- package/src/countries/KH/district/stungTreng.js +1 -1
- package/src/countries/KH/district/svayRieng.js +1 -1
- package/src/countries/KH/district/takeo.js +1 -1
- package/src/countries/KH/district/tbongKhmum.js +1 -1
- package/src/countries/KW/district/ahmadi.js +2 -2
- package/src/countries/KW/district/capital.js +1 -1
- package/src/countries/KW/district/farwaniya.js +1 -1
- package/src/countries/KW/district/hawalli.js +2 -2
- package/src/countries/KW/district/jahra.js +1 -1
- package/src/countries/KW/district/mubarak.js +1 -1
- package/src/countries/KZ/district/akmola.js +1 -1
- package/src/countries/KZ/district/aktobe.js +1 -1
- package/src/countries/KZ/district/almaty.js +1 -1
- package/src/countries/KZ/district/almatyRegion.js +1 -1
- package/src/countries/KZ/district/astana.js +1 -1
- package/src/countries/KZ/district/atyrau.js +1 -1
- package/src/countries/KZ/district/eastKazakhstan.js +2 -2
- package/src/countries/KZ/district/jambyl.js +1 -1
- package/src/countries/KZ/district/karagandy.js +2 -2
- package/src/countries/KZ/district/kostanay.js +1 -1
- package/src/countries/KZ/district/kyzylorda.js +1 -1
- package/src/countries/KZ/district/mangystau.js +1 -1
- package/src/countries/KZ/district/northKazakhstan.js +1 -1
- package/src/countries/KZ/district/pavlodar.js +1 -1
- package/src/countries/KZ/district/shymkent.js +1 -1
- package/src/countries/KZ/district/turkestan.js +1 -1
- package/src/countries/KZ/district/westKazakhstan.js +1 -1
- package/src/countries/LA/district/attapeu.js +1 -1
- package/src/countries/LA/district/bokeo.js +1 -1
- package/src/countries/LA/district/bolikhamxai.js +1 -1
- package/src/countries/LA/district/champasak.js +1 -1
- package/src/countries/LA/district/houaphan.js +1 -1
- package/src/countries/LA/district/khammouan.js +1 -1
- package/src/countries/LA/district/louangNamtha.js +1 -1
- package/src/countries/LA/district/louangphabang.js +1 -1
- package/src/countries/LA/district/oudomxai.js +1 -1
- package/src/countries/LA/district/phongsali.js +1 -1
- package/src/countries/LA/district/salavan.js +1 -1
- package/src/countries/LA/district/savannakhet.js +1 -1
- package/src/countries/LA/district/vientiane.js +1 -1
- package/src/countries/LA/district/vientianeCapital.js +1 -1
- package/src/countries/LA/district/xaisomboun.js +1 -1
- package/src/countries/LA/district/xekong.js +1 -1
- package/src/countries/LA/district/xiangkhouang.js +1 -1
- package/src/countries/LB/district/akkar.js +1 -1
- package/src/countries/LB/district/baalbek.js +1 -1
- package/src/countries/LB/district/beirut.js +1 -1
- package/src/countries/LB/district/bekaa.js +1 -1
- package/src/countries/LB/district/mountLebanon.js +2 -2
- package/src/countries/LB/district/nabatieh.js +1 -1
- package/src/countries/LB/district/northLebanon.js +1 -1
- package/src/countries/LB/district/south.js +2 -2
- package/src/countries/LC/district/anseLaRaye.js +1 -1
- package/src/countries/LC/district/canaries.js +1 -1
- package/src/countries/LC/district/castries.js +1 -1
- package/src/countries/LC/district/choiseul.js +1 -1
- package/src/countries/LC/district/dennery.js +1 -1
- package/src/countries/LC/district/grosIslet.js +1 -1
- package/src/countries/LC/district/laborie.js +1 -1
- package/src/countries/LC/district/micoud.js +1 -1
- package/src/countries/LC/district/soufriere.js +1 -1
- package/src/countries/LC/district/vieuxFort.js +1 -1
- package/src/countries/LR/district/grandBassa.js +1 -1
- package/src/countries/LS/district/berea.js +1 -1
- package/src/countries/LS/district/butha_buthe.js +1 -1
- package/src/countries/LS/district/leribe.js +1 -1
- package/src/countries/LS/district/mafeteng.js +1 -1
- package/src/countries/LS/district/maseru.js +1 -1
- package/src/countries/LS/district/mohales_hoek.js +1 -1
- package/src/countries/LS/district/mokhotlong.js +1 -1
- package/src/countries/LS/district/qacha_nek.js +1 -1
- package/src/countries/LS/district/quthing.js +1 -1
- package/src/countries/LS/district/thaba_tseka.js +1 -1
- package/src/countries/ME/district/andrijevica.js +1 -1
- package/src/countries/ME/district/bar.js +1 -1
- package/src/countries/ME/district/berane.js +1 -1
- package/src/countries/ME/district/bijelo_polje.js +1 -1
- package/src/countries/ME/district/budva.js +1 -1
- package/src/countries/ME/district/cetinje.js +1 -1
- package/src/countries/ME/district/danilovgrad.js +1 -1
- package/src/countries/ME/district/gusinje.js +1 -1
- package/src/countries/ME/district/herceg_novi.js +1 -1
- package/src/countries/ME/district/kolasin.js +1 -1
- package/src/countries/ME/district/kotor.js +1 -1
- package/src/countries/ME/district/mojkovac.js +1 -1
- package/src/countries/ME/district/niksic.js +1 -1
- package/src/countries/ME/district/petnjica.js +1 -1
- package/src/countries/ME/district/plav.js +1 -1
- package/src/countries/ME/district/pljevlja.js +1 -1
- package/src/countries/ME/district/pluzine.js +1 -1
- package/src/countries/ME/district/podgorica.js +1 -1
- package/src/countries/ME/district/rozaje.js +1 -1
- package/src/countries/ME/district/savnik.js +1 -1
- package/src/countries/ME/district/tivat.js +1 -1
- package/src/countries/ME/district/tuzi.js +1 -1
- package/src/countries/ME/district/ulcinj.js +1 -1
- package/src/countries/ME/district/zabljak.js +1 -1
- package/src/countries/MG/district/antananarivo.js +2 -2
- package/src/countries/MG/district/antsiranana.js +1 -1
- package/src/countries/MG/district/fianarantsoa.js +1 -1
- package/src/countries/MG/district/mahajanga.js +1 -1
- package/src/countries/MG/district/toamasina.js +1 -1
- package/src/countries/MG/district/toliara.js +1 -1
- package/src/countries/MM/district/ayeyarwady.js +2 -2
- package/src/countries/MM/district/bago.js +1 -1
- package/src/countries/MM/district/chin.js +1 -1
- package/src/countries/MM/district/kachin.js +1 -1
- package/src/countries/MM/district/kayah.js +1 -1
- package/src/countries/MM/district/kayin.js +1 -1
- package/src/countries/MM/district/magway.js +1 -1
- package/src/countries/MM/district/mandalay.js +2 -2
- package/src/countries/MM/district/mon.js +1 -1
- package/src/countries/MM/district/naypyidaw.js +1 -1
- package/src/countries/MM/district/rakhine.js +1 -1
- package/src/countries/MM/district/sagaing.js +2 -2
- package/src/countries/MM/district/shan.js +1 -1
- package/src/countries/MM/district/tanintharyi.js +1 -1
- package/src/countries/MM/district/yangon.js +1 -1
- package/src/countries/MN/district/arkhangai.js +1 -1
- package/src/countries/MN/district/bayan_olgii.js +1 -1
- package/src/countries/MN/district/bayankhongor.js +1 -1
- package/src/countries/MN/district/bulgan.js +1 -1
- package/src/countries/MN/district/darkhan.js +1 -1
- package/src/countries/MN/district/dornod.js +1 -1
- package/src/countries/MN/district/dornogovi.js +1 -1
- package/src/countries/MN/district/dundgovi.js +1 -1
- package/src/countries/MN/district/govi_altai.js +1 -1
- package/src/countries/MN/district/govisumber.js +1 -1
- package/src/countries/MN/district/khentii.js +1 -1
- package/src/countries/MN/district/khovd.js +1 -1
- package/src/countries/MN/district/khuvsgul.js +1 -1
- package/src/countries/MN/district/omnogovi.js +1 -1
- package/src/countries/MN/district/orkhon.js +1 -1
- package/src/countries/MN/district/ovorkhangai.js +1 -1
- package/src/countries/MN/district/selenge.js +1 -1
- package/src/countries/MN/district/sukhbaatar.js +1 -1
- package/src/countries/MN/district/tov.js +1 -1
- package/src/countries/MN/district/ulaanbaatar.js +1 -1
- package/src/countries/MN/district/uvs.js +1 -1
- package/src/countries/MN/district/zavkhan.js +1 -1
- package/src/countries/MU/district/blackRiver.js +1 -1
- package/src/countries/MU/district/flacq.js +1 -1
- package/src/countries/MU/district/grandPort.js +1 -1
- package/src/countries/MU/district/moka.js +1 -1
- package/src/countries/MU/district/pamplemousses.js +1 -1
- package/src/countries/MU/district/plainesWilhems.js +2 -2
- package/src/countries/MU/district/portLouis.js +1 -1
- package/src/countries/MU/district/riviereDuRempart.js +1 -1
- package/src/countries/MU/district/savanne.js +1 -1
- package/src/countries/MV/district/central.js +1 -1
- package/src/countries/MV/district/male.js +1 -1
- package/src/countries/MV/district/north.js +1 -1
- package/src/countries/MV/district/northCentral.js +1 -1
- package/src/countries/MV/district/south.js +1 -1
- package/src/countries/MV/district/southCentral.js +1 -1
- package/src/countries/MV/district/upperSouth.js +1 -1
- package/src/countries/MZ/district/caboDelgado.js +2 -2
- package/src/countries/MZ/district/gaza.js +1 -1
- package/src/countries/MZ/district/inhambane.js +1 -1
- package/src/countries/MZ/district/manica.js +1 -1
- package/src/countries/MZ/district/maputoCidade.js +1 -1
- package/src/countries/MZ/district/maputoProv.js +1 -1
- package/src/countries/MZ/district/nampula.js +1 -1
- package/src/countries/MZ/district/niassa.js +1 -1
- package/src/countries/MZ/district/sofala.js +1 -1
- package/src/countries/MZ/district/tete.js +1 -1
- package/src/countries/MZ/district/zambezia.js +1 -1
- package/src/countries/NA/district/erongo.js +1 -1
- package/src/countries/NA/district/hardap.js +1 -1
- package/src/countries/NA/district/karas.js +1 -1
- package/src/countries/NA/district/kavangoEast.js +1 -1
- package/src/countries/NA/district/kavangoWest.js +1 -1
- package/src/countries/NA/district/khomas.js +1 -1
- package/src/countries/NA/district/kunene.js +1 -1
- package/src/countries/NA/district/ohangwena.js +1 -1
- package/src/countries/NA/district/omaheke.js +1 -1
- package/src/countries/NA/district/omusati.js +1 -1
- package/src/countries/NA/district/oshana.js +1 -1
- package/src/countries/NA/district/oshikoto.js +1 -1
- package/src/countries/NA/district/otjozondjupa.js +1 -1
- package/src/countries/NA/district/zambezi.js +1 -1
- package/src/countries/NE/district/tahoua.js +1 -1
- package/src/countries/NE/district/zinder.js +1 -1
- package/src/countries/NG/district/abia.js +1 -1
- package/src/countries/NG/district/adamawa.js +1 -1
- package/src/countries/NG/district/akwaIbom.js +1 -1
- package/src/countries/NG/district/anambra.js +1 -1
- package/src/countries/NG/district/bauchi.js +1 -1
- package/src/countries/NG/district/bayelsa.js +1 -1
- package/src/countries/NG/district/benue.js +1 -1
- package/src/countries/NG/district/borno.js +1 -1
- package/src/countries/NG/district/crossRiver.js +1 -1
- package/src/countries/NG/district/delta.js +1 -1
- package/src/countries/NG/district/ebonyi.js +1 -1
- package/src/countries/NG/district/edo.js +1 -1
- package/src/countries/NG/district/ekiti.js +1 -1
- package/src/countries/NG/district/enugu.js +1 -1
- package/src/countries/NG/district/fCT.js +1 -1
- package/src/countries/NG/district/gombe.js +1 -1
- package/src/countries/NG/district/imo.js +1 -1
- package/src/countries/NG/district/jigawa.js +1 -1
- package/src/countries/NG/district/kaduna.js +1 -1
- package/src/countries/NG/district/kano.js +1 -1
- package/src/countries/NG/district/katsina.js +1 -1
- package/src/countries/NG/district/kebbi.js +1 -1
- package/src/countries/NG/district/kogi.js +1 -1
- package/src/countries/NG/district/kwara.js +1 -1
- package/src/countries/NG/district/lagos.js +1 -1
- package/src/countries/NG/district/nasarawa.js +1 -1
- package/src/countries/NG/district/niger.js +1 -1
- package/src/countries/NG/district/ogun.js +1 -1
- package/src/countries/NG/district/ondo.js +1 -1
- package/src/countries/NG/district/osun.js +1 -1
- package/src/countries/NG/district/oyo.js +1 -1
- package/src/countries/NG/district/plateau.js +1 -1
- package/src/countries/NG/district/rivers.js +1 -1
- package/src/countries/NG/district/sokoto.js +1 -1
- package/src/countries/NG/district/taraba.js +1 -1
- package/src/countries/NG/district/yobe.js +1 -1
- package/src/countries/NG/district/zamfara.js +1 -1
- package/src/countries/NI/district/boaco.js +1 -1
- package/src/countries/NI/district/carazo.js +1 -1
- package/src/countries/NI/district/caribbeanCoastNorth.js +1 -1
- package/src/countries/NI/district/caribbeanCoastSouth.js +1 -1
- package/src/countries/NI/district/chinandega.js +1 -1
- package/src/countries/NI/district/chontales.js +1 -1
- package/src/countries/NI/district/esteli.js +1 -1
- package/src/countries/NI/district/granada.js +1 -1
- package/src/countries/NI/district/jinotega.js +1 -1
- package/src/countries/NI/district/leon.js +1 -1
- package/src/countries/NI/district/madriz.js +1 -1
- package/src/countries/NI/district/managua.js +1 -1
- package/src/countries/NI/district/masaya.js +1 -1
- package/src/countries/NI/district/matagalpa.js +1 -1
- package/src/countries/NI/district/nuevaSegovia.js +1 -1
- package/src/countries/NI/district/rioSanJuan.js +1 -1
- package/src/countries/NI/district/rivas.js +1 -1
- package/src/countries/NP/district/bagmati.js +2 -2
- package/src/countries/NP/district/gandaki.js +1 -1
- package/src/countries/NP/district/karnali.js +1 -1
- package/src/countries/NP/district/koshi.js +2 -2
- package/src/countries/NP/district/lumbini.js +1 -1
- package/src/countries/NP/district/madhesh.js +1 -1
- package/src/countries/NP/district/sudurpashchim.js +1 -1
- package/src/countries/OM/district/adDakhiliyah.js +1 -1
- package/src/countries/OM/district/alBatinahNorth.js +1 -1
- package/src/countries/OM/district/alBatinahSouth.js +1 -1
- package/src/countries/OM/district/alBuraymi.js +1 -1
- package/src/countries/OM/district/alWusta.js +1 -1
- package/src/countries/OM/district/ashSharqiyahNorth.js +1 -1
- package/src/countries/OM/district/ashSharqiyahSouth.js +1 -1
- package/src/countries/OM/district/azZahirah.js +1 -1
- package/src/countries/OM/district/dhofar.js +1 -1
- package/src/countries/OM/district/musandam.js +1 -1
- package/src/countries/OM/district/muscat.js +2 -2
- package/src/countries/PG/district/bougainville.js +1 -1
- package/src/countries/PG/district/centralProv.js +1 -1
- package/src/countries/PG/district/chimbu.js +1 -1
- package/src/countries/PG/district/eastHighlands.js +1 -1
- package/src/countries/PG/district/eastNewBritain.js +1 -1
- package/src/countries/PG/district/eastSepik.js +1 -1
- package/src/countries/PG/district/enga.js +1 -1
- package/src/countries/PG/district/gulf.js +1 -1
- package/src/countries/PG/district/hela.js +1 -1
- package/src/countries/PG/district/jiwaka.js +1 -1
- package/src/countries/PG/district/madang.js +1 -1
- package/src/countries/PG/district/manus.js +1 -1
- package/src/countries/PG/district/milneBay.js +1 -1
- package/src/countries/PG/district/morobe.js +1 -1
- package/src/countries/PG/district/ncr.js +1 -1
- package/src/countries/PG/district/newIreland.js +1 -1
- package/src/countries/PG/district/northernProv.js +1 -1
- package/src/countries/PG/district/sandaun.js +1 -1
- package/src/countries/PG/district/southern.js +1 -1
- package/src/countries/PG/district/westHighlands.js +1 -1
- package/src/countries/PG/district/westNewBritain.js +1 -1
- package/src/countries/PG/district/western.js +1 -1
- package/src/countries/PS/district/bethlehem.js +1 -1
- package/src/countries/PS/district/deir_el_balah.js +1 -1
- package/src/countries/PS/district/gaza.js +1 -1
- package/src/countries/PS/district/hebron.js +1 -1
- package/src/countries/PS/district/jenin.js +1 -1
- package/src/countries/PS/district/jericho.js +1 -1
- package/src/countries/PS/district/jerusalem.js +1 -1
- package/src/countries/PS/district/khanYunis.js +1 -1
- package/src/countries/PS/district/nablus.js +1 -1
- package/src/countries/PS/district/northGaza.js +1 -1
- package/src/countries/PS/district/qalqilya.js +1 -1
- package/src/countries/PS/district/rafah.js +1 -1
- package/src/countries/PS/district/ramallah.js +1 -1
- package/src/countries/PS/district/salfit.js +1 -1
- package/src/countries/PS/district/tubas.js +1 -1
- package/src/countries/PS/district/tulkarm.js +1 -1
- package/src/countries/PW/district/aimeliik.js +1 -1
- package/src/countries/PW/district/airai.js +1 -1
- package/src/countries/PW/district/angaur.js +1 -1
- package/src/countries/PW/district/hatohobei.js +1 -1
- package/src/countries/PW/district/kayangel.js +1 -1
- package/src/countries/PW/district/koror.js +1 -1
- package/src/countries/PW/district/melekeok.js +1 -1
- package/src/countries/PW/district/ngaraard.js +1 -1
- package/src/countries/PW/district/ngarchelong.js +1 -1
- package/src/countries/PW/district/ngardmau.js +1 -1
- package/src/countries/PW/district/ngatpang.js +1 -1
- package/src/countries/PW/district/ngchesar.js +1 -1
- package/src/countries/PW/district/ngeremlengui.js +1 -1
- package/src/countries/PW/district/ngiwal.js +1 -1
- package/src/countries/PW/district/peleliu.js +1 -1
- package/src/countries/PW/district/sonsorol.js +1 -1
- package/src/countries/PY/district/altoParaguay.js +1 -1
- package/src/countries/PY/district/altoParana.js +1 -1
- package/src/countries/PY/district/amambay.js +1 -1
- package/src/countries/PY/district/asuncion.js +1 -1
- package/src/countries/PY/district/boqueron.js +1 -1
- package/src/countries/PY/district/caaguazu.js +1 -1
- package/src/countries/PY/district/caazapa.js +1 -1
- package/src/countries/PY/district/canindeyu.js +1 -1
- package/src/countries/PY/district/central.js +1 -1
- package/src/countries/PY/district/concepcion.js +1 -1
- package/src/countries/PY/district/cordillera.js +1 -1
- package/src/countries/PY/district/guaira.js +1 -1
- package/src/countries/PY/district/itapua.js +1 -1
- package/src/countries/PY/district/misiones.js +1 -1
- package/src/countries/PY/district/neembucu.js +1 -1
- package/src/countries/PY/district/paraguari.js +1 -1
- package/src/countries/PY/district/presidenteHayes.js +1 -1
- package/src/countries/PY/district/sanPedro.js +1 -1
- package/src/countries/SA/district/alBahah.js +1 -1
- package/src/countries/SA/district/alJawf.js +1 -1
- package/src/countries/SA/district/alQassim.js +1 -1
- package/src/countries/SA/district/asir.js +1 -1
- package/src/countries/SA/district/eastern.js +2 -2
- package/src/countries/SA/district/hail.js +1 -1
- package/src/countries/SA/district/jazan.js +1 -1
- package/src/countries/SA/district/madinah.js +1 -1
- package/src/countries/SA/district/makkah.js +2 -2
- package/src/countries/SA/district/najran.js +1 -1
- package/src/countries/SA/district/northernBorders.js +1 -1
- package/src/countries/SA/district/riyadh.js +2 -2
- package/src/countries/SA/district/tabuk.js +1 -1
- package/src/countries/SD/district/alGedaref.js +1 -1
- package/src/countries/SD/district/alJazirah.js +1 -1
- package/src/countries/SD/district/blueNile.js +1 -1
- package/src/countries/SD/district/centralDarfur.js +1 -1
- package/src/countries/SD/district/eastDarfur.js +1 -1
- package/src/countries/SD/district/kassala.js +1 -1
- package/src/countries/SD/district/khartoum.js +1 -1
- package/src/countries/SD/district/northDarfur.js +1 -1
- package/src/countries/SD/district/northKordofan.js +1 -1
- package/src/countries/SD/district/northernState.js +1 -1
- package/src/countries/SD/district/redSea.js +1 -1
- package/src/countries/SD/district/riverNile.js +1 -1
- package/src/countries/SD/district/sennar.js +1 -1
- package/src/countries/SD/district/southDarfur.js +1 -1
- package/src/countries/SD/district/southKordofan.js +1 -1
- package/src/countries/SD/district/westDarfur.js +1 -1
- package/src/countries/SD/district/westKordofan.js +1 -1
- package/src/countries/SD/district/whiteNile.js +1 -1
- package/src/countries/SN/district/dakar.js +1 -1
- package/src/countries/SN/district/diourbel.js +1 -1
- package/src/countries/SN/district/fatick.js +1 -1
- package/src/countries/SN/district/kaffrine.js +1 -1
- package/src/countries/SN/district/kaolack.js +1 -1
- package/src/countries/SN/district/kedougou.js +1 -1
- package/src/countries/SN/district/kolda.js +1 -1
- package/src/countries/SN/district/louga.js +1 -1
- package/src/countries/SN/district/matam.js +1 -1
- package/src/countries/SN/district/saintLouis.js +1 -1
- package/src/countries/SN/district/sedhiou.js +1 -1
- package/src/countries/SN/district/tambacounda.js +1 -1
- package/src/countries/SN/district/thies.js +1 -1
- package/src/countries/SN/district/ziguinchor.js +1 -1
- package/src/countries/SO/district/banaadir.js +1 -1
- package/src/countries/SV/district/ahuachapon.js +1 -1
- package/src/countries/SV/district/cabanas.js +1 -1
- package/src/countries/SV/district/chalatenango.js +1 -1
- package/src/countries/SV/district/cuscatlan.js +1 -1
- package/src/countries/SV/district/laLibertad.js +1 -1
- package/src/countries/SV/district/laPaz.js +1 -1
- package/src/countries/SV/district/laUnion.js +1 -1
- package/src/countries/SV/district/morazan.js +1 -1
- package/src/countries/SV/district/sanMiguel.js +1 -1
- package/src/countries/SV/district/sanSalvador.js +1 -1
- package/src/countries/SV/district/sanVicente.js +1 -1
- package/src/countries/SV/district/santaAna.js +1 -1
- package/src/countries/SV/district/sonsonate.js +1 -1
- package/src/countries/SV/district/usulutan.js +1 -1
- package/src/countries/SZ/district/hhohho.js +2 -2
- package/src/countries/SZ/district/lubombo.js +1 -1
- package/src/countries/SZ/district/manzini.js +1 -1
- package/src/countries/SZ/district/shiselweni.js +1 -1
- package/src/countries/TJ/district/drs.js +2 -2
- package/src/countries/TJ/district/dushanbe.js +1 -1
- package/src/countries/TJ/district/gbao.js +1 -1
- package/src/countries/TJ/district/khatlon.js +2 -2
- package/src/countries/TJ/district/sughd.js +2 -2
- package/src/countries/TM/district/ahal.js +2 -2
- package/src/countries/TM/district/ashgabat.js +1 -1
- package/src/countries/TM/district/balkan.js +2 -2
- package/src/countries/TM/district/dashoguz.js +1 -1
- package/src/countries/TM/district/lebap.js +1 -1
- package/src/countries/TM/district/mary.js +1 -1
- package/src/countries/TN/district/ariana.js +1 -1
- package/src/countries/TN/district/beja.js +1 -1
- package/src/countries/TN/district/benArous.js +1 -1
- package/src/countries/TN/district/bizerte.js +1 -1
- package/src/countries/TN/district/gabes.js +1 -1
- package/src/countries/TN/district/gafsa.js +1 -1
- package/src/countries/TN/district/jendouba.js +1 -1
- package/src/countries/TN/district/kairouan.js +1 -1
- package/src/countries/TN/district/kasserine.js +1 -1
- package/src/countries/TN/district/kebili.js +1 -1
- package/src/countries/TN/district/kef.js +1 -1
- package/src/countries/TN/district/mahdia.js +1 -1
- package/src/countries/TN/district/manouba.js +1 -1
- package/src/countries/TN/district/medenine.js +1 -1
- package/src/countries/TN/district/monastir.js +1 -1
- package/src/countries/TN/district/nabeul.js +1 -1
- package/src/countries/TN/district/sfax.js +1 -1
- package/src/countries/TN/district/sidiBouzid.js +1 -1
- package/src/countries/TN/district/siliana.js +1 -1
- package/src/countries/TN/district/sousse.js +1 -1
- package/src/countries/TN/district/tataouine.js +1 -1
- package/src/countries/TN/district/tozeur.js +1 -1
- package/src/countries/TN/district/tunis.js +1 -1
- package/src/countries/TN/district/zaghouan.js +1 -1
- package/src/countries/TT/district/sangreGrande.js +1 -1
- package/src/countries/TW/district/changhua.js +1 -1
- package/src/countries/TW/district/chiayiCity.js +1 -1
- package/src/countries/TW/district/chiayiCounty.js +1 -1
- package/src/countries/TW/district/hsinchuCity.js +1 -1
- package/src/countries/TW/district/hsinchuCounty.js +1 -1
- package/src/countries/TW/district/hualien.js +1 -1
- package/src/countries/TW/district/kaohsiung.js +1 -1
- package/src/countries/TW/district/keelung.js +1 -1
- package/src/countries/TW/district/kinmen.js +1 -1
- package/src/countries/TW/district/lienchiang.js +1 -1
- package/src/countries/TW/district/miaoli.js +1 -1
- package/src/countries/TW/district/nantou.js +1 -1
- package/src/countries/TW/district/newTaipei.js +1 -1
- package/src/countries/TW/district/penghu.js +1 -1
- package/src/countries/TW/district/pingtung.js +1 -1
- package/src/countries/TW/district/taichung.js +1 -1
- package/src/countries/TW/district/tainan.js +1 -1
- package/src/countries/TW/district/taipei.js +1 -1
- package/src/countries/TW/district/taitung.js +1 -1
- package/src/countries/TW/district/taoyuan.js +1 -1
- package/src/countries/TW/district/yilan.js +1 -1
- package/src/countries/TW/district/yunlin.js +1 -1
- package/src/countries/TZ/district/arusha.js +1 -1
- package/src/countries/TZ/district/darEsSalaam.js +1 -1
- package/src/countries/TZ/district/dodoma.js +1 -1
- package/src/countries/TZ/district/geita.js +1 -1
- package/src/countries/TZ/district/iringa.js +1 -1
- package/src/countries/TZ/district/kagera.js +1 -1
- package/src/countries/TZ/district/katavi.js +1 -1
- package/src/countries/TZ/district/kigoma.js +1 -1
- package/src/countries/TZ/district/kilimanjaro.js +1 -1
- package/src/countries/TZ/district/lindi.js +1 -1
- package/src/countries/TZ/district/manyara.js +1 -1
- package/src/countries/TZ/district/mara.js +1 -1
- package/src/countries/TZ/district/mbeya.js +1 -1
- package/src/countries/TZ/district/morogoro.js +1 -1
- package/src/countries/TZ/district/mtwara.js +1 -1
- package/src/countries/TZ/district/mwanza.js +1 -1
- package/src/countries/TZ/district/njombe.js +1 -1
- package/src/countries/TZ/district/pembaNorth.js +1 -1
- package/src/countries/TZ/district/pembaSouth.js +1 -1
- package/src/countries/TZ/district/pwani.js +1 -1
- package/src/countries/TZ/district/rukwa.js +1 -1
- package/src/countries/TZ/district/ruvuma.js +1 -1
- package/src/countries/TZ/district/shinyanga.js +1 -1
- package/src/countries/TZ/district/simiyu.js +1 -1
- package/src/countries/TZ/district/singida.js +1 -1
- package/src/countries/TZ/district/songwe.js +1 -1
- package/src/countries/TZ/district/tabora.js +1 -1
- package/src/countries/TZ/district/tanga.js +1 -1
- package/src/countries/TZ/district/ungujaNorth.js +1 -1
- package/src/countries/TZ/district/ungujaSouth.js +1 -1
- package/src/countries/TZ/district/zanzibarCity.js +1 -1
- package/src/countries/UZ/district/andijan.js +1 -1
- package/src/countries/UZ/district/bukhara.js +1 -1
- package/src/countries/UZ/district/fergana.js +1 -1
- package/src/countries/UZ/district/jizzakh.js +1 -1
- package/src/countries/UZ/district/karakalpakstan.js +1 -1
- package/src/countries/UZ/district/kashkadarya.js +1 -1
- package/src/countries/UZ/district/khorezm.js +1 -1
- package/src/countries/UZ/district/namangan.js +1 -1
- package/src/countries/UZ/district/navoiy.js +1 -1
- package/src/countries/UZ/district/samarkand.js +1 -1
- package/src/countries/UZ/district/sirdaryo.js +1 -1
- package/src/countries/UZ/district/surkhondaryo.js +1 -1
- package/src/countries/UZ/district/tashkentCity.js +1 -1
- package/src/countries/UZ/district/tashkentRegion.js +1 -1
- package/src/countries/VC/district/charlotte.js +1 -1
- package/src/countries/VC/district/grenadines.js +1 -1
- package/src/countries/VC/district/saintAndrew.js +1 -1
- package/src/countries/VC/district/saintDavid.js +1 -1
- package/src/countries/VC/district/saintGeorge.js +1 -1
- package/src/countries/VC/district/saintPatrick.js +1 -1
- package/src/countries/VE/district/amazonas.js +1 -1
- package/src/countries/VE/district/anzoategui.js +1 -1
- package/src/countries/VE/district/apure.js +1 -1
- package/src/countries/VE/district/aragua.js +1 -1
- package/src/countries/VE/district/barinas.js +1 -1
- package/src/countries/VE/district/bolivar.js +1 -1
- package/src/countries/VE/district/carabobo.js +1 -1
- package/src/countries/VE/district/caracas.js +1 -1
- package/src/countries/VE/district/cojedes.js +1 -1
- package/src/countries/VE/district/deltaAmacuro.js +1 -1
- package/src/countries/VE/district/falcon.js +1 -1
- package/src/countries/VE/district/guarico.js +1 -1
- package/src/countries/VE/district/lara.js +1 -1
- package/src/countries/VE/district/merida.js +1 -1
- package/src/countries/VE/district/miranda.js +1 -1
- package/src/countries/VE/district/monagas.js +1 -1
- package/src/countries/VE/district/nuevaEsparta.js +1 -1
- package/src/countries/VE/district/portuguesa.js +1 -1
- package/src/countries/VE/district/sucre.js +1 -1
- package/src/countries/VE/district/tachira.js +1 -1
- package/src/countries/VE/district/trujillo.js +1 -1
- package/src/countries/VE/district/vargas.js +1 -1
- package/src/countries/VE/district/yaracuy.js +1 -1
- package/src/countries/VE/district/zulia.js +1 -1
- package/src/countries/VN/district/anGiang.js +1 -1
- package/src/countries/VN/district/baRiaVungTau.js +1 -1
- package/src/countries/VN/district/bacGiang.js +1 -1
- package/src/countries/VN/district/bacKan.js +1 -1
- package/src/countries/VN/district/bacLieu.js +1 -1
- package/src/countries/VN/district/bacNinh.js +1 -1
- package/src/countries/VN/district/benTre.js +1 -1
- package/src/countries/VN/district/binhDinh.js +1 -1
- package/src/countries/VN/district/binhDuong.js +1 -1
- package/src/countries/VN/district/binhPhuoc.js +1 -1
- package/src/countries/VN/district/binhThuan.js +1 -1
- package/src/countries/VN/district/caMau.js +1 -1
- package/src/countries/VN/district/canTho.js +1 -1
- package/src/countries/VN/district/caoBang.js +1 -1
- package/src/countries/VN/district/daNang.js +1 -1
- package/src/countries/VN/district/dakLak.js +1 -1
- package/src/countries/VN/district/dakNong.js +1 -1
- package/src/countries/VN/district/dienBien.js +1 -1
- package/src/countries/VN/district/dongNai.js +1 -1
- package/src/countries/VN/district/dongThap.js +1 -1
- package/src/countries/VN/district/giaLai.js +1 -1
- package/src/countries/VN/district/haGiang.js +1 -1
- package/src/countries/VN/district/haNam.js +1 -1
- package/src/countries/VN/district/haNoi.js +1 -1
- package/src/countries/VN/district/haTinh.js +1 -1
- package/src/countries/VN/district/haiDuong.js +1 -1
- package/src/countries/VN/district/haiPhong.js +1 -1
- package/src/countries/VN/district/hauGiang.js +1 -1
- package/src/countries/VN/district/hoChiMinhCity.js +1 -1
- package/src/countries/VN/district/hoaBinh.js +1 -1
- package/src/countries/VN/district/hungYen.js +1 -1
- package/src/countries/VN/district/khanhHoa.js +1 -1
- package/src/countries/VN/district/kienGiang.js +1 -1
- package/src/countries/VN/district/konTum.js +1 -1
- package/src/countries/VN/district/laiChau.js +1 -1
- package/src/countries/VN/district/lamDong.js +1 -1
- package/src/countries/VN/district/langSon.js +1 -1
- package/src/countries/VN/district/laoCai.js +1 -1
- package/src/countries/VN/district/longAn.js +1 -1
- package/src/countries/VN/district/namDinh.js +1 -1
- package/src/countries/VN/district/ngheAn.js +1 -1
- package/src/countries/VN/district/ninhBinh.js +1 -1
- package/src/countries/VN/district/ninhThuan.js +1 -1
- package/src/countries/VN/district/phuTho.js +1 -1
- package/src/countries/VN/district/phuYen.js +1 -1
- package/src/countries/VN/district/quangBinh.js +1 -1
- package/src/countries/VN/district/quangNam.js +1 -1
- package/src/countries/VN/district/quangNgai.js +1 -1
- package/src/countries/VN/district/quangNinh.js +1 -1
- package/src/countries/VN/district/quangTri.js +1 -1
- package/src/countries/VN/district/socTrang.js +1 -1
- package/src/countries/VN/district/sonLa.js +1 -1
- package/src/countries/VN/district/tayNinh.js +1 -1
- package/src/countries/VN/district/thaiBinh.js +1 -1
- package/src/countries/VN/district/thaiNguyen.js +1 -1
- package/src/countries/VN/district/thanhHoa.js +1 -1
- package/src/countries/VN/district/thuaThienHue.js +1 -1
- package/src/countries/VN/district/tienGiang.js +1 -1
- package/src/countries/VN/district/traVinh.js +1 -1
- package/src/countries/VN/district/tuyenQuang.js +1 -1
- package/src/countries/VN/district/vinhLong.js +1 -1
- package/src/countries/VN/district/vinhPhuc.js +1 -1
- package/src/countries/VN/district/yenBai.js +1 -1
- package/src/countries/ZM/district/copperbelt.js +1 -1
- package/src/countries/ZM/district/eastern.js +1 -1
- package/src/countries/ZM/district/lusaka.js +1 -1
- package/src/functions/getCountries.js +2 -0
- package/src/react/LocationPicker.tsx +91 -0
- package/src/react/adapters/antd.tsx +36 -0
- package/src/react/adapters/mui.tsx +51 -0
- package/src/react/index.ts +24 -0
- package/src/react/location-picker.types.ts +111 -0
- package/src/react/useLocationPicker.ts +214 -0
package/README.md
CHANGED
|
@@ -1,186 +1,757 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
bash
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
Returns
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
1
|
+
# country-data-filter
|
|
2
|
+
|
|
3
|
+
A comprehensive npm package providing detailed geographical data for **190 countries** — including provinces, districts, cities, postal codes, currency codes, and phone country codes. Ideal for address forms, location pickers, and any application that needs structured geographical information.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install country-data-filter
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Data Coverage
|
|
12
|
+
|
|
13
|
+
- **190 countries** with province/state, district, and city data
|
|
14
|
+
- Postal codes where available (from GeoNames dataset)
|
|
15
|
+
- Currency code and international dialling code per country
|
|
16
|
+
- Localized admin labels (e.g. `provinceLabel: "State"`, `districtLabel: "County"`)
|
|
17
|
+
|
|
18
|
+
## Data Structure
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
Country
|
|
22
|
+
└─ provinces
|
|
23
|
+
└─ Province
|
|
24
|
+
└─ districts
|
|
25
|
+
└─ District
|
|
26
|
+
└─ cities[]
|
|
27
|
+
└─ { name, postalCode, type }
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Usage
|
|
31
|
+
|
|
32
|
+
### JavaScript (CommonJS)
|
|
33
|
+
|
|
34
|
+
```js
|
|
35
|
+
const {
|
|
36
|
+
getCountries,
|
|
37
|
+
getDataByCountry,
|
|
38
|
+
getDataByProvince,
|
|
39
|
+
getDataByDistrict,
|
|
40
|
+
getDataByCity,
|
|
41
|
+
getDataByCountryProvince,
|
|
42
|
+
getDataByCountryProvinceDistrict,
|
|
43
|
+
getDataByCountryProvinceDistrictCity,
|
|
44
|
+
getDataByEtherCountryProvinceDistrictCity,
|
|
45
|
+
getDataByCountryDistrict,
|
|
46
|
+
getDataByCountryCity,
|
|
47
|
+
getDataByProvinceDistrict,
|
|
48
|
+
getDataByProvinceCity,
|
|
49
|
+
getDataByDistrictCity,
|
|
50
|
+
getCurrencyByCountry,
|
|
51
|
+
getDataByPostalCode,
|
|
52
|
+
getCitiesWithPostalCodesByCountry,
|
|
53
|
+
listFunctions,
|
|
54
|
+
} = require("country-data-filter");
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### TypeScript / ESM
|
|
58
|
+
|
|
59
|
+
```ts
|
|
60
|
+
import {
|
|
61
|
+
getCountries,
|
|
62
|
+
getDataByCountry,
|
|
63
|
+
getDataByProvince,
|
|
64
|
+
getDataByDistrict,
|
|
65
|
+
// ... etc
|
|
66
|
+
} from "country-data-filter";
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Functions
|
|
70
|
+
|
|
71
|
+
### `getCountries()`
|
|
72
|
+
|
|
73
|
+
Returns an array of all supported countries with metadata.
|
|
74
|
+
|
|
75
|
+
```js
|
|
76
|
+
const countries = getCountries();
|
|
77
|
+
// [{ name, code, currency, countryCode, provinceLabel, districtLabel }, ...]
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
### `getDataByCountry(countryCode)`
|
|
83
|
+
|
|
84
|
+
Returns all provinces, districts, and cities for a country.
|
|
85
|
+
|
|
86
|
+
```js
|
|
87
|
+
const result = getDataByCountry("LK");
|
|
88
|
+
// { provinces: [...], districts: [...], cities: [...] }
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
| Parameter | Type | Description |
|
|
92
|
+
|-----------|------|-------------|
|
|
93
|
+
| `countryCode` | `string` | ISO 3166-1 alpha-2 code (e.g. `"US"`, `"LK"`, `"NG"`) |
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
### `getDataByProvince(provinceName)`
|
|
98
|
+
|
|
99
|
+
Returns districts and cities for a matching province name (searches all countries).
|
|
100
|
+
|
|
101
|
+
```js
|
|
102
|
+
const result = getDataByProvince("Western Province");
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
### `getDataByDistrict(districtName)`
|
|
108
|
+
|
|
109
|
+
Returns the country, province, and cities for a matching district name.
|
|
110
|
+
|
|
111
|
+
```js
|
|
112
|
+
const result = getDataByDistrict("Colombo");
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
### `getDataByCity(cityName)`
|
|
118
|
+
|
|
119
|
+
Returns the country, province, and district for a matching city name.
|
|
120
|
+
|
|
121
|
+
```js
|
|
122
|
+
const result = getDataByCity("Kandy");
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
### `getDataByCountryProvince(countryCode, provinceName)`
|
|
128
|
+
|
|
129
|
+
Returns districts and cities for a specific province within a country.
|
|
130
|
+
|
|
131
|
+
```js
|
|
132
|
+
const result = getDataByCountryProvince("LK", "Western Province");
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
### `getDataByCountryProvinceDistrict(countryCode, provinceName, districtName)`
|
|
138
|
+
|
|
139
|
+
Returns cities for a specific district within a province and country.
|
|
140
|
+
|
|
141
|
+
```js
|
|
142
|
+
const result = getDataByCountryProvinceDistrict("LK", "Western Province", "Colombo");
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
### `getDataByCountryProvinceDistrictCity(countryCode, provinceName, districtName, cityName)`
|
|
148
|
+
|
|
149
|
+
Returns data for a specific city at the full hierarchy level.
|
|
150
|
+
|
|
151
|
+
```js
|
|
152
|
+
const result = getDataByCountryProvinceDistrictCity("LK", "Western Province", "Colombo", "Colombo");
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
### `getDataByEtherCountryProvinceDistrictCity(countryCode?, provinceName?, districtName?, cityName?)`
|
|
158
|
+
|
|
159
|
+
Flexible search — pass any combination of parameters (use `null` to skip a level). Returns all matching records.
|
|
160
|
+
|
|
161
|
+
```js
|
|
162
|
+
// Find all districts named "Central" across all countries
|
|
163
|
+
const result = getDataByEtherCountryProvinceDistrictCity(null, null, "Central", null);
|
|
164
|
+
|
|
165
|
+
// Find all cities named "Springfield" in the US
|
|
166
|
+
const result = getDataByEtherCountryProvinceDistrictCity("US", null, null, "Springfield");
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
### `getDataByCountryDistrict(countryCode, districtName)`
|
|
172
|
+
|
|
173
|
+
Returns cities for a district within a specific country.
|
|
174
|
+
|
|
175
|
+
```js
|
|
176
|
+
const result = getDataByCountryDistrict("GB", "Greater London");
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
### `getDataByCountryCity(countryCode, cityName)`
|
|
182
|
+
|
|
183
|
+
Returns province and district data for a city within a specific country.
|
|
184
|
+
|
|
185
|
+
```js
|
|
186
|
+
const result = getDataByCountryCity("AU", "Sydney");
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
### `getDataByProvinceDistrict(provinceName, districtName)`
|
|
192
|
+
|
|
193
|
+
Returns cities for a district within a named province (across all countries).
|
|
194
|
+
|
|
195
|
+
```js
|
|
196
|
+
const result = getDataByProvinceDistrict("Ashanti Region", "Kumasi");
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
### `getDataByProvinceCity(provinceName, cityName)`
|
|
202
|
+
|
|
203
|
+
Returns district data for a city within a named province.
|
|
204
|
+
|
|
205
|
+
```js
|
|
206
|
+
const result = getDataByProvinceCity("Koshi Province", "Biratnagar");
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
### `getDataByDistrictCity(districtName, cityName)`
|
|
212
|
+
|
|
213
|
+
Returns country and province data for a city within a named district.
|
|
214
|
+
|
|
215
|
+
```js
|
|
216
|
+
const result = getDataByDistrictCity("Mombasa", "Mombasa");
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
### `getCurrencyByCountry(countryCode)`
|
|
222
|
+
|
|
223
|
+
Returns the currency code for a country.
|
|
224
|
+
|
|
225
|
+
```js
|
|
226
|
+
const currency = getCurrencyByCountry("JP");
|
|
227
|
+
// { currency: "JPY" }
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
### `getDataByPostalCode(postalCode)`
|
|
233
|
+
|
|
234
|
+
Returns location data matching a postal code (countries with GeoNames postal data).
|
|
235
|
+
|
|
236
|
+
```js
|
|
237
|
+
const result = getDataByPostalCode("10001");
|
|
238
|
+
// { country, province, district, city }
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
---
|
|
242
|
+
|
|
243
|
+
### `getCitiesWithPostalCodesByCountry(countryCode)`
|
|
244
|
+
|
|
245
|
+
Returns all cities with postal codes for a given country.
|
|
246
|
+
|
|
247
|
+
```js
|
|
248
|
+
const cities = getCitiesWithPostalCodesByCountry("US");
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
### `listFunctions()`
|
|
254
|
+
|
|
255
|
+
Returns an object containing all available functions — useful for runtime introspection.
|
|
256
|
+
|
|
257
|
+
```js
|
|
258
|
+
const fns = listFunctions();
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
## React Location Picker
|
|
266
|
+
|
|
267
|
+
A headless, UI-library-agnostic cascade picker for country → province → district → city. You supply the dropdown component; the hook/component handles all data loading and cascade resets.
|
|
268
|
+
|
|
269
|
+
### Peer dependencies
|
|
270
|
+
|
|
271
|
+
```bash
|
|
272
|
+
# Core (required)
|
|
273
|
+
npm install react react-dom
|
|
274
|
+
|
|
275
|
+
# Ant Design adapter (optional)
|
|
276
|
+
npm install antd
|
|
277
|
+
|
|
278
|
+
# MUI adapter (optional)
|
|
279
|
+
npm install @mui/material @emotion/react @emotion/styled
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
### Quick start — Ant Design
|
|
283
|
+
|
|
284
|
+
```tsx
|
|
285
|
+
import { AntdLocationPicker } from 'country-data-filter/react/antd';
|
|
286
|
+
|
|
287
|
+
function AddressForm() {
|
|
288
|
+
return (
|
|
289
|
+
<AntdLocationPicker
|
|
290
|
+
onCountryChange={(code) => console.log('country code:', code)}
|
|
291
|
+
onCountrySelect={(country) => console.log('full object:', country)}
|
|
292
|
+
onProvinceChange={(name) => console.log('province:', name)}
|
|
293
|
+
onDistrictChange={(name) => console.log('district:', name)}
|
|
294
|
+
onCityChange={(name) => console.log('city name:', name)}
|
|
295
|
+
onCitySelect={(city) => console.log('city + postal:', city)}
|
|
296
|
+
/>
|
|
297
|
+
);
|
|
298
|
+
}
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
### Quick start — MUI
|
|
302
|
+
|
|
303
|
+
```tsx
|
|
304
|
+
import { MuiLocationPicker } from 'country-data-filter/react/mui';
|
|
305
|
+
|
|
306
|
+
<MuiLocationPicker
|
|
307
|
+
onCountryChange={(code) => setCountry(code)}
|
|
308
|
+
onProvinceChange={(name) => setProvince(name)}
|
|
309
|
+
onCityChange={(name) => setCity(name)}
|
|
310
|
+
onCitySelect={(city) => setPostalCode(city?.postalCode ?? '')}
|
|
311
|
+
/>
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
### Quick start — any UI library (`renderSelect`)
|
|
315
|
+
|
|
316
|
+
```tsx
|
|
317
|
+
import { LocationPicker } from 'country-data-filter/react';
|
|
318
|
+
|
|
319
|
+
<LocationPicker
|
|
320
|
+
onCountryChange={setCountry}
|
|
321
|
+
onProvinceChange={setProvince}
|
|
322
|
+
renderSelect={({ id, value, options, onChange, placeholder }) => (
|
|
323
|
+
<MySelect
|
|
324
|
+
key={id}
|
|
325
|
+
value={value}
|
|
326
|
+
options={options}
|
|
327
|
+
placeholder={placeholder}
|
|
328
|
+
onChange={onChange}
|
|
329
|
+
/>
|
|
330
|
+
)}
|
|
331
|
+
/>
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
### Headless hook
|
|
335
|
+
|
|
336
|
+
Use `useLocationPicker` when you need full control over rendering:
|
|
337
|
+
|
|
338
|
+
```tsx
|
|
339
|
+
import { useLocationPicker } from 'country-data-filter/react';
|
|
340
|
+
|
|
341
|
+
function MyPicker() {
|
|
342
|
+
const {
|
|
343
|
+
country, province, district, city,
|
|
344
|
+
countryOptions, provinceOptions, districtOptions, cityOptions,
|
|
345
|
+
setCountry, setProvince, setDistrict, setCity,
|
|
346
|
+
showProvince, showDistrict, showCity,
|
|
347
|
+
provinceLabel, districtLabel,
|
|
348
|
+
} = useLocationPicker({
|
|
349
|
+
onCountryChange: (v) => console.log(v),
|
|
350
|
+
onProvinceChange: (v) => console.log(v),
|
|
351
|
+
onDistrictChange: (v) => console.log(v),
|
|
352
|
+
onCityChange: (v) => console.log(v),
|
|
353
|
+
});
|
|
354
|
+
|
|
355
|
+
return (
|
|
356
|
+
<div>
|
|
357
|
+
<select value={country ?? ''} onChange={e => setCountry(e.target.value || null)}>
|
|
358
|
+
{countryOptions.map(o => <option key={o.value} value={o.value}>{o.label}</option>)}
|
|
359
|
+
</select>
|
|
360
|
+
{showProvince && (
|
|
361
|
+
<select value={province ?? ''} onChange={e => setProvince(e.target.value || null)}>
|
|
362
|
+
{provinceOptions.map(o => <option key={o.value} value={o.value}>{o.label}</option>)}
|
|
363
|
+
</select>
|
|
364
|
+
)}
|
|
365
|
+
</div>
|
|
366
|
+
);
|
|
367
|
+
}
|
|
368
|
+
```
|
|
369
|
+
|
|
370
|
+
### Controlled mode
|
|
371
|
+
|
|
372
|
+
Pass `*Value` props to take control of each level:
|
|
373
|
+
|
|
374
|
+
```tsx
|
|
375
|
+
const [country, setCountry] = useState<string | null>(null);
|
|
376
|
+
const [city, setCity] = useState<string | null>(null);
|
|
377
|
+
|
|
378
|
+
<LocationPicker
|
|
379
|
+
countryValue={country}
|
|
380
|
+
cityValue={city}
|
|
381
|
+
onCountryChange={setCountry}
|
|
382
|
+
onCityChange={setCity}
|
|
383
|
+
renderSelect={...}
|
|
384
|
+
/>
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
### Dual callbacks — value vs full object
|
|
388
|
+
|
|
389
|
+
Every level fires **two callbacks**: one with the form value, one with the full raw object:
|
|
390
|
+
|
|
391
|
+
| Callback | Receives | Use for |
|
|
392
|
+
|---|---|---|
|
|
393
|
+
| `onCountryChange(value)` | Mapped option value (e.g. `"LK"`) | Form state, storing the code |
|
|
394
|
+
| `onCountrySelect(country)` | Full `CountryRaw` object | Reading name, currency, dialling code |
|
|
395
|
+
| `onCityChange(value)` | City name string | Form state |
|
|
396
|
+
| `onCitySelect(city)` | Full `CityRaw` object | Reading `postalCode`, `type` |
|
|
397
|
+
|
|
398
|
+
```tsx
|
|
399
|
+
<LocationPicker
|
|
400
|
+
onCountryChange={(code) => form.setFieldValue('country', code)}
|
|
401
|
+
onCountrySelect={(c) => setDialCode(c?.countryCode ?? '')}
|
|
402
|
+
onCityChange={(name) => form.setFieldValue('city', name)}
|
|
403
|
+
onCitySelect={(city) => form.setFieldValue('postalCode', city?.postalCode ?? '')}
|
|
404
|
+
renderSelect={...}
|
|
405
|
+
/>
|
|
406
|
+
```
|
|
407
|
+
|
|
408
|
+
### Custom option values
|
|
409
|
+
|
|
410
|
+
Control what value `onChange` receives without writing a full mapper:
|
|
411
|
+
|
|
412
|
+
```tsx
|
|
413
|
+
// onChange receives dialling code ("+94") instead of country code ("LK")
|
|
414
|
+
<LocationPicker countryValueKey="countryCode" onCountryChange={setDialCode} renderSelect={...} />
|
|
415
|
+
|
|
416
|
+
// dropdown labels show currency symbols
|
|
417
|
+
<LocationPicker countryLabelKey="currency" onCountryChange={setCode} renderSelect={...} />
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
### Custom mappers (advanced)
|
|
421
|
+
|
|
422
|
+
```tsx
|
|
423
|
+
<LocationPicker
|
|
424
|
+
// Combine fields in the label
|
|
425
|
+
countryMapper={(c) => ({ label: `${c.name} (${c.countryCode})`, value: c.code })}
|
|
426
|
+
// Show postal code next to city name
|
|
427
|
+
cityMapper={(c) => ({ label: c.postalCode ? `${c.name} — ${c.postalCode}` : c.name, value: c.name })}
|
|
428
|
+
renderSelect={...}
|
|
429
|
+
/>
|
|
430
|
+
```
|
|
431
|
+
|
|
432
|
+
### Which dropdowns appear
|
|
433
|
+
|
|
434
|
+
The dropdowns shown are determined by which `on*Change` callbacks are provided:
|
|
435
|
+
|
|
436
|
+
| Props provided | Dropdowns shown |
|
|
437
|
+
|---|---|
|
|
438
|
+
| `onCountryChange` only | Country |
|
|
439
|
+
| `onCountryChange` + `onProvinceChange` | Country → Province |
|
|
440
|
+
| `+ onDistrictChange` | Country → Province → District |
|
|
441
|
+
| `+ onCityChange` | Country → Province → District → City |
|
|
442
|
+
|
|
443
|
+
### Props reference
|
|
444
|
+
|
|
445
|
+
| Prop | Type | Default | Description |
|
|
446
|
+
|---|---|---|---|
|
|
447
|
+
| `onCountryChange` | `(value: string \| null) => void` | — | Fires on country select; presence shows the country dropdown |
|
|
448
|
+
| `onCountrySelect` | `(country: CountryRaw \| null) => void` | — | Fires with full country object on each change |
|
|
449
|
+
| `onProvinceChange` | `(value: string \| null) => void` | — | Fires on province select; presence shows province dropdown |
|
|
450
|
+
| `onDistrictChange` | `(value: string \| null) => void` | — | Fires on district select; presence shows district dropdown |
|
|
451
|
+
| `onCityChange` | `(value: string \| null) => void` | — | Fires on city select; presence shows city dropdown |
|
|
452
|
+
| `onCitySelect` | `(city: CityRaw \| null) => void` | — | Fires with full city object (includes `postalCode`, `type`) |
|
|
453
|
+
| `countryValue` | `string \| null` | — | Controlled country value |
|
|
454
|
+
| `provinceValue` | `string \| null` | — | Controlled province value |
|
|
455
|
+
| `districtValue` | `string \| null` | — | Controlled district value |
|
|
456
|
+
| `cityValue` | `string \| null` | — | Controlled city value |
|
|
457
|
+
| `countryLabelKey` | `'name' \| 'code' \| 'currency' \| 'countryCode'` | `'name'` | Field to use as option label |
|
|
458
|
+
| `countryValueKey` | `'name' \| 'code' \| 'currency' \| 'countryCode'` | `'code'` | Field to use as option value |
|
|
459
|
+
| `countryMapper` | `(c: CountryRaw) => LocationOption` | — | Full custom mapper (overrides `countryLabelKey`/`countryValueKey`) |
|
|
460
|
+
| `provinceMapper` | `(name: string) => LocationOption` | — | Custom province option mapper |
|
|
461
|
+
| `districtMapper` | `(name: string) => LocationOption` | — | Custom district option mapper |
|
|
462
|
+
| `cityMapper` | `(city: CityRaw) => LocationOption` | — | Custom city option mapper |
|
|
463
|
+
| `renderSelect` | `(props: RenderSelectProps) => ReactNode` | **required** | Your dropdown renderer |
|
|
464
|
+
| `layout` | `'vertical' \| 'horizontal'` | `'vertical'` | Flex direction of the wrapper |
|
|
465
|
+
| `className` | `string` | — | Class added to the wrapper `<div>` |
|
|
466
|
+
| `style` | `CSSProperties` | — | Inline styles for the wrapper `<div>` |
|
|
467
|
+
|
|
468
|
+
### `AntdLocationPicker` additional props
|
|
469
|
+
|
|
470
|
+
| Prop | Type | Description |
|
|
471
|
+
|---|---|---|
|
|
472
|
+
| `selectProps` | `Record<string, unknown>` | Props spread onto every `<Select>` |
|
|
473
|
+
| `perLevelProps` | `Partial<Record<SelectLevel, Record<string, unknown>>>` | Per-level prop overrides keyed by `'country' \| 'province' \| 'district' \| 'city'` |
|
|
474
|
+
|
|
475
|
+
### `MuiLocationPicker` additional props
|
|
476
|
+
|
|
477
|
+
| Prop | Type | Description |
|
|
478
|
+
|---|---|---|
|
|
479
|
+
| `autocompleteProps` | `Record<string, unknown>` | Props spread onto every `<Autocomplete>` |
|
|
480
|
+
| `textFieldProps` | `Record<string, unknown>` | Props spread onto every `<TextField>` |
|
|
481
|
+
| `perLevelProps` | `Partial<Record<SelectLevel, { autocomplete?; textField? }>>` | Per-level overrides |
|
|
482
|
+
|
|
483
|
+
---
|
|
484
|
+
|
|
485
|
+
## Angular Location Picker
|
|
486
|
+
|
|
487
|
+
A standalone PrimeNG cascade picker for Angular 17+. Ships as raw TypeScript source — no build step required.
|
|
488
|
+
|
|
489
|
+
### PrimeNG version compatibility
|
|
490
|
+
|
|
491
|
+
| PrimeNG version | Component to import | Selector |
|
|
492
|
+
|---|---|---|
|
|
493
|
+
| v17 – v19 | `LocationPickerComponent` | `<cdf-location-picker>` |
|
|
494
|
+
| v20+ | `LocationPickerSelectComponent` | `<cdf-location-picker-select>` |
|
|
495
|
+
|
|
496
|
+
PrimeNG v20 removed `primeng/dropdown` (`p-dropdown`). The `LocationPickerSelectComponent` uses `primeng/select` (`p-select`) which is required for v18+.
|
|
497
|
+
|
|
498
|
+
### Peer dependencies
|
|
499
|
+
|
|
500
|
+
```bash
|
|
501
|
+
npm install @angular/core @angular/common @angular/forms primeng rxjs
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
### Setup
|
|
505
|
+
|
|
506
|
+
Add the source path to your `tsconfig.json`:
|
|
507
|
+
|
|
508
|
+
```json
|
|
509
|
+
{
|
|
510
|
+
"include": [
|
|
511
|
+
"src",
|
|
512
|
+
"node_modules/country-data-filter/src/angular/**/*.ts"
|
|
513
|
+
]
|
|
514
|
+
}
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
### Import
|
|
518
|
+
|
|
519
|
+
Both components are exported from the main barrel. Import by name — TypeScript will resolve the correct file:
|
|
520
|
+
|
|
521
|
+
**PrimeNG v17–v19:**
|
|
522
|
+
|
|
523
|
+
```ts
|
|
524
|
+
import { LocationPickerComponent } from 'country-data-filter/angular';
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
**PrimeNG v20+:**
|
|
528
|
+
|
|
529
|
+
```ts
|
|
530
|
+
import { LocationPickerSelectComponent } from 'country-data-filter/angular';
|
|
531
|
+
```
|
|
532
|
+
|
|
533
|
+
Add to your component's `imports` array (both are standalone components):
|
|
534
|
+
|
|
535
|
+
```ts
|
|
536
|
+
// PrimeNG v17-v19
|
|
537
|
+
@Component({
|
|
538
|
+
standalone: true,
|
|
539
|
+
imports: [LocationPickerComponent],
|
|
540
|
+
template: `<cdf-location-picker [countryControl]="countryCtrl" />`
|
|
541
|
+
})
|
|
542
|
+
|
|
543
|
+
// PrimeNG v20+
|
|
544
|
+
@Component({
|
|
545
|
+
standalone: true,
|
|
546
|
+
imports: [LocationPickerSelectComponent],
|
|
547
|
+
template: `<cdf-location-picker-select [countryControl]="countryCtrl" />`
|
|
548
|
+
})
|
|
549
|
+
```
|
|
550
|
+
|
|
551
|
+
### Basic usage — reactive forms
|
|
552
|
+
|
|
553
|
+
```ts
|
|
554
|
+
countryCtrl = new FormControl(null);
|
|
555
|
+
provinceCtrl = new FormControl(null);
|
|
556
|
+
districtCtrl = new FormControl(null);
|
|
557
|
+
cityCtrl = new FormControl(null);
|
|
558
|
+
```
|
|
559
|
+
|
|
560
|
+
```html
|
|
561
|
+
<cdf-location-picker
|
|
562
|
+
[countryControl]="countryCtrl"
|
|
563
|
+
[provinceControl]="provinceCtrl"
|
|
564
|
+
[districtControl]="districtCtrl"
|
|
565
|
+
[cityControl]="cityCtrl">
|
|
566
|
+
</cdf-location-picker>
|
|
567
|
+
```
|
|
568
|
+
|
|
569
|
+
### Event-driven (no reactive forms)
|
|
570
|
+
|
|
571
|
+
```html
|
|
572
|
+
<cdf-location-picker
|
|
573
|
+
(countryChange)="onCountry($event)"
|
|
574
|
+
(provinceChange)="onProvince($event)"
|
|
575
|
+
(cityChange)="onCity($event)">
|
|
576
|
+
</cdf-location-picker>
|
|
577
|
+
```
|
|
578
|
+
|
|
579
|
+
```ts
|
|
580
|
+
onCountry(e: CountryChangeEvent) {
|
|
581
|
+
console.log(e.formValue); // country code (or custom value key)
|
|
582
|
+
console.log(e.country); // full Country object
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
onCity(e: CityChangeEvent) {
|
|
586
|
+
console.log(e.name); // city name
|
|
587
|
+
console.log(e.postalCode); // postal code string
|
|
588
|
+
console.log(e.type); // "City" | "Town" | "Village"
|
|
589
|
+
}
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
### Which dropdowns appear
|
|
593
|
+
|
|
594
|
+
Dropdowns are shown based on which controls are passed:
|
|
595
|
+
|
|
596
|
+
| Inputs provided | Dropdowns shown |
|
|
597
|
+
|---|---|
|
|
598
|
+
| `[countryControl]` only | Country |
|
|
599
|
+
| `+ [provinceControl]` | Country → Province |
|
|
600
|
+
| `+ [districtControl]` | Country → Province → District |
|
|
601
|
+
| `+ [cityControl]` | Country → Province → District → City |
|
|
602
|
+
|
|
603
|
+
Passing `[cityControl]` automatically implies all levels above it.
|
|
604
|
+
|
|
605
|
+
### Custom option values
|
|
606
|
+
|
|
607
|
+
```html
|
|
608
|
+
<!-- value = dialling code, e.g. "+94" for Sri Lanka -->
|
|
609
|
+
<cdf-location-picker countryValueKey="countryCode" [countryControl]="ctrl" />
|
|
610
|
+
|
|
611
|
+
<!-- label shows currency code -->
|
|
612
|
+
<cdf-location-picker countryLabelKey="currency" [countryControl]="ctrl" />
|
|
613
|
+
```
|
|
614
|
+
|
|
615
|
+
### PrimeNG prop passthrough
|
|
616
|
+
|
|
617
|
+
**v17–v19** — use `*DropdownProps` inputs:
|
|
618
|
+
|
|
619
|
+
```html
|
|
620
|
+
<cdf-location-picker
|
|
621
|
+
[countryControl]="countryCtrl"
|
|
622
|
+
[countryDropdownProps]="{ styleClass: 'w-full', appendTo: 'body', showClear: true }"
|
|
623
|
+
[provinceDropdownProps]="{ styleClass: 'w-full', filter: false }">
|
|
624
|
+
</cdf-location-picker>
|
|
625
|
+
```
|
|
626
|
+
|
|
627
|
+
**v20+** — use `*SelectProps` inputs (same object shape):
|
|
628
|
+
|
|
629
|
+
```html
|
|
630
|
+
<cdf-location-picker-select
|
|
631
|
+
[countryControl]="countryCtrl"
|
|
632
|
+
[countrySelectProps]="{ styleClass: 'w-full', appendTo: 'body', showClear: true }"
|
|
633
|
+
[provinceSelectProps]="{ styleClass: 'w-full', filter: false }">
|
|
634
|
+
</cdf-location-picker-select>
|
|
635
|
+
```
|
|
636
|
+
|
|
637
|
+
### Layout
|
|
638
|
+
|
|
639
|
+
```html
|
|
640
|
+
<!-- v17-v19 -->
|
|
641
|
+
<cdf-location-picker layout="horizontal" [countryControl]="ctrl" />
|
|
642
|
+
|
|
643
|
+
<!-- v20+ -->
|
|
644
|
+
<cdf-location-picker-select layout="horizontal" [countryControl]="ctrl" />
|
|
645
|
+
```
|
|
646
|
+
|
|
647
|
+
### Inputs reference
|
|
648
|
+
|
|
649
|
+
Both components share the same inputs — the only difference is `*DropdownProps` vs `*SelectProps`:
|
|
650
|
+
|
|
651
|
+
| Input | Type | Default | Description |
|
|
652
|
+
|---|---|---|---|
|
|
653
|
+
| `countryControl` | `AbstractControl` | — | Reactive form control for country |
|
|
654
|
+
| `provinceControl` | `AbstractControl` | — | Reactive form control for province; presence shows province dropdown |
|
|
655
|
+
| `districtControl` | `AbstractControl` | — | Reactive form control for district |
|
|
656
|
+
| `cityControl` | `AbstractControl` | — | Reactive form control for city |
|
|
657
|
+
| `countryLabelKey` | `'name' \| 'code' \| 'currency' \| 'countryCode'` | `'name'` | Field to use as dropdown label |
|
|
658
|
+
| `countryValueKey` | `'name' \| 'code' \| 'currency' \| 'countryCode'` | `'code'` | Field to use as option value |
|
|
659
|
+
| `countryDropdownProps` *(v17–v19)* | `DropdownProps` | `{}` | Props spread onto the country `<p-dropdown>` |
|
|
660
|
+
| `provinceDropdownProps` *(v17–v19)* | `DropdownProps` | `{}` | Props spread onto the province `<p-dropdown>` |
|
|
661
|
+
| `districtDropdownProps` *(v17–v19)* | `DropdownProps` | `{}` | Props spread onto the district `<p-dropdown>` |
|
|
662
|
+
| `cityDropdownProps` *(v17–v19)* | `DropdownProps` | `{}` | Props spread onto the city `<p-dropdown>` |
|
|
663
|
+
| `countrySelectProps` *(v20+)* | `SelectProps` | `{}` | Props spread onto the country `<p-select>` |
|
|
664
|
+
| `provinceSelectProps` *(v20+)* | `SelectProps` | `{}` | Props spread onto the province `<p-select>` |
|
|
665
|
+
| `districtSelectProps` *(v20+)* | `SelectProps` | `{}` | Props spread onto the district `<p-select>` |
|
|
666
|
+
| `citySelectProps` *(v20+)* | `SelectProps` | `{}` | Props spread onto the city `<p-select>` |
|
|
667
|
+
| `layout` | `'vertical' \| 'horizontal'` | `'vertical'` | Flex direction of the wrapper |
|
|
668
|
+
|
|
669
|
+
### Outputs reference
|
|
670
|
+
|
|
671
|
+
| Output | Event type | Description |
|
|
672
|
+
|---|---|---|
|
|
673
|
+
| `(countryChange)` | `CountryChangeEvent` | Emits `{ formValue, country }` on country select |
|
|
674
|
+
| `(provinceChange)` | `NameChangeEvent` | Emits `{ name }` on province select |
|
|
675
|
+
| `(districtChange)` | `NameChangeEvent` | Emits `{ name }` on district select |
|
|
676
|
+
| `(cityChange)` | `CityChangeEvent` | Emits `{ name, postalCode, type }` on city select |
|
|
677
|
+
|
|
678
|
+
### Event types
|
|
679
|
+
|
|
680
|
+
```ts
|
|
681
|
+
interface CountryChangeEvent {
|
|
682
|
+
formValue: string | null; // what was written to the FormControl
|
|
683
|
+
country: Country | null; // full Country object (always raw, regardless of valueKey)
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
interface NameChangeEvent {
|
|
687
|
+
name: string | null;
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
interface CityChangeEvent {
|
|
691
|
+
name: string | null;
|
|
692
|
+
postalCode: string; // empty string when not available
|
|
693
|
+
type?: string; // "City" | "Town" | "Village"
|
|
694
|
+
}
|
|
695
|
+
```
|
|
696
|
+
|
|
697
|
+
---
|
|
698
|
+
|
|
699
|
+
## Supported Countries
|
|
700
|
+
|
|
701
|
+
The package covers all 190 UN-recognized sovereign states, including:
|
|
702
|
+
|
|
703
|
+
| Region | Examples |
|
|
704
|
+
|--------|---------|
|
|
705
|
+
| Asia | IN, CN, JP, VN, BD, PK, ID, TH, PH, KR, TR, SA, IR, IQ, MM, AF, KZ, UZ |
|
|
706
|
+
| Africa | NG, ET, EG, CD, TZ, KE, ZA, GH, MZ, CM, CI, AO, ML, SD, MG |
|
|
707
|
+
| Europe | DE, FR, GB, IT, ES, PL, RO, NL, BE, CZ, GR, PT, HU, AT, CH, SE |
|
|
708
|
+
| Americas | US, BR, MX, CA, CO, AR, PE, VE, CL, EC, BO, PY, UY, CU, DO |
|
|
709
|
+
| Oceania | AU, NZ, PG, FJ, SB, VU, WS, TO, TV, PW, NR, KI |
|
|
710
|
+
|
|
711
|
+
## TypeScript Support
|
|
712
|
+
|
|
713
|
+
Full TypeScript typings are included via `src/index.d.ts`. Key interfaces:
|
|
714
|
+
|
|
715
|
+
```ts
|
|
716
|
+
interface Country {
|
|
717
|
+
name: string;
|
|
718
|
+
code: string;
|
|
719
|
+
currency: string;
|
|
720
|
+
countryCode: string; // international dialling code, e.g. "+1"
|
|
721
|
+
provinceLabel: string; // e.g. "State", "Province", "Region"
|
|
722
|
+
districtLabel: string; // e.g. "County", "District", "Governorate"
|
|
723
|
+
}
|
|
724
|
+
|
|
725
|
+
interface City {
|
|
726
|
+
name: string;
|
|
727
|
+
postalCode: string;
|
|
728
|
+
type?: "City" | "Town" | "Village";
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
interface District {
|
|
732
|
+
name: string;
|
|
733
|
+
cities: City[];
|
|
734
|
+
}
|
|
735
|
+
|
|
736
|
+
interface Province {
|
|
737
|
+
name: string;
|
|
738
|
+
districts: Record<string, District>;
|
|
739
|
+
}
|
|
740
|
+
```
|
|
741
|
+
|
|
742
|
+
## Contributing
|
|
743
|
+
|
|
744
|
+
1. Fork the repository
|
|
745
|
+
2. Create a feature branch (`git checkout -b feature/my-change`)
|
|
746
|
+
3. Make your changes and add tests where applicable
|
|
747
|
+
4. Submit a pull request with a clear description
|
|
748
|
+
|
|
749
|
+
Repository: [github.com/knnadeera/country-data](https://github.com/knnadeera/country-data)
|
|
750
|
+
|
|
751
|
+
## License
|
|
752
|
+
|
|
753
|
+
ISC
|
|
754
|
+
|
|
755
|
+
## Contact
|
|
756
|
+
|
|
757
|
+
For questions or support: knnadeera1@gmail.com
|