mirror of https://github.com/buster-so/buster.git
update delete endpoints
This commit is contained in:
parent
94be03ee93
commit
0ce645d893
|
@ -10,7 +10,7 @@ export const createApiKey = async (name: string) => {
|
|||
};
|
||||
|
||||
export const deleteApiKey = async (id: string) => {
|
||||
return mainApi.delete(`/api_keys/${id}`).then(() => {});
|
||||
return mainApi.delete(`/api_keys/${id}`).then((res) => res.data);
|
||||
};
|
||||
|
||||
export const getApiKey = async (id: string) => {
|
||||
|
|
|
@ -60,8 +60,8 @@ export const updateChat = async ({
|
|||
return mainApi.put<BusterChat>(`${CHATS_BASE}/${id}`, data).then((res) => res.data);
|
||||
};
|
||||
|
||||
export const deleteChat = async (ids: string[]): Promise<void> => {
|
||||
return mainApi.delete(`${CHATS_BASE}`, { data: { ids } }).then((res) => res.data);
|
||||
export const deleteChat = async (data: string[]): Promise<void> => {
|
||||
return mainApi.delete(`${CHATS_BASE}`, { data }).then((res) => res.data);
|
||||
};
|
||||
|
||||
export const duplicateChat = async ({
|
||||
|
|
|
@ -64,13 +64,15 @@ export const collectionsUpdateCollection = async (params: {
|
|||
.then((res) => res.data);
|
||||
};
|
||||
|
||||
export const collectionsDeleteCollection = async (params: {
|
||||
export const collectionsDeleteCollection = async (data: {
|
||||
/** Array of collection IDs to be deleted */
|
||||
ids: string[];
|
||||
}) => {
|
||||
return await mainApi.delete<BusterCollection>('/collections', {
|
||||
data: { ids: params.ids }
|
||||
}).then((res) => res.data);
|
||||
return await mainApi
|
||||
.delete<BusterCollection>('/collections', {
|
||||
data
|
||||
})
|
||||
.then((res) => res.data);
|
||||
};
|
||||
|
||||
// share collections
|
||||
|
|
|
@ -72,8 +72,8 @@ export const dashboardsUpdateDashboard = async (params: {
|
|||
.then((res) => res.data);
|
||||
};
|
||||
|
||||
export const dashboardsDeleteDashboard = async ({ ids }: { ids: string[] }) => {
|
||||
return await mainApi.delete<null>(`/dashboards`, { data: { ids } }).then((res) => res.data);
|
||||
export const dashboardsDeleteDashboard = async (data: { ids: string[] }) => {
|
||||
return await mainApi.delete<null>(`/dashboards`, { data }).then((res) => res.data);
|
||||
};
|
||||
|
||||
// share dashboards
|
||||
|
|
|
@ -25,8 +25,8 @@ export const updateDatasetGroup = async (
|
|||
return mainApi.put(`/dataset_groups`, data).then((res) => res.data);
|
||||
};
|
||||
|
||||
export const deleteDatasetGroup = async (ids: string[]) => {
|
||||
return mainApi.delete(`/dataset_groups`, { data: { ids } }).then((res) => res.data);
|
||||
export const deleteDatasetGroup = async (data: string[]) => {
|
||||
return mainApi.delete(`/dataset_groups`, { data }).then((res) => res.data);
|
||||
};
|
||||
|
||||
export const getDatasetGroup = async (id: string) => {
|
||||
|
|
|
@ -5,12 +5,15 @@ import { Copy, Trash, Pencil } from '@/components/ui/icons';
|
|||
import { useDeleteChat, useDuplicateChat } from '@/api/buster_rest/chats';
|
||||
import { CHAT_HEADER_TITLE_ID } from '../ChatHeaderTitle';
|
||||
import { timeout } from '@/lib';
|
||||
import { useRouter } from 'next/navigation';
|
||||
import { BusterRoutes, createBusterRoute } from '@/routes';
|
||||
|
||||
export const ChatContainerHeaderDropdown: React.FC<{
|
||||
children: React.ReactNode;
|
||||
}> = React.memo(({ children }) => {
|
||||
const chatId = useChatIndividualContextSelector((state) => state.chatId);
|
||||
const { mutate: deleteChat } = useDeleteChat();
|
||||
const router = useRouter();
|
||||
const { mutate: deleteChat, isPending: isDeleting } = useDeleteChat();
|
||||
const { mutate: duplicateChat } = useDuplicateChat();
|
||||
const currentMessageId = useChatIndividualContextSelector((state) => state.currentMessageId);
|
||||
|
||||
|
@ -20,7 +23,14 @@ export const ChatContainerHeaderDropdown: React.FC<{
|
|||
label: 'Delete chat',
|
||||
value: 'delete',
|
||||
icon: <Trash />,
|
||||
onClick: () => chatId && deleteChat([chatId])
|
||||
loading: isDeleting,
|
||||
onClick: () =>
|
||||
chatId &&
|
||||
deleteChat([chatId], {
|
||||
onSuccess: () => {
|
||||
router.push(createBusterRoute({ route: BusterRoutes.APP_CHAT }));
|
||||
}
|
||||
})
|
||||
},
|
||||
{
|
||||
label: 'Duplicate chat',
|
||||
|
@ -44,7 +54,7 @@ export const ChatContainerHeaderDropdown: React.FC<{
|
|||
}
|
||||
}
|
||||
];
|
||||
}, [chatId, currentMessageId, deleteChat, duplicateChat]);
|
||||
}, [chatId, isDeleting, currentMessageId, deleteChat, duplicateChat]);
|
||||
|
||||
return (
|
||||
<Dropdown align="end" items={menuItem}>
|
||||
|
|
Loading…
Reference in New Issue