UNPKG

philippine-administrative-divisions

Version:

Regions, Provinces, Municipalities and cities, and barangays of the Philippines

71 lines (70 loc) 2.73 kB
'use strict'; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getRegions = getRegions; exports.getProvinces = getProvinces; exports.getProvincesByRegionName = getProvincesByRegionName; exports.getMunicipalitiesByProvince = getMunicipalitiesByProvince; exports.getBarangaysByProvinceAndMunicipality = getBarangaysByProvinceAndMunicipality; exports.searchProvincesByStartString = searchProvincesByStartString; exports.searchRegionsByStartString = searchRegionsByStartString; const fs_1 = __importDefault(require("fs")); const path_1 = __importDefault(require("path")); function _loadData(file) { const rawData = fs_1.default.readFileSync(path_1.default.resolve(__dirname, `./${file}.json`)); return JSON.parse(rawData.toString()); } function getRegions() { let regions = _loadData('regions'); const regionals = regions.map((region) => region.name); return regionals; } function getProvinces() { let provinces = _loadData('provinces'); const provincesToReturn = Object.keys(provinces).sort(); return provincesToReturn; } function getProvincesByRegionName(region) { region = region.toUpperCase(); const regions = _loadData('regions'); const dregion = regions.find((dregion) => dregion.name === region); if (dregion) { return dregion.provinces; } else { return false; } } function getMunicipalitiesByProvince(province) { province = province.toUpperCase(); const provinces = _loadData('provinces'); if (provinces[province]) { let municipalities = Object.keys(provinces[province].municipalities); return municipalities; } else { return false; } } function getBarangaysByProvinceAndMunicipality(province, municipality) { province = province.toUpperCase(); municipality = municipality.toUpperCase(); const municipalities = getMunicipalitiesByProvince(province); if (typeof municipalities === 'boolean' || municipalities.indexOf(municipality) < 0) { return false; } const provinces = _loadData('provinces'); const barangays = provinces[province].municipalities[municipality].barangays; return barangays; } function searchProvincesByStartString(startString) { const provinces = getProvinces(); return provinces.filter((provinceName) => provinceName.toLowerCase().startsWith(startString.toLowerCase())); } function searchRegionsByStartString(startString) { const regions = getRegions(); return regions.filter((regionName) => regionName.toLowerCase().startsWith(startString.toLowerCase())); }