UNPKG

@thi.ng/transducers

Version:

Collection of ~170 lightweight, composable transducers, reducers, generators, iterators for functional data transformations

18 lines (17 loc) 440 B
import { fuzzyMatch } from "@thi.ng/arrays/fuzzy-match"; import { __iter } from "./iterator.js"; import { filter } from "./filter.js"; function filterFuzzy(...args) { const iter = args.length > 1 && __iter(filterFuzzy, args); if (iter) { return iter; } const query = args[0]; const { key, equiv } = args[1] || {}; return filter( (x) => fuzzyMatch(key != null ? key(x) : x, query, equiv) ); } export { filterFuzzy };