zhonya
Version:
A simple and typed League of Legends API wrapper for Node.js
34 lines • 1.36 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ChampionService = void 0;
const axios_1 = require("axios");
const ZhonyaError_1 = require("../../errors/ZhonyaError");
const utils_1 = require("../../utils");
class ChampionService {
constructor(config) {
this.config = config;
const client = axios_1.default.create({
baseURL: `https://ddragon.leagueoflegends.com/cdn/`,
});
this.httpClient = client;
}
async getAllChampions(params) {
const language = (params === null || params === void 0 ? void 0 : params.language) || this.config.language;
try {
const lastVersion = await (0, utils_1.getLastVersion)();
const response = await this.httpClient.get(`${lastVersion}/data/${language}/champion.json`);
const championData = response.data;
const championMap = new Map();
Object.keys(championData.data).forEach((key) => {
championMap.set(key, championData.data[key]);
});
championData.data = championMap;
return championData;
}
catch (error) {
throw new ZhonyaError_1.ZhonyaError("Error fetching champions data");
}
}
}
exports.ChampionService = ChampionService;
//# sourceMappingURL=champion.service.js.map