From a81181ee60cb9f3f04de50b75155d1dc110ce408 Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Mon, 14 Mar 2022 15:22:53 -0700 Subject: [PATCH] Dont make queries for readingProgressPercent unless we have to --- .../api/src/resolvers/function_resolvers.ts | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/packages/api/src/resolvers/function_resolvers.ts b/packages/api/src/resolvers/function_resolvers.ts index 7542152ee..5f59bf74e 100644 --- a/packages/api/src/resolvers/function_resolvers.ts +++ b/packages/api/src/resolvers/function_resolvers.ts @@ -383,8 +383,26 @@ export const functionResolvers = { ? ContentReader.Pdf : ContentReader.Web }, - readingProgressPercent: getReadingProgressForArticleResolver, - readingProgressAnchorIndex: getReadingProgressAnchorIndexForArticleResolver, + async readingProgressPercent(article: { id: string, articleReadingProgress?: number }, + _: unknown, + ctx: WithDataSourcesContext & { claims: Claims }) { + if ('articleReadingProgress' in article) { + return article.articleReadingProgress + } + return ( + await ctx.models.userArticle.getByArticleId(ctx.claims.uid, article.id) + )?.articleReadingProgress + }, + async readingProgressAnchorIndex(article: { id: string, articleReadingProgressAnchorIndex?: number }, + _: unknown, + ctx: WithDataSourcesContext & { claims: Claims }) { + if ('articleReadingProgressAnchorIndex' in article) { + return article.articleReadingProgressAnchorIndex + } + return ( + await ctx.models.userArticle.getByArticleId(ctx.claims.uid, article.id) + )?.articleReadingProgressAnchorIndex + }, async highlights( article: { id: string; userId?: string }, _: { input: ArticleHighlightsInput },