covidtracker
Version:
An Api wrapper to get information about the Novel Coronavirus.
41 lines (39 loc) • 2.1 kB
JavaScript
const fetch = require('node-fetch');
const methods = {
getAll: require('./funcs/getAll.js'),
getCountry: require('./funcs/getCountry.js'),
getState: require('./funcs/getState.js'),
getJHU: require('./funcs/getJHU.js'),
getHistoric: require('./funcs/getHistoric.js'),
}
module.exports = {
version: "2.0.1",
status: async function() {
try {
let a = await fetch("https://corona.lmao.ninja/v2/all");
if (a) return 'Online'
} catch (e) { return 'Offline' }
},
getAll: function() {
return execute({ method: 'getAll' });
},
getCountry: function(params) {
if (!params || params == {}) return execute({ method: 'getCountry', country: null, sort: null });
if (params.country || params.sort) return execute({ method: 'getCountry', country: params.country ? params.country : null, sort: params.sort ? params.sort : null });
},
getState: function(params) {
if (!params || params == {}) return execute({ method: 'getState', state: null, sort: null });
if (params.state || params.sort) return execute({ method: 'getState', state: params.state ? params.state : null, sort: params.sort ? params.sort : null });
},
getJHU: function(params) {
if (!params || params == {}) return execute({ method: 'getJHU', country: null, sort: null, province: null });
if (params.country || params.province || params.sort) return execute({ method: 'getJHU', country: params.country ? params.country : null, sort: params.sort ? params.sort : null, province: params.province ? params.province : null });
},
getHistoric: function(params) {
if (!params || params == {}) return execute({ method: 'getHistoric', country: null, province: null });
if (params.country || params.province || params.sort) return execute({ method: 'getHistoric', country: params.country ? params.country : null, province: params.province ? params.province : null });
}
}
function execute(params) {
return methods[params.method](params)
};