feat: cached archived ratings

This commit is contained in:
TrèsAbhi committed 2023-10-14 10:55:00 -05:00
1 parent 862445259e
commit 970ab9004e
2 files changed
+24 -4

No files matched your search

@@ -1,13 +1,31 @@
import { RatingsInfo } from '../../commands/ratings';
import { Region } from '../../constants/regions';
import { DATABASE_REPO } from '../database/getMidnightLeaderboard';
import { octokit } from '../github/octokit';
import throwError from '../node/throwError';
import { DATABASE_REPO } from '../../core/database/getMidnightLeaderboard';
import { octokit } from '../../core/github/octokit';
import throwError from '../../core/node/throwError';
const ARCHIVED_RATINGS_CACHE: Record<
Region,
Record<
number,
RatingsInfo & {
detail: undefined;
}
>
> = {
com: {},
eu: {},
asia: {},
};
export default async function getArchivedRatingsInfo(
season: number,
region: Region,
) {
if (ARCHIVED_RATINGS_CACHE[region][season]) {
return ARCHIVED_RATINGS_CACHE[region][season];
}
const { data } = await octokit.repos.getContent({
...DATABASE_REPO,
path: `${region}/ratings/${season}/info.json`,
@@ -21,5 +39,7 @@ export default async function getArchivedRatingsInfo(
detail: undefined;
};
ARCHIVED_RATINGS_CACHE[region][season] = jsonContent;
return jsonContent;
}
+1 -1
View File
@@ -7,11 +7,11 @@ import {
import { BlitzkriegRatingsLeaderboard } from '../../scripts/buildRatingsLeaderboard';
import { getAccountInfo } from '../_core/blitz/getAccountInfo';
import { getClanAccountInfo } from '../_core/blitz/getClanAccountInfo';
import getArchivedRatingsInfo from '../_core/blitzkrieg/getArchivedRatingsInfo';
import * as Leaderboard from '../components/Leaderboard';
import TitleBar from '../components/TitleBar';
import Wrapper from '../components/Wrapper';
import { REGION_NAMES_SHORT, Region } from '../constants/regions';
import getArchivedRatingsInfo from '../core/blitz/getArchivedRatingsInfo';
import getRatingsInfo from '../core/blitz/getRatingsInfo';
import regionToRegionSubdomain from '../core/blitz/regionToRegionSubdomain';
import getMidnightLeaderboard, {