mir-client
Version:
A Mir API Client
31 lines (26 loc) • 727 B
JavaScript
import axios from 'axios'
import * as R from 'ramda'
import get from './get'
import post from './post'
import put from './put'
import patch from './patch'
import deleteOne from './deleteOne'
module.exports = R.curry((baseurl, resource, headers, timeout) => {
const axiosInstance = axios.create({
baseURL: baseurl,
timeout: timeout,
headers: headers
})
const getter = get(axiosInstance, resource)
const poster = post(axiosInstance, resource)
const putter = put(axiosInstance, resource)
const patcher = patch(axiosInstance, resource)
const deleter = deleteOne(axiosInstance, resource)
return {
get: getter,
post: poster,
put: putter,
patch: patcher,
deleteOne: deleter,
}
})