Skip to content
File

Blob: src/client/stores/db/workspace-navigation.ts

typescript26 lines
1import { db } from "./bland-db";
2 
3async function setLastVisitedWorkspaceId(workspaceId: string | null): Promise<void> {
4 await db.workspaceMeta.put({ key: "lastVisitedWorkspaceId", value: workspaceId });
5}
6 
7async function setLastVisitedPage(workspaceId: string, pageId: string): Promise<void> {
8 await db.lastVisitedPages.put({ workspaceId, pageId });
9}
10 
11async function clearForWorkspace(workspaceId: string): Promise<void> {
12 await db.transaction("rw", [db.lastVisitedPages, db.workspaceMeta], async () => {
13 await db.lastVisitedPages.delete(workspaceId);
14 const current = await db.workspaceMeta.get("lastVisitedWorkspaceId");
15 if (current?.value === workspaceId) {
16 await db.workspaceMeta.put({ key: "lastVisitedWorkspaceId", value: null });
17 }
18 });
19}
20 
21export const navigationCommands = {
22 setLastVisitedWorkspaceId,
23 setLastVisitedPage,
24 clearForWorkspace,
25};