From f349f8aad9905ca1247f6aa5c4b7f81111a6bf03 Mon Sep 17 00:00:00 2001 From: Kristina Date: Wed, 7 May 2025 19:29:44 +0400 Subject: [PATCH] Fix context create (#51) Signed-off-by: Kristina Fefelova --- .version | 2 +- .../sdk-types/src/responseEvents/notification.ts | 1 + packages/server/src/middleware/db.ts | 6 ++++-- packages/server/src/triggers/message.ts | 2 +- packages/server/src/triggers/notification.ts | 13 +++++++++++-- 5 files changed, 18 insertions(+), 6 deletions(-) diff --git a/.version b/.version index e8be64cc0f..e5c7f62e4e 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -0.1.176 +0.1.178 diff --git a/packages/sdk-types/src/responseEvents/notification.ts b/packages/sdk-types/src/responseEvents/notification.ts index 20958ad0bf..fc826a1833 100644 --- a/packages/sdk-types/src/responseEvents/notification.ts +++ b/packages/sdk-types/src/responseEvents/notification.ts @@ -81,6 +81,7 @@ export interface AddedCollaboratorsEvent extends BaseResponseEvent { card: CardID cardType: CardType collaborators: AccountID[] + date: Date } export interface RemovedCollaboratorsEvent extends BaseResponseEvent { diff --git a/packages/server/src/middleware/db.ts b/packages/server/src/middleware/db.ts index ba53812328..c6d543edb6 100644 --- a/packages/server/src/middleware/db.ts +++ b/packages/server/src/middleware/db.ts @@ -191,7 +191,8 @@ export class DatabaseMiddleware extends BaseMiddleware implements Middleware { } private async addCollaborators(event: AddCollaboratorsEvent): Promise { - const added = await this.db.addCollaborators(event.card, event.cardType, event.collaborators, event.date) + const date = event.date ?? new Date() + const added = await this.db.addCollaborators(event.card, event.cardType, event.collaborators, date) if (added.length === 0) return {} return { responseEvent: { @@ -199,7 +200,8 @@ export class DatabaseMiddleware extends BaseMiddleware implements Middleware { type: NotificationResponseEventType.AddedCollaborators, card: event.card, cardType: event.cardType, - collaborators: added + collaborators: added, + date } } } diff --git a/packages/server/src/triggers/message.ts b/packages/server/src/triggers/message.ts index 3f6bcb4b49..6afebacadd 100644 --- a/packages/server/src/triggers/message.ts +++ b/packages/server/src/triggers/message.ts @@ -71,7 +71,7 @@ async function onMessagesRemoved(ctx: TriggerCtx, event: MessagesRemovedEvent): replies: 'decrement' } - return [threadEvent] + return [patchEvent, threadEvent] }) } diff --git a/packages/server/src/triggers/notification.ts b/packages/server/src/triggers/notification.ts index a5e1c06ab2..b8af2d8ce6 100644 --- a/packages/server/src/triggers/notification.ts +++ b/packages/server/src/triggers/notification.ts @@ -14,10 +14,11 @@ // import { - LabelRequestEventType, - NotificationResponseEventType, type AddedCollaboratorsEvent, + LabelRequestEventType, type NotificationContextUpdatedEvent, + NotificationRequestEventType, + NotificationResponseEventType, type RemovedCollaboratorsEvent, type RequestEvent } from '@hcengineering/communication-sdk-types' @@ -36,6 +37,14 @@ async function onAddedCollaborators(ctx: TriggerCtx, event: AddedCollaboratorsEv account: collaborator, label: SubscriptionLabelID }) + + result.push({ + type: NotificationRequestEventType.CreateNotificationContext, + account: collaborator, + card, + lastUpdate: event.date, + lastView: event.date + }) } return result }