From eef9bbf36836cc7d06c6ab1b7b8c337a3f44a8d3 Mon Sep 17 00:00:00 2001 From: paritosh18 Date: Fri, 17 Apr 2026 15:33:47 +0530 Subject: [PATCH] sending presignedurl in get-all-host activtiy --- src/modules/host/services/host.service.ts | 39 ++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/src/modules/host/services/host.service.ts b/src/modules/host/services/host.service.ts index a511f36..4cad483 100644 --- a/src/modules/host/services/host.service.ts +++ b/src/modules/host/services/host.service.ts @@ -1142,6 +1142,23 @@ export class HostService { }, }, }, + ActivitiesMedia: { + where: { + isActive: true, + isCoverImage: true, + deletedAt: null, + }, + select: { + id: true, + mediaFileName: true, + mediaType: true, + isCoverImage: true, + }, + orderBy: { + displayOrder: 'asc', + }, + take: 1, + }, }, skip: paginationOptions?.skip || 0, take: paginationOptions?.limit || 10, @@ -1168,11 +1185,31 @@ export class HostService { } } + const hostActivitiesWithAssets = await Promise.all( + hostAllActivities.map(async (activity) => { + const coverImage = activity.ActivitiesMedia?.[0] ?? null; + const coverImagePresignedUrl = coverImage?.mediaFileName + ? await getPresignedUrl( + bucket, + coverImage.mediaFileName.startsWith('http') + ? coverImage.mediaFileName.split('.com/')[1] + : coverImage.mediaFileName, + ) + : null; + + return { + ...activity, + coverImage: coverImage?.mediaFileName ?? null, + coverImagePresignedUrl, + }; + }), + ); + const { paginationService, } = require('@/common/utils/pagination/pagination.service'); return paginationService.createPaginatedResponse( - hostAllActivities, + hostActivitiesWithAssets, totalCount, paginationOptions || { page: 1, limit: 10, skip: 0 }, );