Skip to main content

Variable: filterConcur()

const filterConcur: {<From, To>(fn): (concurIterable) => ConcurIterable<To>; <From, To>(fn, concurIterable): ConcurIterable<To>; <Value>(fn): (concurIterable) => ConcurIterable<Value>; <Value>(fn, concurIterable): ConcurIterable<Value>; }

Defined in: filters.d.ts:124

Returns a concur iterable that contains the values of concurIterable excluding the values for which fn returns a value awaitable to a falsy value.

Like Array.prototype.filter, but for concur iterables.

Call Signature

<From, To>(fn): (concurIterable) => ConcurIterable<To>

Type Parameters

From

From

To

To

Parameters

fn

(value) => value is To

Returns

(concurIterable): ConcurIterable<To>

Parameters

concurIterable

ConcurIterable<From>

Returns

ConcurIterable<To>

Call Signature

<From, To>(fn, concurIterable): ConcurIterable<To>

Type Parameters

From

From

To

To

Parameters

fn

(value) => value is To

concurIterable

ConcurIterable<From>

Returns

ConcurIterable<To>

Call Signature

<Value>(fn): (concurIterable) => ConcurIterable<Value>

Type Parameters

Value

Value

Parameters

fn

(value) => unknown

Returns

(concurIterable): ConcurIterable<Value>

Parameters

concurIterable

ConcurIterable<Value>

Returns

ConcurIterable<Value>

Call Signature

<Value>(fn, concurIterable): ConcurIterable<Value>

Type Parameters

Value

Value

Parameters

fn

(value) => unknown

concurIterable

ConcurIterable<Value>

Returns

ConcurIterable<Value>

Example

import { asConcur, filterConcur, pipe, reduceConcur, toArray } from 'lfi'

const API_URL = `https://api.dictionaryapi.dev/api/v2/entries/en`

console.log(
await pipe(
asConcur([`sloth`, `lazy`, `sleep`]),
filterConcur(async word => {
const response = await fetch(`${API_URL}/${word}`)
const [{ meanings }] = await response.json()
return meanings.some(meaning => meaning.partOfSpeech === `adjective`)
}),
reduceConcur(toArray()),
),
)
//=> [ 'lazy' ]
Playground

Since

v0.0.1