UNPKG

convex

Version:

Client for the Convex Cloud

52 lines (51 loc) 1.4 kB
"use strict"; import { convexToJson, jsonToConvex } from "@convex-dev/common"; import { performSyscall } from "./syscall.js"; import { QueryInitializerImpl } from "./query_impl.js"; export function setupReader() { return { get: (id) => { const syscallJSON = performSyscall("get", { id: convexToJson(id) }); const syscallResult = jsonToConvex(syscallJSON); return Promise.resolve(syscallResult); }, query: (tableName) => new QueryInitializerImpl(tableName) }; } export function setupWriter() { const reader = setupReader(); return { get: reader.get, query: reader.query, insert: (table, value) => { const syscallJSON = performSyscall("insert", { table, value: convexToJson(value) }); const syscallResult = jsonToConvex(syscallJSON); return Promise.resolve(syscallResult._id); }, patch: (id, value) => { performSyscall("update", { id: convexToJson(id), value: convexToJson(value) }); return Promise.resolve(); }, replace: (id, value) => { performSyscall("replace", { id: convexToJson(id), value: convexToJson(value) }); return Promise.resolve(); }, delete: (id) => { performSyscall("remove", { id: convexToJson(id) }); return Promise.resolve(); } }; } //# sourceMappingURL=database_impl.js.map