Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

kindred-api

Package Overview
Dependencies
Maintainers
1
Versions
114
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

kindred-api - npm Package Compare versions

Comparing version 1.3.9 to 1.4.0

src/constants/endpoints-prefixes.js

4

dist/kindred-api.min.js

@@ -1,2 +0,2 @@

!function(e,t){if("function"==typeof define&&define.amd)define("kindred-api",["module","redis","double-ended-queue","xregexp","chalk","request","chalk","query-string"],t);else if("undefined"!=typeof exports)t(module,require("redis"),require("double-ended-queue"),require("xregexp"),require("chalk"),require("request"),require("chalk"),require("query-string"));else{var n={exports:{}};t(n,e.redis,e.doubleEndedQueue,e.xregexp,e.chalk,e.request,e.chalk,e.queryString),e.kindredApi=n.exports}}(this,function(e,t,n,i,r,s,o,a){"use strict";function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){return new w({key:e,debug:t,limits:f.DEV,cacheOptions:_[0]})}function m(e,t){console.log("myprint"),e?console.log(e):console.log(t)}var g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),d=function(){function e(){u(this,e),this.cache={}}return h(e,[{key:"get",value:function(e,t){return this.cache[e.key]?Date.now()>this.cache[e.key].expires?(delete this.cache[e.key],t("expired cache key")):t(null,this.cache[e.key].value):t("cache key doesn't exist")}},{key:"set",value:function(e,t){this.cache[e.key]={expires:e.ttl?Date.now()+1e3*e.ttl:null,value:t}}}]),e}(),c=function(){function e(n){u(this,e);var i=Object.assign({},n||{},{host:"127.0.0.1",port:6379,keyPrefix:"kindredAPI-"});this.client=t.createClient(i.port,i.host),this.client.on("error",function(e){console.log("Redis error:",e)}),process.on("exit",function(){console.log("closing"),this.client.quit()}),this.prefix=i.keyPrefix}return h(e,[{key:"get",value:function(e,t){this.client.get(this.prefix+e.key,function(e,n){n?t(e,n):t(e)})}},{key:"set",value:function(e,n){this.client.setex(this.prefix+e.key,e.ttl,n,t.print),console.log("set for "+e.ttl+" seconds")}}]),e}(),p=function(){function e(t,i){u(this,e),this.allowedRequests=t,this.seconds=i,this.madeRequests=new n}return h(e,[{key:"__reload",value:function(){for(var e=(new Date).getTime();this.madeRequests.length>0&&e-this.madeRequests.peekFront()>=1e3*this.seconds;)this.madeRequests.shift()}},{key:"addRequest",value:function(){this.madeRequests.push((new Date).getTime()+1e3*this.seconds)}},{key:"requestAvailable",value:function(){return this.__reload(),this.madeRequests.length<this.allowedRequests}}]),e}(),y={MONTH:2592e3,WEEK:604800,DAY:846400,SIX_HOURS:21600,THREE_HOURS:10800,TWO_HOURS:7200,HOUR:3600,THIRTY_MINUTES:1800,SHORT:600,NONE:null},v={CHAMPION:y.MONTH,CHAMPION_MASTERY:y.SIX_HOURS,CURRENT_GAME:y.NONE,FEATURED_GAMES:y.NONE,GAME:y.HOUR,LEAGUE:y.SIX_HOURS,STATIC:y.MONTH,STATUS:y.NONE,MATCH:y.MONTH,MATCH_LIST:y.ONE_HOUR,RUNES_MASTERIES:y.WEEK,STATS:y.HOUR,SUMMONER:y.DAY},f={DEV:[[10,10],[500,600]],PROD:[[3e3,10],[18e4,600]]},R={BRAZIL:"BR1",EUROPE:"EUN1",EUROPE_WEST:"EUW1",KOREA:"KR",LATIN_AMERICA_NORTH:"LA1",LATIN_AMERICA_SOUTH:"LA2",NORTH_AMERICA:"NA1",OCEANIA:"OC1",RUSSIA:"RU",TURKEY:"TR1",JAPAN:"JP1"},S={BRAZIL:"br",EUROPE:"eune",EUROPE_WEST:"euw",KOREA:"kr",LATIN_AMERICA_NORTH:"lan",LATIN_AMERICA_SOUTH:"las",NORTH_AMERICA:"na",OCEANIA:"oce",RUSSIA:"ru",TURKEY:"tr",JAPAN:"jp"},I={br:"BRAZIL",eune:"EUROPE",euw:"EUROPE_WEST",kr:"KOREA",lan:"LATIN_AMERICA_NORTH",las:"LATIN_AMERICA_SOUTH",na:"NORTH_AMERICA",oce:"OCEANIA",ru:"RUSSIA",tr:"TURKEY",jp:"JAPAN"},b={CHAMPION:1.2,CURRENT_GAME:1,FEATURED_GAMES:1,GAME:1.3,LEAGUE:2.5,STATIC_DATA:1.2,STATUS:1,MATCH:2.2,MATCH_LIST:2.2,RUNES_MASTERIES:1.4,STATS:1.3,SUMMONER:1.4},_=["in-memory-cache","redis"],E=i("^[0-9\\p{L} _\\.]+$"),M={int:function(e){return e.every(function(e){return Number.isInteger(e)})},string:function(e){return e.every(function(e){return"string"==typeof e})}},q={int:function(e){return e&&Array.isArray(e)&&M.int(e)&&e.length>0},string:function(e){return e&&Array.isArray(e)&&M.string(e)&&e.length>0}},A=function(e){var t=!0,n=!1,i=void 0;try{for(var r,s=Object.keys(S)[Symbol.iterator]();!(t=(r=s.next()).done);t=!0){var o=r.value;if(S[o]===e)return!0}}catch(e){n=!0,i=e}finally{try{!t&&s.return&&s.return()}finally{if(n)throw i}}return!1},U={400:"Bad Request",403:"Forbidden",404:"Not Found",415:"Unsupported Media Type",429:"Rate Limit Exceeded",500:"Internal Service Error",503:"Service Unavailable"},D=function(e){var t=U[e];if(t)return t},T=[200,400,500],N=function(e){return e>=T[0]&&e<=T[1]?r.green(e):e>=T[1]&&e<=T[2]?r.red(e+" "+D(e)):r.bold.red(e+" "+D(e))},C=function(e){return(Array.isArray(e)&&2!==e.length||!q.int(e[0])||2!==e[0].length||!q.int(e[1])||2!==e[1].length)&&"dev"!==e&&"prod"!==e},k=function(e,t,n){console.log(t,n),console.log({"x-app-rate-limit-count":e.headers["x-app-rate-limit-count"],"x-method-rate-limit-count":e.headers["x-method-rate-limit-count"],"x-rate-limit-count":e.headers["x-rate-limit-count"],"retry-after":e.headers["retry-after"]}),console.log()},w=function(){function e(t){var n=t.key,i=t.defaultRegion,r=void 0===i?S.NORTH_AMERICA:i,s=t.debug,a=void 0!==s&&s,l=t.limits,m=t.cacheOptions,g=t.cacheTTL;if(u(this,e),this.key=n,this.defaultRegion=A(r)?r:void 0,this.defaultRegion||(console.log(""+o.red("Initialization of Kindred failed: "+o.yellow(r)+" is an invalid region.")),console.log(""+o.red("Try importing "+o.yellow("require('./dist/kindred-api').REGIONS")+" and using one of those values instead.")),process.exit(1)),this.debug=a,m?(m===_[0]?this.cache=new d:m===_[1]?this.cache=new c:this.cache=m,this.CACHE_TIMERS=g?g:v):this.cache={get:function(e,t){return t(null,null)},set:function(e,t){}},this.CACHE_TIMERS||(this.CACHE_TIMERS={CHAMPION:0,CHAMPION_MASTERY:0,CURRENT_GAME:0,FEATURED_GAMES:0,GAME:0,LEAGUE:0,STATIC:0,STATUS:0,MATCH:0,MATCH_LIST:0,RUNES_MASTERIES:0,STATS:0,SUMMONER:0}),l){C(l)&&(console.log(o.red("Initialization of Kindred failed: Invalid "+o.yellow("limits")+". Valid examples: "+o.yellow("[[10, 10], [500, 600]]"))+"."),console.log(o.red("You can also pass in one of these two strings:")+" dev/prod "),console.log(""+o.red("and Kindred will set the limits appropriately.")),process.exit(1)),this.limits={},"dev"===l&&(l=f.DEV),"prod"===l&&(l=f.PROD);var h=!0,y=!1,R=void 0;try{for(var I,b=Object.keys(S)[Symbol.iterator]();!(h=(I=b.next()).done);h=!0){var E=I.value;this.limits[S[E]]=[new p(l[0][0],l[0][1]),new p(l[1][0],l[1][1])]}}catch(e){y=!0,R=e}finally{try{!h&&b.return&&b.return()}finally{if(y)throw R}}}this.Champion={getChampions:this.getChamps.bind(this),getAll:this.getChamps.bind(this),all:this.getChamps.bind(this),getChampion:this.getChamp.bind(this),get:this.getChamp.bind(this)},this.ChampionMastery={getChampionMastery:this.getChampMastery.bind(this),get:this.getChampMastery.bind(this),getChampionMasteries:this.getChampMasteries.bind(this),getAll:this.getChampMasteries.bind(this),all:this.getChampMasteries.bind(this),getTotalChampionMasteryScore:this.getTotalChampMasteryScore.bind(this),getTotalScore:this.getTotalChampMasteryScore.bind(this),totalScore:this.getTotalChampMasteryScore.bind(this),total:this.getTotalChampMasteryScore.bind(this),getTopChampions:this.getTopChamps.bind(this),top:this.getTopChamps.bind(this),best:this.getTopChamps.bind(this)},this.CurrentGame={getCurrentGame:this.getCurrentGame.bind(this),get:this.getCurrentGame.bind(this)},this.FeaturedGames={getFeaturedGames:this.getFeaturedGames.bind(this),get:this.getFeaturedGames.bind(this)},this.Game={getRecentGames:this.getRecentGames.bind(this),getRecent:this.getRecentGames.bind(this),get:this.getRecentGames.bind(this)},this.League={getLeagues:this.getLeagues.bind(this),get:this.getLeagues.bind(this),getLeagueEntries:this.getLeagueEntries.bind(this),getEntries:this.getLeagueEntries.bind(this),entries:this.getLeagueEntries.bind(this),getChallengers:this.getChallengers.bind(this),challengers:this.getChallengers.bind(this),getMasters:this.getMasters.bind(this),masters:this.getMasters.bind(this)},this.Static={getChampions:this.getChampionList.bind(this),champions:this.getChampionList.bind(this),getChampion:this.getChampion.bind(this),champion:this.getChampion.bind(this),getItems:this.getItems.bind(this),items:this.getItems.bind(this),getItem:this.getItem.bind(this),item:this.getItem.bind(this),getLanguageStrings:this.getLanguageStrings.bind(this),languageStrings:this.getLanguageStrings.bind(this),getLanguages:this.getLanguages.bind(this),languages:this.getLanguages.bind(this),getMap:this.getMap.bind(this),map:this.getMap.bind(this),getMasteries:this.getMasteryList.bind(this),masteries:this.getMasteryList.bind(this),getMastery:this.getMastery.bind(this),mastery:this.getMastery.bind(this),getRealmData:this.getRealmData.bind(this),realmData:this.getRealmData.bind(this),realm:this.getRealmData.bind(this),realms:this.getRealmData.bind(this),getRunes:this.getRuneList.bind(this),runes:this.getRuneList.bind(this),getRune:this.getRune.bind(this),rune:this.getRune.bind(this),getSummonerSpells:this.getSummonerSpells.bind(this),summonerSpells:this.getSummonerSpells.bind(this),spells:this.getSummonerSpells.bind(this),getSummonerSpell:this.getSummonerSpell.bind(this),summonerSpell:this.getSummonerSpell.bind(this),spell:this.getSummonerSpell.bind(this),getVersionData:this.getVersionData.bind(this),versionData:this.getVersionData.bind(this),version:this.getVersionData.bind(this),versions:this.getVersionData.bind(this)},this.Status={getShardStatus:this.getShardStatus.bind(this),getStatus:this.getShardStatus.bind(this),get:this.getShardStatus.bind(this),getShardList:this.getShardList.bind(this),getShards:this.getShardList.bind(this),getAll:this.getShardList.bind(this),all:this.getShardList.bind(this)},this.Match={getMatch:this.getMatch.bind(this),get:this.getMatch.bind(this)},this.MatchList={getMatchList:this.getMatchList.bind(this),get:this.getMatchList.bind(this)},this.RunesMasteries={getRunes:this.getRunes.bind(this),runes:this.getRunes.bind(this),getMasteries:this.getMasteries.bind(this),masteries:this.getMasteries.bind(this)},this.Runes={get:this.getRunes.bind(this)},this.Masteries={get:this.getMasteries.bind(this)},this.Stats={getRankedStats:this.getRankedStats.bind(this),ranked:this.getRankedStats.bind(this),getStatsSummary:this.getStatsSummary.bind(this),summary:this.getStatsSummary.bind(this)},this.Summoner={getSummoners:this.getSummoners.bind(this),getAll:this.getSummoners.bind(this),all:this.getSummoners.bind(this),getSummoner:this.getSummoner.bind(this),get:this.getSummoner.bind(this),getSummonerNames:this.getSummonerNames.bind(this),getNames:this.getSummonerNames.bind(this),names:this.getSummonerNames.bind(this),getSummonerName:this.getSummonerName.bind(this),getName:this.getSummonerName.bind(this),name:this.getSummonerName.bind(this)}}return h(e,[{key:"canMakeRequest",value:function(e){return!(!this.limits[e][0].requestAvailable()||!this.limits[e][1].requestAvailable())}},{key:"_sanitizeName",value:function(e){if(this._validName(e))return e.replace(/\s/g,"").toLowerCase();this._logError(this._validName.name,"Name "+o.yellow(e)+" is not valid. Request failed."),process.exit(1)}},{key:"_validName",value:function(e){return E.test(e)}},{key:"_makeUrl",value:function(e,t,n,i,r,s){var o=n?"":t+"/";return"https://"+t+".api.riotgames.com/"+(i||r||s?"":"api/lol/"+o)+encodeURI(e)}},{key:"_baseRequest",value:function(e,t){var n=this,i=e.endUrl,r=e.region,u=void 0===r?this.defaultRegion:r,l=e.status,m=void 0!==l&&l,g=e.observerMode,h=void 0!==g&&g,d=e.staticReq,c=void 0!==d&&d,p=e.championMastery,y=void 0!==p&&p,v=e.options,f=void 0===v?{}:v,R=e.cacheParams,S=void 0===R?{}:R,I=function(){return new Promise(function(e,r){var l=c?"global":u,g=!0,d=!1,p=void 0;try{for(var v,R=Object.keys(f)[Symbol.iterator]();!(g=(v=R.next()).done);g=!0){var I=v.value;Array.isArray(f[I])&&(f[I]=f[I].join(","))}}catch(e){d=!0,p=e}finally{try{!g&&R.return&&R.return()}finally{if(d)throw p}}var b=a.stringify(f),_=b?"?"+b:"",E=n._makeUrl(i+_,l,c,m,h,y),M=E+(E.lastIndexOf("?")===-1?"?":"&")+"api_key="+n.key;n.cache.get({key:E},function(i,a){if(a){var l=JSON.parse(a);return t?t(i,l):e(l)}if(n.limits){var m=n;!function t(n){m.canMakeRequest(u)?(c||(m.limits[u][0].addRequest(),m.limits[u][1].addRequest()),s({url:M},function(i,s,a){if(s&&a){var u=s.statusCode,l=N(u);if(m.debug&&k(s,l,M),"function"==typeof n)return u>=500&&(m.debug&&console.log("!!! resending request !!!"),setTimeout(function(){t.bind(m)(n)},1e3)),429===u&&(m.debug&&console.log("!!! resending request !!!"),setTimeout(function(){t.bind(m)(n)},1e3*s.headers["retry-after"]+50)),u>=400?n(l+" : "+o.yellow(E)):(Number.isInteger(S.ttl)&&S.ttl>0&&m.cache.set({key:E,ttl:S.ttl},a),n(i,JSON.parse(a)));if(500===u)m.debug&&console.log("!!! resending promise request !!!"),setTimeout(function(){return r("retry")},1e3);else{if(429!==u)return i||u>=400?r("err:",i,u):(Number.isInteger(S.ttl)&&S.ttl>0&&m.cache.set({key:E,ttl:S.ttl},a),e(JSON.parse(a)));m.debug&&console.log("!!! resending promise request !!!"),setTimeout(function(){return r("retry")},1e3*s.headers["retry-after"]+50)}}else console.log(i,M)})):setTimeout(function(){t.bind(m)(n)},1e3)}(t)}else s({url:M},function(n,i,s){if(i){var a=i.statusCode,u=N(a);return m.debug&&k(i,u,M),"function"==typeof t?a>=400?t(u+" : "+o.yellow(E)):t(n,JSON.parse(s)):n?r("err:",n):e(JSON.parse(s))}console.log(n,E)})})})};return t?I():I().catch(I).catch(I).catch(I).then(function(e){return e})}},{key:"_observerRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.cacheParams;return this._baseRequest({endUrl:"observer-mode/rest/"+n,observerMode:!0,region:i,cacheParams:r},t)}},{key:"_championRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+b.CHAMPION+"/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.CHAMPION}},t)}},{key:"_championMasteryRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"championmastery/location/"+n,region:i,options:r,championMastery:!0,cacheParams:{ttl:this.CACHE_TIMERS.CHAMPION_MASTERY}},t)}},{key:"_currentGameRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.platformId;return this._observerRequest({endUrl:"consumer/getSpectatorGameInfo/"+r+"/"+n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.CURRENT_GAME}},t)}},{key:"_featuredGamesRequest",value:function(e,t){var n=e.endUrl,i=e.region;e.platformId;return this._observerRequest({endUrl:""+n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.FEATURED_GAMES}},t)}},{key:"_staticRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=void 0===i?this.defaultRegion:i,s=e.options;return this._baseRequest({endUrl:"static-data/"+r+"/v"+b.STATIC_DATA+"/"+n,staticReq:!0,region:r,options:s,cacheParams:{ttl:this.CACHE_TIMERS.STATIC}},t)}},{key:"_statusRequest",value:function(e,t){var n=e.endUrl,i=(e.region,e.options);return this._baseRequest({endUrl:"lol/status/v"+b.STATUS+"/"+n,status:!0,options:i,cacheParams:{ttl:this.CACHE_TIMERS.STATUS}},t)}},{key:"_gameRequest",value:function(e,t){var n=e.endUrl,i=e.region;return this._baseRequest({endUrl:"v"+b.GAME+"/game/"+n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.GAME}},t)}},{key:"_leagueRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+b.LEAGUE+"/league/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.LEAGUE}},t)}},{key:"_matchRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+b.MATCH+"/match/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.MATCH}},t)}},{key:"_matchListRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+b.MATCH_LIST+"/matchlist/by-summoner/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.MATCH_LIST}},t)}},{key:"_runesMasteriesRequest",value:function(e,t){var n=e.endUrl,i=e.region;return this._summonerRequest({endUrl:n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.RUNES_MASTERIES}},t)}},{key:"_statsRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+b.STATS+"/stats/by-summoner/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.STATS}},t)}},{key:"_summonerRequest",value:function(e,t){var n=e.endUrl,i=e.region;return this._baseRequest({endUrl:"v"+b.SUMMONER+"/summoner/"+n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.SUMMONER}},t)}},{key:"_logError",value:function(e,t){console.log(o.bold.yellow(e),o.red("request"),o.bold.red("FAILED")+o.red("; "+t))}},{key:"setRegion",value:function(e){this.defaultRegion=A(e)?e:void 0,console.log(""+o.red("setRegion() by Kindred failed: "+o.yellow(e)+" is an invalid region.")),console.log(""+o.red("Try importing "+o.yellow("require('./dist/kindred-api').REGIONS")+" and using one of those values instead.")),process.exit(1)}},{key:"getChamps",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._championRequest({endUrl:"champion",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getChamp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.championID,r=arguments[1];return Number.isInteger(n)||Number.isInteger(i)?this._championRequest({endUrl:"champion/"+(n||i),region:t},r):this._logError(this.getChamp.name,"required params "+o.yellow("`id/championID` (int)")+" not passed in")}},{key:"getChampMastery",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=void 0===t?this.defaultRegion:t,i=e.playerID,r=e.championID,s=e.options,a=arguments[1];if(Number.isInteger(i)&&Number.isInteger(r)){var u=R[I[n]];return this._championMasteryRequest({endUrl:u+"/player/"+i+"/champion/"+r,region:n,options:s},a)}return this._logError(this.getChampMastery.name,"required params "+o.yellow("`playerID` (int) AND `championID` (int)")+" not passed in")}},{key:"getChampMasteries",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=void 0===n?this.defaultRegion:n,r=t.id,s=t.summonerID,a=t.playerID,u=t.name,l=t.options,m=arguments[1];if(Number.isInteger(r||s||a)){var h=R[I[i]];return this._championMasteryRequest({endUrl:h+"/player/"+(r||s||a)+"/champions",region:i,options:l},m)}if("object"===g(arguments[0])&&"string"==typeof u){var d=R[I[i]];return new Promise(function(t,n){return e.getSummoner({name:u,region:i},function(r,s){return r?void(m?m(r):n(r)):t(e._championMasteryRequest({endUrl:d+"/player/"+s[e._sanitizeName(u)].id+"/champions",region:i},m))})})}return this._logError(this.getChampMasteries.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (str)")+" not passed in")}},{key:"getTotalChampMasteryScore",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=void 0===n?this.defaultRegion:n,r=t.id,s=t.summonerID,a=t.playerID,u=t.name,l=t.options,m=arguments[1];if(Number.isInteger(r||s||a)){var h=R[I[i]];return this._championMasteryRequest({endUrl:h+"/player/"+(r||s||a)+"/score",region:i,options:l},m)}if("object"===g(arguments[0])&&"string"==typeof u){var d=R[I[i]];return new Promise(function(t,n){return e.getSummoner({name:u,region:i},function(r,s){return r?void(m?m(r):n(r)):t(e._championMasteryRequest({endUrl:d+"/player/"+s[e._sanitizeName(u)].id+"/score",region:i},m))})})}return this._logError(this.getTotalChampMasteryScore.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (str)")+" not passed in")}},{key:"getTopChamps",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=void 0===n?this.defaultRegion:n,r=t.id,s=t.summonerID,a=t.playerID,u=t.name,l=t.options,m=arguments[1];if(Number.isInteger(r||s||a)){var h=R[I[i]];return this._championMasteryRequest({endUrl:h+"/player/"+(r||s||a)+"/topchampions",region:i,options:l},m)}if("object"===g(arguments[0])&&"string"==typeof u){var d=R[I[i]];return new Promise(function(t,n){return e.getSummoner({name:u,region:i},function(r,s){return r?void(m?m(r):n(r)):t(e._championMasteryRequest({endUrl:d+"/player/"+s[e._sanitizeName(u)].id+"/topchampions",region:i},m))})})}return this._logError(this.getTopChamps.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (str)")+" not passed in")}},{key:"getCurrentGame",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=void 0===n?this.defaultRegion:n,r=t.id,s=t.summonerID,a=t.playerID,u=t.name,l=arguments[1],m=R[I[i]];return Number.isInteger(r||s||a)?this._currentGameRequest({endUrl:""+(r||s||a),platformId:m,region:i},l):"object"===g(arguments[0])&&"string"==typeof u?new Promise(function(t,n){return e.getSummoner({name:u,region:i},function(r,s){return r?void(l?l(r):n(r)):t(e._currentGameRequest({endUrl:""+s[e._sanitizeName(u)].id,platformId:m,region:i},l))})}):this._logError(this.getCurrentGame.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getFeaturedGames",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._featuredGamesRequest({endUrl:"featured",region:t},n=t?n:arguments[0])}},{key:"getRecentGames",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.id,r=t.summonerID,s=t.playerID,a=t.name,u=arguments[1];return Number.isInteger(i||r||s)?this._gameRequest({endUrl:"by-summoner/"+(i||r||s)+"/recent",region:n},u):"object"===g(arguments[0])&&"string"==typeof a?new Promise(function(t,i){return e.getSummoner({name:a,region:n},function(r,s){return r?void(u?u(r):i(r)):t(e._gameRequest({endUrl:"by-summoner/"+s[e._sanitizeName(a)].id+"/recent",region:n},u))})}):this._logError(this.getRecentGames.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getLeagues",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=t.options,c=arguments[1];return q.int(i||r||s)?this._leagueRequest({endUrl:"by-summoner/"+(i||r||s).join(","),region:n,options:d},c):Number.isInteger(i||a||r||u||s||l)?this._leagueRequest({endUrl:"by-summoner/"+(i||a||r||u||s||l),region:n,options:d},c):q.string(m)?new Promise(function(t,i){return e.getSummoners({names:m,region:n},function(r,s){if(r)return void(c?c(r):i(r));var o=m.map(function(t){return s[e._sanitizeName(t)].id});return t(e._leagueRequest({endUrl:"by-summoner/"+o.join(","),region:n,options:d},c))})}):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?this._logError(this.getLeagues.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):new Promise(function(t,i){return e.getSummoner({name:m||h,region:n},function(r,s){return r?void(c?c(r):i(r)):t(e._leagueRequest({endUrl:"by-summoner/"+s[e._sanitizeName(m||h)].id,region:n,options:d},c))})})}},{key:"getLeagueEntries",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=arguments[1];return q.int(i||r||s)?this._leagueRequest({endUrl:"by-summoner/"+(i||r||s).join(",")+"/entry",region:n},d):Number.isInteger(i||a||r||u||s||l)?this._leagueRequest({endUrl:"by-summoner/"+(i||a||r||u||s||l)+"/entry",region:n},d):q.string(m)?new Promise(function(t,i){return e.getSummoners({names:m,region:n},function(r,s){if(r)return void(d?d(r):i(r));var o=m.map(function(t){return s[e._sanitizeName(t)].id});return t(e._leagueRequest({endUrl:"by-summoner/"+o.join(",")+"/entry",region:n},d))})}):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?void this._logError(this.getLeagueEntries.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):new Promise(function(t,i){return e.getSummoner({name:m||h,region:n},function(r,s){return r?void(d?d(r):i(r)):t(e._leagueRequest({endUrl:"by-summoner/"+s[e._sanitizeName(m||h)].id+"/entry",region:n},d))})})}},{key:"getChallengers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=void 0===n?{type:"RANKED_SOLO_5x5"}:n,r=arguments[1];return this._leagueRequest({endUrl:"challenger",region:t,options:i},r=2===arguments.length?r:arguments[0])}},{key:"getMasters",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=void 0===n?{type:"RANKED_SOLO_5x5"}:n,r=arguments[1];return this._leagueRequest({endUrl:"master",region:t,options:i},r=2===arguments.length?r:arguments[0])}},{key:"getChampionList",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"champion",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getChampion",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.championID,r=e.options,s=arguments[1];return Number.isInteger(n||i)?this._staticRequest({endUrl:"champion/"+(n||i),region:t,options:r},s):this._logError(this.getChampion.name,"required params "+o.yellow("`id/championID` (int)")+" not passed in")}},{key:"getItems",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"item",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getItem",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.itemID,r=e.options,s=arguments[1];return Number.isInteger(n||i)?this._staticRequest({endUrl:"item/"+(n||i),region:t,options:r},s):this._logError(this.getItem.name,"required params "+o.yellow("`id/itemID` (int)")+" not passed in")}},{key:"getLanguageStrings",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"language-strings",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getLanguages",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._staticRequest({endUrl:"languages",region:t},n=t?n:arguments[0])}},{key:"getMap",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"map",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getMasteryList",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"mastery",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getMastery",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.masteryID,r=e.options,s=arguments[1];return Number.isInteger(n||i)?this._staticRequest({endUrl:"mastery/"+(n||i),region:t,options:r},s):this._logError(this.getMastery.name,"required params "+o.yellow("`id/masteryID` (int)")+" not passed in")}},{key:"getRealmData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._staticRequest({endUrl:"realm",region:t},n=t?n:arguments[0])}},{key:"getRuneList",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"rune",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getRune",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.runeID,r=e.options,s=arguments[1];return Number.isInteger(n||i)?this._staticRequest({endUrl:"rune/"+(n||i),region:t,options:r},s):this._logError(this.getRune.name,"required params "+o.yellow("`id/runeID` (int)")+" not passed in")}},{key:"getSummonerSpells",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"summoner-spell",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getSummonerSpell",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.spellID,r=e.summonerSpellID,s=e.options,a=arguments[1];return Number.isInteger(n||i||r)?this._staticRequest({endUrl:"summoner-spell/"+(n||i||r),region:t,options:s},a):this._logError(this.getSummonerSpell.name,"required params "+o.yellow("`id/spellID/summonerSpellID` (int)")+" not passed in")}},{key:"getVersionData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"versions",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getShardStatus",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._statusRequest({endUrl:"shard",region:t},n=t?n:arguments[0])}},{key:"getShardList",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._statusRequest({endUrl:"shards",region:t},n=t?n:arguments[0])}},{key:"getMatch",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.matchID,r=e.options,s=void 0===r?{includeTimeline:!0}:r,a=arguments[1];return Number.isInteger(n||i)?this._matchRequest({endUrl:""+(n||i),region:t,options:s},a):this._logError(this.getMatch.name,"required params "+o.yellow("`id/matchID` (int)")+" not passed in")}},{key:"getMatchList",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.id,r=t.summonerID,s=t.playerID,a=t.name,u=t.options,l=void 0===u?{rankedQueues:"TEAM_BUILDER_RANKED_SOLO"}:u,m=arguments[1];return Number.isInteger(i||r||s)?this._matchListRequest({endUrl:""+(i||r||s),region:n,options:l},m):"object"===g(arguments[0])&&"string"==typeof a?new Promise(function(t,i){return e.getSummoner({name:a,region:n},function(r,s){return r?void(m?m(r):i(r)):t(e._matchListRequest({endUrl:""+s[e._sanitizeName(a)].id,region:n,options:l},m))})}):this._logError(this.getMatchList.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (str)")+" not passed in")}},{key:"getRunes",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=arguments[1];return q.int(i||r||s)?this._runesMasteriesRequest({endUrl:(i||r||s).join()+"/runes",region:n},d):Number.isInteger(i||a||r||u||s||l)?this._runesMasteriesRequest({endUrl:(i||a||r||u||s||l)+"/runes",region:n},d):q.string(m)?new Promise(function(t,i){return e.getSummoners({names:m,region:n},function(r,s){if(r)return void(d?d(r):i(r));var o=m.map(function(t){return s[e._sanitizeName(t)].id});return t(e._runesMasteriesRequest({endUrl:o.join(",")+"/runes",region:n},d))})
}):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?this._logError(this.getRunes.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):new Promise(function(t,i){return e.getSummoner({name:m||h,region:n},function(r,s){return r?void(d?d(r):i(r)):t(e._runesMasteriesRequest({endUrl:s[e._sanitizeName(m||h)].id+"/runes",region:n},d))})})}},{key:"getMasteries",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=arguments[1];return q.int(i||r||s)?this._runesMasteriesRequest({endUrl:(i||r||s).join()+"/masteries",region:n},d):Number.isInteger(i||a||r||u||s||l)?this._runesMasteriesRequest({endUrl:(i||a||r||u||s||l)+"/masteries",region:n},d):q.string(m)?new Promise(function(t,i){return e.getSummoners({names:m,region:n},function(r,s){if(r)return void(d?d(r):i(r));var o=m.map(function(t){return s[e._sanitizeName(t)].id});return t(e._runesMasteriesRequest({endUrl:o.join(",")+"/masteries",region:n},d))})}):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?this._logError(this.getMasteries.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):new Promise(function(t,i){return e.getSummoner({name:m||h,region:n},function(r,s){return r?void(d?d(r):i(r)):t(e._runesMasteriesRequest({endUrl:s[e._sanitizeName(m||h)].id+"/masteries",region:n},d))})})}},{key:"getRankedStats",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.id,r=t.summonerID,s=t.playerID,a=t.name,u=t.options,l=arguments[1];return Number.isInteger(i||r||s)?this._statsRequest({endUrl:(i||r||s)+"/ranked",region:n,options:u},l):"object"===g(arguments[0])&&"string"==typeof a?new Promise(function(t,i){return e.getSummoner({name:a,region:n},function(r,s){return r?void(l?l(r):i(r)):t(e._statsRequest({endUrl:s[e._sanitizeName(a)].id+"/ranked",region:n,options:u},l))})}):void this._logError(this.getRankedStats.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getStatsSummary",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.id,r=t.summonerID,s=t.playerID,a=t.name,u=t.options,l=arguments[1];return Number.isInteger(i||r||s)?this._statsRequest({endUrl:(i||r||s)+"/summary",region:n,options:u},l):"object"===g(arguments[0])&&"string"==typeof a?new Promise(function(t,i){return e.getSummoner({name:a,region:n},function(r,s){return r?void(l?l(r):i(r)):t(e._statsRequest({endUrl:s[e._sanitizeName(a)].id+"/summary",region:n,options:u},l))})}):void this._logError(this.getRankedStats.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getSummoners",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=arguments[1];return q.int(i||r||s)?this._summonerRequest({endUrl:""+(i||r||s).join(","),region:n},d):Number.isInteger(i||a||r||u||s||l)?this._summonerRequest({endUrl:""+(i||a||r||u||s||l),region:n},d):q.string(m)?this._summonerRequest({endUrl:"by-name/"+m.map(function(t){return e._sanitizeName(t)}).join(","),region:n},d):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?void this._logError(this.getSummoners.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):this._summonerRequest({endUrl:"by-name/"+this._sanitizeName(m||h),region:n},d)}},{key:"getSummoner",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.summonerID,r=e.playerID,s=e.name,a=arguments[1];return Number.isInteger(n||i||r)?this.getSummoners({region:t,ids:[n||i||r]},a):"object"===g(arguments[0])&&"string"==typeof s?this.getSummoners({region:t,names:[s]},a):this._logError(this.getSummoner.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getSummonerNames",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.ids,i=e.summonerIDs,r=e.playerIDs,s=e.id,a=e.summonerID,u=e.playerID,l=arguments[1];return q.int(n||i||r)?this._summonerRequest({endUrl:(n||i||r).join(",")+"/name",region:t},l):Number.isInteger(n||s||i||a||r||u)?this._summonerRequest({endUrl:(n||s||i||a||r||u)+"/name",region:t},l):void this._logError(this.getSummonerNames.name,"required params "+o.yellow("required params `ids/summonerIDs/playerIDs` ([int]/int)")+" or "+o.yellow("`id/summonerID/playerID` (int)")+" not passed in")}},{key:"getSummonerName",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.summonerID,r=e.playerID,s=arguments[1];if(Number.isInteger(n))return this.getSummonerNames({region:t,id:n||i||r},s);this._logError(this.getSummonerName.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" not passed in")}}]),e}(),O={Kindred:w,REGIONS:S,LIMITS:f,TIME_CONSTANTS:y,CACHE_TYPES:_,QuickStart:l,print:m};e.exports=O});
!function(e,t){if("function"==typeof define&&define.amd)define("kindred-api",["module","redis","double-ended-queue","xregexp","chalk","request","chalk","query-string"],t);else if("undefined"!=typeof exports)t(module,require("redis"),require("double-ended-queue"),require("xregexp"),require("chalk"),require("request"),require("chalk"),require("query-string"));else{var n={exports:{}};t(n,e.redis,e.doubleEndedQueue,e.xregexp,e.chalk,e.request,e.chalk,e.queryString),e.kindredApi=n.exports}}(this,function(e,t,n,i,r,s,o,a){"use strict";function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){return new O({key:e,debug:t,limits:f.DEV,cacheOptions:_[0]})}function m(e,t){e?console.log(e):console.log(t)}var g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),d=function(){function e(){u(this,e),this.cache={}}return h(e,[{key:"get",value:function(e,t){return this.cache[e.key]?Date.now()>this.cache[e.key].expires?(delete this.cache[e.key],t("expired cache key")):t(null,this.cache[e.key].value):t("cache key doesn't exist")}},{key:"set",value:function(e,t){this.cache[e.key]={expires:e.ttl?Date.now()+1e3*e.ttl:null,value:t}}}]),e}(),c=function(){function e(n){u(this,e);var i=Object.assign({},n||{},{host:"127.0.0.1",port:6379,keyPrefix:"kindredAPI-"});this.client=t.createClient(i.port,i.host),this.client.on("error",function(e){console.log("Redis error:",e)}),process.on("exit",function(){console.log("closing"),this.client.quit()}),this.prefix=i.keyPrefix}return h(e,[{key:"get",value:function(e,t){this.client.get(this.prefix+e.key,function(e,n){n?t(e,n):t(e)})}},{key:"set",value:function(e,n){this.client.setex(this.prefix+e.key,e.ttl,n,t.print),console.log("set for "+e.ttl+" seconds")}}]),e}(),p=function(){function e(t,i){u(this,e),this.allowedRequests=t,this.seconds=i,this.madeRequests=new n}return h(e,[{key:"__reload",value:function(){for(var e=(new Date).getTime();this.madeRequests.length>0&&e-this.madeRequests.peekFront()>=1e3*this.seconds;)this.madeRequests.shift()}},{key:"addRequest",value:function(){this.madeRequests.push((new Date).getTime()+1e3*this.seconds)}},{key:"requestAvailable",value:function(){return this.__reload(),this.madeRequests.length<this.allowedRequests}}]),e}(),y={CHAMPION:"platform",CHAMPION_MASTERY:"champion-mastery",GAME:null,LEAGUE:null,STATUS:"status",MASTERIES:"platform",MATCH:null,MATCH_LIST:null,RUNES:"platform",RUNES_MASTERIES:"platform",SPECTATOR:"spectator",STATIC_DATA:"static-data",STATS:null,SUMMONER:"summoner"},v={MONTH:2592e3,WEEK:604800,DAY:846400,SIX_HOURS:21600,THREE_HOURS:10800,TWO_HOURS:7200,HOUR:3600,THIRTY_MINUTES:1800,SHORT:600,NONE:null},R={CHAMPION:v.MONTH,CHAMPION_MASTERY:v.SIX_HOURS,CURRENT_GAME:v.NONE,FEATURED_GAMES:v.NONE,GAME:v.HOUR,LEAGUE:v.SIX_HOURS,STATIC:v.MONTH,STATUS:v.NONE,MATCH:v.MONTH,MATCH_LIST:v.ONE_HOUR,RUNES_MASTERIES:v.WEEK,SPECTATOR:v.NONE,STATS:v.HOUR,SUMMONER:v.DAY},f={DEV:[[10,10],[500,600]],PROD:[[3e3,10],[18e4,600]]},S={BRAZIL:"BR1",EUROPE:"EUN1",EUROPE_WEST:"EUW1",KOREA:"KR",LATIN_AMERICA_NORTH:"LA1",LATIN_AMERICA_SOUTH:"LA2",NORTH_AMERICA:"NA1",OCEANIA:"OC1",RUSSIA:"RU",TURKEY:"TR1",JAPAN:"JP1"},I={BRAZIL:"br",EUROPE:"eune",EUROPE_WEST:"euw",KOREA:"kr",LATIN_AMERICA_NORTH:"lan",LATIN_AMERICA_SOUTH:"las",NORTH_AMERICA:"na",OCEANIA:"oce",RUSSIA:"ru",TURKEY:"tr",JAPAN:"jp"},b={br:"BRAZIL",eune:"EUROPE",euw:"EUROPE_WEST",kr:"KOREA",lan:"LATIN_AMERICA_NORTH",las:"LATIN_AMERICA_SOUTH",na:"NORTH_AMERICA",oce:"OCEANIA",ru:"RUSSIA",tr:"TURKEY",jp:"JAPAN"},E={CHAMPION:3,CHAMPION_MASTERY:3,CURRENT_GAME:1,FEATURED_GAMES:1,GAME:1.3,LEAGUE:2.5,STATIC_DATA:3,STATUS:3,MATCH:2.2,MATCH_LIST:2.2,RUNES_MASTERIES:3,SPECTATOR:3,STATS:1.3,SUMMONER:3},_=["in-memory-cache","redis"],A=i("^[0-9\\p{L} _\\.]+$"),M={int:function(e){return e.every(function(e){return Number.isInteger(e)})},string:function(e){return e.every(function(e){return"string"==typeof e})}},T={int:function(e){return e&&Array.isArray(e)&&M.int(e)&&e.length>0},string:function(e){return e&&Array.isArray(e)&&M.string(e)&&e.length>0}},D=function(e){var t=!0,n=!1,i=void 0;try{for(var r,s=Object.keys(I)[Symbol.iterator]();!(t=(r=s.next()).done);t=!0){var o=r.value;if(I[o]===e)return!0}}catch(e){n=!0,i=e}finally{try{!t&&s.return&&s.return()}finally{if(n)throw i}}return!1},U={400:"Bad Request",403:"Forbidden",404:"Not Found",415:"Unsupported Media Type",429:"Rate Limit Exceeded",500:"Internal Service Error",503:"Service Unavailable"},q=function(e){var t=U[e];if(t)return t},C=[200,400,500],N=function(e){return e>=C[0]&&e<C[1]?r.green(e):e>=C[1]&&e<C[2]?r.red(e+" "+q(e)):r.bold.red(e+" "+q(e))},k=function(e){return(Array.isArray(e)&&2!==e.length||!T.int(e[0])||2!==e[0].length||!T.int(e[1])||2!==e[1].length)&&"dev"!==e&&"prod"!==e},w=function(e,t,n){console.log(t,n),console.log({"x-app-rate-limit-count":e.headers["x-app-rate-limit-count"],"x-method-rate-limit-count":e.headers["x-method-rate-limit-count"],"x-rate-limit-count":e.headers["x-rate-limit-count"],"retry-after":e.headers["retry-after"]}),console.log()},O=function(){function e(t){var n=t.key,i=t.defaultRegion,r=void 0===i?I.NORTH_AMERICA:i,s=t.debug,a=void 0!==s&&s,l=t.limits,m=t.cacheOptions,g=t.cacheTTL;if(u(this,e),this.key=n,this.defaultRegion=D(r)?r:void 0,this.defaultRegion||(console.log(""+o.red("Initialization of Kindred failed: "+o.yellow(r)+" is an invalid region.")),console.log(""+o.red("Try importing "+o.yellow("require('./dist/kindred-api').REGIONS")+" and using one of those values instead.")),process.exit(1)),this.debug=a,m?(m===_[0]?this.cache=new d:m===_[1]?this.cache=new c:this.cache=m,this.CACHE_TIMERS=g?g:R):this.cache={get:function(e,t){return t(null,null)},set:function(e,t){}},this.CACHE_TIMERS||(this.CACHE_TIMERS={CHAMPION:0,CHAMPION_MASTERY:0,CURRENT_GAME:0,FEATURED_GAMES:0,GAME:0,LEAGUE:0,STATIC:0,STATUS:0,MATCH:0,MATCH_LIST:0,RUNES_MASTERIES:0,STATS:0,SUMMONER:0}),l){k(l)&&(console.log(o.red("Initialization of Kindred failed: Invalid "+o.yellow("limits")+". Valid examples: "+o.yellow("[[10, 10], [500, 600]]"))+"."),console.log(o.red("You can also pass in one of these two strings:")+" dev/prod "),console.log(""+o.red("and Kindred will set the limits appropriately.")),process.exit(1)),this.limits={},"dev"===l&&(l=f.DEV),"prod"===l&&(l=f.PROD);var h=!0,y=!1,v=void 0;try{for(var S,b=Object.keys(I)[Symbol.iterator]();!(h=(S=b.next()).done);h=!0){var E=S.value;this.limits[I[E]]=[new p(l[0][0],l[0][1]),new p(l[1][0],l[1][1])]}}catch(e){y=!0,v=e}finally{try{!h&&b.return&&b.return()}finally{if(y)throw v}}}this.Champion={getChampions:this.getChamps.bind(this),getAll:this.getChamps.bind(this),all:this.getChamps.bind(this),getChampion:this.getChamp.bind(this),get:this.getChamp.bind(this)},this.ChampionMastery={getChampionMastery:this.getChampMastery.bind(this),get:this.getChampMastery.bind(this),getChampionMasteries:this.getChampMasteries.bind(this),getAll:this.getChampMasteries.bind(this),all:this.getChampMasteries.bind(this),getTotalChampionMasteryScore:this.getTotalChampMasteryScore.bind(this),getTotalScore:this.getTotalChampMasteryScore.bind(this),totalScore:this.getTotalChampMasteryScore.bind(this),total:this.getTotalChampMasteryScore.bind(this),score:this.getTotalChampMasteryScore.bind(this),getTopChampions:this.getTopChamps.bind(this),top:this.getTopChamps.bind(this),best:this.getTopChamps.bind(this)},this.CurrentGame={getCurrentGame:this.getCurrentGame.bind(this),get:this.getCurrentGame.bind(this)},this.FeaturedGames={getFeaturedGames:this.getFeaturedGames.bind(this),get:this.getFeaturedGames.bind(this)},this.Game={getRecentGames:this.getRecentGames.bind(this),getRecent:this.getRecentGames.bind(this),get:this.getRecentGames.bind(this)},this.League={getLeagues:this.getLeagues.bind(this),get:this.getLeagues.bind(this),getLeagueEntries:this.getLeagueEntries.bind(this),getEntries:this.getLeagueEntries.bind(this),entries:this.getLeagueEntries.bind(this),getChallengers:this.getChallengers.bind(this),challengers:this.getChallengers.bind(this),getMasters:this.getMasters.bind(this),masters:this.getMasters.bind(this)},this.Static={getChampions:this.getChampionList.bind(this),champions:this.getChampionList.bind(this),getChampion:this.getChampion.bind(this),champion:this.getChampion.bind(this),getItems:this.getItems.bind(this),items:this.getItems.bind(this),getItem:this.getItem.bind(this),item:this.getItem.bind(this),getLanguageStrings:this.getLanguageStrings.bind(this),languageStrings:this.getLanguageStrings.bind(this),getLanguages:this.getLanguages.bind(this),languages:this.getLanguages.bind(this),getMapData:this.getMapData.bind(this),mapData:this.getMapData.bind(this),map:this.getMapData.bind(this),maps:this.getMapData.bind(this),getMasteries:this.getMasteryList.bind(this),masteries:this.getMasteryList.bind(this),getMastery:this.getMastery.bind(this),mastery:this.getMastery.bind(this),getRealmData:this.getRealmData.bind(this),realmData:this.getRealmData.bind(this),realm:this.getRealmData.bind(this),realms:this.getRealmData.bind(this),getRunes:this.getRuneList.bind(this),runes:this.getRuneList.bind(this),getRune:this.getRune.bind(this),rune:this.getRune.bind(this),getSummonerSpells:this.getSummonerSpells.bind(this),summonerSpells:this.getSummonerSpells.bind(this),spells:this.getSummonerSpells.bind(this),getSummonerSpell:this.getSummonerSpell.bind(this),summonerSpell:this.getSummonerSpell.bind(this),spell:this.getSummonerSpell.bind(this),getVersionData:this.getVersionData.bind(this),versionData:this.getVersionData.bind(this),version:this.getVersionData.bind(this),versions:this.getVersionData.bind(this)},this.Status={getShardStatus:this.getShardStatus.bind(this),getStatus:this.getShardStatus.bind(this),get:this.getShardStatus.bind(this)},this.Match={getMatch:this.getMatch.bind(this),get:this.getMatch.bind(this)},this.MatchList={getMatchList:this.getMatchList.bind(this),get:this.getMatchList.bind(this)},this.RunesMasteries={getRunes:this.getRunes.bind(this),runes:this.getRunes.bind(this),getMasteries:this.getMasteries.bind(this),masteries:this.getMasteries.bind(this)},this.Runes={get:this.getRunes.bind(this)},this.Masteries={get:this.getMasteries.bind(this)},this.Stats={getRankedStats:this.getRankedStats.bind(this),ranked:this.getRankedStats.bind(this),getStatsSummary:this.getStatsSummary.bind(this),summary:this.getStatsSummary.bind(this)},this.Summoner={getSummoners:this.getSummoners.bind(this),getAll:this.getSummoners.bind(this),all:this.getSummoners.bind(this),getSummoner:this.getSummoner.bind(this),get:this.getSummoner.bind(this),getSummonerNames:this.getSummonerNames.bind(this),getNames:this.getSummonerNames.bind(this),names:this.getSummonerNames.bind(this),getSummonerName:this.getSummonerName.bind(this),getName:this.getSummonerName.bind(this),name:this.getSummonerName.bind(this)}}return h(e,[{key:"canMakeRequest",value:function(e){return!(!this.limits[e][0].requestAvailable()||!this.limits[e][1].requestAvailable())}},{key:"_sanitizeName",value:function(e){if(this._validName(e))return e.replace(/\s/g,"").toLowerCase();this._logError(this._validName.name,"Name "+o.yellow(e)+" is not valid. Request failed."),process.exit(1)}},{key:"_validName",value:function(e){return A.test(e)}},{key:"_makeUrl",value:function(e,t,n,i,r,s){var o=n?"":t+"/",a=i||r||s?"":"api/lol/"+o,u="https://"+t+".api.riotgames.com/"+a+encodeURI(e),l="https://"+S[b[t]].toLowerCase()+".api.riotgames.com/lol/"+encodeURI(e);return l.lastIndexOf("v3")==-1?u:l}},{key:"_baseRequest",value:function(e,t){var n=this,i=e.endUrl,r=e.region,u=void 0===r?this.defaultRegion:r,l=e.status,m=void 0!==l&&l,g=e.observerMode,h=void 0!==g&&g,d=e.staticReq,c=void 0!==d&&d,p=e.championMastery,y=void 0!==p&&p,v=e.options,R=void 0===v?{}:v,f=e.cacheParams,S=void 0===f?{}:f,I=function(){return new Promise(function(e,r){var l=c?"global":u,g=!0,d=!1,p=void 0;try{for(var v,f=Object.keys(R)[Symbol.iterator]();!(g=(v=f.next()).done);g=!0){var I=v.value;Array.isArray(R[I])&&(R[I]=R[I].join(","))}}catch(e){d=!0,p=e}finally{try{!g&&f.return&&f.return()}finally{if(d)throw p}}var b=a.stringify(R),E=b?"?"+b:"",_=n._makeUrl(i+E,l,c,m,h,y),A=_+(_.lastIndexOf("?")===-1?"?":"&")+"api_key="+n.key;n.cache.get({key:_},function(i,a){if(a){var l=JSON.parse(a);return t?t(i,l):e(l)}if(n.limits){var m=n;!function t(n){m.canMakeRequest(u)?(c||(m.limits[u][0].addRequest(),m.limits[u][1].addRequest()),s({url:A},function(i,s,a){if(s&&a){var u=s.statusCode,l=N(u);if(m.debug&&w(s,l,A),"function"==typeof n)return u>=500&&(m.debug&&console.log("!!! resending request !!!"),setTimeout(function(){t.bind(m)(n)},1e3)),429===u&&(m.debug&&console.log("!!! resending request !!!"),setTimeout(function(){t.bind(m)(n)},1e3*s.headers["retry-after"]+50)),u>=400?n(l+" : "+o.yellow(_)):(Number.isInteger(S.ttl)&&S.ttl>0&&m.cache.set({key:_,ttl:S.ttl},a),n(i,JSON.parse(a)));if(500===u)m.debug&&console.log("!!! resending promise request !!!"),setTimeout(function(){return r("retry")},1e3);else{if(429!==u)return i||u>=400?r("err:",i,u):(Number.isInteger(S.ttl)&&S.ttl>0&&m.cache.set({key:_,ttl:S.ttl},a),e(JSON.parse(a)));m.debug&&console.log("!!! resending promise request !!!"),setTimeout(function(){return r("retry")},1e3*s.headers["retry-after"]+50)}}else console.log(i,A)})):setTimeout(function(){t.bind(m)(n)},1e3)}(t)}else s({url:A},function(n,i,s){if(i){var a=i.statusCode,u=N(a);return m.debug&&w(i,u,A),"function"==typeof t?a>=400?t(u+" : "+o.yellow(_)):t(n,JSON.parse(s)):n?r("err:",n):e(JSON.parse(s))}console.log(n,_)})})})};return t?I():I().catch(I).catch(I).catch(I).then(function(e){return e})}},{key:"_championMasteryRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:y.CHAMPION_MASTERY+"/v"+E.CHAMPION+"/"+n,region:i,options:r,championMastery:!0,cacheParams:{ttl:this.CACHE_TIMERS.CHAMPION_MASTERY}},t)}},{key:"_spectatorRequest",value:function(e,t){var n=e.endUrl,i=e.region;return this._baseRequest({endUrl:y.SPECTATOR+"/v"+E.SPECTATOR+"/"+n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.SPECTATOR}},t)}},{key:"_staticRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=void 0===i?this.defaultRegion:i,s=e.options;return this._baseRequest({endUrl:y.STATIC_DATA+"/v"+E.STATIC_DATA+"/"+n,region:r,options:s,cacheParams:{ttl:this.CACHE_TIMERS.STATIC}},t)}},{key:"_statusRequest",value:function(e,t){var n=e.endUrl,i=(e.region,e.options);return this._baseRequest({endUrl:y.STATUS+"/v"+E.STATUS+"/"+n,status:!0,options:i,cacheParams:{ttl:this.CACHE_TIMERS.STATUS}},t)}},{key:"_gameRequest",value:function(e,t){var n=e.endUrl,i=e.region;return this._baseRequest({endUrl:"v"+E.GAME+"/game/"+n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.GAME}},t)}},{key:"_leagueRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+E.LEAGUE+"/league/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.LEAGUE}},t)}},{key:"_matchRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+E.MATCH+"/match/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.MATCH}},t)}},{key:"_matchListRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+E.MATCH_LIST+"/matchlist/by-summoner/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.MATCH_LIST}},t)}},{key:"_runesMasteriesRequest",value:function(e,t){var n=e.endUrl,i=e.region;return this._baseRequest({endUrl:y.RUNES_MASTERIES+"/v"+E.RUNES_MASTERIES+"/"+n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.RUNES_MASTERIES}},t)}},{key:"_statsRequest",value:function(e,t){var n=e.endUrl,i=e.region,r=e.options;return this._baseRequest({endUrl:"v"+E.STATS+"/stats/by-summoner/"+n,region:i,options:r,cacheParams:{ttl:this.CACHE_TIMERS.STATS}},t)}},{key:"_summonerRequest",value:function(e,t){var n=e.endUrl,i=e.region;return this._baseRequest({endUrl:y.SUMMONER+"/v"+E.SUMMONER+"/summoners/"+n,region:i,cacheParams:{ttl:this.CACHE_TIMERS.SUMMONER}},t)}},{key:"_logError",value:function(e,t){console.log(o.bold.yellow(e),o.red("request"),o.bold.red("FAILED")+o.red("; "+t))}},{key:"setRegion",value:function(e){this.defaultRegion=D(e)?e:void 0,console.log(""+o.red("setRegion() by Kindred failed: "+o.yellow(e)+" is an invalid region.")),console.log(""+o.red("Try importing "+o.yellow("require('./dist/kindred-api').REGIONS")+" and using one of those values instead.")),process.exit(1)}},{key:"getChamps",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._championRequest({endUrl:"champions",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getChamp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.championID,r=arguments[1];return Number.isInteger(n)||Number.isInteger(i)?this._championRequest({endUrl:"champions/"+(n||i),region:t},r):this._logError(this.getChamp.name,"required params "+o.yellow("`id/championID` (int)")+" not passed in")}},{key:"getChampMastery",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=void 0===t?this.defaultRegion:t,i=e.playerID,r=e.championID,s=e.options,a=arguments[1];return Number.isInteger(i)&&Number.isInteger(r)?this._championMasteryRequest({endUrl:"champion-masteries/by-summoner/"+i+"/by-champion/"+r,region:n,options:s},a):this._logError(this.getChampMastery.name,"required params "+o.yellow("`playerID` (int) AND `championID` (int)")+" not passed in")}},{key:"getChampMasteries",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=void 0===n?this.defaultRegion:n,r=t.id,s=t.summonerID,a=t.playerID,u=t.name,l=t.options,m=arguments[1];return Number.isInteger(r||s||a)?this._championMasteryRequest({endUrl:"champion-masteries/by-summoner/"+(r||s||a),region:i,options:l},m):"object"===g(arguments[0])&&"string"==typeof u?new Promise(function(t,n){return e.getSummoner({name:u,region:i},function(r,s){return r?void(m?m(r):n(r)):t(e._championMasteryRequest({endUrl:"champion-masteries/by-summoner/"+s.id,region:i},m))})}):this._logError(this.getChampMasteries.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (str)")+" not passed in")}},{key:"getTotalChampMasteryScore",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=void 0===n?this.defaultRegion:n,r=t.id,s=t.summonerID,a=t.playerID,u=t.name,l=t.options,m=arguments[1];return Number.isInteger(r||s||a)?this._championMasteryRequest({endUrl:"scores/by-summoner/"+(r||s||a),region:i,options:l},m):"object"===g(arguments[0])&&"string"==typeof u?new Promise(function(t,n){return e.getSummoner({name:u,region:i},function(r,s){return r?void(m?m(r):n(r)):t(e._championMasteryRequest({endUrl:"scores/by-summoner/"+s.id,region:i},m))})}):this._logError(this.getTotalChampMasteryScore.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (str)")+" not passed in")}},{key:"getTopChamps",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=void 0===n?this.defaultRegion:n,r=t.id,s=t.summonerID,a=t.playerID,u=t.name,l=t.options,m=arguments[1];if(Number.isInteger(r||s||a)){var h=S[b[i]];return this._championMasteryRequest({endUrl:h+"/player/"+(r||s||a)+"/topchampions",region:i,options:l},m)}if("object"===g(arguments[0])&&"string"==typeof u){var d=S[b[i]];return new Promise(function(t,n){return e.getSummoner({name:u,region:i},function(r,s){return r?void(m?m(r):n(r)):t(e._championMasteryRequest({endUrl:d+"/player/"+s.id+"/topchampions",region:i},m))})})}return this._logError(this.getTopChamps.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (str)")+" not passed in")}},{key:"getCurrentGame",value:function(){var e=this,t=arguments,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=n.region,r=void 0===i?this.defaultRegion:i,s=n.id,a=n.summonerID,u=n.playerID,l=n.name,m=arguments[1];S[b[r]];return Number.isInteger(s||a||u)?this._spectatorRequest({endUrl:"active-games/by-summoner/"+(s||a||u),region:r},m=r?m:arguments[0]):"object"===g(arguments[0])&&"string"==typeof l?new Promise(function(n,i){return e.getSummoner({name:l,region:r},function(s,o){return s?void(m?m(s):i(s)):n(e._spectatorRequest({endUrl:"active-games/by-summoner/"+o.id,region:r},m=r?m:t[0]))})}):this._logError(this.getCurrentGame.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getFeaturedGames",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._spectatorRequest({endUrl:"featured-games",region:t},n=t?n:arguments[0])}},{key:"getRecentGames",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.id,r=t.summonerID,s=t.playerID,a=t.name,u=arguments[1];return Number.isInteger(i||r||s)?this._gameRequest({endUrl:"by-summoner/"+(i||r||s)+"/recent",region:n},u):"object"===g(arguments[0])&&"string"==typeof a?new Promise(function(t,i){return e.getSummoner({name:a,region:n},function(r,s){return r?void(u?u(r):i(r)):t(e._gameRequest({endUrl:"by-summoner/"+s.id+"/recent",region:n},u))})}):this._logError(this.getRecentGames.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getLeagues",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=t.options,c=arguments[1];return T.int(i||r||s)?this._leagueRequest({endUrl:"by-summoner/"+(i||r||s).join(","),region:n,options:d},c):Number.isInteger(i||a||r||u||s||l)?this._leagueRequest({endUrl:"by-summoner/"+(i||a||r||u||s||l),region:n,options:d},c):T.string(m)?new Promise(function(t,i){return e.getSummoners({names:m,region:n},function(r,s){if(r)return void(c?c(r):i(r));var o=m.map(function(e){return s.id});return t(e._leagueRequest({endUrl:"by-summoner/"+o.join(","),region:n,options:d},c))})}):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?this._logError(this.getLeagues.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):new Promise(function(t,i){return e.getSummoner({name:m||h,region:n},function(r,s){return r?void(c?c(r):i(r)):t(e._leagueRequest({endUrl:"by-summoner/"+s.id,region:n,options:d},c))})})}},{key:"getLeagueEntries",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=arguments[1];return T.int(i||r||s)?this._leagueRequest({endUrl:"by-summoner/"+(i||r||s).join(",")+"/entry",region:n},d):Number.isInteger(i||a||r||u||s||l)?this._leagueRequest({endUrl:"by-summoner/"+(i||a||r||u||s||l)+"/entry",region:n},d):T.string(m)?new Promise(function(t,i){return e.getSummoners({names:m,region:n},function(r,s){if(r)return void(d?d(r):i(r));var o=m.map(function(e){return s.id});return t(e._leagueRequest({endUrl:"by-summoner/"+o.join(",")+"/entry",region:n},d))})}):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?void this._logError(this.getLeagueEntries.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):new Promise(function(t,i){return e.getSummoner({name:m||h,region:n},function(r,s){return r?void(d?d(r):i(r)):t(e._leagueRequest({endUrl:"by-summoner/"+s.id+"/entry",region:n},d))})})}},{key:"getChallengers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=void 0===n?{type:"RANKED_SOLO_5x5"}:n,r=arguments[1];return this._leagueRequest({endUrl:"challenger",region:t,options:i},r=2===arguments.length?r:arguments[0])}},{key:"getMasters",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=void 0===n?{type:"RANKED_SOLO_5x5"}:n,r=arguments[1];return this._leagueRequest({endUrl:"master",region:t,options:i},r=2===arguments.length?r:arguments[0])}},{key:"getChampionList",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"champions",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getChampion",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.championID,r=e.options,s=arguments[1];return Number.isInteger(n||i)?this._staticRequest({endUrl:"champions/"+(n||i),region:t,options:r},s):this._logError(this.getChampion.name,"required params "+o.yellow("`id/championID` (int)")+" not passed in")}},{key:"getItems",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"items",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getItem",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.itemID,r=e.options,s=arguments[1];return Number.isInteger(n||i)?this._staticRequest({endUrl:"items/"+(n||i),region:t,options:r},s):this._logError(this.getItem.name,"required params "+o.yellow("`id/itemID` (int)")+" not passed in")}},{key:"getLanguageStrings",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"language-strings",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getLanguages",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._staticRequest({endUrl:"languages",region:t},n=t?n:arguments[0])}},{key:"getMapData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"maps",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getMasteryList",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"masteries",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getMastery",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.masteryID,r=e.options,s=arguments[1];return Number.isInteger(n||i)?this._staticRequest({endUrl:"masteries/"+(n||i),region:t,options:r},s):this._logError(this.getMastery.name,"required params "+o.yellow("`id/masteryID` (int)")+" not passed in")}},{key:"getRealmData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._staticRequest({endUrl:"realms",region:t},n=t?n:arguments[0])}},{key:"getRuneList",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"runes",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getRune",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.runeID,r=e.options,s=arguments[1];return Number.isInteger(n||i)?this._staticRequest({endUrl:"runes/"+(n||i),region:t,options:r},s):this._logError(this.getRune.name,"required params "+o.yellow("`id/runeID` (int)")+" not passed in")}},{key:"getSummonerSpells",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"summoner-spells",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getSummonerSpell",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.spellID,r=e.summonerSpellID,s=e.options,a=arguments[1];return Number.isInteger(n||i||r)?this._staticRequest({endUrl:"summoner-spells/"+(n||i||r),region:t,options:s},a):this._logError(this.getSummonerSpell.name,"required params "+o.yellow("`id/spellID/summonerSpellID` (int)")+" not passed in")}},{key:"getVersionData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.options,i=arguments[1];return this._staticRequest({endUrl:"versions",region:t,options:n},i=2===arguments.length?i:arguments[0])}},{key:"getShardStatus",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=arguments[1];return this._statusRequest({endUrl:"shard-data",region:t},n=t?n:arguments[0])}},{key:"getMatch",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.matchID,r=e.options,s=void 0===r?{includeTimeline:!0}:r,a=arguments[1];return Number.isInteger(n||i)?this._matchRequest({endUrl:""+(n||i),region:t,options:s},a):this._logError(this.getMatch.name,"required params "+o.yellow("`id/matchID` (int)")+" not passed in")}},{key:"getMatchList",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.id,r=t.summonerID,s=t.playerID,a=t.name,u=t.options,l=void 0===u?{rankedQueues:"TEAM_BUILDER_RANKED_SOLO"}:u,m=arguments[1];return Number.isInteger(i||r||s)?this._matchListRequest({endUrl:""+(i||r||s),region:n,options:l},m):"object"===g(arguments[0])&&"string"==typeof a?new Promise(function(t,i){return e.getSummoner({name:a,region:n},function(r,s){return r?void(m?m(r):i(r)):t(e._matchListRequest({endUrl:""+s.id,region:n,options:l},m))})}):this._logError(this.getMatchList.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (str)")+" not passed in")}},{key:"getRunes",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=arguments[1];return T.int(i||r||s)?this._runesMasteriesRequest({endUrl:(i||r||s).join()+"/runes",region:n},d):Number.isInteger(i||a||r||u||s||l)?this._runesMasteriesRequest({endUrl:"runes/by-summoner/"+(i||a||r||u||s||l),region:n},d):T.string(m)?new Promise(function(t,i){return e.getSummoners({names:m,region:n},function(r,s){if(r)return void(d?d(r):i(r));var o=m.map(function(e){return s.id});return t(e._runesMasteriesRequest({endUrl:o.join(",")+"/runes",region:n},d))})}):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?this._logError(this.getRunes.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):new Promise(function(t,i){return e.getSummoner({name:m||h,region:n},function(r,s){return r?void(d?d(r):i(r)):t(e._runesMasteriesRequest({endUrl:"runes/by-summoner/"+s.id,region:n},d))})})}},{key:"getMasteries",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=arguments[1];return T.int(i||r||s)?this._runesMasteriesRequest({endUrl:(i||r||s).join()+"/masteries",region:n
},d):Number.isInteger(i||a||r||u||s||l)?this._runesMasteriesRequest({endUrl:"masteries/by-summoner/"+(i||a||r||u||s||l),region:n},d):T.string(m)?new Promise(function(t,i){return e.getSummoners({names:m,region:n},function(r,s){if(r)return void(d?d(r):i(r));var o=m.map(function(e){return s.id});return t(e._runesMasteriesRequest({endUrl:"masteries/"+o.join(","),region:n},d))})}):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?this._logError(this.getMasteries.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):new Promise(function(t,i){return e.getSummoner({name:m||h,region:n},function(r,s){return r?void(d?d(r):i(r)):t(e._runesMasteriesRequest({endUrl:"masteries/by-summoner/"+s.id,region:n},d))})})}},{key:"getRankedStats",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.id,r=t.summonerID,s=t.playerID,a=t.name,u=t.options,l=arguments[1];return Number.isInteger(i||r||s)?this._statsRequest({endUrl:(i||r||s)+"/ranked",region:n,options:u},l):"object"===g(arguments[0])&&"string"==typeof a?new Promise(function(t,i){return e.getSummoner({name:a,region:n},function(r,s){return r?void(l?l(r):i(r)):t(e._statsRequest({endUrl:s.id+"/ranked",region:n,options:u},l))})}):void this._logError(this.getRankedStats.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getStatsSummary",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.id,r=t.summonerID,s=t.playerID,a=t.name,u=t.options,l=arguments[1];return Number.isInteger(i||r||s)?this._statsRequest({endUrl:(i||r||s)+"/summary",region:n,options:u},l):"object"===g(arguments[0])&&"string"==typeof a?new Promise(function(t,i){return e.getSummoner({name:a,region:n},function(r,s){return r?void(l?l(r):i(r)):t(e._statsRequest({endUrl:s.id+"/summary",region:n,options:u},l))})}):void this._logError(this.getRankedStats.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getSummoners",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.region,i=t.ids,r=t.summonerIDs,s=t.playerIDs,a=t.id,u=t.summonerID,l=t.playerID,m=t.names,h=t.name,d=arguments[1];return T.int(i||r||s)?this._summonerRequest({endUrl:""+(i||r||s).join(","),region:n},d):Number.isInteger(i||a||r||u||s||l)?this._summonerRequest({endUrl:""+(i||a||r||u||s||l),region:n},d):T.string(m)?this._summonerRequest({endUrl:"by-name/"+m.map(function(t){return e._sanitizeName(t)}).join(","),region:n},d):"object"!==g(arguments[0])||"string"!=typeof m&&"string"!=typeof h?void this._logError(this.getSummoners.name,"required params "+o.yellow("`ids/summonerIDs/playerIDs` ([int]/int)")+", "+o.yellow("`id/summonerID/playerID` (int)")+", "+o.yellow("`names` ([str]/str)")+", or "+o.yellow("`name` (str)")+" not passed in"):this._summonerRequest({endUrl:"by-name/"+this._sanitizeName(m||h),region:n},d)}},{key:"getSummoner",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.summonerID,r=e.playerID,s=e.name,a=arguments[1];return Number.isInteger(n||i||r)?this.getSummoners({region:t,ids:[n||i||r]},a):"object"===g(arguments[0])&&"string"==typeof s?this.getSummoners({region:t,names:[s]},a):this._logError(this.getSummoner.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" or "+o.yellow("`name` (string)")+" not passed in")}},{key:"getSummonerNames",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.ids,i=e.summonerIDs,r=e.playerIDs,s=e.id,a=e.summonerID,u=e.playerID,l=arguments[1];return T.int(n||i||r)?this._summonerRequest({endUrl:(n||i||r).join(",")+"/name",region:t},l):Number.isInteger(n||s||i||a||r||u)?this._summonerRequest({endUrl:(n||s||i||a||r||u)+"/name",region:t},l):void this._logError(this.getSummonerNames.name,"required params "+o.yellow("required params `ids/summonerIDs/playerIDs` ([int]/int)")+" or "+o.yellow("`id/summonerID/playerID` (int)")+" not passed in")}},{key:"getSummonerName",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.region,n=e.id,i=e.summonerID,r=e.playerID,s=arguments[1];if(Number.isInteger(n))return this.getSummonerNames({region:t,id:n||i||r},s);this._logError(this.getSummonerName.name,"required params "+o.yellow("`id/summonerID/playerID` (int)")+" not passed in")}}]),e}(),L={Kindred:O,REGIONS:I,LIMITS:f,TIME_CONSTANTS:v,CACHE_TYPES:_,QuickStart:l,print:m};e.exports=L});
{
"name": "kindred-api",
"version": "1.3.9",
"version": "1.4.0",
"description": "Kindred is a thin Node.js wrapper on top of Riot Games API for League of Legends",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -88,3 +88,3 @@ # Kindred

* getTotalChampMasteryScore({ region = this.defaultRegion, id/summonerID/playerID (int), name (string), options (object) }, cb)
* Namespaced Functions: *ChampionMastery.getTotalChampMasteryScore, ChampionMastery.getTotalScore, ChampionMastery.totalScore, ChampionMastery.total*
* Namespaced Functions: *ChampionMastery.getTotalChampMasteryScore, ChampionMastery.getTotalScore, ChampionMastery.totalScore, ChampionMastery.total, ChampionMastery.score*
* Example 1: ```k.ChampionMastery.totalScore({ id: 20026563 }, rprint)```

@@ -182,4 +182,4 @@ 4. **/championmastery/location/{location}/player/{playerId}/topchampions**

* Retrieve map data. (REST)
* getMap({ region, options (object) }, cb)
* Namespaced Functions: *Static.getMap, Static.map*
* getMapData({ region, options (object) }, cb)
* Namespaced Functions: *Static.getMapData, Static.mapData, Static.map, Static.maps*
8. **/api/lol/static-data/{region}/v1.2/mastery**

@@ -186,0 +186,0 @@ * Retrieve mastery list. (REST)

@@ -16,2 +16,3 @@ import cacheTimers from './cache-timers'

RUNES_MASTERIES: cacheTimers.WEEK,
SPECTATOR: cacheTimers.NONE,
STATS: cacheTimers.HOUR,

@@ -18,0 +19,0 @@ SUMMONER: cacheTimers.DAY

@@ -0,3 +1,5 @@

/* This will be removed once all the endpoints are implemented by Riot. */
const versions = {
'CHAMPION': 1.2,
'CHAMPION': 3,
'CHAMPION_MASTERY': 3,
'CURRENT_GAME': 1.0,

@@ -7,11 +9,12 @@ 'FEATURED_GAMES': 1.0,

'LEAGUE': 2.5,
'STATIC_DATA': 1.2,
'STATUS': 1.0,
'STATIC_DATA': 3,
'STATUS': 3,
'MATCH': 2.2,
'MATCH_LIST': 2.2,
'RUNES_MASTERIES': 1.4,
'RUNES_MASTERIES': 3,
'SPECTATOR': 3,
'STATS': 1.3,
'SUMMONER': 1.4
'SUMMONER': 3
}
export default versions

@@ -8,5 +8,5 @@ const chalk = require('chalk')

const colorizeStatusMessage = statusCode => {
if (statusCode >= statusCodeBisector[0] && statusCode <= statusCodeBisector[1])
if (statusCode >= statusCodeBisector[0] && statusCode < statusCodeBisector[1])
return chalk.green(statusCode)
else if (statusCode >= statusCodeBisector[1] && statusCode <= statusCodeBisector[2])
else if (statusCode >= statusCodeBisector[1] && statusCode < statusCodeBisector[2])
return chalk.red(`${statusCode} ${getResponseMessage(statusCode)}`)

@@ -13,0 +13,0 @@ else

@@ -10,2 +10,3 @@ const request = require('request')

import ENDPOINTS_PREFIXES from './constants/endpoints-prefixes'
import TIME_CONSTANTS from './cache/constants/cache-timers'

@@ -120,2 +121,3 @@ import CACHE_TIMERS from './cache/constants/endpoint-cache-timers'

total: this.getTotalChampMasteryScore.bind(this),
score: this.getTotalChampMasteryScore.bind(this),

@@ -177,4 +179,6 @@ getTopChampions: this.getTopChamps.bind(this),

getMap: this.getMap.bind(this),
map: this.getMap.bind(this),
getMapData: this.getMapData.bind(this),
mapData: this.getMapData.bind(this),
map: this.getMapData.bind(this),
maps: this.getMapData.bind(this),

@@ -216,7 +220,2 @@ getMasteries: this.getMasteryList.bind(this),

get: this.getShardStatus.bind(this),
getShardList: this.getShardList.bind(this),
getShards: this.getShardList.bind(this),
getAll: this.getShardList.bind(this),
all: this.getShardList.bind(this)
}

@@ -298,4 +297,14 @@

const mid = staticReq ? '' : `${region}/`
const prefix = !status && !observerMode && !championMastery ? `api/lol/${mid}` : ''
return `https://${region}.api.riotgames.com/${prefix}${encodeURI(query)}`
const oldPrefix = !status && !observerMode && !championMastery ? `api/lol/${mid}` : ''
const prefix = `lol/`// `api/lol/${mid}`
const base = 'api.riotgames.com' // future: api.pvp.net
// console.log(`https://${PLATFORM_IDS[REGIONS_BACK[region]].toLowerCase()}.${base}/${prefix}${encodeURI(query)}`)
const oldUrl = `https://${region}.api.riotgames.com/${oldPrefix}${encodeURI(query)}`
const newUrl = `https://${PLATFORM_IDS[REGIONS_BACK[region]].toLowerCase()}.${base}/${prefix}${encodeURI(query)}`
/* TODO: Small hack. Leave here until Riot has implemented all endpoints. */
if (newUrl.lastIndexOf('v3') == -1)
return oldUrl
return newUrl
}

