mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-02-15 06:58:10 +01:00
refactor and optimize search, add RQ for search
This commit is contained in:
parent
3d0bfaef51
commit
61cb2858bb
13 changed files with 71 additions and 102 deletions
|
|
@ -49,35 +49,14 @@ export function getSearchEnabled(): Promise<boolean> {
|
|||
return request.get(endpoints.searchEnabled());
|
||||
}
|
||||
|
||||
export function getSearchResults(q: string, pageNumber: string): Promise<t.TSearchResults> {
|
||||
return request.get(endpoints.search(q, pageNumber));
|
||||
}
|
||||
|
||||
export function getUser(): Promise<t.TUser> {
|
||||
return request.get(endpoints.user());
|
||||
}
|
||||
|
||||
type TSearchFetcherProps = {
|
||||
pre: () => void,
|
||||
q: string,
|
||||
pageNumber: string,
|
||||
callback: (data: any) => void
|
||||
};
|
||||
|
||||
export const searchConversations = async({ q, pageNumber, callback }: TSearchFetcherProps) => {
|
||||
return request.get(endpoints.search(q, pageNumber)).then(({ data }) => {
|
||||
callback(data);
|
||||
});
|
||||
export const searchConversations = async(q: string, pageNumber: string): Promise<t.TSearchResults> => {
|
||||
return request.get(endpoints.search(q, pageNumber));
|
||||
}
|
||||
|
||||
export const searchFetcher = async ({ pre, q, pageNumber, callback }: TSearchFetcherProps) => {
|
||||
pre();
|
||||
//@ts-ignore
|
||||
const { data } = await request.get(endpoints.search(q, pageNumber));
|
||||
console.log('search data', data);
|
||||
callback(data);
|
||||
};
|
||||
|
||||
export const getAIEndpoints = () => {
|
||||
return request.get(endpoints.aiEndpoints());
|
||||
}
|
||||
|
|
@ -120,7 +120,6 @@ export const useClearConversationsMutation = (): UseMutationResult<unknown> => {
|
|||
export const useGetConversationsQuery = (pageNumber: string): QueryObserverResult<t.Conversation[]> => {
|
||||
return useQuery([QueryKeys.allConversations, pageNumber], () =>
|
||||
dataService.getConversations(pageNumber), {
|
||||
// refetchOnWindowFocus: false,
|
||||
refetchOnReconnect: false,
|
||||
refetchOnMount: false,
|
||||
}
|
||||
|
|
@ -191,13 +190,18 @@ export const useDeleteAllPresetsMutation = (): UseMutationResult<unknown> => {
|
|||
});
|
||||
}
|
||||
|
||||
export const useSearchFetcher = (query: string, pageNumber: string, callback: () => void, config?: UseQueryOptions<t.TSearchResponse>): QueryObserverResult<t.TSearchResponse> => {
|
||||
return useQuery<t.TSearchResponse>([QueryKeys.searchResults, pageNumber, query], () =>
|
||||
dataService.searchConversations(query, pageNumber, callback), {
|
||||
export const useSearchQuery = (
|
||||
searchQuery: string,
|
||||
pageNumber: string,
|
||||
config?: UseQueryOptions<t.TSearchResults>
|
||||
): QueryObserverResult<t.TSearchResults> => {
|
||||
console.log('useSearchFetcher', searchQuery, pageNumber)
|
||||
return useQuery<t.TSearchResponse>([QueryKeys.searchResults, pageNumber, searchQuery], () =>
|
||||
dataService.searchConversations(searchQuery, pageNumber), {
|
||||
refetchOnWindowFocus: false,
|
||||
refetchOnReconnect: false,
|
||||
refetchOnMount: false,
|
||||
...config
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -121,7 +121,7 @@ export type TDeleteConversationResponse = {
|
|||
}
|
||||
};
|
||||
|
||||
export type TSearchResponse = {
|
||||
export type TSearchResults = {
|
||||
conversations: TConversation[],
|
||||
messages: TMessage[],
|
||||
pageNumber: string,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue