Files
yaak-mountain-loop/src-web/hooks/useSidebarWidth.ts
Gregory Schier 5919fae739 Run oxfmt across repo, add format script and ignore config
Format all non-generated files with oxfmt via `vp fmt`. Add
.oxfmtignore to skip bindings/ and wasm-pack output. Add npm
format script and update DEVELOPMENT.md docs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 09:52:11 -07:00

15 lines
529 B
TypeScript

import { useAtomValue } from "jotai";
import { useCallback } from "react";
import { useLocalStorage } from "react-use";
import { activeWorkspaceIdAtom } from "./useActiveWorkspace";
export function useSidebarWidth() {
const activeWorkspaceId = useAtomValue(activeWorkspaceIdAtom);
const [width, setWidth] = useLocalStorage<number>(
`sidebar_width::${activeWorkspaceId ?? "n/a"}`,
250,
);
const resetWidth = useCallback(() => setWidth(250), [setWidth]);
return [width ?? null, setWidth, resetWidth] as const;
}