UNPKG

convex

Version:

Client for the Convex Cloud

49 lines (48 loc) 1.34 kB
"use strict"; import { convexToJson, jsonToConvex } from "../../values/index.js"; import { performAsyncSyscall } from "./syscall.js"; import { QueryInitializerImpl } from "./query_impl.js"; export function setupReader() { return { get: async (id) => { const args = { id: convexToJson(id) }; const syscallJSON = await performAsyncSyscall("get", args); return jsonToConvex(syscallJSON); }, query: (tableName) => new QueryInitializerImpl(tableName) }; } export function setupWriter() { const reader = setupReader(); return { get: reader.get, query: reader.query, insert: async (table, value) => { const syscallJSON = await performAsyncSyscall("insert", { table, value: convexToJson(value) }); const syscallResult = jsonToConvex(syscallJSON); return syscallResult._id; }, patch: async (id, value) => { await performAsyncSyscall("update", { id: convexToJson(id), value: convexToJson(value) }); }, replace: async (id, value) => { await performAsyncSyscall("replace", { id: convexToJson(id), value: convexToJson(value) }); }, delete: async (id) => { await performAsyncSyscall("remove", { id: convexToJson(id) }); } }; } //# sourceMappingURL=database_impl.js.map