csv-database
Version:
lightweight CSV database
26 lines (25 loc) • 713 B
JavaScript
const utils = require("../../utils");
const editObject = (object, subset) => {
const editedObject = Object.assign({}, object);
Object.keys(subset).forEach(key => {
editedObject[key] = subset[key];
});
return editedObject;
};
const update = async (parser, predicate, updateValue) => {
const editedData = [];
const editData = data => {
if (utils.isSubsetOf(predicate, data)) {
const updated = editObject(data, updateValue);
editedData.push(updated);
return updated;
}
return data;
};
const events = {
onEdit: editData
};
await parser.edit(events);
return editedData;
};
module.exports = update;