From 33dcb2a55936aab61b0f527deb625b669c882aab Mon Sep 17 00:00:00 2001 From: su-fen Date: Wed, 4 Mar 2026 00:33:17 +0800 Subject: [PATCH] fix(gui): resolve eslint errors in UI components and useVolumes hook - Remove non-component variant exports from badge, button, tabs (react-refresh) - Replace unsafe return in finally block with conditional in useVolumes --- crates/cratebay-gui/src/components/ui/badge.tsx | 2 +- .../cratebay-gui/src/components/ui/button.tsx | 2 +- crates/cratebay-gui/src/components/ui/tabs.tsx | 2 +- crates/cratebay-gui/src/hooks/useVolumes.ts | 17 ++++++++++++----- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/crates/cratebay-gui/src/components/ui/badge.tsx b/crates/cratebay-gui/src/components/ui/badge.tsx index 6eb2a05..0932c51 100644 --- a/crates/cratebay-gui/src/components/ui/badge.tsx +++ b/crates/cratebay-gui/src/components/ui/badge.tsx @@ -45,4 +45,4 @@ function Badge({ ) } -export { Badge, badgeVariants } +export { Badge } diff --git a/crates/cratebay-gui/src/components/ui/button.tsx b/crates/cratebay-gui/src/components/ui/button.tsx index 4d38506..4ea8a74 100644 --- a/crates/cratebay-gui/src/components/ui/button.tsx +++ b/crates/cratebay-gui/src/components/ui/button.tsx @@ -61,4 +61,4 @@ function Button({ ) } -export { Button, buttonVariants } +export { Button } diff --git a/crates/cratebay-gui/src/components/ui/tabs.tsx b/crates/cratebay-gui/src/components/ui/tabs.tsx index b463afd..549be6c 100644 --- a/crates/cratebay-gui/src/components/ui/tabs.tsx +++ b/crates/cratebay-gui/src/components/ui/tabs.tsx @@ -88,4 +88,4 @@ function TabsContent({ ) } -export { Tabs, TabsList, TabsTrigger, TabsContent, tabsListVariants } +export { Tabs, TabsList, TabsTrigger, TabsContent } diff --git a/crates/cratebay-gui/src/hooks/useVolumes.ts b/crates/cratebay-gui/src/hooks/useVolumes.ts index d5c8988..04a24b2 100644 --- a/crates/cratebay-gui/src/hooks/useVolumes.ts +++ b/crates/cratebay-gui/src/hooks/useVolumes.ts @@ -64,16 +64,23 @@ export function useVolumes() { } catch (e) { if (reqId !== latestReqId.current) return setError(String(e)) - } finally { - if (reqId !== latestReqId.current) return + } + if (reqId === latestReqId.current) { setLoading(false) } }, []) useEffect(() => { - fetchVolumes() - const iv = setInterval(fetchVolumes, 5000) - return () => clearInterval(iv) + const initialFetch = setTimeout(() => { + void fetchVolumes() + }, 0) + const iv = setInterval(() => { + void fetchVolumes() + }, 5000) + return () => { + clearTimeout(initialFetch) + clearInterval(iv) + } }, [fetchVolumes]) const createVolume = useCallback(async (name: string, driver: string) => {