gatsby-source-sanity
Version:
Gatsby source plugin for building websites using Sanity.io as a backend.
34 lines • 1.18 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const axios_1 = require("axios");
const get_stream_1 = require("get-stream");
const index_1 = require("../index");
function getDocumentStream(url, token) {
const auth = token ? { Authorization: `Bearer ${token}` } : {};
const userAgent = { 'User-Agent': `${index_1.pkgName}` };
const headers = Object.assign(Object.assign({}, userAgent), auth);
return axios_1.default({
method: 'get',
responseType: 'stream',
url,
headers,
})
.then(res => res.data)
.catch(async (err) => {
if (!err.response || !err.response.data) {
throw err;
}
let error = err;
try {
// Try to lift error message out of JSON payload ({error, message, statusCode})
const data = await get_stream_1.default(err.response.data);
error = new Error(JSON.parse(data).message);
}
catch (jsonErr) {
// Do nothing, throw regular error
}
throw error;
});
}
exports.getDocumentStream = getDocumentStream;
//# sourceMappingURL=getDocumentStream.js.map