UNPKG

@tyrads.com/tyrads-sdk-iframe

Version:

Official TyrAds SDK for NodeJS

40 lines (39 loc) 1.53 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getHttpClient = void 0; const axios_1 = __importDefault(require("axios")); const getHttpClient = (config) => { const instance = axios_1.default.create({ baseURL: `${config.sdkApiBaseUrl}/${config.sdkApiVersion}`, headers: { "Content-Type": "application/json", "X-API-Key": config.apiKey, "X-API-Secret": config.apiSecret, "X-SDK-Version": config.sdkApiVersion, "X-SDK-Platform": config.sdkPlatform, }, params: { "lang": config.language, }, }); // Add a response interceptor to handle errors globally instance.interceptors.response.use(response => response, error => { var _a; if (error.response) { if (error.response.status < 200 || error.response.status >= 300) { const message = ((_a = error.response.data) === null || _a === void 0 ? void 0 : _a.message) || "Unknown error"; throw new Error(message); } } else if (error.request) { // The request was made but no response was received throw new Error("No response received from the server"); } return Promise.reject(error); }); return instance; }; exports.getHttpClient = getHttpClient;