galeforce-tmp-sea
Version:
A customizable, promise-based, and command-oriented TypeScript library for the Riot Games API.
41 lines • 1.82 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const action_1 = __importDefault(require("../../action"));
const riot_api_1 = require("../../../../riot-api");
const mixins_1 = require("../../mixins");
const BaseAction = (0, mixins_1.TakesQueue)({}, (0, mixins_1.TakesTier)((0, mixins_1.TakesLeagueId)((0, mixins_1.TakesRegion)({}, action_1.default))));
class GetLeagueList extends BaseAction {
constructor(submodules) {
super(submodules);
this.payload.type = 'lol';
this.payload.method = 'GET';
}
inferEndpoint() {
if (typeof this.payload.leagueId !== 'undefined') {
this.payload.endpoint = riot_api_1.ENDPOINTS.LEAGUE.LEAGUE_ID;
}
else if (typeof this.payload.tier !== 'undefined') {
switch (this.payload.tier) {
case riot_api_1.Tier.CHALLENGER:
this.payload.endpoint = riot_api_1.ENDPOINTS.LEAGUE.CHALLENGER_LEAGUE;
break;
case riot_api_1.Tier.GRANDMASTER:
this.payload.endpoint = riot_api_1.ENDPOINTS.LEAGUE.GRANDMASTER_LEAGUE;
break;
case riot_api_1.Tier.MASTER:
this.payload.endpoint = riot_api_1.ENDPOINTS.LEAGUE.MASTER_LEAGUE;
break;
default:
throw new Error('[galeforce]: .tier() must be CHALLENGER, GRANDMASTER, or MASTER.');
}
}
else {
throw new Error('[galeforce]: Not enough parameters provided to select API endpoint.');
}
}
}
exports.default = GetLeagueList;
//# sourceMappingURL=leagues.js.map