diff --git a/packages/server/modules/activitystream/services/commentActivity.ts b/packages/server/modules/activitystream/services/commentActivity.ts index 99bfe1935..978ef1290 100644 --- a/packages/server/modules/activitystream/services/commentActivity.ts +++ b/packages/server/modules/activitystream/services/commentActivity.ts @@ -17,7 +17,7 @@ import { } from '@/modules/core/repositories/branches' import { getAllBranchCommitsFactory, - getCommitsAndTheirBranchIds, + getCommitsAndTheirBranchIdsFactory, getSpecificBranchCommitsFactory } from '@/modules/core/repositories/commits' import { getStreamObjects } from '@/modules/core/repositories/objects' @@ -60,7 +60,7 @@ export async function addCommentCreatedActivity(params: { getViewerResourcesFromLegacyIdentifiers: (...args) => getViewerResourcesFromLegacyIdentifiers(...args) // recursive dep }), - getCommitsAndTheirBranchIds, + getCommitsAndTheirBranchIds: getCommitsAndTheirBranchIdsFactory({ db }), getStreamObjects }) const getViewerResourceItemsUngrouped = getViewerResourceItemsUngroupedFactory({ @@ -146,7 +146,7 @@ export async function addCommentArchivedActivity(params: { getViewerResourcesFromLegacyIdentifiers: (...args) => getViewerResourcesFromLegacyIdentifiers(...args) // recursive dep }), - getCommitsAndTheirBranchIds, + getCommitsAndTheirBranchIds: getCommitsAndTheirBranchIdsFactory({ db }), getStreamObjects }) @@ -208,7 +208,7 @@ export async function addReplyAddedActivity(params: { getViewerResourcesFromLegacyIdentifiers: (...args) => getViewerResourcesFromLegacyIdentifiers(...args) // recursive dep }), - getCommitsAndTheirBranchIds, + getCommitsAndTheirBranchIds: getCommitsAndTheirBranchIdsFactory({ db }), getStreamObjects }) diff --git a/packages/server/modules/comments/graph/resolvers/comments.ts b/packages/server/modules/comments/graph/resolvers/comments.ts index 0426a54ef..72b7cc2d3 100644 --- a/packages/server/modules/comments/graph/resolvers/comments.ts +++ b/packages/server/modules/comments/graph/resolvers/comments.ts @@ -87,7 +87,7 @@ import { getBlobsFactory } from '@/modules/blobstorage/repositories' import { ResourceIdentifier } from '@/modules/comments/domain/types' import { getAllBranchCommitsFactory, - getCommitsAndTheirBranchIds, + getCommitsAndTheirBranchIdsFactory, getSpecificBranchCommitsFactory } from '@/modules/core/repositories/commits' import { getStreamObjects } from '@/modules/core/repositories/objects' @@ -148,7 +148,7 @@ const getViewerResourcesFromLegacyIdentifiers = getViewerResourcesFromLegacyIdentifiers: (...args) => getViewerResourcesFromLegacyIdentifiers(...args) // recursive dep }), - getCommitsAndTheirBranchIds, + getCommitsAndTheirBranchIds: getCommitsAndTheirBranchIdsFactory({ db }), getStreamObjects }) diff --git a/packages/server/modules/core/domain/commits/operations.ts b/packages/server/modules/core/domain/commits/operations.ts index 1d460776a..b815039be 100644 --- a/packages/server/modules/core/domain/commits/operations.ts +++ b/packages/server/modules/core/domain/commits/operations.ts @@ -149,3 +149,7 @@ export type GetUserAuthoredCommitCounts = (params: { }) => Promise<{ [userId: string]: number }> + +export type GetCommitsAndTheirBranchIds = ( + commitIds: string[] +) => Promise diff --git a/packages/server/modules/core/repositories/commits.ts b/packages/server/modules/core/repositories/commits.ts index 542031c60..0b5afdb16 100644 --- a/packages/server/modules/core/repositories/commits.ts +++ b/packages/server/modules/core/repositories/commits.ts @@ -40,7 +40,8 @@ import { GetStreamCommitCounts, GetStreamCommitCount, GetUserStreamCommitCounts, - GetUserAuthoredCommitCounts + GetUserAuthoredCommitCounts, + GetCommitsAndTheirBranchIds } from '@/modules/core/domain/commits/operations' const tables = { @@ -222,17 +223,20 @@ export const getStreamCommitCountFactory = return res?.count || 0 } -export async function getCommitsAndTheirBranchIds(commitIds: string[]) { - if (!commitIds.length) return [] +export const getCommitsAndTheirBranchIdsFactory = + (deps: { db: Knex }): GetCommitsAndTheirBranchIds => + async (commitIds: string[]) => { + if (!commitIds.length) return [] - return await Commits.knex() - .select>([ - ...Commits.cols, - BranchCommits.col.branchId - ]) - .innerJoin(BranchCommits.name, BranchCommits.col.commitId, Commits.col.id) - .whereIn(Commits.col.id, commitIds) -} + return await tables + .commits(deps.db) + .select>([ + ...Commits.cols, + BranchCommits.col.branchId + ]) + .innerJoin(BranchCommits.name, BranchCommits.col.commitId, Commits.col.id) + .whereIn(Commits.col.id, commitIds) + } export const getSpecificBranchCommitsFactory = (deps: { db: Knex }): GetSpecificBranchCommits => diff --git a/packages/server/modules/core/services/commit/viewerResources.ts b/packages/server/modules/core/services/commit/viewerResources.ts index a899f2cfa..4ceda4b7a 100644 --- a/packages/server/modules/core/services/commit/viewerResources.ts +++ b/packages/server/modules/core/services/commit/viewerResources.ts @@ -12,6 +12,7 @@ import { } from '@/modules/core/domain/branches/operations' import { GetAllBranchCommits, + GetCommitsAndTheirBranchIds, GetSpecificBranchCommits } from '@/modules/core/domain/commits/operations' import { @@ -23,7 +24,6 @@ import { ViewerUpdateTrackingTarget } from '@/modules/core/graph/generated/graphql' import { CommitRecord } from '@/modules/core/helpers/types' -import { getCommitsAndTheirBranchIds } from '@/modules/core/repositories/commits' import { getStreamObjects } from '@/modules/core/repositories/objects' import { Optional, SpeckleViewer } from '@speckle/shared' import { flatten, keyBy, reduce, uniq, uniqWith } from 'lodash' @@ -370,7 +370,7 @@ export const getViewerResourcesFromLegacyIdentifiersFactory = ( deps: { getViewerResourcesForComments: GetViewerResourcesForComments - getCommitsAndTheirBranchIds: typeof getCommitsAndTheirBranchIds + getCommitsAndTheirBranchIds: GetCommitsAndTheirBranchIds } & GetObjectResourceGroupsDeps ): GetViewerResourcesFromLegacyIdentifiers => async (