Start of pulling library from GraphQL
This commit is contained in:
parent
3f8c0432d2
commit
980e2726c5
@ -390,27 +390,18 @@ final class Model {
|
|||||||
|
|
||||||
private function getListCount(string $type, string $status = ''): int
|
private function getListCount(string $type, string $status = ''): int
|
||||||
{
|
{
|
||||||
$options = [
|
$args = [
|
||||||
'query' => [
|
'type' => strtoupper($type),
|
||||||
'filter' => [
|
'slug' => $this->getUsername()
|
||||||
'user_id' => $this->getUserId(),
|
|
||||||
'kind' => $type,
|
|
||||||
],
|
|
||||||
'page' => [
|
|
||||||
'limit' => 1
|
|
||||||
],
|
|
||||||
'sort' => '-updated_at'
|
|
||||||
]
|
|
||||||
];
|
];
|
||||||
|
if ($status !== '')
|
||||||
if ( ! empty($status))
|
|
||||||
{
|
{
|
||||||
$options['query']['filter']['status'] = $status;
|
$args['status'] = strtoupper($status);
|
||||||
}
|
}
|
||||||
|
|
||||||
$response = $this->requestBuilder->getRequest('library-entries', $options);
|
$res = $this->requestBuilder->runQuery('GetLibraryCount', $args);
|
||||||
|
|
||||||
return $response['meta']['count'];
|
return $res['data']['findProfileBySlug']['library']['all']['totalCount'];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
86
src/AnimeClient/API/Kitsu/Queries/GetLibraryAll.graphql
Normal file
86
src/AnimeClient/API/Kitsu/Queries/GetLibraryAll.graphql
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
query ($slug: String!, $type: media_type!, $status: [LibraryEntryStatus!]) {
|
||||||
|
findProfileBySlug(slug: $slug) {
|
||||||
|
library {
|
||||||
|
all(mediaType: $type, status: $status) {
|
||||||
|
# pageInfo {
|
||||||
|
# endCursor
|
||||||
|
# hasNextPage
|
||||||
|
# hasPreviousPage
|
||||||
|
# startCursor
|
||||||
|
# }
|
||||||
|
totalCount
|
||||||
|
nodes {
|
||||||
|
id
|
||||||
|
notes
|
||||||
|
nsfw
|
||||||
|
private
|
||||||
|
progress
|
||||||
|
progressedAt
|
||||||
|
rating
|
||||||
|
reconsumeCount
|
||||||
|
reconsuming
|
||||||
|
status
|
||||||
|
media {
|
||||||
|
id
|
||||||
|
ageRating
|
||||||
|
ageRatingGuide
|
||||||
|
categories {
|
||||||
|
nodes {
|
||||||
|
title
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mappings {
|
||||||
|
nodes {
|
||||||
|
externalId
|
||||||
|
externalSite
|
||||||
|
}
|
||||||
|
}
|
||||||
|
posterImage {
|
||||||
|
original {
|
||||||
|
height
|
||||||
|
name
|
||||||
|
url
|
||||||
|
width
|
||||||
|
}
|
||||||
|
views {
|
||||||
|
height
|
||||||
|
name
|
||||||
|
url
|
||||||
|
width
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sfw
|
||||||
|
slug
|
||||||
|
status
|
||||||
|
type
|
||||||
|
titles {
|
||||||
|
canonical
|
||||||
|
localized
|
||||||
|
alternatives
|
||||||
|
}
|
||||||
|
...on Anime {
|
||||||
|
episodeCount
|
||||||
|
streamingLinks {
|
||||||
|
nodes {
|
||||||
|
dubs
|
||||||
|
subs
|
||||||
|
regions
|
||||||
|
streamer {
|
||||||
|
id
|
||||||
|
siteName
|
||||||
|
}
|
||||||
|
url
|
||||||
|
}
|
||||||
|
}
|
||||||
|
subtype
|
||||||
|
}
|
||||||
|
...on Manga {
|
||||||
|
chapterCount
|
||||||
|
subtype
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
query ($slug: String!, $type: media_type!, $status: [LibraryEntryStatus!]) {
|
||||||
|
findProfileBySlug(slug: $slug) {
|
||||||
|
library {
|
||||||
|
all(mediaType: $type, status: $status) {
|
||||||
|
totalCount
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user