UNPKG

@deno/kv

Version:

A Deno KV client library optimized for Node.js.

87 lines (86 loc) 4.04 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.decodeBinary = exports.encodeBinary = exports.decodeJson = exports.encodeJson = exports.createValue = exports.getDefaultValue = void 0; // @ts-nocheck const Check_js_1 = require("./Check.js"); const Mutation_js_1 = require("./Mutation.js"); const Enqueue_js_1 = require("./Enqueue.js"); const index_js_1 = require("../../../../../runtime/wire/index.js"); const serialize_js_1 = __importDefault(require("../../../../../runtime/wire/serialize.js")); const deserialize_js_1 = __importDefault(require("../../../../../runtime/wire/deserialize.js")); function getDefaultValue() { return { checks: [], mutations: [], enqueues: [], }; } exports.getDefaultValue = getDefaultValue; function createValue(partialValue) { return { ...getDefaultValue(), ...partialValue, }; } exports.createValue = createValue; function encodeJson(value) { const result = {}; result.checks = value.checks.map(value => (0, Check_js_1.encodeJson)(value)); result.mutations = value.mutations.map(value => (0, Mutation_js_1.encodeJson)(value)); result.enqueues = value.enqueues.map(value => (0, Enqueue_js_1.encodeJson)(value)); return result; } exports.encodeJson = encodeJson; function decodeJson(value) { const result = getDefaultValue(); result.checks = value.checks?.map((value) => (0, Check_js_1.decodeJson)(value)) ?? []; result.mutations = value.mutations?.map((value) => (0, Mutation_js_1.decodeJson)(value)) ?? []; result.enqueues = value.enqueues?.map((value) => (0, Enqueue_js_1.decodeJson)(value)) ?? []; return result; } exports.decodeJson = decodeJson; function encodeBinary(value) { const result = []; for (const tsValue of value.checks) { result.push([1, { type: index_js_1.WireType.LengthDelimited, value: (0, Check_js_1.encodeBinary)(tsValue) }]); } for (const tsValue of value.mutations) { result.push([2, { type: index_js_1.WireType.LengthDelimited, value: (0, Mutation_js_1.encodeBinary)(tsValue) }]); } for (const tsValue of value.enqueues) { result.push([3, { type: index_js_1.WireType.LengthDelimited, value: (0, Enqueue_js_1.encodeBinary)(tsValue) }]); } return (0, serialize_js_1.default)(result); } exports.encodeBinary = encodeBinary; function decodeBinary(binary) { const result = getDefaultValue(); const wireMessage = (0, deserialize_js_1.default)(binary); const wireFields = new Map(wireMessage); collection: { const wireValues = wireMessage.filter(([fieldNumber]) => fieldNumber === 1).map(([, wireValue]) => wireValue); const value = wireValues.map((wireValue) => wireValue.type === index_js_1.WireType.LengthDelimited ? (0, Check_js_1.decodeBinary)(wireValue.value) : undefined).filter(x => x !== undefined); if (!value.length) break collection; result.checks = value; } collection: { const wireValues = wireMessage.filter(([fieldNumber]) => fieldNumber === 2).map(([, wireValue]) => wireValue); const value = wireValues.map((wireValue) => wireValue.type === index_js_1.WireType.LengthDelimited ? (0, Mutation_js_1.decodeBinary)(wireValue.value) : undefined).filter(x => x !== undefined); if (!value.length) break collection; result.mutations = value; } collection: { const wireValues = wireMessage.filter(([fieldNumber]) => fieldNumber === 3).map(([, wireValue]) => wireValue); const value = wireValues.map((wireValue) => wireValue.type === index_js_1.WireType.LengthDelimited ? (0, Enqueue_js_1.decodeBinary)(wireValue.value) : undefined).filter(x => x !== undefined); if (!value.length) break collection; result.enqueues = value; } return result; } exports.decodeBinary = decodeBinary;