UNPKG

@node-dlc/wire

Version:
35 lines 1.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Encoder = void 0; const EncodingType_1 = require("./EncodingType"); const ZlibEncoder_1 = require("./ZlibEncoder"); class Encoder { encode(encoding, data) { let encoded; switch (encoding) { case EncodingType_1.EncodingType.Raw: encoded = data; break; case EncodingType_1.EncodingType.ZlibDeflate: encoded = new ZlibEncoder_1.ZlibEncoder().encode(data); break; default: throw new Error('Unknown encoding type'); } return Buffer.concat([Buffer.from([encoding]), encoded]); } decode(buffer) { const encoding = buffer.readUInt8(0); const raw = buffer.slice(1); switch (encoding) { case EncodingType_1.EncodingType.Raw: return raw; case EncodingType_1.EncodingType.ZlibDeflate: return new ZlibEncoder_1.ZlibEncoder().decode(raw); default: throw new Error('Unknown encoding type'); } } } exports.Encoder = Encoder; //# sourceMappingURL=Encoder.js.map