UNPKG

xcoobee-cookie-kit-core

Version:

GDPR / CCPA Easy Cookie, Script, and Fingerprint Consent Management for Websites

62 lines (50 loc) 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _isomorphicFetch = _interopRequireDefault(require("isomorphic-fetch")); var _NotAuthorizedError = _interopRequireDefault(require("./NotAuthorizedError")); var _configs = require("./configs"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function graphQLRequest(query, variables, token) { var init = { method: "post", mode: "cors", headers: { "Content-Type": "application/json", Accept: "application/json", Authorization: token }, body: JSON.stringify({ query: query, variables: variables }) }; return (0, _isomorphicFetch.default)("".concat(_configs.xbApiUrl, "/graphql"), init).then(function (response) { if (response.status >= 200 && response.status < 300) { return Promise.resolve(response); } if (response.status === 401) { return Promise.reject(new _NotAuthorizedError.default()); } return Promise.reject(response); }).then(function (data) { return data.json(); }).then(function (data) { if (!data) { // eslint-disable-next-line return Promise.reject([new Error("No data")]); } if (data.error) { // eslint-disable-next-line return Promise.reject([data.error]); } if (data.errors) { return Promise.reject(data.errors); } return Promise.resolve(data.data); }); } var _default = graphQLRequest; exports.default = _default;