battlemetrics
Version:
A Promise-Based Battlemetrics API Wrapper
34 lines (33 loc) • 1.15 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Client = void 0;
const axios_1 = __importDefault(require("axios"));
class Client {
constructor(config) {
this.apiKey = config.apiKey;
}
request(endpoint, options) {
const url = 'https://api.battlemetrics.com/' + endpoint;
const headers = {
Authorization: `Bearer ${this.apiKey}`,
'Content-Type': 'application/json',
};
const config = Object.assign(Object.assign({}, options), { headers });
return (0, axios_1.default)(url, config)
.then((res) => {
delete res.request;
return res;
})
.catch((err) => {
console.log(err);
if (err.response) {
console.log(err.response.data);
}
throw new Error(`${err.response.status} ${err.response.statusText}`);
});
}
}
exports.Client = Client;