@public-transport/hafas-rest-client
Version:
Client for HAFAS rest.exe public transport APIs.
24 lines (19 loc) • 487 B
JavaScript
const objectScan = require('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)
}
}
module.exports = createFindInTree