UNPKG

convex

Version:

Client for the Convex Cloud

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