From 12e731b5c03fa788c9f0d00a955b7b01b4c570a0 Mon Sep 17 00:00:00 2001 From: HugoCasa Date: Tue, 7 Nov 2023 12:52:56 +0100 Subject: [PATCH] fix: handle graphql invalid response (#2582) --- .../lib/components/DBSchemaExplorer.svelte | 13 ++++++-- .../src/lib/components/TestConnection.svelte | 32 ++++++++++++++++--- 2 files changed, 38 insertions(+), 7 deletions(-) diff --git a/frontend/src/lib/components/DBSchemaExplorer.svelte b/frontend/src/lib/components/DBSchemaExplorer.svelte index 8db0e7775a..998ab9542c 100644 --- a/frontend/src/lib/components/DBSchemaExplorer.svelte +++ b/frontend/src/lib/components/DBSchemaExplorer.svelte @@ -205,9 +205,16 @@ GROUP BY table_name".replace('{dataset.id}', dataset.id) publicOnly: !!schema.public || !!schema.PUBLIC } } else { - $dbSchemas[resourcePath] = { - lang: 'graphql', - schema: testResult.result + if (typeof testResult.result !== 'object' || !('__schema' in testResult.result)) { + console.error('Invalid GraphQL schema') + if (drawer?.isOpen()) { + sendUserToast('Invalid GraphQL schema', true) + } + } else { + $dbSchemas[resourcePath] = { + lang: 'graphql', + schema: testResult.result + } } } } diff --git a/frontend/src/lib/components/TestConnection.svelte b/frontend/src/lib/components/TestConnection.svelte index c762912a74..5afd849dc5 100644 --- a/frontend/src/lib/components/TestConnection.svelte +++ b/frontend/src/lib/components/TestConnection.svelte @@ -1,5 +1,5 @@