diff options
| author | Fuwn <[email protected]> | 2024-10-08 15:34:03 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-10-08 15:34:03 -0700 |
| commit | 8e3bc2f9ef96811cdb421e6397060e3d1f0c015b (patch) | |
| tree | 64ae7b4c8e3a74ce7ebd5a30439042437f8d9fe5 /src/graphql/user/resolvers.ts | |
| parent | fix(graphql): return null for no user id access (diff) | |
| download | due.moe-8e3bc2f9ef96811cdb421e6397060e3d1f0c015b.tar.xz due.moe-8e3bc2f9ef96811cdb421e6397060e3d1f0c015b.zip | |
feat(graphql): add badgeCount field
Diffstat (limited to 'src/graphql/user/resolvers.ts')
| -rw-r--r-- | src/graphql/user/resolvers.ts | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/graphql/user/resolvers.ts b/src/graphql/user/resolvers.ts index ebdba2a6..9bccbd6b 100644 --- a/src/graphql/user/resolvers.ts +++ b/src/graphql/user/resolvers.ts @@ -43,10 +43,13 @@ const authenticatedBadgesOperation = async ( await operation(identity, authorised); + const badges = await getUserBadges(identity.id) + return { id: identity.id, - badges: await getUserBadges(identity.id), - preferences: {} + badges, + preferences: {}, + badgesCount: badges.length } }; @@ -63,7 +66,8 @@ const authenticatedPreferencesOperation = async ( return { id: identity.id, badges: [] as Badge[], - preferences: await operation(identity, authorised) + preferences: await operation(identity, authorised), + badgesCount: 0 } }; @@ -72,10 +76,13 @@ export const resolvers: WithIndex<Resolvers> = { User: async (_, args) => { if (!args.id) return null; + const badges = (await getUserBadges(args.id)) + return { id: args.id, - badges: (await getUserBadges(args.id)) as Badge[], - preferences: await getUserPreferences(args.id) + badges, + preferences: await getUserPreferences(args.id), + badgesCount: badges.length }; } }, |