0.3.32 • Published 2 years ago

@nodesuite/defer v0.3.32

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

@nodesuite/defer

Summary

Simple deferred Promise generator.

Installation

pnpm install @nodesuite/defer

Usage

import { defer } from "@nodesuite/defer"

import { someEventfulEmitter } from "./events"

const { resolve, reject, untilResolved } = defer()


// Define async work...
someEventfulEmitter.on("someEvent", resolve)

// ...or some alternative trigger...
const secondEmitter = new EventEmitter()
secondEmitter.on("secondEvent", resolve)

// ...or abstract resoltion conditons...
class Foo {
	
  #resolve
	#reject
  
	public constructor({ resolve, reject }) {
    this.#resolve = resolve
		this.#reject = reject
	}
  
  public someSuccessFunction() {
    return this.#resolve()
	}
  
  public someFailureFunction() {
    return this.#reject()
	}
  
}

const foo = new Foo({ resolve, reject })

// Reject the master promise...
someEventfulEmitter.on("error", () => foo.someFailureFunction())

// Can await resolution of promise from any source.
await untilResolved()
0.3.31

2 years ago

0.3.30

2 years ago

0.3.32

2 years ago

0.3.29

2 years ago

0.3.20

2 years ago

0.3.28

2 years ago

0.3.27

2 years ago

0.3.26

2 years ago

0.3.25

2 years ago

0.3.24

2 years ago

0.3.23

2 years ago

0.3.22

2 years ago

0.3.21

2 years ago

0.3.19

2 years ago

0.3.18

2 years ago

0.3.6

3 years ago

0.3.5

3 years ago

0.3.8

3 years ago

0.3.7

3 years ago

0.3.4

3 years ago

0.3.9

3 years ago

0.3.17

2 years ago

0.3.16

2 years ago

0.3.15

2 years ago

0.3.14

2 years ago

0.3.13

2 years ago

0.3.12

2 years ago

0.3.11

2 years ago

0.3.10

2 years ago

0.2.2

3 years ago

0.1.20

3 years ago

0.1.16

3 years ago

0.1.17

3 years ago

0.1.18

3 years ago

0.1.19

3 years ago

0.1.15

3 years ago

0.1.10

3 years ago

0.0.20

3 years ago

0.1.11

3 years ago

0.0.21

3 years ago

0.1.12

3 years ago

0.0.22

3 years ago

0.1.13

3 years ago

0.0.23

3 years ago

0.1.14

3 years ago

0.0.24

3 years ago

0.0.25

3 years ago

0.0.15

3 years ago

0.0.16

3 years ago

0.0.17

3 years ago

0.0.18

3 years ago

0.0.19

3 years ago

0.0.10

3 years ago

0.0.11

3 years ago

0.0.12

3 years ago

0.0.13

3 years ago

0.0.14

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.8

3 years ago

0.0.26

3 years ago

0.1.7

3 years ago

0.1.9

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago