From 1e414af57c604770118a3fac59941bfaff0ab6db Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Sun, 18 Feb 2024 09:10:16 +0100 Subject: [PATCH] fix: issue with category removal and ready state (#129) --- .../nextjs/src/app/[locale]/boards/_context.tsx | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/apps/nextjs/src/app/[locale]/boards/_context.tsx b/apps/nextjs/src/app/[locale]/boards/_context.tsx index e3b69f1cb..82678dd63 100644 --- a/apps/nextjs/src/app/[locale]/boards/_context.tsx +++ b/apps/nextjs/src/app/[locale]/boards/_context.tsx @@ -1,7 +1,13 @@ "use client"; import type { PropsWithChildren } from "react"; -import { createContext, useCallback, useContext, useState } from "react"; +import { + createContext, + useCallback, + useContext, + useEffect, + useState, +} from "react"; import type { RouterOutputs } from "@homarr/api"; import { clientApi } from "@homarr/api/client"; @@ -24,6 +30,15 @@ export const BoardProvider = ({ refetchOnReconnect: false, }); + useEffect(() => { + setReadySections((previous) => + previous.filter((id) => + data.sections.some((section) => section.id === id), + ), + ); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [data.sections.length, setReadySections]); + const markAsReady = useCallback((id: string) => { setReadySections((previous) => previous.includes(id) ? previous : [...previous, id],