inakiarroyo / promise-sos

Helpers for using promise.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Promise S.O.S

npm package npm downloads CircleCI Coverage Status DevDependencies Dependencies Codacy Badge CII Best Practices Conventional Commits Types: TypeScript License: MIT

A typed library that provides utilities for working with promises.

Installation

npm i promise-sos

Usage

  • promiseAllObject

    Helper function which receives an object with a promise in each property and returns a promise that resolves to an object with the same properties and the resolved values of the promises.

    import { promiseAllObject } from 'promise-sos';
    
    const promisesObject = {
      promiseA: Promise.resolve('resolved promiseA'),
      promiseB: Promise.resolve('resolved promiseB'),
      1: 'resolved',
      '1234-5678': 1234
    };
    
    const result = await promiseAllObject(promisesObject);
    
    console.log(result);
    
    // {
    //   'promiseA': 'resolved promiseA',
    //   'promiseB': 'resolved promiseB',
    //   1: 'resolved',
    //   '1234-5678': 1234
    // }
    import { promiseAllObject } from 'promise-sos';
    
    const promisesObject = {
      promiseA: Promise.reject(new Error('rejected promiseA')),
      promiseB: Promise.resolve('resolved promiseB')
    };
    
    try {
      const result = await promiseAllObject(promisesObject);
    } catch (error) {
      console.log(error);
    }

License

MIT

About

Helpers for using promise.

License:MIT License


Languages

Language:TypeScript 87.0%Language:JavaScript 13.0%