import * as t from './types'; import request from './request'; import * as endpoints from './api-endpoints'; export function getConversations(pageNumber: string): Promise { return request.get(endpoints.conversations(pageNumber)); } export function abortRequestWithMessage(endpoint: string, abortKey: string, message: string): Promise { return request.post(endpoints.abortRequest(endpoint), { arg: {abortKey, message} }); } export function deleteConversation(payload: t.TDeleteConversationRequest) { //todo: this should be a DELETE request return request.post(endpoints.deleteConversation(), {arg: payload}); } export function clearAllConversations(): Promise { return request.post(endpoints.deleteConversation(), {arg: {}}); } export function getMessagesByConvoId(id: string): Promise { return request.get(endpoints.messages(id)); } export function getConversationById(id: string): Promise { return request.get(endpoints.conversationById(id)); } export function updateConversation( payload: t.TUpdateConversationRequest ): Promise { return request.post(endpoints.updateConversation(), {arg: payload}); } export function getPresets(): Promise { return request.get(endpoints.presets()); } export function createPreset(payload: t.TPreset): Promise { return request.post(endpoints.presets(), payload); } export function updatePreset(payload: t.TPreset): Promise { return request.post(endpoints.presets(), payload); } export function deletePreset(arg: t.TPreset | {}): Promise { return request.post(endpoints.deletePreset(), arg); } export function getSearchEnabled(): Promise { return request.get(endpoints.searchEnabled()); } export function getUser(): Promise { return request.get(endpoints.user()); } export const searchConversations = async(q: string, pageNumber: string): Promise => { return request.get(endpoints.search(q, pageNumber)); } export const getAIEndpoints = () => { return request.get(endpoints.aiEndpoints()); } export const updateTokenCount = (text: string) => { return request.post(endpoints.tokenizer(), {arg: text}); }