UNPKG

@tai-kun/surrealdb

Version:

The SurrealDB SDK for JavaScript

40 lines (38 loc) 4.07 kB
var __defProp = Object.defineProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); // src/engine/process-query-request.ts import { SurrealValueError } from "../errors/index.mjs"; function processQueryRequest(request) { const [arg0, args] = request.params; const { text, vars: preparedVars, slots } = typeof arg0 === "string" ? { text: arg0, vars: {}, slots: [] } : arg0; const vars = Object.assign({}, args); const required = []; for (const slot of slots) { if (slot.name in vars) { vars[slot.name] = slot._parse(vars[slot.name]); } else if (slot.isRequired) { required.push(slot.name); } else if ("defaultValue" in slot) { vars[slot.name] = slot.defaultValue; } } if (required.length > 0) { throw new SurrealValueError( `variables containing key(s) ${slots.map((slot) => slot.name)}`, `without key(s) ${required}` ); } return { method: request.method, params: [text, Object.assign({}, preparedVars, vars)] }; } __name(processQueryRequest, "processQueryRequest"); export { processQueryRequest as default }; //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2VuZ2luZS9wcm9jZXNzLXF1ZXJ5LXJlcXVlc3QudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7IFN1cnJlYWxWYWx1ZUVycm9yIH0gZnJvbSBcIkB0YWkta3VuL3N1cnJlYWxkYi9lcnJvcnNcIjtcbmltcG9ydCB0eXBlIHtcbiAgUHJlcGFyZWRRdWVyeUxpa2UsXG4gIFJwY1F1ZXJ5UmVxdWVzdCxcbn0gZnJvbSBcIkB0YWkta3VuL3N1cnJlYWxkYi90eXBlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBwcm9jZXNzUXVlcnlSZXF1ZXN0KHJlcXVlc3Q6IFJwY1F1ZXJ5UmVxdWVzdCk6IHtcbiAgbWV0aG9kOiBcInF1ZXJ5XCI7XG4gIHBhcmFtczogW1xuICAgIHRleHQ6IFByZXBhcmVkUXVlcnlMaWtlW1widGV4dFwiXSxcbiAgICB2YXJzOiB7XG4gICAgICByZWFkb25seSBbcDogc3RyaW5nXTogdW5rbm93bjtcbiAgICB9LFxuICBdO1xufSB7XG4gIGNvbnN0IFthcmcwLCBhcmdzXSA9IHJlcXVlc3QucGFyYW1zO1xuICBjb25zdCB7XG4gICAgdGV4dCxcbiAgICB2YXJzOiBwcmVwYXJlZFZhcnMsXG4gICAgc2xvdHMsXG4gIH0gPSB0eXBlb2YgYXJnMCA9PT0gXCJzdHJpbmdcIlxuICAgID8geyB0ZXh0OiBhcmcwLCB2YXJzOiB7fSwgc2xvdHM6IFtdIH1cbiAgICA6IGFyZzA7XG4gIGNvbnN0IHZhcnMgPSBPYmplY3QuYXNzaWduKHt9LCBhcmdzKSBhcyB7IFtwOiBzdHJpbmddOiB1bmtub3duIH07XG4gIGNvbnN0IHJlcXVpcmVkOiBzdHJpbmdbXSA9IFtdO1xuXG4gIGZvciAoY29uc3Qgc2xvdCBvZiBzbG90cykge1xuICAgIGlmIChzbG90Lm5hbWUgaW4gdmFycykge1xuICAgICAgdmFyc1tzbG90Lm5hbWVdID0gc2xvdC5fcGFyc2UodmFyc1tzbG90Lm5hbWVdKTtcbiAgICB9IGVsc2UgaWYgKHNsb3QuaXNSZXF1aXJlZCkge1xuICAgICAgcmVxdWlyZWQucHVzaChzbG90Lm5hbWUpO1xuICAgIH0gZWxzZSBpZiAoXCJkZWZhdWx0VmFsdWVcIiBpbiBzbG90KSB7XG4gICAgICB2YXJzW3Nsb3QubmFtZV0gPSBzbG90LmRlZmF1bHRWYWx1ZTtcbiAgICB9XG4gIH1cblxuICBpZiAocmVxdWlyZWQubGVuZ3RoID4gMCkge1xuICAgIHRocm93IG5ldyBTdXJyZWFsVmFsdWVFcnJvcihcbiAgICAgIGB2YXJpYWJsZXMgY29udGFpbmluZyBrZXkocykgJHtzbG90cy5tYXAoc2xvdCA9PiBzbG90Lm5hbWUpfWAsXG4gICAgICBgd2l0aG91dCBrZXkocykgJHtyZXF1aXJlZH1gLFxuICAgICk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIG1ldGhvZDogcmVxdWVzdC5tZXRob2QsXG4gICAgcGFyYW1zOiBbdGV4dCwgT2JqZWN0LmFzc2lnbih7fSwgcHJlcGFyZWRWYXJzLCB2YXJzKV0sXG4gIH07XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7O0FBQUEsU0FBUyx5QkFBeUI7QUFNbkIsU0FBUixvQkFBcUMsU0FRMUM7QUFDQSxRQUFNLENBQUMsTUFBTSxJQUFJLElBQUksUUFBUTtBQUM3QixRQUFNO0FBQUEsSUFDSjtBQUFBLElBQ0EsTUFBTTtBQUFBLElBQ047QUFBQSxFQUNGLElBQUksT0FBTyxTQUFTLFdBQ2hCLEVBQUUsTUFBTSxNQUFNLE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxFQUFFLElBQ2xDO0FBQ0osUUFBTSxPQUFPLE9BQU8sT0FBTyxDQUFDLEdBQUcsSUFBSTtBQUNuQyxRQUFNLFdBQXFCLENBQUM7QUFFNUIsYUFBVyxRQUFRLE9BQU87QUFDeEIsUUFBSSxLQUFLLFFBQVEsTUFBTTtBQUNyQixXQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssT0FBTyxLQUFLLEtBQUssSUFBSSxDQUFDO0FBQUEsSUFDL0MsV0FBVyxLQUFLLFlBQVk7QUFDMUIsZUFBUyxLQUFLLEtBQUssSUFBSTtBQUFBLElBQ3pCLFdBQVcsa0JBQWtCLE1BQU07QUFDakMsV0FBSyxLQUFLLElBQUksSUFBSSxLQUFLO0FBQUEsSUFDekI7QUFBQSxFQUNGO0FBRUEsTUFBSSxTQUFTLFNBQVMsR0FBRztBQUN2QixVQUFNLElBQUk7QUFBQSxNQUNSLCtCQUErQixNQUFNLElBQUksVUFBUSxLQUFLLElBQUksQ0FBQztBQUFBLE1BQzNELGtCQUFrQixRQUFRO0FBQUEsSUFDNUI7QUFBQSxFQUNGO0FBRUEsU0FBTztBQUFBLElBQ0wsUUFBUSxRQUFRO0FBQUEsSUFDaEIsUUFBUSxDQUFDLE1BQU0sT0FBTyxPQUFPLENBQUMsR0FBRyxjQUFjLElBQUksQ0FBQztBQUFBLEVBQ3REO0FBQ0Y7QUF6Q3dCOyIsCiAgIm5hbWVzIjogW10KfQo=