aigle
TypeScript icon, indicating that this package has built-in type declarations

1.14.1 • Public • Published

aigle

npm CircleCI Status Coverage Status

Aigle is an ideal promise library which is faster and more efficient than other libraries. On top of being an impressive benchmark exercise, it is a production-ready library that implements the Promise A+ standard.

Also it has a lot of async style functions, you can start using Promise easily.

Usage

Node.js

npm install --save aigle
const Aigle = require('aigle');
const each = require('aigle/each');

TypeScript

import Aigle from 'aigle';
import { Aigle } from 'aigle';

Async/Await

global.Promise = Aigle;
async function getUsers(ids) {
  const users = await Promise.map(ids, getUser);
  const targets = await Promise.filter(users, filterUser);
  return targets;
}
 
async function getUsers(ids) {
  return await Promise.map(ids, getUser)
    .filter(filterUser);
}

Convert synchronous functions to asynchronous functions

Aigle.mixin(require('lodash'));
 
return Aigle.map([1.1, 1.4, 2.2], n => Aigle.delay(10, n * 2)) // [2.2, 2.8, 4.4]
  .uniqBy(n => Aigle.delay(10, Math.floor(n))) // [2.2, 4.4]
  .sum() // 6.6
  .times() // [0, 1, 2, 3, 4, 5];
  .then(value => console.log(value)); // [0, 1, 2, 3, 4, 5];

browser

Recommend to use webpack, browserify, Rollup or any bundling tool.

or prebuilt scripts from here.

This will expose to global as window.Promise.

<script src="dist/aigle.min.js"></script>
window.Promise;

Functions

Core

prototype functions

class functions

Collections

prototype functions

class functions

Control flow

prototype functions

class functions

Utils

prototype functions

class functions

Debug

class functions

/aigle/

    Package Sidebar

    Install

    npm i aigle

    Weekly Downloads

    20,058

    Version

    1.14.1

    License

    MIT

    Unpacked Size

    670 kB

    Total Files

    180

    Last publish

    Collaborators

    • suguru03