From fc63c4b6dfd4c588a6b9f445865dc58bef0c7b45 Mon Sep 17 00:00:00 2001 From: Alessandro Magionami Date: Thu, 26 Sep 2024 15:15:02 +0200 Subject: [PATCH] chore(activitystream): refactor userActivity --- .../activitystream/services/userActivity.ts | 37 ++++++++++--------- .../modules/core/services/users/management.ts | 8 +++- 2 files changed, 25 insertions(+), 20 deletions(-) diff --git a/packages/server/modules/activitystream/services/userActivity.ts b/packages/server/modules/activitystream/services/userActivity.ts index 5113afa4e..b9eded4d7 100644 --- a/packages/server/modules/activitystream/services/userActivity.ts +++ b/packages/server/modules/activitystream/services/userActivity.ts @@ -1,23 +1,24 @@ import { UserUpdateInput } from '@/modules/core/graph/generated/graphql' import { UserRecord } from '@/modules/core/helpers/types' import { ActionTypes, ResourceTypes } from '@/modules/activitystream/helpers/types' -import { saveActivityFactory } from '@/modules/activitystream/repositories' -import { db } from '@/db/knex' +import { SaveActivity } from '@/modules/activitystream/domain/operations' -export async function addUserUpdatedActivity(params: { - oldUser: UserRecord - update: UserUpdateInput - updaterId: string -}) { - const { oldUser, update, updaterId } = params +export const addUserUpdatedActivityFactory = + ({ saveActivity }: { saveActivity: SaveActivity }) => + async (params: { + oldUser: UserRecord + update: UserUpdateInput + updaterId: string + }) => { + const { oldUser, update, updaterId } = params - await saveActivityFactory({ db })({ - streamId: null, - resourceType: ResourceTypes.User, - resourceId: oldUser.id, - actionType: ActionTypes.User.Update, - userId: updaterId, - info: { old: oldUser, new: update }, - message: 'User updated' - }) -} + await saveActivity({ + streamId: null, + resourceType: ResourceTypes.User, + resourceId: oldUser.id, + actionType: ActionTypes.User.Update, + userId: updaterId, + info: { old: oldUser, new: update }, + message: 'User updated' + }) + } diff --git a/packages/server/modules/core/services/users/management.ts b/packages/server/modules/core/services/users/management.ts index 53fae24b8..38f33c232 100644 --- a/packages/server/modules/core/services/users/management.ts +++ b/packages/server/modules/core/services/users/management.ts @@ -1,4 +1,6 @@ -import { addUserUpdatedActivity } from '@/modules/activitystream/services/userActivity' +import { db } from '@/db/knex' +import { saveActivityFactory } from '@/modules/activitystream/repositories' +import { addUserUpdatedActivityFactory } from '@/modules/activitystream/services/userActivity' import { UserUpdateError, UserValidationError } from '@/modules/core/errors/user' import { PasswordTooShortError } from '@/modules/core/errors/userinput' import { UserUpdateInput } from '@/modules/core/graph/generated/graphql' @@ -35,7 +37,9 @@ export async function updateUserAndNotify(userId: string, update: UserUpdateInpu throw new UserUpdateError("Couldn't update user") } - await addUserUpdatedActivity({ + await addUserUpdatedActivityFactory({ + saveActivity: saveActivityFactory({ db }) + })({ oldUser: existingUser, update, updaterId: userId