Promise utilities
NOTE: All the functions described in API are curried
Using npm
$ npm install --save @jumpn/utils-promise
Using yarn
$ yarn add @jumpn/utils-promise
type Deferred<Result> = {
promise: Promise<Result>,
resolve: (result: Result) => void,
reject: (error: any) => void
};
type PromiseInfo<Result> = {
result: Result,
status: void | "rejected" | "resolved"
};
Returns a promise that will be resolved with an object the results of all the given promises or it will reject with an Error that will have an additional property "from" with the name of the promise that caused the rejection.
Parameters
promisesByName
PromisesByName
Returns Promise<ResultsByName>
Returns a new promise which follows the one given returning true in case there was no error, or false otherwise
Parameters
promise
Promise<any>
Chains all promises starting from initialPromise and binding chainers to next methods
Parameters
Returns Promise<any>
Creates a Deferred
Returns Deferred<any>
Returns a new function that:
- if last argument is a callback => it will mimic the function given.
- if last argument is not a callback => it will return a promise which will be resolved or rejected following the execution of the function given.
Parameters
fn
function (): Result
Returns a new object with the result of having promisified all the methods of the one given.
Parameters
object
Object
Returns Object
Returns an object with status and value properties that are updated as soon as the promise is resolved or rejected
Parameters
promise
Promise<Result>
Returns PromiseInfo<$Supertype<Result>>
Returns a promise that will be resolved with the result of execute, or rejected with the error thrown by it (if any).
Parameters
execute
function (): Result
Returns Promise<Result>
MIT ©️ Jumpn Limited / Mauro Titimoli ([email protected])