Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions app/definitions/IMessage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ export interface IMessageFromServer {
drid?: string;
dcount?: number;
dml: string | Date;
score?: number;
}

export interface ILoadMoreMessage {
Expand Down
5 changes: 5 additions & 0 deletions app/definitions/rest/v1/chat.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,9 @@ export type ChatEndpoints = {
'chat.ignoreUser': {
GET: (params: { rid: string; userId: string; ignore: boolean }) => {};
};
'chat.search': {
GET: (params: { roomId: IServerRoom['_id']; searchText: string; count: number; offset: number }) => {
messages: IMessageFromServer[];
};
};
};
4 changes: 1 addition & 3 deletions app/lib/rocketchat/services/restApi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -623,10 +623,8 @@ export const getReadReceipts = (messageId: string): any =>
messageId
});

export const searchMessages = (roomId: string, searchText: string, count: number, offset: number): any =>
export const searchMessages = (roomId: string, searchText: string, count: number, offset: number) =>
// RC 0.60.0
// TODO: missing definitions from server
// @ts-ignore
sdk.get('chat.search', {
roomId,
searchText,
Expand Down
4 changes: 3 additions & 1 deletion app/views/SearchMessagesView/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -157,11 +157,13 @@ class SearchMessagesView extends React.Component<ISearchMessagesViewProps, ISear
if (result.success) {
return result.messages;
}
};

return [];
};
getMessages = async (searchText: string, debounced?: boolean) => {
try {
const messages = await this.searchMessages(searchText);
// @ts-ignore TODO: find a way to deal with the difference between IMessageFromServer and TMessageModel expected by state
this.setState(prevState => ({
messages: debounced ? messages : [...prevState.messages, ...messages],
loading: false
Expand Down