mirror of
https://github.com/LukeHagar/relay.git
synced 2025-12-06 04:21:14 +00:00
44 lines
2.4 KiB
JavaScript
44 lines
2.4 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.decodeStream = exports.decodeMultiStream = exports.decodeArrayStream = exports.decodeAsync = void 0;
|
|
const Decoder_1 = require("./Decoder");
|
|
const stream_1 = require("./utils/stream");
|
|
const decode_1 = require("./decode");
|
|
/**
|
|
* @throws {@link RangeError} if the buffer is incomplete, including the case where the buffer is empty.
|
|
* @throws {@link DecodeError} if the buffer contains invalid data.
|
|
*/
|
|
async function decodeAsync(streamLike, options = decode_1.defaultDecodeOptions) {
|
|
const stream = (0, stream_1.ensureAsyncIterable)(streamLike);
|
|
const decoder = new Decoder_1.Decoder(options.extensionCodec, options.context, options.maxStrLength, options.maxBinLength, options.maxArrayLength, options.maxMapLength, options.maxExtLength);
|
|
return decoder.decodeAsync(stream);
|
|
}
|
|
exports.decodeAsync = decodeAsync;
|
|
/**
|
|
* @throws {@link RangeError} if the buffer is incomplete, including the case where the buffer is empty.
|
|
* @throws {@link DecodeError} if the buffer contains invalid data.
|
|
*/
|
|
function decodeArrayStream(streamLike, options = decode_1.defaultDecodeOptions) {
|
|
const stream = (0, stream_1.ensureAsyncIterable)(streamLike);
|
|
const decoder = new Decoder_1.Decoder(options.extensionCodec, options.context, options.maxStrLength, options.maxBinLength, options.maxArrayLength, options.maxMapLength, options.maxExtLength);
|
|
return decoder.decodeArrayStream(stream);
|
|
}
|
|
exports.decodeArrayStream = decodeArrayStream;
|
|
/**
|
|
* @throws {@link RangeError} if the buffer is incomplete, including the case where the buffer is empty.
|
|
* @throws {@link DecodeError} if the buffer contains invalid data.
|
|
*/
|
|
function decodeMultiStream(streamLike, options = decode_1.defaultDecodeOptions) {
|
|
const stream = (0, stream_1.ensureAsyncIterable)(streamLike);
|
|
const decoder = new Decoder_1.Decoder(options.extensionCodec, options.context, options.maxStrLength, options.maxBinLength, options.maxArrayLength, options.maxMapLength, options.maxExtLength);
|
|
return decoder.decodeStream(stream);
|
|
}
|
|
exports.decodeMultiStream = decodeMultiStream;
|
|
/**
|
|
* @deprecated Use {@link decodeMultiStream()} instead.
|
|
*/
|
|
function decodeStream(streamLike, options = decode_1.defaultDecodeOptions) {
|
|
return decodeMultiStream(streamLike, options);
|
|
}
|
|
exports.decodeStream = decodeStream;
|
|
//# sourceMappingURL=decodeAsync.js.map
|