UNPKG

@n3okill/utils

Version:
17 lines 553 B
import { is } from "../type/is"; /** * Returns a reduced array based on given comparator (if none given, will use `Type.is`) * @param arr Array to be reduced * @param comparator comparator function to use `(arg1, arg2)=>boolean` * @returns */ export function uniqueFilter(arr, comparator = is) { return arr.reduce((prev, curr) => { const a = prev.filter((itemPrev) => comparator(curr, itemPrev)); if (!a.length) { prev.push(curr); } return prev; }, []); } //# sourceMappingURL=uniqueFilter.js.map