From 00fd080bc556febd56054abbaaa0dbeb0737365b Mon Sep 17 00:00:00 2001 From: Ivan Vasilov Date: Thu, 7 Aug 2025 12:07:52 +0200 Subject: [PATCH] Show the correct error on FE. --- .../components/interfaces/SQLEditor/MoveQueryModal.tsx | 9 +++++++-- .../pages/api/platform/projects/[ref]/content/index.ts | 4 ++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/studio/components/interfaces/SQLEditor/MoveQueryModal.tsx b/apps/studio/components/interfaces/SQLEditor/MoveQueryModal.tsx index cde07dafdd0..f33a70b9714 100644 --- a/apps/studio/components/interfaces/SQLEditor/MoveQueryModal.tsx +++ b/apps/studio/components/interfaces/SQLEditor/MoveQueryModal.tsx @@ -68,7 +68,11 @@ export const MoveQueryModal = ({ visible, snippets = [], onClose }: MoveQueryMod const [selectedId, setSelectedId] = useState() const { mutateAsync: createFolder, isLoading: isCreatingFolder } = - useSQLSnippetFolderCreateMutation() + useSQLSnippetFolderCreateMutation({ + onError: (error) => { + toast.error(`Failed to create new folder: ${error.message}`) + }, + }) const { mutateAsync: moveSnippetAsync, isLoading: isMovingSnippet } = useContentUpsertMutation({ onError: (error) => { toast.error(`Failed to move query: ${error.message}`) @@ -179,7 +183,8 @@ export const MoveQueryModal = ({ visible, snippets = [], onClose }: MoveQueryMod onClose() } catch (error: any) { - toast.error(`Failed to create new folder: ${error.message}`) + // error will be handled by the mutation's onError callback + console.error('Error moving snippets:', error) } } diff --git a/apps/studio/pages/api/platform/projects/[ref]/content/index.ts b/apps/studio/pages/api/platform/projects/[ref]/content/index.ts index 44d1407fd98..9294381954e 100644 --- a/apps/studio/pages/api/platform/projects/[ref]/content/index.ts +++ b/apps/studio/pages/api/platform/projects/[ref]/content/index.ts @@ -59,7 +59,7 @@ const handlePut = async (req: NextApiRequest, res: NextApiResponse) => { await getSnippet(updates.id) const updatedSnippet = await updateSnippet(updates.id, updates) return res.status(200).json(updatedSnippet) - } catch (error) { + } catch (error: any) { if (error instanceof Error && error.message.includes('not found')) { const body = req.body const { data, error } = SnippetSchema.safeParse(body) @@ -77,7 +77,7 @@ const handlePut = async (req: NextApiRequest, res: NextApiResponse) => { return res.status(500).json({ error: 'Failed to create snippet' }) } } - return res.status(500) + return res.status(500).json({ message: error?.message ?? 'Failed to update snippet' }) } }