0.1.3 • Published 2 years ago

@msaaddev/promise-it v0.1.3

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

cover

separator

  • Simple: Adds abstraction to the promise syntax
  • Easy to use: No need to learn JavaScript promise syntax
  • Promise: Turns any function into a promise
  • All promises: Provides a way to chain all promises and returns the result collectively
  • Any promise: Takes array of promise and returns a promise that resolves when any of the promise is resolved
  • All settled promises: Takes array of promise and returns a promise that resolves when all promises are settled

Install

# install the package
npm install @msaaddev/promise-it

API

promiseIt()

Promisify a callback function

promiseItAll()

Creates a Promise that is resolved with an array of results when all of the provided Promises resolve, or rejected when any Promise is rejected.

promiseItAny()

Promisify any of the given callback functions

promiseItAllSettled()

Creates a Promise that is resolved with an array of results when all of the provided Promises resolve or reject.

Usage

  • promiseIt()
const { promiseIt } = require('@msaaddev/promise-it');

(async () => {
	const callback = (resolve, reject) => {
		exec(`networkQuality`, error => {
			if (error) {
				handleError(error);
				reject(error);
			}
			resolve('All good. Ran networkQuality.');
		});
	};

	try {
		const promise = await promiseIt(callback);
		console.log(promise);
	} catch (err) {
		console.log(err);
	}
})();
  • promiseItAll()
const { promiseItAll } = require('@msaaddev/promise-it');
const { exec } = require('child_process');

(async () => {
	const callback = (resolve, reject) => {
		exec(`networkQuality`, error => {
			if (error) {
				handleError(error);
				reject(error);
			}
			resolve('All good. Ran networkQuality.');
		});
	};

	const callback2 = (resolve, reject) => {
		exec(`networkQuality -v`, error => {
			if (error) {
				reject(error);
			}
			resolve('All good. Ran networkQuality -v.');
		});
	};

	try {
		const allPromises = await promiseItAll(callback, callback2);
		console.log(allPromises);
	} catch (err) {
		console.log(err);
	}
})();
  • promiseItAny()
const { promiseItAny } = require('@msaaddev/promise-it');
const { exec } = require('child_process');

(async () => {
	const callback = (resolve, reject) => {
		exec(`networkQuality`, error => {
			if (error) {
				handleError(error);
				reject(error);
			}
			resolve('All good. Ran networkQuality.');
		});
	};

	const callback2 = (resolve, reject) => {
		exec(`networkQuality -v`, error => {
			if (error) {
				reject(error);
			}
			resolve('All good. Ran networkQuality -v.');
		});
	};

	try {
		const anyPromise = await promiseItAny(callback, callback2);
		console.log(anyPromise);
	} catch (err) {
		console.log(err);
	}
})();
  • promiseItAllSettled()
const { promiseItAllSettled } = require('@msaaddev/promise-it');
const { exec } = require('child_process');

const { promiseIt, promiseItAll, promiseItAny } = require('./index');
const { exec } = require('child_process');

(async () => {
	const callback = (resolve, reject) => {
		exec(`networkQuality`, error => {
			if (error) {
				handleError(error);
				reject(error);
			}
			resolve('All good. Ran networkQuality.');
		});
	};

	const callback2 = (resolve, reject) => {
		exec(`networkQuality -v`, error => {
			if (error) {
				reject(error);
			}
			resolve('All good. Ran networkQuality -v.');
		});
	};

	try {
		const allSettledPromise = await promiseItAllSettled(
			callback,
			callback2
		);
		console.log(allSettledPromise);
	} catch (err) {
		console.log(err);
	}
})();

👨🏻‍💻 Contributing

Make sure you read the contributing guidelines before opening a PR.

⚡️ Other Projects

I have curated a detailed list of all the open-source projects I have authored. Do take out a moment and take a look.

🔑 License & Conduct