@openhps/core
Version:
Open Hybrid Positioning System - Core component
14 lines • 651 B
JavaScript
import { jsonSetMember } from 'typedjson';
import { DataSerializerUtils } from '../DataSerializerUtils';
/**
* @param {Constructor} elementConstructor Element constructor
* @param {SerializableSetMemberOptions} options Member options
* @returns {PropertyDecorator} Property decorator
*/
export function SerializableSetMember(elementConstructor, options) {
return (target, propertyKey) => {
const finalOptions = DataSerializerUtils.mergeMemberOptions(target, propertyKey, options);
jsonSetMember(elementConstructor, finalOptions)(target, propertyKey);
DataSerializerUtils.updateMemberOptions(target, propertyKey, finalOptions);
};
}