UNPKG

akwap

Version:

A Ugandan Geolocation flow.

600 lines (599 loc) 25.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.kampala = exports.kalungu = exports.kaliro = exports.kalangala = exports.kalaki = exports.kakumiro = exports.kagadi = exports.kaberamaido = exports.kabarole = exports.kabale = exports.kaabong = exports.jinja = exports.isingiro = exports.iganga = exports.ibanda = exports.hoima = exports.gulu = exports.gomba = exports.dokolo = exports.buyende = exports.buvuma = exports.butebo = exports.butambala = exports.butaleja = exports.busia = exports.bushenyi = exports.bunyangabu = exports.bundibugyo = exports.buliisa = exports.bulambuli = exports.bukwo = exports.bukomansimbi = exports.bukedea = exports.buikwe = exports.buhweju = exports.bugweri = exports.bugiri = exports.bududa = exports.budaka = exports.arua = exports.apac = exports.amuru = exports.amuria = exports.amudat = exports.amolatar = exports.alebtong = exports.agago = exports.adjumani = exports.abim = exports.districts = void 0; exports.mubende = exports.mpigi = exports.moyo = exports.moroto = exports.mityana = exports.mitooma = exports.mbarara = exports.mbale = exports.mayuge = exports.masindi = exports.masaka = exports.maracha = exports.manafwa = exports.madiOkollo = exports.lyantonde = exports.lwengo = exports.luweero = exports.luuka = exports.lira = exports.lamwo = exports.kyotera = exports.kyenjojo = exports.kyegegwa = exports.kyankwanzi = exports.kween = exports.kwania = exports.kumi = exports.kotido = exports.kole = exports.koboko = exports.kitgum = exports.kitagwenda = exports.kisoro = exports.kiryandongo = exports.kiruhura = exports.kikuube = exports.kibuku = exports.kiboga = exports.kibaale = exports.kazo = exports.kayunga = exports.katakwi = exports.kasese = exports.kasanda = exports.karenga = exports.kapelebyong = exports.kapchorwa = exports.kanungu = exports.kamwenge = exports.kamuli = void 0; exports.getVillageFromSubCounty = exports.getVillage = exports.getParish = exports.getSubCounty = exports.getCounty = exports.getDistrict = exports.zombo = exports.yumbe = exports.wakiso = exports.tororo = exports.ssembabule = exports.soroti = exports.sironko = exports.sheema = exports.serere = exports.rwampara = exports.rukungiri = exports.rukiga = exports.rubirizi = exports.rubanda = exports.rakai = exports.pallisa = exports.pakwach = exports.pader = exports.oyam = exports.otuke = exports.omoro = exports.obongi = exports.nwoya = exports.ntungamo = exports.ntoroko = exports.ngora = exports.nebbi = exports.napak = exports.namutumba = exports.namisindwa = exports.namayingo = exports.nakasongola = exports.nakaseke = exports.nakapiripirit = exports.nabilatuk = exports.mukono = void 0; var abim_1 = require("./districts/abim"); var adjumani_1 = require("./districts/adjumani"); var agago_1 = require("./districts/agago"); var alebtong_1 = require("./districts/alebtong"); var amolatar_1 = require("./districts/amolatar"); var amudat_1 = require("./districts/amudat"); var amuria_1 = require("./districts/amuria"); var amuru_1 = require("./districts/amuru"); var apac_1 = require("./districts/apac"); var arua_1 = require("./districts/arua"); var budaka_1 = require("./districts/budaka"); var bududa_1 = require("./districts/bududa"); var bugiri_1 = require("./districts/bugiri"); var bugweri_1 = require("./districts/bugweri"); var buhweju_1 = require("./districts/buhweju"); var buikwe_1 = require("./districts/buikwe"); var bukedea_1 = require("./districts/bukedea"); var bukomansimbi_1 = require("./districts/bukomansimbi"); var bukwo_1 = require("./districts/bukwo"); var bulambuli_1 = require("./districts/bulambuli"); var buliisa_1 = require("./districts/buliisa"); var bundibugyo_1 = require("./districts/bundibugyo"); var bunyangabu_1 = require("./districts/bunyangabu"); var bushenyi_1 = require("./districts/bushenyi"); var busia_1 = require("./districts/busia"); var butaleja_1 = require("./districts/butaleja"); var butambala_1 = require("./districts/butambala"); var butebo_1 = require("./districts/butebo"); var buvuma_1 = require("./districts/buvuma"); var buyende_1 = require("./districts/buyende"); var districts_1 = require("./districts/districts"); var dokolo_1 = require("./districts/dokolo"); var gomba_1 = require("./districts/gomba"); var gulu_1 = require("./districts/gulu"); var hoima_1 = require("./districts/hoima"); var ibanda_1 = require("./districts/ibanda"); var iganga_1 = require("./districts/iganga"); var isingiro_1 = require("./districts/isingiro"); var jinja_1 = require("./districts/jinja"); var kaabong_1 = require("./districts/kaabong"); var kabale_1 = require("./districts/kabale"); var kabarole_1 = require("./districts/kabarole"); var kaberamaido_1 = require("./districts/kaberamaido"); var kagadi_1 = require("./districts/kagadi"); var kakumiro_1 = require("./districts/kakumiro"); var kalaki_1 = require("./districts/kalaki"); var kalangala_1 = require("./districts/kalangala"); var kaliro_1 = require("./districts/kaliro"); var kalungu_1 = require("./districts/kalungu"); var kampala_1 = require("./districts/kampala"); var kamuli_1 = require("./districts/kamuli"); var kamwenge_1 = require("./districts/kamwenge"); var kanungu_1 = require("./districts/kanungu"); var kapchorwa_1 = require("./districts/kapchorwa"); var kapelebyong_1 = require("./districts/kapelebyong"); var karenga_1 = require("./districts/karenga"); var kasanda_1 = require("./districts/kasanda"); var kasese_1 = require("./districts/kasese"); var katakwi_1 = require("./districts/katakwi"); var kayunga_1 = require("./districts/kayunga"); var kazo_1 = require("./districts/kazo"); var kibaale_1 = require("./districts/kibaale"); var kiboga_1 = require("./districts/kiboga"); var kibuku_1 = require("./districts/kibuku"); var kikuube_1 = require("./districts/kikuube"); var kiruhura_1 = require("./districts/kiruhura"); var kiryandongo_1 = require("./districts/kiryandongo"); var kisoro_1 = require("./districts/kisoro"); var kitagwenda_1 = require("./districts/kitagwenda"); var kitgum_1 = require("./districts/kitgum"); var koboko_1 = require("./districts/koboko"); var kole_1 = require("./districts/kole"); var kotido_1 = require("./districts/kotido"); var kumi_1 = require("./districts/kumi"); var kwania_1 = require("./districts/kwania"); var kween_1 = require("./districts/kween"); var kyankwanzi_1 = require("./districts/kyankwanzi"); var kyegegwa_1 = require("./districts/kyegegwa"); var kyenjojo_1 = require("./districts/kyenjojo"); var kyotera_1 = require("./districts/kyotera"); var lamwo_1 = require("./districts/lamwo"); var lira_1 = require("./districts/lira"); var luuka_1 = require("./districts/luuka"); var luweero_1 = require("./districts/luweero"); var lwengo_1 = require("./districts/lwengo"); var lyantonde_1 = require("./districts/lyantonde"); var madi_okollo_1 = require("./districts/madi-okollo"); var manafwa_1 = require("./districts/manafwa"); var maracha_1 = require("./districts/maracha"); var masaka_1 = require("./districts/masaka"); var masindi_1 = require("./districts/masindi"); var mayuge_1 = require("./districts/mayuge"); var mbale_1 = require("./districts/mbale"); var mbarara_1 = require("./districts/mbarara"); var mitooma_1 = require("./districts/mitooma"); var mityana_1 = require("./districts/mityana"); var moroto_1 = require("./districts/moroto"); var moyo_1 = require("./districts/moyo"); var mpigi_1 = require("./districts/mpigi"); var mubende_1 = require("./districts/mubende"); var mukono_1 = require("./districts/mukono"); var nabilatuk_1 = require("./districts/nabilatuk"); var nakapiripirit_1 = require("./districts/nakapiripirit"); var nakaseke_1 = require("./districts/nakaseke"); var nakasongola_1 = require("./districts/nakasongola"); var namayingo_1 = require("./districts/namayingo"); var namisindwa_1 = require("./districts/namisindwa"); var namutumba_1 = require("./districts/namutumba"); var napak_1 = require("./districts/napak"); var nebbi_1 = require("./districts/nebbi"); var ngora_1 = require("./districts/ngora"); var ntoroko_1 = require("./districts/ntoroko"); var ntungamo_1 = require("./districts/ntungamo"); var nwoya_1 = require("./districts/nwoya"); var obongi_1 = require("./districts/obongi"); var omoro_1 = require("./districts/omoro"); var otuke_1 = require("./districts/otuke"); var oyam_1 = require("./districts/oyam"); var pader_1 = require("./districts/pader"); var pakwach_1 = require("./districts/pakwach"); var pallisa_1 = require("./districts/pallisa"); var rakai_1 = require("./districts/rakai"); var rubanda_1 = require("./districts/rubanda"); var rubirizi_1 = require("./districts/rubirizi"); var rukiga_1 = require("./districts/rukiga"); var rukungiri_1 = require("./districts/rukungiri"); var rwampara_1 = require("./districts/rwampara"); var serere_1 = require("./districts/serere"); var sheema_1 = require("./districts/sheema"); var sironko_1 = require("./districts/sironko"); var soroti_1 = require("./districts/soroti"); var ssembabule_1 = require("./districts/ssembabule"); var tororo_1 = require("./districts/tororo"); var wakiso_1 = require("./districts/wakiso"); var yumbe_1 = require("./districts/yumbe"); var zombo_1 = require("./districts/zombo"); var utils_1 = require("./utils/utils"); var stringSimilarity = require("string-similarity"); exports.districts = districts_1.default; exports.abim = abim_1.default; exports.adjumani = adjumani_1.default; exports.agago = agago_1.default; exports.alebtong = alebtong_1.default; exports.amolatar = amolatar_1.default; exports.amudat = amudat_1.default; exports.amuria = amuria_1.default; exports.amuru = amuru_1.default; exports.apac = apac_1.default; exports.arua = arua_1.default; exports.budaka = budaka_1.default; exports.bududa = bududa_1.default; exports.bugiri = bugiri_1.default; exports.bugweri = bugweri_1.default; exports.buhweju = buhweju_1.default; exports.buikwe = buikwe_1.default; exports.bukedea = bukedea_1.default; exports.bukomansimbi = bukomansimbi_1.default; exports.bukwo = bukwo_1.default; exports.bulambuli = bulambuli_1.default; exports.buliisa = buliisa_1.default; exports.bundibugyo = bundibugyo_1.default; exports.bunyangabu = bunyangabu_1.default; exports.bushenyi = bushenyi_1.default; exports.busia = busia_1.default; exports.butaleja = butaleja_1.default; exports.butambala = butambala_1.default; exports.butebo = butebo_1.default; exports.buvuma = buvuma_1.default; exports.buyende = buyende_1.default; exports.dokolo = dokolo_1.default; exports.gomba = gomba_1.default; exports.gulu = gulu_1.default; exports.hoima = hoima_1.default; exports.ibanda = ibanda_1.default; exports.iganga = iganga_1.default; exports.isingiro = isingiro_1.default; exports.jinja = jinja_1.default; exports.kaabong = kaabong_1.default; exports.kabale = kabale_1.default; exports.kabarole = kabarole_1.default; exports.kaberamaido = kaberamaido_1.default; exports.kagadi = kagadi_1.default; exports.kakumiro = kakumiro_1.default; exports.kalaki = kalaki_1.default; exports.kalangala = kalangala_1.default; exports.kaliro = kaliro_1.default; exports.kalungu = kalungu_1.default; exports.kampala = kampala_1.default; exports.kamuli = kamuli_1.default; exports.kamwenge = kamwenge_1.default; exports.kanungu = kanungu_1.default; exports.kapchorwa = kapchorwa_1.default; exports.kapelebyong = kapelebyong_1.default; exports.karenga = karenga_1.default; exports.kasanda = kasanda_1.default; exports.kasese = kasese_1.default; exports.katakwi = katakwi_1.default; exports.kayunga = kayunga_1.default; exports.kazo = kazo_1.default; exports.kibaale = kibaale_1.default; exports.kiboga = kiboga_1.default; exports.kibuku = kibuku_1.default; exports.kikuube = kikuube_1.default; exports.kiruhura = kiruhura_1.default; exports.kiryandongo = kiryandongo_1.default; exports.kisoro = kisoro_1.default; exports.kitagwenda = kitagwenda_1.default; exports.kitgum = kitgum_1.default; exports.koboko = koboko_1.default; exports.kole = kole_1.default; exports.kotido = kotido_1.default; exports.kumi = kumi_1.default; exports.kwania = kwania_1.default; exports.kween = kween_1.default; exports.kyankwanzi = kyankwanzi_1.default; exports.kyegegwa = kyegegwa_1.default; exports.kyenjojo = kyenjojo_1.default; exports.kyotera = kyotera_1.default; exports.lamwo = lamwo_1.default; exports.lira = lira_1.default; exports.luuka = luuka_1.default; exports.luweero = luweero_1.default; exports.lwengo = lwengo_1.default; exports.lyantonde = lyantonde_1.default; exports.madiOkollo = madi_okollo_1.default; exports.manafwa = manafwa_1.default; exports.maracha = maracha_1.default; exports.masaka = masaka_1.default; exports.masindi = masindi_1.default; exports.mayuge = mayuge_1.default; exports.mbale = mbale_1.default; exports.mbarara = mbarara_1.default; exports.mitooma = mitooma_1.default; exports.mityana = mityana_1.default; exports.moroto = moroto_1.default; exports.moyo = moyo_1.default; exports.mpigi = mpigi_1.default; exports.mubende = mubende_1.default; exports.mukono = mukono_1.default; exports.nabilatuk = nabilatuk_1.default; exports.nakapiripirit = nakapiripirit_1.default; exports.nakaseke = nakaseke_1.default; exports.nakasongola = nakasongola_1.default; exports.namayingo = namayingo_1.default; exports.namisindwa = namisindwa_1.default; exports.namutumba = namutumba_1.default; exports.napak = napak_1.default; exports.nebbi = nebbi_1.default; exports.ngora = ngora_1.default; exports.ntoroko = ntoroko_1.default; exports.ntungamo = ntungamo_1.default; exports.nwoya = nwoya_1.default; exports.obongi = obongi_1.default; exports.omoro = omoro_1.default; exports.otuke = otuke_1.default; exports.oyam = oyam_1.default; exports.pader = pader_1.default; exports.pakwach = pakwach_1.default; exports.pallisa = pallisa_1.default; exports.rakai = rakai_1.default; exports.rubanda = rubanda_1.default; exports.rubirizi = rubirizi_1.default; exports.rukiga = rukiga_1.default; exports.rukungiri = rukungiri_1.default; exports.rwampara = rwampara_1.default; exports.serere = serere_1.default; exports.sheema = sheema_1.default; exports.sironko = sironko_1.default; exports.soroti = soroti_1.default; exports.ssembabule = ssembabule_1.default; exports.tororo = tororo_1.default; exports.wakiso = wakiso_1.default; exports.yumbe = yumbe_1.default; exports.zombo = zombo_1.default; var _districtsHashMap = { abim: exports.abim, adjumani: exports.adjumani, agago: exports.agago, alebtong: exports.alebtong, amolatar: exports.amolatar, amudat: exports.amudat, amuria: exports.amuria, amuru: exports.amuru, apac: exports.apac, arua: exports.arua, budaka: exports.budaka, bududa: exports.bududa, bugiri: exports.bugiri, bugweri: exports.bugweri, buhweju: exports.buhweju, buikwe: exports.buikwe, bukedea: exports.bukedea, bukomansimbi: exports.bukomansimbi, bukwo: exports.bukwo, bulambuli: exports.bulambuli, buliisa: exports.buliisa, bundibugyo: exports.bundibugyo, bunyangabu: exports.bunyangabu, bushenyi: exports.bushenyi, busia: exports.busia, butaleja: exports.butaleja, butambala: exports.butambala, butebo: exports.butebo, buvuma: exports.buvuma, buyende: exports.buyende, dokolo: exports.dokolo, gomba: exports.gomba, gulu: exports.gulu, hoima: exports.hoima, ibanda: exports.ibanda, iganga: exports.iganga, isingiro: exports.isingiro, jinja: exports.jinja, kaabong: exports.kaabong, kabale: exports.kabale, kabarole: exports.kabarole, kaberamaido: exports.kaberamaido, kagadi: exports.kagadi, kakumiro: exports.kakumiro, kalaki: exports.kalaki, kalangala: exports.kalangala, kaliro: exports.kaliro, kalungu: exports.kalungu, kampala: exports.kampala, kamuli: exports.kamuli, kamwenge: exports.kamwenge, kanungu: exports.kanungu, kapchorwa: exports.kapchorwa, kapelebyong: exports.kapelebyong, karenga: exports.karenga, kasanda: exports.kasanda, kasese: exports.kasese, katakwi: exports.katakwi, kayunga: exports.kayunga, kazo: exports.kazo, kibaale: exports.kibaale, kiboga: exports.kiboga, kibuku: exports.kibuku, kikuube: exports.kikuube, kiruhura: exports.kiruhura, kiryandongo: exports.kiryandongo, kisoro: exports.kisoro, kitagwenda: exports.kitagwenda, kitgum: exports.kitgum, koboko: exports.koboko, kole: exports.kole, kotido: exports.kotido, kumi: exports.kumi, kwania: exports.kwania, kween: exports.kween, kyankwanzi: exports.kyankwanzi, kyegegwa: exports.kyegegwa, kyenjojo: exports.kyenjojo, kyotera: exports.kyotera, lamwo: exports.lamwo, lira: exports.lira, luuka: exports.luuka, luweero: exports.luweero, lwengo: exports.lwengo, lyantonde: exports.lyantonde, madiOkollo: exports.madiOkollo, manafwa: exports.manafwa, maracha: exports.maracha, masaka: exports.masaka, masindi: exports.masindi, mayuge: exports.mayuge, mbale: exports.mbale, mbarara: exports.mbarara, mitooma: exports.mitooma, mityana: exports.mityana, moroto: exports.moroto, moyo: exports.moyo, mpigi: exports.mpigi, mubende: exports.mubende, mukono: exports.mukono, nabilatuk: exports.nabilatuk, nakapiripirit: exports.nakapiripirit, nakaseke: exports.nakaseke, nakasongola: exports.nakasongola, namayingo: exports.namayingo, namisindwa: exports.namisindwa, namutumba: exports.namutumba, napak: exports.napak, nebbi: exports.nebbi, ngora: exports.ngora, ntoroko: exports.ntoroko, ntungamo: exports.ntungamo, nwoya: exports.nwoya, obongi: exports.obongi, omoro: exports.omoro, otuke: exports.otuke, oyam: exports.oyam, pader: exports.pader, pakwach: exports.pakwach, pallisa: exports.pallisa, rakai: exports.rakai, rubanda: exports.rubanda, rubirizi: exports.rubirizi, rukiga: exports.rukiga, rukungiri: exports.rukungiri, rwampara: exports.rwampara, serere: exports.serere, sheema: exports.sheema, sironko: exports.sironko, soroti: exports.soroti, ssembabule: exports.ssembabule, tororo: exports.tororo, wakiso: exports.wakiso, yumbe: exports.yumbe, zombo: exports.zombo, }; /*** * Helper methods */ function getDistrict(district) { district = district.toLowerCase(); if (district.includes('-')) { district = (0, utils_1.toCamelCase)(district); } var ds = _districtsHashMap[district]; if (ds) { return ds; } else { throw new Error('No such district'); } } exports.getDistrict = getDistrict; function getCounty(county, accuracy) { if (accuracy === void 0) { accuracy = 0.5; } var counties = Object.entries(_districtsHashMap).map(function (_a) { var name = _a[0], district = _a[1]; var _district = { id: district.id, name: district.name, }; return district.counties .filter(function (ds) { var score = stringSimilarity.compareTwoStrings(ds.name.toLowerCase(), county.toLowerCase()); return score > accuracy; }) .map(function (ds) { return { id: ds.id, name: ds.name, district: _district, }; }); }); return counties.reduce(function (accumulator, value) { return accumulator.concat(value); }, []); } exports.getCounty = getCounty; function getSubCounty(subcounty, accuracy) { if (accuracy === void 0) { accuracy = 0.5; } var counties = Object.entries(_districtsHashMap).map(function (_a) { var name = _a[0], district = _a[1]; var _district = { id: district.id, name: district.name, }; return district.counties .map(function (cs) { var _county = { id: cs.id, name: cs.name, }; return cs.sub_counties .filter(function (es) { var score = stringSimilarity.compareTwoStrings(es.name.toLowerCase(), subcounty.toLowerCase()); return score > accuracy; }) .map(function (es) { return { id: es.id, name: es.name, district: _district, county: _county, }; }); }) .reduce(function (accumulator, value) { return accumulator.concat(value); }, []); }); return counties.reduce(function (accumulator, value) { return accumulator.concat(value); }, []); } exports.getSubCounty = getSubCounty; function getParish(parish, accuracy) { if (accuracy === void 0) { accuracy = 0.5; } var counties = Object.entries(_districtsHashMap).map(function (_a) { var name = _a[0], district = _a[1]; var _district = { id: district.id, name: district.name, }; return district.counties .map(function (cs) { var _county = { id: cs.id, name: cs.name, }; return cs.sub_counties .map(function (gs) { var _subcounty = { id: cs.id, name: cs.name, }; return gs.parishes .filter(function (es) { var score = stringSimilarity.compareTwoStrings(es.name.toLowerCase(), parish.toLowerCase()); return score > accuracy; }) .map(function (es) { return { id: es.id, name: es.name, district: _district, county: _county, sub_county: _subcounty, }; }); }) .reduce(function (accumulator, value) { return accumulator.concat(value); }, []); }) .reduce(function (accumulator, value) { return accumulator.concat(value); }, []); }); return counties.reduce(function (accumulator, value) { return accumulator.concat(value); }, []); } exports.getParish = getParish; function getVillage(village, accuracy) { if (accuracy === void 0) { accuracy = 0.5; } var counties = Object.entries(_districtsHashMap).map(function (_a) { var name = _a[0], district = _a[1]; var _district = { id: district.id, name: district.name, }; return district.counties .map(function (cs) { var _county = { id: cs.id, name: cs.name, }; return cs.sub_counties .map(function (gs) { var _subcounty = { id: gs.id, name: gs.name, }; return gs.parishes .map(function (ks) { var _parish = { id: ks.id, name: ks.name, }; return ks.villages .filter(function (es) { var score = stringSimilarity.compareTwoStrings(es.name.toLowerCase(), village.toLowerCase()); return score > accuracy; }) .map(function (es) { return { id: es.id, name: es.name, district: _district, county: _county, sub_county: _subcounty, parish: _parish, }; }); }) .reduce(function (accumulator, value) { return accumulator.concat(value); }, []); }) .reduce(function (accumulator, value) { return accumulator.concat(value); }, []); }) .reduce(function (accumulator, value) { return accumulator.concat(value); }, []); }); return counties.reduce(function (accumulator, value) { return accumulator.concat(value); }, []); } exports.getVillage = getVillage; function getVillageFromSubCounty(_a, accuracy) { var sub_county = _a.sub_county, parish = _a.parish, village = _a.village; if (accuracy === void 0) { accuracy = 0.8; } var data = getVillage(village, accuracy); var results = []; for (var _i = 0, data_1 = data; _i < data_1.length; _i++) { var v = data_1[_i]; var subCountyScore = stringSimilarity.compareTwoStrings(v.sub_county.name.toLowerCase(), sub_county.toLowerCase()); var parishScore = stringSimilarity.compareTwoStrings(v.parish.name.toLowerCase(), parish.toLowerCase()); if (subCountyScore >= accuracy && parishScore >= accuracy) { results.push(v); } } return results; } exports.getVillageFromSubCounty = getVillageFromSubCounty;