summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaksim Sukharev <antreesy.web@gmail.com>2024-03-14 19:10:32 +0100
committerMaksim Sukharev <antreesy.web@gmail.com>2024-03-15 10:23:16 +0100
commit74ad6721bcda36f5c317fe98ef1fb96e14bed657 (patch)
tree08e1ed435b68336e71f485ace74e6dd7b6476750
parent38224b754e8ecdf968d67c1debaa17167a686266 (diff)
fix(typescript): move related methods to messageService
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
-rw-r--r--src/services/conversationsService.js20
-rw-r--r--src/services/messagesService.ts24
-rw-r--r--src/store/conversationsStore.js6
-rw-r--r--src/store/conversationsStore.spec.js5
-rw-r--r--src/types/index.ts2
5 files changed, 31 insertions, 26 deletions
diff --git a/src/services/conversationsService.js b/src/services/conversationsService.js
index 152aa0c14..f1a93fdaa 100644
--- a/src/services/conversationsService.js
+++ b/src/services/conversationsService.js
@@ -206,24 +206,6 @@ const deleteConversation = async function(token) {
}
/**
- * Clears the conversation history
- *
- * @param {string} token The token of the conversation to be deleted.
- */
-const clearConversationHistory = async function(token) {
- return axios.delete(generateOcsUrl('apps/spreed/api/v1/chat/{token}', { token }))
-}
-
-/**
- * Set conversation as unread
- *
- * @param {string} token The token of the conversation to be set as unread
- */
-const setConversationUnread = async function(token) {
- return axios.delete(generateOcsUrl('apps/spreed/api/v1/chat/{token}/read', { token }))
-}
-
-/**
* Add a conversation to the favorites
*
* @param {string} token The token of the conversation to be favorites
@@ -407,8 +389,6 @@ export {
setConversationPassword,
setConversationName,
setConversationDescription,
- clearConversationHistory,
- setConversationUnread,
setConversationPermissions,
setCallPermissions,
setMessageExpiration,
diff --git a/src/services/messagesService.ts b/src/services/messagesService.ts
index e24b3247d..26bd9efec 100644
--- a/src/services/messagesService.ts
+++ b/src/services/messagesService.ts
@@ -28,11 +28,13 @@ import { generateOcsUrl } from '@nextcloud/router'
import type {
ChatMessage,
+ clearHistoryResponse,
deleteMessageResponse,
editMessageParams,
editMessageResponse,
getMessageContextParams,
getMessageContextResponse,
+ markUnreadResponse,
postNewMessageParams,
postNewMessageResponse,
postRichObjectParams,
@@ -141,6 +143,15 @@ const postNewMessage = async function({ token, message, actorDisplayName, refere
}
/**
+ * Clears the conversation history
+ *
+ * @param token The token of the conversation to be deleted.
+ */
+const clearConversationHistory = async function(token: string): clearHistoryResponse {
+ return axios.delete(generateOcsUrl('apps/spreed/api/v1/chat/{token}', { token }))
+}
+
+/**
* Deletes a message from the server.
*
* @param param0 The message object that is destructured
@@ -204,13 +215,24 @@ const updateLastReadMessage = async function(token: string, lastReadMessage: set
} as setReadMarkerParams, options)
}
+/**
+ * Set conversation as unread
+ *
+ * @param token The token of the conversation to be set as unread
+ */
+const setConversationUnread = async function(token: string): markUnreadResponse {
+ return axios.delete(generateOcsUrl('apps/spreed/api/v1/chat/{token}/read', { token }))
+}
+
export {
fetchMessages,
lookForNewMessages,
getMessageContext,
postNewMessage,
+ clearConversationHistory,
deleteMessage,
+ editMessage,
postRichObjectToConversation,
updateLastReadMessage,
- editMessage,
+ setConversationUnread,
}
diff --git a/src/store/conversationsStore.js b/src/store/conversationsStore.js
index 147b5bf29..b17014ad3 100644
--- a/src/store/conversationsStore.js
+++ b/src/store/conversationsStore.js
@@ -54,8 +54,6 @@ import {
setConversationName,
setConversationDescription,
deleteConversation,
- clearConversationHistory,
- setConversationUnread,
setNotificationLevel,
setNotificationCalls,
setConversationPermissions,
@@ -64,6 +62,10 @@ import {
setConversationPassword,
} from '../services/conversationsService.js'
import {
+ clearConversationHistory,
+ setConversationUnread,
+} from '../services/messagesService.ts'
+import {
startCallRecording,
stopCallRecording,
} from '../services/recordingService.js'
diff --git a/src/store/conversationsStore.spec.js b/src/store/conversationsStore.spec.js
index 02be20ae1..04ec957d3 100644
--- a/src/store/conversationsStore.spec.js
+++ b/src/store/conversationsStore.spec.js
@@ -32,9 +32,8 @@ import {
deleteConversation,
setConversationPermissions,
setCallPermissions,
- setConversationUnread,
} from '../services/conversationsService.js'
-import { updateLastReadMessage } from '../services/messagesService.ts'
+import { updateLastReadMessage, setConversationUnread } from '../services/messagesService.ts'
import { useTalkHashStore } from '../stores/talkHash.js'
import { generateOCSErrorResponse, generateOCSResponse } from '../test-helpers.js'
@@ -56,11 +55,11 @@ jest.mock('../services/conversationsService', () => ({
deleteConversation: jest.fn(),
setConversationPermissions: jest.fn(),
setCallPermissions: jest.fn(),
- setConversationUnread: jest.fn(),
}))
jest.mock('../services/messagesService', () => ({
updateLastReadMessage: jest.fn(),
+ setConversationUnread: jest.fn(),
}))
jest.mock('@nextcloud/event-bus')
diff --git a/src/types/index.ts b/src/types/index.ts
index 3dce1e013..6c57e5f8f 100644
--- a/src/types/index.ts
+++ b/src/types/index.ts
@@ -51,6 +51,7 @@ export type getMessageContextParams = ApiOptions<operations['chat-get-message-co
export type getMessageContextResponse = ApiResponse<operations['chat-get-message-context']['responses'][200]['content']['application/json']>
export type postNewMessageParams = ApiOptions<operations['chat-send-message']['parameters']['query']>['params']
export type postNewMessageResponse = ApiResponse<operations['chat-send-message']['responses'][201]['content']['application/json']>
+export type clearHistoryResponse = ApiResponse<operations['chat-clear-history']['responses'][200]['content']['application/json']>
export type deleteMessageResponse = ApiResponse<operations['chat-delete-message']['responses'][200]['content']['application/json']>
export type editMessageParams = ApiOptions<operations['chat-edit-message']['parameters']['query']>['params']
export type editMessageResponse = ApiResponse<operations['chat-edit-message']['responses'][200]['content']['application/json']>
@@ -58,6 +59,7 @@ export type postRichObjectParams = ApiOptions<operations['chat-share-object-to-c
export type postRichObjectResponse = ApiResponse<operations['chat-share-object-to-chat']['responses'][201]['content']['application/json']>
export type setReadMarkerParams = ApiOptions<operations['chat-set-read-marker']['parameters']['query']>['params']
export type setReadMarkerResponse = ApiResponse<operations['chat-set-read-marker']['responses'][200]['content']['application/json']>
+export type markUnreadResponse = ApiResponse<operations['chat-mark-unread']['responses'][200]['content']['application/json']>
// Avatars
export type setFileAvatarResponse = ApiResponse<operations['avatar-upload-avatar']['responses'][200]['content']['application/json']>