Skip to content

Commit

Permalink
feat: temp remove fetch from local cache
Browse files Browse the repository at this point in the history
  • Loading branch information
zamitto committed Oct 11, 2024
1 parent c802289 commit be08fb6
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 17 deletions.
13 changes: 13 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,19 @@ jobs:
- name: Check out Git repository
uses: actions/checkout@v4

- name: Cache node modules
id: cache-npm
uses: actions/cache@v3
env:
cache-name: cache-node-modules
with:
path: ~/.npm
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Install Node.js
uses: actions/setup-node@v4
with:
Expand Down
13 changes: 13 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,19 @@ jobs:
- name: Check out Git repository
uses: actions/checkout@v4

- name: Cache node modules
id: cache-npm
uses: actions/cache@v3
env:
cache-name: cache-node-modules
with:
path: ~/.npm
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Install Node.js
uses: actions/setup-node@v4
with:
Expand Down
19 changes: 6 additions & 13 deletions src/main/events/catalogue/get-game-achievements.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,25 +11,21 @@ import {
userPreferencesRepository,
} from "@main/repository";
import { getGameAchievementData } from "@main/services/achievements/get-game-achievement-data";
import { HydraApi, logger } from "@main/services";
import { HydraApi } from "@main/services";

const getAchievementLocalUser = async (shop: string, objectId: string) => {
const cachedAchievements = await gameAchievementRepository.findOne({
where: { objectId, shop },
});

const achievementsData: AchievementData[] = cachedAchievements?.achievements
? JSON.parse(cachedAchievements.achievements)
: await getGameAchievementData(objectId, shop);
const achievementsData = await getGameAchievementData(objectId, shop);

const unlockedAchievements = JSON.parse(
cachedAchievements?.unlockedAchievements || "[]"
) as UnlockedAchievement[];

return achievementsData
.map((achievementData) => {
logger.info("unclockedAchievements", unlockedAchievements);

const unlockedAchiementData = unlockedAchievements.find(
(localAchievement) => {
return (
Expand Down Expand Up @@ -77,13 +73,10 @@ const getAchievementsRemoteUser = async (
where: { id: 1 },
});

const cachedAchievements = await gameAchievementRepository.findOne({
where: { objectId, shop },
});

const achievementsData: AchievementData[] = cachedAchievements?.achievements
? JSON.parse(cachedAchievements.achievements)
: await getGameAchievementData(objectId, shop);
const achievementsData: AchievementData[] = await getGameAchievementData(
objectId,
shop
);

const unlockedAchievements = await HydraApi.get<RemoteUnlockedAchievement[]>(
`/users/${userId}/games/achievements`,
Expand Down
17 changes: 13 additions & 4 deletions src/main/services/achievements/get-game-achievement-data.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import {
userPreferencesRepository,
} from "@main/repository";
import { HydraApi } from "../hydra-api";
import { AchievementData } from "@types";

export const getGameAchievementData = async (
objectId: string,
Expand All @@ -12,13 +13,13 @@ export const getGameAchievementData = async (
where: { id: 1 },
});

return HydraApi.get("/games/achievements", {
return HydraApi.get<AchievementData[]>("/games/achievements", {
shop,
objectId,
language: userPreferences?.language || "en",
})
.then(async (achievements) => {
await gameAchievementRepository.upsert(
.then((achievements) => {
gameAchievementRepository.upsert(
{
objectId,
shop,
Expand All @@ -29,5 +30,13 @@ export const getGameAchievementData = async (

return achievements;
})
.catch(() => []);
.catch(() => {
return gameAchievementRepository
.findOne({
where: { objectId, shop },
})
.then((gameAchievements) => {
return JSON.parse(gameAchievements?.achievements || "[]");
});
});
};

0 comments on commit be08fb6

Please sign in to comment.