diff --git a/src/components/layout/Templates/BoardLayout.tsx b/src/components/layout/Templates/BoardLayout.tsx
index 4f165b12c..81f4ed712 100644
--- a/src/components/layout/Templates/BoardLayout.tsx
+++ b/src/components/layout/Templates/BoardLayout.tsx
@@ -16,7 +16,7 @@ import { Trans, useTranslation } from 'next-i18next';
import Link from 'next/link';
import { useRouter } from 'next/router';
import { env } from 'process';
-import { useEffect, useState } from 'react';
+import { useState } from 'react';
import { useEditModeStore } from '~/components/Dashboard/Views/useEditModeStore';
import { useNamedWrapperColumnCount } from '~/components/Dashboard/Wrappers/gridstack/store';
import ContainerActionBar from '~/components/Manage/Tools/Docker/ContainerActionBar';
@@ -30,14 +30,15 @@ import { MainLayout } from './MainLayout';
type BoardLayoutProps = {
children: React.ReactNode;
+ isDockerEnabled?: boolean;
};
-export const BoardLayout = ({ children }: BoardLayoutProps) => {
+export const BoardLayout = ({ children, isDockerEnabled = false }: BoardLayoutProps) => {
const { config } = useConfigContext();
const { data: session } = useSession();
return (
- }>
+ }>
{children}
@@ -46,7 +47,7 @@ export const BoardLayout = ({ children }: BoardLayoutProps) => {
);
};
-export const HeaderActions = () => {
+export const HeaderActions = ({isDockerEnabled = false} : { isDockerEnabled: boolean}) => {
const { data: sessionData } = useSession();
if (!sessionData?.user?.isAdmin) return null;
@@ -54,7 +55,7 @@ export const HeaderActions = () => {
return (
<>
-
+ {isDockerEnabled && }
>
);
diff --git a/src/pages/board/index.tsx b/src/pages/board/index.tsx
index 627baf176..661db269c 100644
--- a/src/pages/board/index.tsx
+++ b/src/pages/board/index.tsx
@@ -1,4 +1,3 @@
-import Consola from 'consola';
import { GetServerSidePropsContext, InferGetServerSidePropsType } from 'next';
import { SSRConfig } from 'next-i18next';
import { Dashboard } from '~/components/Dashboard/Dashboard';
@@ -16,19 +15,19 @@ import { api } from '~/utils/api';
export default function BoardPage({
config: initialConfig,
- dockerIsConfigured,
+ isDockerEnabled,
initialContainers,
}: InferGetServerSidePropsType) {
useInitConfig(initialConfig);
const { data } = api.docker.containers.useQuery(undefined, {
- initialData: initialContainers,
- enabled: dockerIsConfigured,
+ initialData: initialContainers ?? undefined,
+ enabled: isDockerEnabled,
cacheTime: 60 * 1000 * 5,
staleTime: 60 * 1000 * 1,
});
return (
-
+
);
@@ -68,7 +67,7 @@ export const getServerSideProps = async (context: GetServerSidePropsContext) =>
try {
if (session?.user.isAdmin == true) containers = await caller.containers();
} catch (error) {
- Consola.error(`The docker integration failed with the following error: ${error}`);
+
}
return {
props: {
@@ -76,8 +75,8 @@ export const getServerSideProps = async (context: GetServerSidePropsContext) =>
primaryColor: config.settings.customization.colors.primary,
secondaryColor: config.settings.customization.colors.secondary,
primaryShade: config.settings.customization.colors.shade,
- dockerIsConfigured: containers != undefined,
- initialContainers: containers,
+ isDockerEnabled: containers != undefined,
+ initialContainers: containers ?? null,
...translations,
},
};