Skip to main content

Variable: flattenConcur()

const flattenConcur: <Value>(concurIterable) => ConcurIterable<Value>

Defined in: transforms.d.ts:425

Returns a concur iterable that contains the values of each iterable in concurIterable.

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

Unlike flatten and flattenAsync, this function does not necessarily iterate over each iterable in sequence.

Type Parameters

Value

Value

Parameters

concurIterable

ConcurIterable<Iterable<Value> | AsyncIterable<Value> | ConcurIterable<Value>>

Returns

ConcurIterable<Value>

Example

import { asConcur, flattenConcur, map, mapConcur, pipe, reduceConcur, toArray } from 'lfi'

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

console.log(
await pipe(
asConcur([`sloth`, `lazy`, `sleep`]),
mapConcur(async word => {
const response = await fetch(`${API_URL}/${word}`)
const [{ meanings }] = await response.json()
return map(meaning => meaning.partOfSpeech, meanings)
}),
flattenConcur,
reduceConcur(toArray()),
),
)
// NOTE: This order may change between runs
//=> [
//=> 'noun',
//=> 'verb',
//=> 'noun',
//=> 'verb',
//=> 'adjective',
//=> 'verb'
//=> ]
Playground

Since

v0.0.1