@dipscope/type-manager
Version:
Transform JSON strings or plain objects into JS class instances.
29 lines • 1.13 kB
JavaScript
export class Uint8ClampedArraySerializer {
serialize(x, serializerContext) {
if (x === undefined) {
return serializerContext.serializedDefaultValue;
}
if (x === null) {
return serializerContext.serializedNullValue;
}
if (x instanceof Uint8ClampedArray) {
return Array.from(x);
}
serializerContext.logger.error('Uint8ClampedArraySerializer', `${serializerContext.jsonPath}: cannot serialize value as uint 8 clamped array.`, x);
return undefined;
}
deserialize(x, serializerContext) {
if (x === undefined) {
return serializerContext.deserializedDefaultValue;
}
if (x === null) {
return serializerContext.deserializedNullValue;
}
if (Array.isArray(x)) {
return Uint8ClampedArray.from(x);
}
serializerContext.logger.error('Uint8ClampedArraySerializer', `${serializerContext.jsonPath}: cannot deserialize value as uint 8 clamped array.`, x);
return undefined;
}
}
//# sourceMappingURL=uint-8-clamped-array-serializer.js.map