From f33b0d70ba7e5378b0d56e0580dda176db314889 Mon Sep 17 00:00:00 2001 From: schroda <50052685+schroda@users.noreply.github.com> Date: Tue, 9 Jul 2024 23:46:59 +0200 Subject: [PATCH] Read only inLibrary manga property from cache Changed to prevent same issue as in ab8cc918a77e55fa0548ad3afaa7ebf44cde2520 --- src/components/manga/useManageMangaLibraryState.tsx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/components/manga/useManageMangaLibraryState.tsx b/src/components/manga/useManageMangaLibraryState.tsx index c1aed2a1..35ad9e39 100644 --- a/src/components/manga/useManageMangaLibraryState.tsx +++ b/src/components/manga/useManageMangaLibraryState.tsx @@ -9,6 +9,7 @@ import { useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; +import gql from 'graphql-tag'; import { useCategorySelect } from '@/components/navbar/action/useCategorySelect.tsx'; import { requestManager } from '@/lib/requests/RequestManager.ts'; import { makeToast } from '@/components/util/Toast.tsx'; @@ -161,6 +162,15 @@ export const useManageMangaLibraryState = ( * * To work around this issue, the currently known in library state gets returned here */ - isInLibrary: Mangas.getFromCache(manga.id)?.inLibrary ?? isInLibrary, + isInLibrary: + Mangas.getFromCache( + manga.id, + gql` + fragment MangaInLibraryState on MangaType { + inLibrary + } + `, + 'MangaInLibraryState', + )?.inLibrary ?? isInLibrary, }; };