From a35f787559f0094de6f92a55faa682c7ede81f6f Mon Sep 17 00:00:00 2001 From: Joshen Lim Date: Sun, 12 Feb 2023 16:50:52 +0800 Subject: [PATCH] Add check for vault is enabled before loading vault in databaseLayout --- .../layouts/DatabaseLayout/DatabaseLayout.tsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/studio/components/layouts/DatabaseLayout/DatabaseLayout.tsx b/studio/components/layouts/DatabaseLayout/DatabaseLayout.tsx index 730528423fb..9b4794d08c4 100644 --- a/studio/components/layouts/DatabaseLayout/DatabaseLayout.tsx +++ b/studio/components/layouts/DatabaseLayout/DatabaseLayout.tsx @@ -22,6 +22,9 @@ const DatabaseLayout: FC = ({ title, children }) => { const router = useRouter() const page = router.pathname.split('/')[4] + const vaultExtension = meta.extensions.byId('supabase_vault') + const isVaultEnabled = vaultExtension !== undefined && vaultExtension?.installed_version !== null + const [loaded, setLoaded] = useState(isInitialized) useEffect(() => { @@ -38,10 +41,15 @@ const DatabaseLayout: FC = ({ title, children }) => { if (IS_PLATFORM) { backups.load() } - vault.load() } }, [ui.selectedProject?.ref]) + useEffect(() => { + if (isVaultEnabled) { + vault.load() + } + }, [ui.selectedProject?.ref, isVaultEnabled]) + // Optimization required: load logic should be at the page level // e.g backups page is waiting for meta.tables to load finish when it doesnt even need that data useEffect(() => {