Page MenuHomePhorge

D5770.1765055821.diff
No OneTemporary

Size
2 KB
Referenced Files
None
Subscribers
None

D5770.1765055821.diff

diff --git a/lib/actions/message-actions.js b/lib/actions/message-actions.js
--- a/lib/actions/message-actions.js
+++ b/lib/actions/message-actions.js
@@ -5,6 +5,7 @@
import type {
FetchMessageInfosPayload,
SendMessageResult,
+ SendReactionMessageResult,
SimpleMessagesPayload,
} from '../types/message-types';
import type { MediaMessageServerDBContent } from '../types/messages/media.js';
@@ -201,6 +202,44 @@
success: 'SEND_REACTION_MESSAGE_SUCCESS',
failed: 'SEND_REACTION_MESSAGE_FAILED',
});
+const sendReactionMessage = (
+ callServerEndpoint: CallServerEndpoint,
+): ((
+ threadID: string,
+ targetMessageID: string,
+ reaction: string,
+ action: 'add_reaction' | 'remove_reaction',
+) => Promise<SendReactionMessageResult>) => async (
+ threadID,
+ targetMessageID,
+ reaction,
+ action,
+) => {
+ let resultInfo;
+ const getResultInfo = (passedResultInfo: CallServerEndpointResultInfo) => {
+ resultInfo = passedResultInfo;
+ };
+ const response = await callServerEndpoint(
+ 'create_reaction_message',
+ {
+ threadID,
+ targetMessageID,
+ reaction,
+ action,
+ },
+ { getResultInfo },
+ );
+ const resultInterface = resultInfo?.interface;
+ invariant(
+ resultInterface,
+ 'getResultInfo not called before callServerEndpoint resolves',
+ );
+ return {
+ id: response.newMessageInfo.id,
+ newMessageInfo: response.newMessageInfo,
+ interface: resultInterface,
+ };
+};
const saveMessagesActionType = 'SAVE_MESSAGES';
const processMessagesActionType = 'PROCESS_MESSAGES';
@@ -220,6 +259,7 @@
sendMultimediaMessage,
legacySendMultimediaMessage,
sendReactionMessageActionTypes,
+ sendReactionMessage,
saveMessagesActionType,
processMessagesActionType,
messageStorePruneActionType,
diff --git a/lib/types/message-types.js b/lib/types/message-types.js
--- a/lib/types/message-types.js
+++ b/lib/types/message-types.js
@@ -522,6 +522,13 @@
+time: number,
+interface: CallServerEndpointResultInfoInterface,
};
+
+export type SendReactionMessageResult = {
+ +id: string,
+ +newMessageInfo: RawMessageInfo,
+ +interface: CallServerEndpointResultInfoInterface,
+};
+
export type SendMessagePayload = {
+localID: string,
+serverID: string,

File Metadata

Mime Type
text/plain
Expires
Sat, Dec 6, 9:17 PM (23 h, 4 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5840912
Default Alt Text
D5770.1765055821.diff (2 KB)

Event Timeline