UNPKG

amf-codec

Version:

AMF0 codec with tiny size and high performance

27 lines (20 loc) 553 B
const { MARKER_LENGTH, DATE, } = require('../const'); const DATE_LENGTH = 8; const DATE_TIMEZONE_LENGTH = 2; const encodeDate = (date) => { const buf = Buffer.allocUnsafe(MARKER_LENGTH + DATE_LENGTH + DATE_TIMEZONE_LENGTH); buf.writeUInt8(DATE, 0); buf.writeDoubleBE(date.valueOf(), MARKER_LENGTH); buf.writeUInt16BE(0, MARKER_LENGTH + DATE_LENGTH); return buf; }; const decodeDate = (buf, memo) => { return new Date(buf.readDoubleBE(memo.consume(DATE_LENGTH + DATE_TIMEZONE_LENGTH))); }; module.exports = { encodeDate, decodeDate, };