1
0
silverbullet/packages/silverbullet-web/syscalls/system.ts

24 lines
556 B
TypeScript

import { SysCallMapping } from "../../plugos/system";
import { Space } from "@silverbulletmd/common/spaces/space";
export function systemSyscalls(space: Space): SysCallMapping {
return {
"system.invokeFunction": async (
ctx,
env: string,
name: string,
...args: any[]
) => {
if (!ctx.plug) {
throw Error("No plug associated with context");
}
if (env === "client") {
return ctx.plug.invoke(name, args);
}
return space.invokeFunction(ctx.plug, env, name, args);
},
};
}