Security News
tea.xyz Spam Plagues npm and RubyGems Package Registries
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
asyncro
Advanced tools
Readme
asyncro
The same map()
, reduce()
& filter()
you know and love, but with async iterator functions!
Do fetch()
networking in loops, resolve Promises, anything async goes. Performance-friendly by default.
Here's what it looks like:
npm install --save asyncro
import { map } from 'asyncro';
async function example() {
return await map(
['foo', 'bar', 'baz'],
async name => fetch('./'+name)
)
}
Invoke an async reducer function on each item in the given Array,
where the reducer transforms an accumulator value based on each item iterated over.
Note: because reduce()
is order-sensitive, iteration is sequential.
This is an asynchronous version of
Array.prototype.reduce()
Parameters
array
Array The Array to reducereducer
Function Async function, gets passed (accumulator, value, index, array)
and returns a new value for accumulator
accumulator
[any] Optional initial accumulator valueExamples
await reduce(
['/foo', '/bar', '/baz'],
async (accumulator, value) => {
accumulator[v] = await fetch(value);
return accumulator;
},
{}
);
Returns any final accumulator
value
Invoke an async transform function on each item in the given Array in parallel, returning the resulting Array of mapped/transformed items.
This is an asynchronous, parallelized version of
Array.prototype.map()
.
Parameters
array
Array The Array to map overmapper
Function Async function, gets passed (value, index, array)
, returns the new value.Examples
await map(
['foo', 'baz'],
async v => await fetch(v)
)
Returns Array resulting mapped/transformed values.
Invoke an async filter function on each item in the given Array in parallel, returning an Array of values for which the filter function returned a truthy value.
This is an asynchronous, parallelized version of
Array.prototype.filter()
.
Parameters
array
Array The Array to filterfilterer
Function Async function. Gets passed (value, index, array)
, returns true to keep the value in the resulting filtered Array.Examples
await filter(
['foo', 'baz'],
async v => (await fetch(v)).ok
)
Returns Array resulting filtered values
Invoke an async function on each item in the given Array in parallel, returning the first element predicate returns truthy for.
This is an asynchronous, parallelized version of
Array.prototype.find()
.
Parameters
array
Array The Array to findpredicate
Function Async function. Gets passed (value, index, array)
, returns true to be the find result.Examples
await find(
['foo', 'baz', 'root'],
async v => (await fetch(v)).name === 'baz'
)
Returns any resulting find value
Checks if predicate returns truthy for all elements of collection in parallel.
This is an asynchronous, parallelized version of
Array.prototype.every()
.
Parameters
array
Array The Array to iterate over.predicate
Function Async function. Gets passed (value, index, array)
, The function invoked per iteration.Examples
await every(
[2, 3],
async v => (await fetch(v)).ok
)
Returns Boolean Returns true if all element passes the predicate check, else false.
Checks if predicate returns truthy for any element of collection in parallel.
This is an asynchronous, parallelized version of
Array.prototype.some()
.
Parameters
array
Array The Array to iterate over.filterer
Function Async function. Gets passed (value, index, array)
, The function invoked per iteration.Examples
await some(
['foo', 'baz'],
async v => (await fetch(v)).ok
)
Returns Boolean Returns true if any element passes the predicate check, else false.
Invoke all async functions in an Array or Object in parallel, returning the result.
Parameters
list
(Array<Function> | Object<Function>) Array/Object with values that are async functions to invoke.Examples
await parallel([
async () => await fetch('foo'),
async () => await fetch('baz')
])
Returns (Array | Object) same structure as list
input, but with values now resolved.
Invoke all async functions in an Array or Object sequentially, returning the result.
Parameters
list
(Array<Function> | Object<Function>) Array/Object with values that are async functions to invoke.Examples
await series([
async () => await fetch('foo'),
async () => await fetch('baz')
])
Returns (Array | Object) same structure as list
input, but with values now resolved.
FAQs
Asynchronous Array Utilities (for await)
The npm package asyncro receives a total of 99,394 weekly downloads. As such, asyncro popularity was classified as popular.
We found that asyncro demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.
Security News
UnitedHealth Group disclosed that the ransomware attack on Change Healthcare compromised protected health information for millions in the U.S., with estimated costs to the company expected to reach $1 billion.