0.5.0 • Published 6 years ago

@promises/parallel v0.5.0

Weekly downloads
62
License
MIT
Repository
github
Last release
6 years ago

@promises/parallel

Source Code Version MIT License Bundle Size

Parallel is package from Promises library

Use

Module

$ npm install --save @promises/parallel
import {
 default as parallel
} from '@promises/parallel';

Browser

<script src="https://unpkg.com/@promises/parallel/bundle.umd.min.js"></script>
let {
 parallel
} = P;

Examples

 let fn = (id: string, ms: number) => () => timeout((resolve) => {
     console.log(id);
     resolve(id);
 }, ms);
 let functions = {
     zero: fn(0, 7),
     one: fn(1, 3),
     two: fn(2, 5),
 };

 parallel(functions).then((result: {[key: string]: number}) => {
     console.log(result);
 });

 // => 1
 // => 2
 // => 0
 // => { zero: 0, one: 1, two: 2}

Wrapper

Module

$ npm install --save @promises/parallel
import Promises from '@promises/core';
import '@promises/parallel/add';

Or

import Promises from '@promises/parallel/add';

Browser

<script src="https://unpkg.com/@promises/core/bundle.umd.min.js"></script>
<script src="https://unpkg.com/@promises/parallel/add/bundle.umd.min.js"></script>
let {
 Promises
} = P;

Examples

 let fn = (id: string, ms: number) => () => timeout((resolve) => {
     console.log(id);
     resolve(id);
 }, ms);
 let functions = [
     fn('zero', 7),
     fn('one', 3),
     fn('two', 5)
 ];

 Promises.parallel(functions).then((result: string[]) => {
     console.log(result);
 });

 // => 'one'
 // => 'two'
 // => 'zero'
 // => ['zero', 'one', 'two']

Compatibility

These modules are written in typescript and available in ES5 and ES6 standard, the requirements are a global Promise (native or polyfill).

License

Copyright © 2017 Yisrael Eliav, Licensed under the MIT license.