objection-visibility
Version:
Objectionjs plugin to whitelist/blacklist model properties
25 lines • 729 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.omit = exports.pick = void 0;
function includes(haystack, needle) {
return haystack.indexOf(needle) !== -1;
}
function pick(data, toPick) {
return pickBy(data, toPick, (values, v) => includes(values, v));
}
exports.pick = pick;
function omit(data, toOmit) {
return pickBy(data, toOmit, (values, v) => !includes(values, v));
}
exports.omit = omit;
function pickBy(data, values, predicate) {
return Object.keys(data)
.reduce((c, v) => {
if (predicate(values, v)) {
c[v] = data[v];
return c;
}
return c;
}, {});
}
//# sourceMappingURL=utils.js.map