Files
yaak/src-web/hooks/useActiveWorkspace.ts
2023-03-18 18:49:01 -07:00

17 lines
590 B
TypeScript

import { useEffect, useState } from 'react';
import type { Workspace } from '../lib/models';
import { useActiveWorkspaceId } from './useActiveWorkspaceId';
import { useWorkspaces } from './useWorkspaces';
export function useActiveWorkspace(): Workspace | null {
const workspaces = useWorkspaces();
const workspaceId = useActiveWorkspaceId();
const [activeWorkspace, setActiveWorkspace] = useState<Workspace | null>(null);
useEffect(() => {
setActiveWorkspace(workspaces.find((w) => w.id === workspaceId) ?? null);
}, [workspaces, workspaceId]);
return activeWorkspace;
}