From f01d5a4ee331b35a2c8fd20c92e6bdd8d4951a97 Mon Sep 17 00:00:00 2001 From: Mohamed Marrouchi Date: Tue, 21 Jan 2025 14:18:14 +0100 Subject: [PATCH 1/2] fix: ts issue --- api/src/chat/repositories/subscriber.repository.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/api/src/chat/repositories/subscriber.repository.ts b/api/src/chat/repositories/subscriber.repository.ts index 9f2e9d91..3950e656 100644 --- a/api/src/chat/repositories/subscriber.repository.ts +++ b/api/src/chat/repositories/subscriber.repository.ts @@ -1,5 +1,5 @@ /* - * Copyright © 2024 Hexastack. All rights reserved. + * Copyright © 2025 Hexastack. All rights reserved. * * Licensed under the GNU Affero General Public License v3.0 (AGPLv3) with the following additional terms: * 1. The name "Hexabot" is a trademark of Hexastack. You may not use this name in derivative works without express written permission. @@ -82,6 +82,10 @@ export class SubscriberRepository extends BaseRepository< const oldSubscriber = await this.findOne(criteria); + if (!oldSubscriber) { + throw new Error('Something went wrong: subscriber does not exist'); + } + if (subscriberUpdates.assignedTo !== oldSubscriber?.assignedTo) { this.eventEmitter.emit( 'hook:subscriber:assign', From be1a79f3ea2c1cd2dad1d596828fb4bd35f62975 Mon Sep 17 00:00:00 2001 From: Mohamed Marrouchi Date: Tue, 21 Jan 2025 14:25:47 +0100 Subject: [PATCH 2/2] fix: ensure retro-compatibility (we hope) --- api/src/channel/lib/Handler.ts | 13 +++++++++++++ api/src/chat/schemas/types/attachment.ts | 8 ++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/api/src/channel/lib/Handler.ts b/api/src/channel/lib/Handler.ts index a803ae5b..e1dd33ef 100644 --- a/api/src/channel/lib/Handler.ts +++ b/api/src/channel/lib/Handler.ts @@ -235,6 +235,19 @@ export default abstract class ChannelHandler< event: EventWrapper, ): Promise; + /** + * Fetch the subscriber profile data + * + * @deprecated + * @param event - The message event received + * @returns {Promise} - The channel's response, otherwise an error + */ + async getUserData( + event: EventWrapper, + ): Promise { + return await this.getSubscriberData(event); + } + /** * Fetch the subscriber profile data * diff --git a/api/src/chat/schemas/types/attachment.ts b/api/src/chat/schemas/types/attachment.ts index cdf02e5f..bb52b303 100644 --- a/api/src/chat/schemas/types/attachment.ts +++ b/api/src/chat/schemas/types/attachment.ts @@ -31,7 +31,11 @@ export type AttachmentRef = url: string; }; -export interface AttachmentPayload { +/** IMPORTANT: No need to use generic type here */ +export interface AttachmentPayload { type: FileType; - payload: AttachmentRef; + payload: T; } + +/** @deprecated */ +export type WithUrl = A & { url?: string };