mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-01-14 21:23:40 +01:00

21 lines
641 B
TypeScript
21 lines
641 B
TypeScript
import type { Workspace } from '@yaakapp/api';
|
|
import { useMemo } from 'react';
|
|
import { useParams } from 'react-router-dom';
|
|
import type { RouteParamsWorkspace } from './useAppRoutes';
|
|
import { useWorkspaces } from './useWorkspaces';
|
|
|
|
export function useActiveWorkspace(): Workspace | null {
|
|
const workspaceId = useActiveWorkspaceId();
|
|
const workspaces = useWorkspaces();
|
|
|
|
return useMemo(
|
|
() => workspaces.find((w) => w.id === workspaceId) ?? null,
|
|
[workspaces, workspaceId],
|
|
);
|
|
}
|
|
|
|
function useActiveWorkspaceId(): string | null {
|
|
const { workspaceId } = useParams<RouteParamsWorkspace>();
|
|
return workspaceId ?? null;
|
|
}
|