@berish/serber
Version:
Serializable and deserializable adaptive adapter with plugins
27 lines • 807 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const typeof_1 = require("@berish/typeof");
exports.datePlugin = {
isForSerialize: (obj) => {
return typeof_1.default(obj) === 'date';
},
isForDeserialize: (obj) => {
return typeof_1.default(obj) === 'object' && 'type' in obj && 'value' in obj && obj.type === '_s_date_';
},
isAlreadySerialized: obj => {
return exports.datePlugin.isForDeserialize(obj);
},
isAlreadyDeserialized: obj => {
return exports.datePlugin.isForSerialize(obj);
},
serialize: obj => {
return {
type: '_s_date_',
value: obj.valueOf(),
};
},
deserialize: obj => {
return new Date(obj.value);
},
};
//# sourceMappingURL=date.js.map