@sap-ux/store
Version:
NPM module for storing persistent data
26 lines • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.serializable = serializable;
exports.getSerializableProperties = getSerializableProperties;
exports.sensitiveData = sensitiveData;
exports.getSensitiveDataProperties = getSensitiveDataProperties;
require("reflect-metadata");
const SERIALIZABLE = Symbol('serializable');
function serializable(target, key) {
const serializableProperties = Reflect.getOwnMetadata(SERIALIZABLE, target.constructor) || new Set();
Reflect.defineMetadata(SERIALIZABLE, serializableProperties.add(key), target.constructor);
}
function getSerializableProperties(target) {
const props = Reflect.getOwnMetadata(SERIALIZABLE, target.constructor);
return (props && Array.from(props.values())) || [];
}
const SENSITIVE = Symbol('sensitive');
function sensitiveData(target, key) {
const sensitiveProperties = Reflect.getOwnMetadata(SENSITIVE, target.constructor) || new Set();
Reflect.defineMetadata(SENSITIVE, sensitiveProperties.add(key), target.constructor);
}
function getSensitiveDataProperties(target) {
const props = Reflect.getOwnMetadata(SENSITIVE, target.constructor);
return (props && Array.from(props.values())) || [];
}
//# sourceMappingURL=index.js.map