UNPKG

@timmsy/riftjs

Version:

TypeScript-first Riot Games API wrapper for Node.js, with built-in Data Dragon support

41 lines (40 loc) 1.6 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = dataDragonEndpoints; const axios_1 = __importDefault(require("axios")); function dataDragonEndpoints(baseURLOrResolver) { const resolveBaseURL = async () => { // Maintainer note (Timmsy): allow either a fixed URL or lazy resolver so callers can choose version strategy. if (typeof baseURLOrResolver === 'function') { return baseURLOrResolver(); } return baseURLOrResolver; }; return { async getChampions() { try { const baseURL = await resolveBaseURL(); const response = await axios_1.default.get(`${baseURL}/champion.json`); return response.data; } catch (error) { const message = error instanceof Error ? error.message : 'Unknown DataDragon error'; throw new Error(`DataDragon error: ${message}`); } }, async getItems() { try { const baseURL = await resolveBaseURL(); const response = await axios_1.default.get(`${baseURL}/item.json`); return response.data; } catch (error) { const message = error instanceof Error ? error.message : 'Unknown DataDragon error'; throw new Error(`DataDragon error: ${message}`); } }, }; }