promise-do-until

Calls a function repeatedly until a condition returns true and then resolves the promise

Usage no npm install needed!

<script type="module">
  import promiseDoUntil from 'https://cdn.skypack.dev/promise-do-until';
</script>

README

promise-do-until NPM version Build Status Dependency Status

Calls a function repeatedly until a condition returns true and then resolves the promise

Installation

$ npm install --save promise-do-until

Usage

import promiseDoUntil from 'promise-do-until';

let count = 0;

promiseDoUntil(() => {
  count++;
}, () => {
  return count === 5;
}).then(() => {
  console.log(count);
  // => 5
});

// ...

let max = 0;

promiseDoUntil(() => {
  max++;
}, () => {
  return max > -1;
}).then(() => {
  console.log(max);
  // => 1
});

API

promiseDoUntil(action, condition)

Executes action repeatedly until condition returns true and then resolves the promise. Rejects if action returns a promise that rejects or if an error is thrown anywhere.

action

Type: function

Action to run for each iteration.

You can return a promise and it will be handled.

condition

Type: function

Should return a boolean of whether to continue.

License

ISC © Buster Collings