UNPKG

convex

Version:

Client for the Convex Cloud

36 lines (33 loc) 968 B
import { convexToJson } from "../../values/index.js"; import { version } from "../../index.js"; import { performAsyncSyscall } from "./syscall.js"; export interface ConvexActionDatabaseClient { runQuery(name: string, ...args: any[]): Promise<any>; runMutation(name: string, ...args: any[]): Promise<any>; } export function setupActionDatabaseClient( requestId: string ): ConvexActionDatabaseClient { return { runQuery: async (name, ...args) => { const syscallArgs = { name, args: convexToJson(args), version, requestId, }; const result = await performAsyncSyscall("actions/query", syscallArgs); return result; }, runMutation: async (name, ...args) => { const syscallArgs = { name, args: convexToJson(args), version, requestId, }; const result = await performAsyncSyscall("actions/mutation", syscallArgs); return result; }, }; }