@promises/do-while-parallel

Do While Parallel is package from Promises library

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
@promises/do-while-parallel
500.5.05 years ago5 years agoMinified + gzip package size for @promises/do-while-parallel in KB

Readme

@promises/do-while-parallel
Source Code Version MIT License Bundle Size
Do While Parallel is package from Promises library

Use

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

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

Examples
let index: number = 0;

whileParallel(() => {
  console.log(`test ${index}`);
  return index++ < 3;
}, () => {
  let thisIndex = index;
  return timeout((resolve) => {
   console.log(`iteratee ${thisIndex}`);
   resolve();
  }, 4 - index);
}).then(() => {
  console.log('completed');
});

// => 'test 0'
// => 'test 1'
// => 'test 2'
// => 'test 3'
// => 'iteratee 3'
// => 'iteratee 2'
// => 'iteratee 1'
// => 'iteratee 0'
// => 'completed'

Wrapper

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

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

Examples
let index: number = 0;
Promises.whileParallel(() => {
 console.log(`test ${index}`);
 return index++ < 3;
}, () => {
 let thisIndex = index;
 return Promises.timeout((resolve) => {
  console.log(`iteratee ${thisIndex}`);
  resolve();
 }, 4 - index);
}).then(() => {
 console.log('completed');
});
// => 'test 0'
// => 'test 1'
// => 'test 2'
// => 'test 3'
// => 'iteratee 3'
// => 'iteratee 2'
// => 'iteratee 1'
// => 'iteratee 0'
// => 'completed'

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.