db-vendo-client/lib/find-in-tree.js
Kristjan ESPERANTO 66d9fb5194
apply linting rules
follow-up of 228c7253
2024-02-10 16:50:12 +01:00

23 lines
473 B
JavaScript

import objectScan from 'object-scan';
const createFindInTree = (needles) => {
const scanner = objectScan(needles, {
filterFn: ({value, parents, matchedBy, context}) => {
matchedBy.forEach((needle) => {
context[needle].push([value, parents]);
});
},
});
return (haystack) => {
const context = Object.create(null);
needles.forEach((needle) => {
context[needle] = [];
});
return scanner(haystack, context);
};
};
export {
createFindInTree,
};