aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorFuwn <[email protected]>2023-12-23 16:46:56 -0800
committerFuwn <[email protected]>2023-12-23 16:46:56 -0800
commit14794dc3a0f2f870f8cfed437dfd148295be246d (patch)
tree5203c92250be822dbd9ff3f854d0b373511b14a0 /src/lib
parentrefactor(media): use options object (diff)
downloaddue.moe-14794dc3a0f2f870f8cfed437dfd148295be246d.tar.xz
due.moe-14794dc3a0f2f870f8cfed437dfd148295be246d.zip
feat(media): include all option
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/AniList/media.ts16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/lib/AniList/media.ts b/src/lib/AniList/media.ts
index b1ea2f11..52d7da85 100644
--- a/src/lib/AniList/media.ts
+++ b/src/lib/AniList/media.ts
@@ -135,22 +135,26 @@ const collectionQueryTemplate = (type: Type, userId: number, includeCompleted: b
interface CollectionOptions {
includeCompleted?: boolean;
forcePrune?: boolean;
+ all?: boolean;
}
interface NonNullCollectionOptions {
includeCompleted: boolean;
forcePrune: boolean;
+ all?: boolean;
}
const assignDefaultOptions = (options: CollectionOptions) => {
const nonNullOptions: NonNullCollectionOptions = {
includeCompleted: false,
- forcePrune: false
+ forcePrune: false,
+ all: false
};
if (options.includeCompleted !== undefined)
nonNullOptions.includeCompleted = options.includeCompleted;
if (options.forcePrune !== undefined) nonNullOptions.forcePrune = options.forcePrune;
+ if (options.all !== undefined) nonNullOptions.all = options.all;
return nonNullOptions;
};
@@ -209,14 +213,18 @@ export const mediaListCollection = async (
if (mediaCache === '')
if (type === Type.Anime)
anime.set(
- JSON.stringify(flattenLists(userIdResponse['data']['MediaListCollection']['lists']))
+ JSON.stringify(
+ flattenLists(userIdResponse['data']['MediaListCollection']['lists'], options.all)
+ )
);
else
manga.set(
- JSON.stringify(flattenLists(userIdResponse['data']['MediaListCollection']['lists']))
+ JSON.stringify(
+ flattenLists(userIdResponse['data']['MediaListCollection']['lists'], options.all)
+ )
);
- return flattenLists(userIdResponse['data']['MediaListCollection']['lists']);
+ return flattenLists(userIdResponse['data']['MediaListCollection']['lists'], options.all);
};
export const publicMediaListCollection = async (userId: number, type: Type): Promise<Media[]> =>