UNPKG

@deno/kv

Version:

A Deno KV client library optimized for Node.js.

122 lines (121 loc) 4.88 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 KvValue_js_1 = require("./KvValue.js"); const MutationType_js_1 = require("./MutationType.js"); const scalar_js_1 = require("../../../../../runtime/json/scalar.js"); const index_js_1 = require("../../../../../runtime/wire/index.js"); const serialize_js_1 = __importDefault(require("../../../../../runtime/wire/serialize.js")); const scalar_js_2 = require("../../../../../runtime/wire/scalar.js"); const Long_js_1 = __importDefault(require("../../../../../runtime/Long.js")); const deserialize_js_1 = __importDefault(require("../../../../../runtime/wire/deserialize.js")); function getDefaultValue() { return { key: new Uint8Array(), value: undefined, mutationType: "M_UNSPECIFIED", expireAtMs: "0", }; } exports.getDefaultValue = getDefaultValue; function createValue(partialValue) { return { ...getDefaultValue(), ...partialValue, }; } exports.createValue = createValue; function encodeJson(value) { const result = {}; if (value.key !== undefined) result.key = scalar_js_1.tsValueToJsonValueFns.bytes(value.key); if (value.value !== undefined) result.value = (0, KvValue_js_1.encodeJson)(value.value); if (value.mutationType !== undefined) result.mutationType = scalar_js_1.tsValueToJsonValueFns.enum(value.mutationType); if (value.expireAtMs !== undefined) result.expireAtMs = scalar_js_1.tsValueToJsonValueFns.int64(value.expireAtMs); return result; } exports.encodeJson = encodeJson; function decodeJson(value) { const result = getDefaultValue(); if (value.key !== undefined) result.key = scalar_js_1.jsonValueToTsValueFns.bytes(value.key); if (value.value !== undefined) result.value = (0, KvValue_js_1.decodeJson)(value.value); if (value.mutationType !== undefined) result.mutationType = scalar_js_1.jsonValueToTsValueFns.enum(value.mutationType); if (value.expireAtMs !== undefined) result.expireAtMs = scalar_js_1.jsonValueToTsValueFns.int64(value.expireAtMs); return result; } exports.decodeJson = decodeJson; function encodeBinary(value) { const result = []; if (value.key !== undefined) { const tsValue = value.key; result.push([1, scalar_js_2.tsValueToWireValueFns.bytes(tsValue)]); } if (value.value !== undefined) { const tsValue = value.value; result.push([2, { type: index_js_1.WireType.LengthDelimited, value: (0, KvValue_js_1.encodeBinary)(tsValue) }]); } if (value.mutationType !== undefined) { const tsValue = value.mutationType; result.push([3, { type: index_js_1.WireType.Varint, value: new Long_js_1.default(MutationType_js_1.name2num[tsValue]) }]); } if (value.expireAtMs !== undefined) { const tsValue = value.expireAtMs; result.push([4, scalar_js_2.tsValueToWireValueFns.int64(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); field: { const wireValue = wireFields.get(1); if (wireValue === undefined) break field; const value = scalar_js_2.wireValueToTsValueFns.bytes(wireValue); if (value === undefined) break field; result.key = value; } field: { const wireValue = wireFields.get(2); if (wireValue === undefined) break field; const value = wireValue.type === index_js_1.WireType.LengthDelimited ? (0, KvValue_js_1.decodeBinary)(wireValue.value) : undefined; if (value === undefined) break field; result.value = value; } field: { const wireValue = wireFields.get(3); if (wireValue === undefined) break field; const value = wireValue.type === index_js_1.WireType.Varint ? MutationType_js_1.num2name[wireValue.value[0]] : undefined; if (value === undefined) break field; result.mutationType = value; } field: { const wireValue = wireFields.get(4); if (wireValue === undefined) break field; const value = scalar_js_2.wireValueToTsValueFns.int64(wireValue); if (value === undefined) break field; result.expireAtMs = value; } return result; } exports.decodeBinary = decodeBinary;