diff --git a/keyserver/src/endpoints.js b/keyserver/src/endpoints.js --- a/keyserver/src/endpoints.js +++ b/keyserver/src/endpoints.js @@ -24,6 +24,14 @@ fetchInviteLinksResponseValidator, inviteLinkVerificationResponseValidator, } from 'lib/types/validators/link-validators.js'; +import { messageReportCreationResultValidator } from 'lib/types/validators/message-report-validators.js'; +import { + fetchMessageInfosResponseValidator, + fetchPinnedMessagesResultValidator, + searchMessagesResponseValidator, + sendEditMessageResponseValidator, + sendMessageResponseValidator, +} from 'lib/types/validators/message-validators.js'; import { updateUserAvatarRequestValidator } from 'lib/utils/avatar-utils.js'; import { @@ -73,7 +81,6 @@ import { messageReportCreationResponder, messageReportCreationRequestInputValidator, - messageReportCreationResultValidator, } from './responders/message-report-responder.js'; import { textMessageCreationResponder, @@ -83,18 +90,13 @@ editMessageCreationResponder, fetchPinnedMessagesResponder, searchMessagesResponder, - sendMessageResponseValidator, sendMultimediaMessageRequestInputValidator, sendReactionMessageRequestInputValidator, editMessageRequestInputValidator, - sendEditMessageResponseValidator, sendTextMessageRequestInputValidator, fetchMessageInfosRequestInputValidator, - fetchMessageInfosResponseValidator, fetchPinnedMessagesResponderInputValidator, - fetchPinnedMessagesResultValidator, searchMessagesResponderInputValidator, - searchMessagesResponseValidator, } from './responders/message-responders.js'; import { getInitialReduxStateResponder, diff --git a/keyserver/src/responders/message-report-responder.js b/keyserver/src/responders/message-report-responder.js --- a/keyserver/src/responders/message-report-responder.js +++ b/keyserver/src/responders/message-report-responder.js @@ -6,7 +6,6 @@ type MessageReportCreationRequest, type MessageReportCreationResult, } from 'lib/types/message-report-types.js'; -import { rawMessageInfoValidator } from 'lib/types/message-types.js'; import { tShape, tID } from 'lib/utils/validation-utils.js'; import createMessageReport from '../creators/message-report-creator.js'; @@ -17,9 +16,6 @@ messageID: tID, }); -export const messageReportCreationResultValidator: TInterface = - tShape({ messageInfo: rawMessageInfoValidator }); - async function messageReportCreationResponder( viewer: Viewer, request: MessageReportCreationRequest, diff --git a/keyserver/src/responders/message-responders.js b/keyserver/src/responders/message-responders.js --- a/keyserver/src/responders/message-responders.js +++ b/keyserver/src/responders/message-responders.js @@ -23,8 +23,6 @@ type SendEditMessageResponse, type FetchPinnedMessagesRequest, type FetchPinnedMessagesResult, - messageTruncationStatusesValidator, - rawMessageInfoValidator, type SearchMessagesResponse, type SearchMessagesRequest, } from 'lib/types/message-types.js'; @@ -32,7 +30,6 @@ import type { ReactionMessageData } from 'lib/types/messages/reaction.js'; import type { TextMessageData } from 'lib/types/messages/text.js'; import { threadPermissions } from 'lib/types/thread-permission-types.js'; -import { userInfosValidator } from 'lib/types/user-types.js'; import { ServerError } from 'lib/utils/errors.js'; import { values } from 'lib/utils/objects.js'; import { @@ -72,9 +69,6 @@ sidebarCreation: t.maybe(t.Boolean), }); -export const sendMessageResponseValidator: TInterface = - tShape({ newMessageInfo: rawMessageInfoValidator }); - async function textMessageCreationResponder( viewer: Viewer, request: SendTextMessageRequest, @@ -127,13 +121,6 @@ numberPerThread: t.maybe(t.Number), }); -export const fetchMessageInfosResponseValidator: TInterface = - tShape({ - rawMessageInfos: t.list(rawMessageInfoValidator), - truncationStatuses: messageTruncationStatusesValidator, - userInfos: userInfosValidator, - }); - async function messageFetchResponder( viewer: Viewer, request: FetchMessageInfosRequest, @@ -316,11 +303,6 @@ text: t.String, }); -export const sendEditMessageResponseValidator: TInterface = - tShape({ - newMessageInfos: t.list(rawMessageInfoValidator), - }); - async function editMessageCreationResponder( viewer: Viewer, request: SendEditMessageRequest, @@ -404,11 +386,6 @@ threadID: tID, }); -export const fetchPinnedMessagesResultValidator: TInterface = - tShape({ - pinnedMessages: t.list(rawMessageInfoValidator), - }); - async function fetchPinnedMessagesResponder( viewer: Viewer, request: FetchPinnedMessagesRequest, @@ -423,12 +400,6 @@ cursor: t.maybe(tID), }); -export const searchMessagesResponseValidator: TInterface = - tShape({ - messages: t.list(rawMessageInfoValidator), - endReached: t.Boolean, - }); - async function searchMessagesResponder( viewer: Viewer, request: SearchMessagesRequest, diff --git a/keyserver/src/responders/responder-validators.test.js b/keyserver/src/responders/responder-validators.test.js --- a/keyserver/src/responders/responder-validators.test.js +++ b/keyserver/src/responders/responder-validators.test.js @@ -16,14 +16,14 @@ inviteLinkVerificationResponseValidator, fetchInviteLinksResponseValidator, } from 'lib/types/validators/link-validators.js'; - -import { messageReportCreationResultValidator } from './message-report-responder.js'; +import { messageReportCreationResultValidator } from 'lib/types/validators/message-report-validators.js'; import { fetchMessageInfosResponseValidator, fetchPinnedMessagesResultValidator, sendEditMessageResponseValidator, sendMessageResponseValidator, -} from './message-responders.js'; +} from 'lib/types/validators/message-validators.js'; + import { relationshipErrorsValidator } from './relationship-responders.js'; import { reportCreationResponseValidator } from './report-responders.js'; import { userSearchResultValidator } from './search-responders.js'; diff --git a/lib/types/validators/message-report-validators.js b/lib/types/validators/message-report-validators.js new file mode 100644 --- /dev/null +++ b/lib/types/validators/message-report-validators.js @@ -0,0 +1,10 @@ +// @flow + +import type { TInterface } from 'tcomb'; + +import { tShape } from '../../utils/validation-utils.js'; +import { type MessageReportCreationResult } from '../message-report-types.js'; +import { rawMessageInfoValidator } from '../message-types.js'; + +export const messageReportCreationResultValidator: TInterface = + tShape({ messageInfo: rawMessageInfoValidator }); diff --git a/lib/types/validators/message-validators.js b/lib/types/validators/message-validators.js new file mode 100644 --- /dev/null +++ b/lib/types/validators/message-validators.js @@ -0,0 +1,43 @@ +// @flow + +import t, { type TInterface } from 'tcomb'; + +import { tShape } from '../../utils/validation-utils.js'; +import { + type FetchMessageInfosResponse, + type SendMessageResponse, + type SendEditMessageResponse, + type FetchPinnedMessagesResult, + type SearchMessagesResponse, +} from '../message-types.js'; +import { + rawMessageInfoValidator, + messageTruncationStatusesValidator, +} from '../message-types.js'; +import { userInfosValidator } from '../user-types.js'; + +export const sendMessageResponseValidator: TInterface = + tShape({ newMessageInfo: rawMessageInfoValidator }); + +export const sendEditMessageResponseValidator: TInterface = + tShape({ + newMessageInfos: t.list(rawMessageInfoValidator), + }); + +export const fetchMessageInfosResponseValidator: TInterface = + tShape({ + rawMessageInfos: t.list(rawMessageInfoValidator), + truncationStatuses: messageTruncationStatusesValidator, + userInfos: userInfosValidator, + }); + +export const fetchPinnedMessagesResultValidator: TInterface = + tShape({ + pinnedMessages: t.list(rawMessageInfoValidator), + }); + +export const searchMessagesResponseValidator: TInterface = + tShape({ + messages: t.list(rawMessageInfoValidator), + endReached: t.Boolean, + });