Spaces:
Paused
Paused
Download client/hooks/useDrawerState.ts from Nymbo/MiniSearch: direct link, hf CLI and curl.
- Browser
- Download file 630 Bytes
-
https://huggingface.co/spaces/Nymbo/MiniSearch/resolve/main/client/hooks/useDrawerState.ts
- Command line
-
hf download hf://spaces/Nymbo/MiniSearch/client/hooks/useDrawerState.ts
-
curl -L -o useDrawerState.ts https://huggingface.co/spaces/Nymbo/MiniSearch/resolve/main/client/hooks/useDrawerState.ts
630 Bytes
| import { useCallback, useState } from "react"; | |
| import { addLogEntry } from "@/modules/logEntries"; | |
| /** Manages open/close state for a drawer, logging the provided messages on each transition. */ | |
| export function useDrawerState(openMessage: string, closeMessage: string) { | |
| const [isDrawerOpen, setIsDrawerOpen] = useState(false); | |
| const openDrawer = useCallback(() => { | |
| setIsDrawerOpen(true); | |
| addLogEntry(openMessage); | |
| }, [openMessage]); | |
| const closeDrawer = useCallback(() => { | |
| setIsDrawerOpen(false); | |
| addLogEntry(closeMessage); | |
| }, [closeMessage]); | |
| return { isDrawerOpen, openDrawer, closeDrawer }; | |
| } | |