1
0
silverbullet/web/syscalls/clientStore.ts

20 lines
606 B
TypeScript
Raw Normal View History

2023-08-26 06:31:51 +00:00
import { KVStore } from "../../plugos/lib/kv_store.ts";
import { storeSyscalls } from "../../plugos/syscalls/store.ts";
import { proxySyscalls } from "../../plugos/syscalls/transport.ts";
import { SysCallMapping } from "../../plugos/system.ts";
2022-04-04 13:25:07 +00:00
export function clientStoreSyscalls(
2023-08-26 06:31:51 +00:00
db: KVStore,
): SysCallMapping {
2023-08-26 06:31:51 +00:00
const localStoreCalls = storeSyscalls(db);
2022-04-05 15:02:17 +00:00
return proxySyscalls(
2022-04-04 13:25:07 +00:00
["clientStore.get", "clientStore.set", "clientStore.delete"],
(ctx, name, ...args) => {
2023-08-26 06:31:51 +00:00
return localStoreCalls[name.replace("clientStore.", "store.")](
ctx,
...args,
);
},
2022-04-04 13:25:07 +00:00
);
}