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, | SendEditMessageResult, | ||||
SendReactionMessageRequest, | SendReactionMessageRequest, | ||||
SimpleMessagesPayload, | SimpleMessagesPayload, | ||||
SendEditMessageRequest, | SendEditMessageRequest, | ||||
FetchPinnedMessagesRequest, | FetchPinnedMessagesRequest, | ||||
FetchPinnedMessagesResult, | FetchPinnedMessagesResult, | ||||
SearchMessagesRequest, | SearchMessagesRequest, | ||||
SearchMessagesResponse, | SearchMessagesResponse, | ||||
FetchLatestMessagesRequest, | |||||
FetchLatestMessagesResponse, | |||||
} 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 273 Lines • ▼ Show 20 Lines | const searchMessages = | ||||
async request => { | async request => { | ||||
const response = await callServerEndpoint('search_messages', request); | const response = await callServerEndpoint('search_messages', request); | ||||
return { | return { | ||||
messages: response.messages, | messages: response.messages, | ||||
endReached: response.endReached, | endReached: response.endReached, | ||||
}; | }; | ||||
}; | }; | ||||
const fetchLatestMessagesActionTypes = Object.freeze({ | |||||
started: 'FETCH_LATEST_MESSAGES_STARTED', | |||||
success: 'FETCH_LATEST_MESSAGES_SUCCESS', | |||||
failed: 'FETCH_LATEST_MESSAGES_FAILED', | |||||
}); | |||||
const fetchLatestMessages = | |||||
( | |||||
callServerEndpoint: CallServerEndpoint, | |||||
): (( | |||||
request: FetchLatestMessagesRequest, | |||||
) => Promise<FetchLatestMessagesResponse>) => | |||||
async request => { | |||||
const response = await callServerEndpoint('fetch_latest_messages', request); | |||||
return { | |||||
rawMessageInfos: response.rawMessageInfos, | |||||
truncationStatuses: response.truncationStatuses, | |||||
oldestMessage: response.oldestMessage, | |||||
}; | |||||
}; | |||||
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, | ||||
searchMessagesActionTypes, | searchMessagesActionTypes, | ||||
searchMessages, | searchMessages, | ||||
sendReactionMessageActionTypes, | sendReactionMessageActionTypes, | ||||
sendReactionMessage, | sendReactionMessage, | ||||
saveMessagesActionType, | saveMessagesActionType, | ||||
processMessagesActionType, | processMessagesActionType, | ||||
messageStorePruneActionType, | messageStorePruneActionType, | ||||
sendEditMessageActionTypes, | sendEditMessageActionTypes, | ||||
sendEditMessage, | sendEditMessage, | ||||
fetchPinnedMessages, | fetchPinnedMessages, | ||||
fetchPinnedMessageActionTypes, | fetchPinnedMessageActionTypes, | ||||
fetchLatestMessagesActionTypes, | |||||
fetchLatestMessages, | |||||
}; | }; |