diff --git a/package-lock.json b/package-lock.json index f04348c..4f273bf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10938,9 +10938,9 @@ "dev": true }, "tslint": { - "version": "5.20.1", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.20.1.tgz", - "integrity": "sha512-EcMxhzCFt8k+/UP5r8waCf/lzmeSyVlqxqMEDQE7rWYiQky8KpIBz1JAoYXfROHrPZ1XXd43q8yQnULOLiBRQg==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.1.tgz", + "integrity": "sha512-kd6AQ/IgPRpLn6g5TozqzPdGNZ0q0jtXW4//hRcj10qLYBaa3mTUU2y2MCG+RXZm8Zx+KZi0eA+YCrMyNlF4UA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -10951,53 +10951,33 @@ "glob": "^7.1.1", "js-yaml": "^3.13.1", "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", + "mkdirp": "^0.5.3", "resolve": "^1.3.2", "semver": "^5.3.0", - "tslib": "^1.8.0", + "tslib": "^1.10.0", "tsutils": "^2.29.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, "commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } } } }, diff --git a/package.json b/package.json index b73a4b3..685adf9 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,7 @@ "source-map-loader": "^0.2.4", "style-loader": "^1.1.4", "ts-loader": "^6.2.1", - "tslint": "^5.20.1", + "tslint": "^6.1.1", "typescript": "^3.7.4", "url-loader": "^4.0.0", "webpack": "^4.41.5", diff --git a/src/api/GameList.ts b/src/api/GameList.ts index 3f43a72..6dd16ca 100644 --- a/src/api/GameList.ts +++ b/src/api/GameList.ts @@ -20,7 +20,7 @@ const gameIdToCategoriesPromises: Map> = new Map(); const gameIdToGameInfoMap: Map = new Map(); const gameIdToGameInfoPromises: Map> = new Map(); const gameAndCategoryToLeaderboardPromises: Map> = new Map(); -const gameAndCategoryToLeaderboardMap: Map>> = new Map(); +const gameAndCategoryToLeaderboardMap: Map[]> = new Map(); let gameListPromise: Option> = null; let platformListPromise: Option> = null; let regionListPromise: Option> = null; @@ -61,7 +61,7 @@ export function getRegions(): Map { return regionList; } -export function getLeaderboard(gameName: string, categoryName: string): Array> | undefined { +export function getLeaderboard(gameName: string, categoryName: string): Run[] | undefined { const key = JSON.stringify({ gameName, categoryName }); return gameAndCategoryToLeaderboardMap.get(key); } diff --git a/src/api/SpeedrunCom.ts b/src/api/SpeedrunCom.ts index 8731781..e104151 100644 --- a/src/api/SpeedrunCom.ts +++ b/src/api/SpeedrunCom.ts @@ -148,10 +148,10 @@ export interface Record { run: Run, } -export type PlayersNotEmbedded = Array; +export type PlayersNotEmbedded = (PlayerUserRef | PlayerGuest)[]; export interface PlayersEmbedded { - data: Array, + data: (PlayerUser | PlayerGuest)[], } export interface Run { @@ -314,7 +314,7 @@ async function executePaginatedRequest(uri: string): Promise> { return new Page(data as T[], next); } -export async function getGame(gameId: string, embeds?: Array<"variables">): Promise { +export async function getGame(gameId: string, embeds?: "variables"[]): Promise { const parameters = []; if (embeds !== undefined) { parameters.push(`embed=${embeds.join(",")}`); @@ -349,7 +349,7 @@ export async function getCategories(gameId: string): Promise { export async function getLeaderboard( gameId: string, categoryId: string, - embeds?: Array<"players">, + embeds?: "players"[], ): Promise { const parameters = []; if (embeds !== undefined) {