UNPKG

json-helpers

Version:

JSON stringify/parser managing 'undefined, Date and Buffer.

44 lines 1.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Uint8ArrayJSONFormatter = exports.BufferBinaryJSONFormatter = exports.BufferJSONFormatter = exports.TypeErrorJSONFormatter = exports.ErrorJSONFormatter = exports.DateJSONFormatter = void 0; const buffer_1 = require("buffer"); exports.DateJSONFormatter = { objectType: 'Date', objectConstructor: globalThis.Date, serialize: (t) => t.valueOf(), unserialize: (data) => new Date(data) }; exports.ErrorJSONFormatter = { objectType: 'Error', objectConstructor: globalThis.Error, serialize: (t) => t.message, unserialize: (data) => new Error(data) }; exports.TypeErrorJSONFormatter = { objectType: 'TypeError', objectConstructor: globalThis.TypeError, serialize: (t) => t.message, unserialize: (data) => new TypeError(data) }; exports.BufferJSONFormatter = { objectType: 'Buffer', objectConstructor: buffer_1.Buffer, serialize: null, unserialize: (data) => buffer_1.Buffer.from(data) }; exports.BufferBinaryJSONFormatter = { objectType: 'Buffer', objectConstructor: buffer_1.Buffer, serialize: (t) => t.toString('binary'), unserialize: (data) => buffer_1.Buffer.from(data, 'binary') }; exports.Uint8ArrayJSONFormatter = { objectType: 'Uint8Array', objectConstructor: Uint8Array, serialize: (t) => buffer_1.Buffer.from(t.buffer).toString('binary'), unserialize: (data) => { const buffer = buffer_1.Buffer.from(data, 'binary'); return new Uint8Array(buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.length)); } }; //# sourceMappingURL=json-formatter-default.js.map