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,6 +7,7 @@ import { popularBrowse } from "./queries/popularBrowse";
import { popularByCategory } from "./queries/popularByCategory"; import { popularByCategory } from "./queries/popularByCategory";
import { search } from "./queries/search"; import { search } from "./queries/search";
import { title } from "./queries/title"; import { title } from "./queries/title";
import { user } from "./queries/user";
import { Title } from "./title"; import { Title } from "./title";
export const resolvers = { export const resolvers = {
@@ -17,6 +18,7 @@ export const resolvers = {
popularBrowse, popularBrowse,
popularByCategory, popularByCategory,
episodeStream, episodeStream,
user,
}, },
Mutation: { Mutation: {
updateWatchStatus: updateWatchStatusMutation, updateWatchStatus: updateWatchStatusMutation,

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;
}