cosmicjs
Version:
The official client module for Cosmic. This module helps you easily add dynamic content to your website or application using the Cosmic headless CMS.
34 lines (29 loc) • 3.3 kB
JavaScript
;
var axios = require('axios');
var init = function init(config) {
// Accept Encoding in Node
if (typeof window === 'undefined') {
axios.defaults.headers.common['Accept-Encoding'] = 'gzip, deflate';
}
if (config && config.token) {
axios.defaults.headers.common.Authorization = config.token;
}
};
var requestHandler = function requestHandler(method, url, data, headers) {
var config = {
method: method,
url: url,
data: data,
headers: headers
};
return axios(config).then(function (response) {
return response.data;
})["catch"](function (error) {
throw error.response ? error.response.data : error.response;
});
};
module.exports = {
init: init,
requestHandler: requestHandler
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL3JlcXVlc3RfaGFuZGxlci5qcyJdLCJuYW1lcyI6WyJheGlvcyIsInJlcXVpcmUiLCJpbml0IiwiY29uZmlnIiwid2luZG93IiwiZGVmYXVsdHMiLCJoZWFkZXJzIiwiY29tbW9uIiwidG9rZW4iLCJBdXRob3JpemF0aW9uIiwicmVxdWVzdEhhbmRsZXIiLCJtZXRob2QiLCJ1cmwiLCJkYXRhIiwidGhlbiIsInJlc3BvbnNlIiwiZXJyb3IiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOztBQUFBLElBQU1BLEtBQUssR0FBR0MsT0FBTyxDQUFDLE9BQUQsQ0FBckI7O0FBRUEsSUFBTUMsSUFBSSxHQUFHLFNBQVBBLElBQU8sQ0FBQ0MsTUFBRCxFQUFZO0FBQ3ZCO0FBQ0EsTUFBSSxPQUFPQyxNQUFQLEtBQWtCLFdBQXRCLEVBQW1DO0FBQ2pDSixJQUFBQSxLQUFLLENBQUNLLFFBQU4sQ0FBZUMsT0FBZixDQUF1QkMsTUFBdkIsQ0FBOEIsaUJBQTlCLElBQW1ELGVBQW5EO0FBQ0Q7O0FBQ0QsTUFBSUosTUFBTSxJQUFJQSxNQUFNLENBQUNLLEtBQXJCLEVBQTRCO0FBQzFCUixJQUFBQSxLQUFLLENBQUNLLFFBQU4sQ0FBZUMsT0FBZixDQUF1QkMsTUFBdkIsQ0FBOEJFLGFBQTlCLEdBQThDTixNQUFNLENBQUNLLEtBQXJEO0FBQ0Q7QUFDRixDQVJEOztBQVVBLElBQU1FLGNBQWMsR0FBRyxTQUFqQkEsY0FBaUIsQ0FBQ0MsTUFBRCxFQUFTQyxHQUFULEVBQWNDLElBQWQsRUFBb0JQLE9BQXBCLEVBQWdDO0FBQ3JELE1BQU1ILE1BQU0sR0FBRztBQUNiUSxJQUFBQSxNQUFNLEVBQU5BLE1BRGE7QUFFYkMsSUFBQUEsR0FBRyxFQUFIQSxHQUZhO0FBR2JDLElBQUFBLElBQUksRUFBSkEsSUFIYTtBQUliUCxJQUFBQSxPQUFPLEVBQVBBO0FBSmEsR0FBZjtBQU1BLFNBQU9OLEtBQUssQ0FBQ0csTUFBRCxDQUFMLENBQWNXLElBQWQsQ0FBbUIsVUFBQ0MsUUFBRDtBQUFBLFdBQWNBLFFBQVEsQ0FBQ0YsSUFBdkI7QUFBQSxHQUFuQixXQUFzRCxVQUFDRyxLQUFELEVBQVc7QUFDdEUsVUFBT0EsS0FBSyxDQUFDRCxRQUFOLEdBQWlCQyxLQUFLLENBQUNELFFBQU4sQ0FBZUYsSUFBaEMsR0FBdUNHLEtBQUssQ0FBQ0QsUUFBcEQ7QUFDRCxHQUZNLENBQVA7QUFHRCxDQVZEOztBQVlBRSxNQUFNLENBQUNDLE9BQVAsR0FBaUI7QUFDZmhCLEVBQUFBLElBQUksRUFBSkEsSUFEZTtBQUVmUSxFQUFBQSxjQUFjLEVBQWRBO0FBRmUsQ0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBheGlvcyA9IHJlcXVpcmUoJ2F4aW9zJylcblxuY29uc3QgaW5pdCA9IChjb25maWcpID0+IHtcbiAgLy8gQWNjZXB0IEVuY29kaW5nIGluIE5vZGVcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgYXhpb3MuZGVmYXVsdHMuaGVhZGVycy5jb21tb25bJ0FjY2VwdC1FbmNvZGluZyddID0gJ2d6aXAsIGRlZmxhdGUnXG4gIH1cbiAgaWYgKGNvbmZpZyAmJiBjb25maWcudG9rZW4pIHtcbiAgICBheGlvcy5kZWZhdWx0cy5oZWFkZXJzLmNvbW1vbi5BdXRob3JpemF0aW9uID0gY29uZmlnLnRva2VuXG4gIH1cbn1cblxuY29uc3QgcmVxdWVzdEhhbmRsZXIgPSAobWV0aG9kLCB1cmwsIGRhdGEsIGhlYWRlcnMpID0+IHtcbiAgY29uc3QgY29uZmlnID0ge1xuICAgIG1ldGhvZCxcbiAgICB1cmwsXG4gICAgZGF0YSxcbiAgICBoZWFkZXJzXG4gIH1cbiAgcmV0dXJuIGF4aW9zKGNvbmZpZykudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmRhdGEpLmNhdGNoKChlcnJvcikgPT4ge1xuICAgIHRocm93IChlcnJvci5yZXNwb25zZSA/IGVycm9yLnJlc3BvbnNlLmRhdGEgOiBlcnJvci5yZXNwb25zZSlcbiAgfSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGluaXQsXG4gIHJlcXVlc3RIYW5kbGVyXG59XG4iXX0=