diff --git a/src/AnimeClient/API/Anilist/schema.graphql b/src/AnimeClient/API/Anilist/schema.graphql index dd0295bb..a153ba61 100644 --- a/src/AnimeClient/API/Anilist/schema.graphql +++ b/src/AnimeClient/API/Anilist/schema.graphql @@ -187,7 +187,7 @@ type AiringProgression { watching: Int } -"Media Airing Schedule" +"Media Airing Schedule. NOTE: We only aim to guarantee that FUTURE airing data is present and accurate." type AiringSchedule { "The time the episode airs at" airingAt: Int! @@ -225,6 +225,10 @@ type AniChartUser { "A character that features in an anime or manga" type Character { + "The character's age. Note this is a string, not an int, it may contain further text and additional ages." + age: String + "The character's birth date" + dateOfBirth: FuzzyDate "A general description of the character" description( "Return the string in pre-parsed html instead of markdown" @@ -232,12 +236,16 @@ type Character { ): String "The amount of user's who have favourited the character" favourites: Int + "The character's gender. Usually Male, Female, or Non-binary but can be any string." + gender: String "The id of the character" id: Int! "Character images" image: CharacterImage "If the character is marked as favourite by the currently authenticated user" isFavourite: Boolean! + "If the character is blocked from being added to favourites" + isFavouriteBlocked: Boolean! "Media that includes the character" media( onList: Boolean, @@ -272,9 +280,13 @@ type CharacterEdge { id: Int "The media the character is in" media: [Media] + "Media specific character name" + name: String node: Character "The characters role in the media" role: CharacterRole + "The voice actors of the character with role date" + voiceActorRoles(language: StaffLanguage, sort: [StaffSort]): [StaffRoleType] "The voice actors of the character" voiceActors(language: StaffLanguage, sort: [StaffSort]): [Staff] } @@ -290,12 +302,16 @@ type CharacterImage { type CharacterName { "Other names the character might be referred to as" alternative: [String] + "Other names the character might be referred to as but are spoilers" + alternativeSpoiler: [String] "The character's given name" first: String - "The character's full name" + "The character's first and last name" full: String "The character's surname" last: String + "The character's middle name" + middle: String "The character's full name in their native language" native: String } @@ -544,6 +560,8 @@ type InternalPage { id_not: Int, "Filter by character id" id_not_in: [Int], + "Filter by character by if its their birthday today" + isBirthday: Boolean, "Filter by search query" search: String, "The order the results will be returned in" @@ -880,6 +898,8 @@ type InternalPage { id_not: Int, "Filter by the staff id" id_not_in: [Int], + "Filter by staff by if its their birthday today" + isBirthday: Boolean, "Filter by search query" search: String, "The order the results will be returned in" @@ -1155,10 +1175,14 @@ type Media { type MediaCharacter { "The characters in the media voiced by the parent actor" character: Character + "Media specific character name" + characterName: String + dubGroup: String "The id of the connection" id: Int "The characters role in the media" role: CharacterRole + roleNotes: String "The voice actor of the character" voiceActor: Staff } @@ -1183,10 +1207,14 @@ type MediaCoverImage { "Media connection edge" type MediaEdge { + "Media specific character name" + characterName: String "The characters role in the media" characterRole: CharacterRole "The characters in the media voiced by the parent actor" characters: [Character] + "Used for grouping roles where multiple dubs exist for the same language. Either dubbing company name or language variant." + dubGroup: String "The order the media should be displayed from the users favourites" favouriteOrder: Int "The id of the connection" @@ -1199,8 +1227,12 @@ type MediaEdge { "Provide 2 to use new version 2 of relation enum" version: Int ): MediaRelation + "Notes regarding the VA's role for the character" + roleNotes: String "The role of the staff member in the production of the media" staffRole: String + "The voice actors of the character with role date" + voiceActorRoles(language: StaffLanguage, sort: [StaffSort]): [StaffRoleType] "The voice actors of the character" voiceActors(language: StaffLanguage, sort: [StaffSort]): [Staff] } @@ -1391,12 +1423,15 @@ type MediaSubmissionComparison { type MediaSubmissionEdge { character: Character + characterName: String characterRole: CharacterRole characterSubmission: Character + dubGroup: String "The id of the direct submission" id: Int isMain: Boolean media: Media + roleNotes: String staff: Staff staffRole: String staffSubmission: Staff @@ -1817,6 +1852,8 @@ type Mutation { UpdateUser( "User's about/bio text" about: String, + "Minutes between activity for them to be merged together. 0 is Never, Above 2 weeks (20160 mins) is Always." + activityMergeTime: Int, "If the user should get notifications when a show they are watching aires" airingNotifications: Boolean, "The user's anime list options" @@ -1963,6 +2000,8 @@ type Page { id_not: Int, "Filter by character id" id_not_in: [Int], + "Filter by character by if its their birthday today" + isBirthday: Boolean, "Filter by search query" search: String, "The order the results will be returned in" @@ -2275,6 +2314,8 @@ type Page { id_not: Int, "Filter by the staff id" id_not_in: [Int], + "Filter by staff by if its their birthday today" + isBirthday: Boolean, "Filter by search query" search: String, "The order the results will be returned in" @@ -2472,6 +2513,8 @@ type Query { id_not: Int, "Filter by character id" id_not_in: [Int], + "Filter by character by if its their birthday today" + isBirthday: Boolean, "Filter by search query" search: String, "The order the results will be returned in" @@ -2857,6 +2900,8 @@ type Query { id_not: Int, "Filter by the staff id" id_not_in: [Int], + "Filter by staff by if its their birthday today" + isBirthday: Boolean, "Filter by search query" search: String, "The order the results will be returned in" @@ -3132,6 +3177,8 @@ type SiteTrendEdge { "Voice actors or production staff" type Staff { + "The person's age in years" + age: Int "Media the actor voiced characters in. (Same data as characters with media as node instead of characters)" characterMedia( onList: Boolean, @@ -3149,6 +3196,8 @@ type Staff { perPage: Int, sort: [CharacterSort] ): CharacterConnection + dateOfBirth: FuzzyDate + dateOfDeath: FuzzyDate "A general description of the staff member" description( "Return the string in pre-parsed html instead of markdown" @@ -3156,18 +3205,28 @@ type Staff { ): String "The amount of user's who have favourited the staff member" favourites: Int + "The staff's gender. Usually Male, Female, or Non-binary but can be any string." + gender: String + "The persons birthplace or hometown" + homeTown: String "The id of the staff member" id: Int! "The staff images" image: StaffImage "If the staff member is marked as favourite by the currently authenticated user" isFavourite: Boolean! - "The primary language of the staff member" - language: StaffLanguage + "If the staff member is blocked from being added to favourites" + isFavouriteBlocked: Boolean! + "The primary language the staff member dub's in" + language: StaffLanguage @deprecated(reason : "Replaced with languageV2") + "The primary language of the staff member. Current values: Japanese, English, Korean, Italian, Spanish, Portuguese, French, German, Hebrew, Hungarian, Chinese, Arabic, Filipino, Catalan" + languageV2: String "Notes for site moderators" modNotes: String "The names of the staff member" name: StaffName + "The person's primary occupations" + primaryOccupations: [String] "The url for the staff page on the AniList website" siteUrl: String "Staff member that the submission is referencing" @@ -3189,6 +3248,8 @@ type Staff { "Submitter for the submission" submitter: User updatedAt: Int @deprecated(reason : "No data available") + "[startYear, endYear] (If the 2nd value is not present staff is still active)" + yearsActive: [Int] } type StaffConnection { @@ -3222,14 +3283,26 @@ type StaffName { alternative: [String] "The person's given name" first: String - "The person's full name" + "The person's first and last name" full: String "The person's surname" last: String + "The person's middle name" + middle: String "The person's full name in their native language" native: String } +"Voice actor role for a character" +type StaffRoleType { + "Used for grouping roles where multiple dubs exist for the same language. Either dubbing company name or language variant." + dubGroup: String + "Notes regarding the VA's role for the character" + roleNotes: String + "The voice actors of the character" + voiceActor: Staff +} + "User's staff statistics" type StaffStats { amount: Int @@ -3679,6 +3752,8 @@ type UserModData { "A user's general options" type UserOptions { + "Minutes between activity for them to be merged together. 0 is Never, Above 2 weeks (20160 mins) is Always." + activityMergeTime: Int "Whether the user receives notifications when a show they are watching aires" airingNotifications: Boolean "Whether the user has enabled viewing of 18+ content" @@ -3871,6 +3946,8 @@ enum CharacterSort { FAVOURITES_DESC ID ID_DESC + "Order manually decided by moderators" + RELEVANCE ROLE ROLE_DESC SEARCH_MATCH @@ -4251,6 +4328,8 @@ enum StaffSort { ID_DESC LANGUAGE LANGUAGE_DESC + "Order manually decided by moderators" + RELEVANCE ROLE ROLE_DESC SEARCH_MATCH @@ -4363,10 +4442,14 @@ input AniChartHighlightInput { input CharacterNameInput { "Other names the character might be referred by" alternative: [String] + "Other names the character might be referred to as but are spoilers" + alternativeSpoiler: [String] "The character's given name" first: String "The character's surname" last: String + "The character's middle name" + middle: String "The character's full name in their native language" native: String } @@ -4433,6 +4516,8 @@ input StaffNameInput { first: String "The person's surname" last: String + "The person's middle name" + middle: String "The person's full name in their native language" native: String } diff --git a/src/AnimeClient/API/Kitsu/schema.graphql b/src/AnimeClient/API/Kitsu/schema.graphql index 16fe40de..49c62187 100644 --- a/src/AnimeClient/API/Kitsu/schema.graphql +++ b/src/AnimeClient/API/Kitsu/schema.graphql @@ -117,6 +117,8 @@ interface Media { ): MappingConnection! "The time of the next release of this media" nextRelease: ISO8601DateTime + "The country in which the media was primarily produced" + originalLocale: String "The poster image of this media" posterImage: Image! "The companies which helped to produce this media" @@ -318,6 +320,8 @@ type Anime implements Episodic & Media & WithTimestamps { ): MappingConnection! "The time of the next release of this media" nextRelease: ISO8601DateTime + "The country in which the media was primarily produced" + originalLocale: String "The poster image of this media" posterImage: Image! "The companies which helped to produce this media" @@ -648,7 +652,7 @@ type Comment implements WithTimestamps { contentFormatted: String! createdAt: ISO8601DateTime! id: ID! - "Users who liked this comment." + "Users who liked this comment" likes( "Returns the elements in the list that come after the specified cursor." after: String, @@ -657,13 +661,14 @@ type Comment implements WithTimestamps { "Returns the first _n_ elements from the list." first: Int, "Returns the last _n_ elements from the list." - last: Int + last: Int, + sort: [CommentLikeSortOption] ): ProfileConnection! "The parent comment if this comment was a reply to another." parent: Comment "The post that this comment is attached to." post: Post! - "All replies to a specific comment." + "Replies to this comment" replies( "Returns the elements in the list that come after the specified cursor." after: String, @@ -672,7 +677,8 @@ type Comment implements WithTimestamps { "Returns the first _n_ elements from the list." first: Int, "Returns the last _n_ elements from the list." - last: Int + last: Int, + sort: [CommentSortOption] ): CommentConnection! updatedAt: ISO8601DateTime! } @@ -1197,6 +1203,8 @@ type Manga implements Media & WithTimestamps { ): MappingConnection! "The time of the next release of this media" nextRelease: ISO8601DateTime + "The country in which the media was primarily produced" + originalLocale: String "The poster image of this media" posterImage: Image! "The companies which helped to produce this media" @@ -1624,7 +1632,7 @@ type Person implements WithTimestamps { type Post implements WithTimestamps { "The user who created this post." author: Profile! - "All comments related to this post." + "All comments on this post" comments( "Returns the elements in the list that come after the specified cursor." after: String, @@ -1633,7 +1641,8 @@ type Post implements WithTimestamps { "Returns the first _n_ elements from the list." first: Int, "Returns the last _n_ elements from the list." - last: Int + last: Int, + sort: [CommentSortOption] ): CommentConnection! "Unmodified content." content: String! @@ -1656,7 +1665,7 @@ type Post implements WithTimestamps { isNsfw: Boolean! "If this post spoils the tagged media." isSpoiler: Boolean! - "Users that have liked this post." + "Users that have liked this post" likes( "Returns the elements in the list that come after the specified cursor." after: String, @@ -1665,7 +1674,8 @@ type Post implements WithTimestamps { "Returns the first _n_ elements from the list." first: Int, "Returns the last _n_ elements from the list." - last: Int + last: Int, + sort: [PostLikeSortOption] ): ProfileConnection! "When this post was locked." lockedAt: ISO8601DateTime @@ -1816,7 +1826,8 @@ type Profile implements WithTimestamps { "Returns the first _n_ elements from the list." first: Int, "Returns the last _n_ elements from the list." - last: Int + last: Int, + sort: [FollowSortOption] ): ProfileConnection! "People the user is following" following( @@ -1827,7 +1838,8 @@ type Profile implements WithTimestamps { "Returns the first _n_ elements from the list." first: Int, "Returns the last _n_ elements from the list." - last: Int + last: Int, + sort: [FollowSortOption] ): ProfileConnection! "What the user identifies as" gender: String @@ -1872,7 +1884,8 @@ type Profile implements WithTimestamps { "Returns the first _n_ elements from the list." first: Int, "Returns the last _n_ elements from the list." - last: Int + last: Int, + sort: [PostSortOption] ): PostConnection! "The message this user has submitted to the Hall of Fame" proMessage: String @@ -2438,6 +2451,23 @@ enum CharacterRoleEnum { RECURRING } +enum CommentLikeSortEnum { + CREATED_AT + FOLLOWING +} + +enum CommentSortEnum { + CREATED_AT + FOLLOWING + LIKES_COUNT +} + +enum FollowSortEnum { + CREATED_AT + FOLLOWING_FOLLOWED + FOLLOWING_FOLLOWER +} + enum LibraryEntryStatusEnum { "The user completed this media." COMPLETED @@ -2528,6 +2558,15 @@ enum MediaTypeEnum { MANGA } +enum PostLikeSortEnum { + CREATED_AT + FOLLOWING +} + +enum PostSortEnum { + CREATED_AT +} + enum ProTierEnum { "Aozora Pro (only hides ads)" AO_PRO @deprecated(reason : "No longer for sale") @@ -2592,6 +2631,11 @@ enum SitePermissionEnum { DATABASE_MOD } +enum SortDirection { + ASCENDING + DESCENDING +} + enum TitleLanguagePreferenceEnum { "Prefer the most commonly-used title for media" CANONICAL @@ -2632,6 +2676,16 @@ input AnimeUpdateInput { youtubeTrailerVideoId: String } +input CommentLikeSortOption { + direction: SortDirection! + on: CommentLikeSortEnum! +} + +input CommentSortOption { + direction: SortDirection! + on: CommentSortEnum! +} + input EpisodeCreateInput { description: Map length: Int @@ -2653,6 +2707,11 @@ input EpisodeUpdateInput { titles: TitlesListInput } +input FollowSortOption { + direction: SortDirection! + on: FollowSortEnum! +} + input GenericDeleteInput { id: ID! } @@ -2742,6 +2801,16 @@ input MappingUpdateInput { itemType: MappingItemEnum } +input PostLikeSortOption { + direction: SortDirection! + on: PostLikeSortEnum! +} + +input PostSortOption { + direction: SortDirection! + on: PostSortEnum! +} + input TitlesListInput { alternatives: [String!] canonical: String