UNPKG

@naturalcycles/js-lib

Version:

Standard library for universal (browser + Node.js) javascript

8 lines (6 loc) 317 B
import type { AsyncPredicate } from '../types.js' export async function pFilter<T>(iterable: Iterable<T>, filterFn: AsyncPredicate<T>): Promise<T[]> { const items = [...iterable] const predicates = await Promise.all(items.map((item, i) => filterFn(item, i))) return items.filter((_item, i) => predicates[i]) }