@deno/kv
Version:
A Deno KV client library optimized for Node.js.
75 lines (74 loc) • 3.51 kB
JavaScript
// @ts-nocheck
import { encodeJson as encodeJson_1, decodeJson as decodeJson_1, encodeBinary as encodeBinary_1, decodeBinary as decodeBinary_1, } from "./Check.js";
import { encodeJson as encodeJson_2, decodeJson as decodeJson_2, encodeBinary as encodeBinary_2, decodeBinary as decodeBinary_2, } from "./Mutation.js";
import { encodeJson as encodeJson_3, decodeJson as decodeJson_3, encodeBinary as encodeBinary_3, decodeBinary as decodeBinary_3, } from "./Enqueue.js";
import { WireType, } from "../../../../../runtime/wire/index.js";
import { default as serialize, } from "../../../../../runtime/wire/serialize.js";
import { default as deserialize, } from "../../../../../runtime/wire/deserialize.js";
export function getDefaultValue() {
return {
checks: [],
mutations: [],
enqueues: [],
};
}
export function createValue(partialValue) {
return {
...getDefaultValue(),
...partialValue,
};
}
export function encodeJson(value) {
const result = {};
result.checks = value.checks.map(value => encodeJson_1(value));
result.mutations = value.mutations.map(value => encodeJson_2(value));
result.enqueues = value.enqueues.map(value => encodeJson_3(value));
return result;
}
export function decodeJson(value) {
const result = getDefaultValue();
result.checks = value.checks?.map((value) => decodeJson_1(value)) ?? [];
result.mutations = value.mutations?.map((value) => decodeJson_2(value)) ?? [];
result.enqueues = value.enqueues?.map((value) => decodeJson_3(value)) ?? [];
return result;
}
export function encodeBinary(value) {
const result = [];
for (const tsValue of value.checks) {
result.push([1, { type: WireType.LengthDelimited, value: encodeBinary_1(tsValue) }]);
}
for (const tsValue of value.mutations) {
result.push([2, { type: WireType.LengthDelimited, value: encodeBinary_2(tsValue) }]);
}
for (const tsValue of value.enqueues) {
result.push([3, { type: WireType.LengthDelimited, value: encodeBinary_3(tsValue) }]);
}
return serialize(result);
}
export function decodeBinary(binary) {
const result = getDefaultValue();
const wireMessage = deserialize(binary);
const wireFields = new Map(wireMessage);
collection: {
const wireValues = wireMessage.filter(([fieldNumber]) => fieldNumber === 1).map(([, wireValue]) => wireValue);
const value = wireValues.map((wireValue) => wireValue.type === WireType.LengthDelimited ? decodeBinary_1(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 === WireType.LengthDelimited ? decodeBinary_2(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 === WireType.LengthDelimited ? decodeBinary_3(wireValue.value) : undefined).filter(x => x !== undefined);
if (!value.length)
break collection;
result.enqueues = value;
}
return result;
}