@thoughtspot/visual-embed-sdk
Version:
ThoughtSpot Embed SDK
41 lines • 1.38 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.graphqlQuery = void 0;
const tokenizedFetch_1 = require("../../tokenizedFetch");
const utils_1 = require("../../utils");
/**
*
* @param root0
* @param root0.query
* @param root0.variables
* @param root0.thoughtSpotHost
* @param root0.isCompositeQuery
*/
async function graphqlQuery({ query, variables, thoughtSpotHost, isCompositeQuery = false, }) {
const operationName = (0, utils_1.getOperationNameFromQuery)(query);
try {
const response = await (0, tokenizedFetch_1.tokenizedFetch)(`${thoughtSpotHost}/prism/?op=${operationName}`, {
method: 'POST',
headers: {
'content-type': 'application/json;charset=UTF-8',
'x-requested-by': 'ThoughtSpot',
accept: '*/*',
'accept-language': 'en-us',
},
body: JSON.stringify({
operationName,
query,
variables,
}),
credentials: 'include',
});
const result = await response.json();
const dataValues = Object.values(result.data);
return (isCompositeQuery) ? result.data : dataValues[0];
}
catch (error) {
return error;
}
}
exports.graphqlQuery = graphqlQuery;
//# sourceMappingURL=graphql-request.js.map
;