Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Piwa

A simple and handy promise and try/catch wrapper.

Features

Piwa handles the following:

  • Promises
  • Async functions
  • Sync functions

And returns them with a flexible API.

How to use

Import piwa in your file:

// ESM
import piwa from 'piwa';

// CJS
const { piwa } = require('piwa');

Promise

// Promise
const myPromise = Promise.resolve('ok!');
const { data, error } = await piwa(myPromise); // returns { data: 'ok!', error: null }

const myPromise = new Promise.reject('ko!');
const { data, error } = await piwa(myPromise); // returns { data: null, error: Error }

Async function

const myAsyncFn = async () => {
  await anyAsyncFn;
  // ...
  return 'ok!';
};
const { data, error } = await piwa(myPromise); // returns { data: 'ok!', error: null }

const myAsyncFn = async () => {
  // ...
  throw 'ko!';
};
const { data, error } = await piwa(myPromise); // returns { data: null, error: Error }

Sync function

const myFunction = () => return 'ok!';
const { data, error } = await piwa(myPromise); // returns { data: 'ok!', error: null }

const myFunction = () => { throw 'ko!' };
const { data, error } = await piwa(myPromise); // returns { data: null, error: Error }

About

A simple and handy promise wrapper

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages