Changeset View
Changeset View
Standalone View
Standalone View
lib/actions/message-actions.js
// @flow | // @flow | ||||
import invariant from 'invariant'; | import invariant from 'invariant'; | ||||
import type { | import type { | ||||
FetchMessageInfosPayload, | FetchMessageInfosPayload, | ||||
SendMessageResult, | SendMessageResult, | ||||
SendEditMessageResult, | |||||
SendReactionMessageRequest, | SendReactionMessageRequest, | ||||
SimpleMessagesPayload, | SimpleMessagesPayload, | ||||
SendEditMessageRequest, | |||||
} from '../types/message-types.js'; | } from '../types/message-types.js'; | ||||
import type { MediaMessageServerDBContent } from '../types/messages/media.js'; | import type { MediaMessageServerDBContent } from '../types/messages/media.js'; | ||||
import type { | import type { | ||||
CallServerEndpoint, | CallServerEndpoint, | ||||
CallServerEndpointResultInfo, | CallServerEndpointResultInfo, | ||||
} from '../utils/call-server-endpoint.js'; | } from '../utils/call-server-endpoint.js'; | ||||
const fetchMessagesBeforeCursorActionTypes = Object.freeze({ | const fetchMessagesBeforeCursorActionTypes = Object.freeze({ | ||||
▲ Show 20 Lines • Show All 221 Lines • ▼ Show 20 Lines | async request => { | ||||
}; | }; | ||||
}; | }; | ||||
const sendEditMessageActionTypes = Object.freeze({ | const sendEditMessageActionTypes = Object.freeze({ | ||||
started: 'SEND_EDIT_MESSAGE_STARTED', | started: 'SEND_EDIT_MESSAGE_STARTED', | ||||
success: 'SEND_EDIT_MESSAGE_SUCCESS', | success: 'SEND_EDIT_MESSAGE_SUCCESS', | ||||
failed: 'SEND_EDIT_MESSAGE_FAILED', | failed: 'SEND_EDIT_MESSAGE_FAILED', | ||||
}); | }); | ||||
const sendEditMessage = | |||||
( | |||||
callServerEndpoint: CallServerEndpoint, | |||||
): ((request: SendEditMessageRequest) => Promise<SendEditMessageResult>) => | |||||
async request => { | |||||
const response = await callServerEndpoint('edit_message', { | |||||
targetMessageID: request.targetMessageID, | |||||
text: request.text, | |||||
}); | |||||
return { | |||||
newMessageInfos: response.newMessageInfos, | |||||
}; | |||||
}; | |||||
const saveMessagesActionType = 'SAVE_MESSAGES'; | const saveMessagesActionType = 'SAVE_MESSAGES'; | ||||
const processMessagesActionType = 'PROCESS_MESSAGES'; | const processMessagesActionType = 'PROCESS_MESSAGES'; | ||||
const messageStorePruneActionType = 'MESSAGE_STORE_PRUNE'; | const messageStorePruneActionType = 'MESSAGE_STORE_PRUNE'; | ||||
export { | export { | ||||
fetchMessagesBeforeCursorActionTypes, | fetchMessagesBeforeCursorActionTypes, | ||||
fetchMessagesBeforeCursor, | fetchMessagesBeforeCursor, | ||||
fetchMostRecentMessagesActionTypes, | fetchMostRecentMessagesActionTypes, | ||||
fetchMostRecentMessages, | fetchMostRecentMessages, | ||||
fetchSingleMostRecentMessagesFromThreadsActionTypes, | fetchSingleMostRecentMessagesFromThreadsActionTypes, | ||||
fetchSingleMostRecentMessagesFromThreads, | fetchSingleMostRecentMessagesFromThreads, | ||||
sendTextMessageActionTypes, | sendTextMessageActionTypes, | ||||
sendTextMessage, | sendTextMessage, | ||||
createLocalMessageActionType, | createLocalMessageActionType, | ||||
sendMultimediaMessageActionTypes, | sendMultimediaMessageActionTypes, | ||||
sendMultimediaMessage, | sendMultimediaMessage, | ||||
legacySendMultimediaMessage, | legacySendMultimediaMessage, | ||||
sendReactionMessageActionTypes, | sendReactionMessageActionTypes, | ||||
sendReactionMessage, | sendReactionMessage, | ||||
saveMessagesActionType, | saveMessagesActionType, | ||||
processMessagesActionType, | processMessagesActionType, | ||||
messageStorePruneActionType, | messageStorePruneActionType, | ||||
sendEditMessageActionTypes, | sendEditMessageActionTypes, | ||||
sendEditMessage, | |||||
}; | }; |