Changeset View
Changeset View
Standalone View
Standalone View
keyserver/src/responders/message-responders.js
Show All 15 Lines | import { | ||||
type SendMultimediaMessageRequest, | type SendMultimediaMessageRequest, | ||||
type SendReactionMessageRequest, | type SendReactionMessageRequest, | ||||
type SendEditMessageRequest, | type SendEditMessageRequest, | ||||
type FetchMessageInfosResponse, | type FetchMessageInfosResponse, | ||||
type FetchMessageInfosRequest, | type FetchMessageInfosRequest, | ||||
defaultNumberPerThread, | defaultNumberPerThread, | ||||
type SendMessageResponse, | type SendMessageResponse, | ||||
type SendEditMessageResponse, | type SendEditMessageResponse, | ||||
type FetchPinnedMessagesRequest, | |||||
type FetchPinnedMessagesResult, | |||||
} from 'lib/types/message-types.js'; | } from 'lib/types/message-types.js'; | ||||
import type { EditMessageData } from 'lib/types/messages/edit.js'; | import type { EditMessageData } from 'lib/types/messages/edit.js'; | ||||
import type { ReactionMessageData } from 'lib/types/messages/reaction.js'; | import type { ReactionMessageData } from 'lib/types/messages/reaction.js'; | ||||
import type { TextMessageData } from 'lib/types/messages/text.js'; | import type { TextMessageData } from 'lib/types/messages/text.js'; | ||||
import { threadPermissions } from 'lib/types/thread-types.js'; | import { threadPermissions } from 'lib/types/thread-types.js'; | ||||
import { ServerError } from 'lib/utils/errors.js'; | import { ServerError } from 'lib/utils/errors.js'; | ||||
import { values } from 'lib/utils/objects.js'; | import { values } from 'lib/utils/objects.js'; | ||||
import { | import { | ||||
tRegex, | tRegex, | ||||
tShape, | tShape, | ||||
tMediaMessageMedia, | tMediaMessageMedia, | ||||
} from 'lib/utils/validation-utils.js'; | } from 'lib/utils/validation-utils.js'; | ||||
import createMessages from '../creators/message-creator.js'; | import createMessages from '../creators/message-creator.js'; | ||||
import { SQL } from '../database/database.js'; | import { SQL } from '../database/database.js'; | ||||
import { | import { | ||||
fetchMessageInfos, | fetchMessageInfos, | ||||
fetchMessageInfoForLocalID, | fetchMessageInfoForLocalID, | ||||
fetchMessageInfoByID, | fetchMessageInfoByID, | ||||
fetchThreadMessagesCount, | fetchThreadMessagesCount, | ||||
fetchPinnedMessageInfos, | |||||
} from '../fetchers/message-fetchers.js'; | } from '../fetchers/message-fetchers.js'; | ||||
import { fetchServerThreadInfos } from '../fetchers/thread-fetchers.js'; | import { fetchServerThreadInfos } from '../fetchers/thread-fetchers.js'; | ||||
import { checkThreadPermission } from '../fetchers/thread-permission-fetchers.js'; | import { checkThreadPermission } from '../fetchers/thread-permission-fetchers.js'; | ||||
import { | import { | ||||
fetchImages, | fetchImages, | ||||
fetchMediaFromMediaMessageContent, | fetchMediaFromMediaMessageContent, | ||||
} from '../fetchers/upload-fetchers.js'; | } from '../fetchers/upload-fetchers.js'; | ||||
import { fetchKnownUserInfos } from '../fetchers/user-fetchers.js'; | import { fetchKnownUserInfos } from '../fetchers/user-fetchers.js'; | ||||
▲ Show 20 Lines • Show All 325 Lines • ▼ Show 20 Lines | for (const sidebarThreadValue of sidebarThreadValues) { | ||||
} | } | ||||
} | } | ||||
const newMessageInfos = await createMessages(viewer, messagesData); | const newMessageInfos = await createMessages(viewer, messagesData); | ||||
return { newMessageInfos }; | return { newMessageInfos }; | ||||
} | } | ||||
const fetchPinnedMessagesResponderInputValidator = tShape({ | |||||
threadID: t.String, | |||||
}); | |||||
async function fetchPinnedMessagesResponder( | |||||
viewer: Viewer, | |||||
input: any, | |||||
): Promise<FetchPinnedMessagesResult> { | |||||
const request: FetchPinnedMessagesRequest = input; | |||||
await validateInput( | |||||
viewer, | |||||
fetchPinnedMessagesResponderInputValidator, | |||||
input, | |||||
); | |||||
return await fetchPinnedMessageInfos(viewer, request); | |||||
} | |||||
export { | export { | ||||
textMessageCreationResponder, | textMessageCreationResponder, | ||||
messageFetchResponder, | messageFetchResponder, | ||||
multimediaMessageCreationResponder, | multimediaMessageCreationResponder, | ||||
reactionMessageCreationResponder, | reactionMessageCreationResponder, | ||||
editMessageCreationResponder, | editMessageCreationResponder, | ||||
fetchPinnedMessagesResponder, | |||||
}; | }; |