countries-names
Version:
A-Z list of country names and their codes
43 lines (34 loc) • 1.37 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _data = require('./data');
var _data2 = _interopRequireDefault(_data);
var _ramda = require('ramda');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var findBy = function findBy(value, searchProperty, returnProperty) {
return (0, _ramda.pipe)((0, _ramda.find)(function (country) {
return (0, _ramda.equals)((0, _ramda.toLower)(country[searchProperty]), value);
}), (0, _ramda.defaultTo)({}), (0, _ramda.prop)(returnProperty));
};
var mainExport = {
names: function names() {
return (0, _ramda.map)((0, _ramda.prop)('Name'))(_data2.default);
},
codes: function codes() {
return (0, _ramda.map)((0, _ramda.prop)('Code'))(_data2.default);
},
nameByCode: function nameByCode(code) {
return findBy((0, _ramda.toLower)(code || ''), 'Code', 'Name')(_data2.default);
},
codeByName: function codeByName(country) {
return findBy((0, _ramda.toLower)(country || ''), 'Name', 'Code')(_data2.default);
},
all: function all() {
return (0, _ramda.map)(function (item) {
return { name: item.Name, code: item.Code };
})(_data2.default);
}
};
exports.default = mainExport;
module.exports = mainExport; // for CommonJS compatibility