feat: Implement and register user profile GraphQL resolver

This commit is contained in:
2025-12-06 08:26:16 -05:00
parent fedc5e46da
commit b0650fc840
2 changed files with 37 additions and 14 deletions

View File

@@ -7,21 +7,23 @@ import { popularBrowse } from "./queries/popularBrowse";
import { popularByCategory } from "./queries/popularByCategory";
import { search } from "./queries/search";
import { title } from "./queries/title";
import { user } from "./queries/user";
import { Title } from "./title";
export const resolvers = {
Query: {
healthCheck,
title,
search,
popularBrowse,
popularByCategory,
episodeStream,
},
Mutation: {
updateWatchStatus: updateWatchStatusMutation,
markEpisodeAsWatched: markEpisodeAsWatchedMutation,
updateToken: updateTokenMutation,
},
Title,
Query: {
healthCheck,
title,
search,
popularBrowse,
popularByCategory,
episodeStream,
user,
},
Mutation: {
updateWatchStatus: updateWatchStatusMutation,
markEpisodeAsWatched: markEpisodeAsWatchedMutation,
updateToken: updateTokenMutation,
},
Title,
};

View File

@@ -0,0 +1,21 @@
import { getUser } from "~/controllers/auth/anilist/getUser";
import type { GraphQLContext } from "~/graphql/context";
import { GraphQLError } from "graphql";
export async function user(_parent: any, _args: {}, context: GraphQLContext) {
const { aniListToken } = context;
if (!aniListToken) {
throw new GraphQLError("Unauthorized", {
extensions: { code: "UNAUTHORIZED" },
});
}
const response = await getUser(aniListToken);
if (!response) {
throw new GraphQLError(`Failed to fetch user`, {
extensions: { code: "INTERNAL_SERVER_ERROR" },
});
}
return response;
}