@@ -313,3 +322,3 @@

const proxy = staticReq ? 'global' : region
for (const key of Object.keys(options)) {

@@ -428,24 +437,5 @@ if (Array.isArray(options[key])) {

_observerRequest({ endUrl, region, cacheParams }, cb) {
return this._baseRequest({
endUrl: `observer-mode/rest/${endUrl}`,
observerMode: true,
region,
cacheParams
}, cb)
}
_championRequest({ endUrl, region, options }, cb) {
return this._baseRequest({
endUrl: `v${VERSIONS.CHAMPION}/${endUrl}`,
region, options,
cacheParams: {
ttl: this.CACHE_TIMERS.CHAMPION
}
}, cb)
}
_championMasteryRequest({ endUrl, region, options }, cb) {
return this._baseRequest({
endUrl: `championmastery/location/${endUrl}`, region, options,
endUrl: `${ENDPOINTS_PREFIXES.CHAMPION_MASTERY}/v${VERSIONS.CHAMPION}/${endUrl}`, region, options,
championMastery: true,

@@ -458,8 +448,8 @@ cacheParams: {

_currentGameRequest({ endUrl, region, platformId }, cb) {
return this._observerRequest({
endUrl: `consumer/getSpectatorGameInfo/${platformId}/${endUrl}`,
_spectatorRequest({ endUrl, region }, cb) {
return this._baseRequest({
endUrl: `${ENDPOINTS_PREFIXES.SPECTATOR}/v${VERSIONS.SPECTATOR}/${endUrl}`,
region,
cacheParams: {
ttl: this.CACHE_TIMERS.CURRENT_GAME
ttl: this.CACHE_TIMERS.SPECTATOR
}

@@ -469,16 +459,6 @@ }, cb)

_featuredGamesRequest({ endUrl, region, platformId }, cb) {
return this._observerRequest({
endUrl: `${endUrl}`,
region,
cacheParams: {
ttl: this.CACHE_TIMERS.FEATURED_GAMES
}
}, cb)
}
_staticRequest({ endUrl, region = this.defaultRegion, options }, cb) {
return this._baseRequest({
endUrl: `static-data/${region}/v${VERSIONS.STATIC_DATA}/${endUrl}`,
staticReq: true,
endUrl: `${ENDPOINTS_PREFIXES.STATIC_DATA}/v${VERSIONS.STATIC_DATA}/${endUrl}`,
// staticReq: true,
region,

@@ -494,3 +474,3 @@ options,

return this._baseRequest({
endUrl: `lol/status/v${VERSIONS.STATUS}/${endUrl}`,
endUrl: `${ENDPOINTS_PREFIXES.STATUS}/v${VERSIONS.STATUS}/${endUrl}`,
status: true,

@@ -541,4 +521,4 @@ options,

_runesMasteriesRequest({ endUrl, region }, cb) {
return this._summonerRequest({
endUrl, region,
return this._baseRequest({
endUrl: `${ENDPOINTS_PREFIXES.RUNES_MASTERIES}/v${VERSIONS.RUNES_MASTERIES}/${endUrl}`, region,
cacheParams: {

@@ -561,3 +541,3 @@ ttl: this.CACHE_TIMERS.RUNES_MASTERIES

return this._baseRequest({
endUrl: `v${VERSIONS.SUMMONER}/summoner/${endUrl}`, region,
endUrl: `${ENDPOINTS_PREFIXES.SUMMONER}/v${VERSIONS.SUMMONER}/summoners/${endUrl}`, region,
cacheParams: {

@@ -586,3 +566,3 @@ ttl: this.CACHE_TIMERS.SUMMONER

return this._championRequest({
endUrl: 'champion', region, options
endUrl: 'champions', region, options
}, cb = arguments.length === 2 ? cb : arguments[0])

@@ -597,3 +577,3 @@ }

return this._championRequest({
endUrl: `champion/${id || championID}`,
endUrl: `champions/${id || championID}`,
region

@@ -616,6 +596,4 @@ }, cb)

if (Number.isInteger(playerID) && Number.isInteger(championID)) {
const location = PLATFORM_IDS[REGIONS_BACK[region]]
return this._championMasteryRequest({
endUrl: `${location}/player/${playerID}/champion/${championID}`, region, options
endUrl: `champion-masteries/by-summoner/${playerID}/by-champion/${championID}`, region, options
}, cb)

@@ -637,10 +615,6 @@ } else {

if (Number.isInteger(id || summonerID || playerID)) {
const location = PLATFORM_IDS[REGIONS_BACK[region]]
return this._championMasteryRequest({
endUrl: `${location}/player/${id || summonerID || playerID}/champions`, region, options
endUrl: `champion-masteries/by-summoner/${id || summonerID || playerID}`, region, options
}, cb)
} else if (typeof arguments[0] === 'object' && typeof name === 'string') {
const location = PLATFORM_IDS[REGIONS_BACK[region]]
return new Promise((resolve, reject) => {

@@ -650,3 +624,3 @@ return this.getSummoner({ name, region }, (err, data) => {

return resolve(this._championMasteryRequest({
endUrl: `${location}/player/${data[this._sanitizeName(name)].id}/champions`,
endUrl: `champion-masteries/by-summoner/${data.id}`,
region

@@ -671,10 +645,6 @@ }, cb))

if (Number.isInteger(id || summonerID || playerID)) {
const location = PLATFORM_IDS[REGIONS_BACK[region]]
return this._championMasteryRequest({
endUrl: `${location}/player/${id || summonerID || playerID}/score`, region, options
endUrl: `scores/by-summoner/${id || summonerID || playerID}`, region, options
}, cb)
} else if (typeof arguments[0] === 'object' && typeof name === 'string') {
const location = PLATFORM_IDS[REGIONS_BACK[region]]
return new Promise((resolve, reject) => {

@@ -684,3 +654,3 @@ return this.getSummoner({ name, region }, (err, data) => {

return resolve(this._championMasteryRequest({
endUrl: `${location}/player/${data[this._sanitizeName(name)].id}/score`,
endUrl: `scores/by-summoner/${data.id}`,
region

@@ -717,3 +687,3 @@ }, cb))

return resolve(this._championMasteryRequest({
endUrl: `${location}/player/${data[this._sanitizeName(name)].id}/topchampions`,
endUrl: `${location}/player/${data.id}/topchampions`,
region

@@ -740,6 +710,6 @@ }, cb))

if (Number.isInteger(id || summonerID || playerID)) {
return this._currentGameRequest({
endUrl: `${id || summonerID || playerID}`,
platformId, region
}, cb)
return this._spectatorRequest({
endUrl: `active-games/by-summoner/${id || summonerID || playerID}`,
region
}, cb = region ? cb: arguments[0])
} else if (typeof arguments[0] === 'object' && typeof name === 'string') {

@@ -749,5 +719,6 @@ return new Promise((resolve, reject) => {

if (err) { cb ? cb(err) : reject(err); return }
return resolve(this._currentGameRequest({
endUrl: `${data[this._sanitizeName(name)].id}`, platformId, region
}, cb))
return resolve(this._spectatorRequest({
endUrl: `active-games/by-summoner/${data.id}`,
region
}, cb = region ? cb: arguments[0]))
})

@@ -765,6 +736,6 @@ })

getFeaturedGames({ region } = {}, cb) {
return this._featuredGamesRequest({
endUrl: 'featured',
return this._spectatorRequest({
endUrl: 'featured-games',
region
}, cb = region ? cb : arguments[0])
}, cb = region ? cb: arguments[0])
}

@@ -788,3 +759,3 @@

return resolve(this._gameRequest({
endUrl: `by-summoner/${data[this._sanitizeName(name)].id}/recent`, region
endUrl: `by-summoner/${data.id}/recent`, region
}, cb))

@@ -824,3 +795,3 @@ })

if (err) { cb ? cb(err) : reject(err); return }
const ids = names.map(name => data[this._sanitizeName(name)].id)
const ids = names.map(name => data.id)

@@ -838,3 +809,3 @@ return resolve(this._leagueRequest({

return resolve(this._leagueRequest({
endUrl: `by-summoner/${data[this._sanitizeName(names || name)].id}`,
endUrl: `by-summoner/${data.id}`,
region, options

@@ -873,3 +844,3 @@ }, cb))

if (err) { cb ? cb(err) : reject(err); return }
const ids = names.map(name => data[this._sanitizeName(name)].id)
const ids = names.map(name => data.id)

@@ -887,3 +858,3 @@ return resolve(this._leagueRequest({

return resolve(this._leagueRequest({
endUrl: `by-summoner/${data[this._sanitizeName(names || name)].id}/entry`,
endUrl: `by-summoner/${data.id}/entry`,
region

@@ -921,3 +892,3 @@ }, cb))

getChampionList({ region, options } = {}, cb) {
return this._staticRequest({ endUrl: 'champion', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
return this._staticRequest({ endUrl: 'champions', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
}

@@ -931,3 +902,3 @@

if (Number.isInteger(id || championID)) {
return this._staticRequest({ endUrl: `champion/${id || championID}`, region, options }, cb)
return this._staticRequest({ endUrl: `champions/${id || championID}`, region, options }, cb)
} else {

@@ -942,3 +913,3 @@ return this._logError(

getItems({ region, options } = {}, cb) {
return this._staticRequest({ endUrl: 'item', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
return this._staticRequest({ endUrl: 'items', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
}

@@ -952,3 +923,3 @@

if (Number.isInteger(id || itemID)) {
return this._staticRequest({ endUrl: `item/${id || itemID}`, region, options }, cb)
return this._staticRequest({ endUrl: `items/${id || itemID}`, region, options }, cb)
} else {

@@ -970,8 +941,8 @@ return this._logError(

getMap({ region, options } = {}, cb) {
return this._staticRequest({ endUrl: 'map', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
getMapData({ region, options } = {}, cb) {
return this._staticRequest({ endUrl: 'maps', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
}
getMasteryList({ region, options } = {}, cb) {
return this._staticRequest({ endUrl: 'mastery', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
return this._staticRequest({ endUrl: 'masteries', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
}

@@ -986,3 +957,3 @@

return this._staticRequest({
endUrl: `mastery/${id || masteryID}`,
endUrl: `masteries/${id || masteryID}`,
region, options

@@ -999,7 +970,7 @@ }, cb)

getRealmData({ region } = {}, cb) {
return this._staticRequest({ endUrl: 'realm', region }, cb = region ? cb : arguments[0])
return this._staticRequest({ endUrl: 'realms', region }, cb = region ? cb : arguments[0])
}
getRuneList({ region, options } = {}, cb) {
return this._staticRequest({ endUrl: 'rune', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
return this._staticRequest({ endUrl: 'runes', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
}

@@ -1013,3 +984,3 @@

if (Number.isInteger(id || runeID)) {
return this._staticRequest({ endUrl: `rune/${id || runeID}`, region, options }, cb)
return this._staticRequest({ endUrl: `runes/${id || runeID}`, region, options }, cb)
} else {

@@ -1024,3 +995,3 @@ return this._logError(

getSummonerSpells({ region, options } = {}, cb) {
return this._staticRequest({ endUrl: 'summoner-spell', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
return this._staticRequest({ endUrl: 'summoner-spells', region, options }, cb = arguments.length === 2 ? cb : arguments[0])
}

@@ -1035,3 +1006,3 @@

return this._staticRequest({
endUrl: `summoner-spell/${id || spellID || summonerSpellID}`,
endUrl: `summoner-spells/${id || spellID || summonerSpellID}`,
region, options

@@ -1053,9 +1024,5 @@ }, cb)

getShardStatus({ region } = {}, cb) {
return this._statusRequest({ endUrl: 'shard', region }, cb = region ? cb : arguments[0])
return this._statusRequest({ endUrl: 'shard-data', region }, cb = region ? cb : arguments[0])
}
getShardList({ region } = {}, cb) {
return this._statusRequest({ endUrl: 'shards', region }, cb = region ? cb : arguments[0])
}
/* MATCH-V2.2 */

@@ -1094,3 +1061,3 @@ getMatch({

return resolve(this._matchListRequest({
endUrl: `${data[this._sanitizeName(name)].id}`,
endUrl: `${data.id}`,
region, options

@@ -1123,3 +1090,3 @@ }, cb))

return this._runesMasteriesRequest({
endUrl: `${ids || id || summonerIDs || summonerID || playerIDs || playerID}/runes`,
endUrl: `runes/by-summoner/${ids || id || summonerIDs || summonerID || playerIDs || playerID}`,
region

@@ -1131,3 +1098,3 @@ }, cb)

if (err) { cb ? cb(err) : reject(err); return }
const ids = names.map(name => data[this._sanitizeName(name)].id)
const ids = names.map(name => data.id)

@@ -1145,3 +1112,3 @@ return resolve(this._runesMasteriesRequest({

return resolve(this._runesMasteriesRequest({
endUrl: `${data[this._sanitizeName(names || name)].id}/runes`,
endUrl: `runes/by-summoner/${data.id}`,
region

@@ -1173,3 +1140,3 @@ }, cb))

return this._runesMasteriesRequest({
endUrl: `${ids || id || summonerIDs || summonerID || playerIDs || playerID}/masteries`,
endUrl: `masteries/by-summoner/${ids || id || summonerIDs || summonerID || playerIDs || playerID}`,
region

@@ -1181,6 +1148,6 @@ }, cb)

if (err) { cb ? cb(err) : reject(err); return }
const ids = names.map(name => data[this._sanitizeName(name)].id)
const ids = names.map(name => data.id)
return resolve(this._runesMasteriesRequest({
endUrl: `${ids.join(',')}/masteries`,
endUrl: `masteries/${ids.join(',')}`,
region

@@ -1195,3 +1162,3 @@ }, cb))

return resolve(this._runesMasteriesRequest({
endUrl: `${data[this._sanitizeName(names || name)].id}/masteries`,
endUrl: `masteries/by-summoner/${data.id}`,
region

@@ -1226,3 +1193,3 @@ }, cb))

return resolve(this._statsRequest({
endUrl: `${data[this._sanitizeName(name)].id}/ranked`,
endUrl: `${data.id}/ranked`,
region, options

@@ -1256,3 +1223,3 @@ }, cb))

return resolve(this._statsRequest({
endUrl: `${data[this._sanitizeName(name)].id}/summary`,
endUrl: `${data.id}/summary`,
region, options

@@ -1371,3 +1338,2 @@ }, cb))

function print(err, data) {
console.log('myprint')
if (err) console.log(err)

@@ -1374,0 +1340,0 @@ else console.log(data)

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc