Socket
Socket
Sign inDemoInstall

listen

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

listen - npm Package Compare versions

Comparing version 0.4.0 to 1.0.0

docs/documentation.md

5

CHANGES.md
# Changes
## v1.0.0
- New documentation page
- Added link to new project homepage
## v0.4.0

@@ -4,0 +9,0 @@

2

lib/listen.js

@@ -47,3 +47,3 @@ /*

if (handler) {
throw new Error("Cannot be called after then");
throw new Error('Cannot be called after then');
}

@@ -50,0 +50,0 @@ }

{
"name" : "listen",
"version" : "0.4.0",
"version" : "1.0.0",
"description" : "Wait for the results of multiple callbacks",
"keywords" : ["callback", "thenable"],
"keywords" : ["callback", "thenable", "timeout", "async", "flow"],
"author" : "Maximilian Antoni (http://maxantoni.de)",
"homepage" : "https://github.com/mantoni/listen.js",
"homepage" : "http://maxantoni.de/projects/listen.js/",
"main" : "./lib/listen.js",

@@ -27,5 +27,5 @@ "engines" : {

"browserify" : ">=2.13 <3",
"consolify" : "~0.2.0"
"consolify" : "~0.3.0"
},
"files" : ["lib", "README.md", "CHANGES.md", "LICENSE"]
"files" : ["lib", "docs", "README.md", "CHANGES.md", "LICENSE"]
}

@@ -5,5 +5,8 @@ # listen.js [![Build Status](https://secure.travis-ci.org/mantoni/listen.js.png?branch=master)](http://travis-ci.org/mantoni/listen.js)

Repository: https://github.com/mantoni/listen.js
Homepage: <http://maxantoni.de/projects/listen.js/>
Repository: <https://github.com/mantoni/listen.js>
---
## Install with NPM

@@ -17,86 +20,12 @@

Standalone browser package are here: http://maxantoni.de/listen.js/
Standalone browser package are here: <http://maxantoni.de/listen.js/>
However, you may want to use npm and bundle it with your application using
You can also use npm and bundle it with your application using
[Browserify](http://browserify.org).
## Usage
## Development
```js
var listen = require('listen');
Here is what you need:
var listener = listen();
var callbackA = listener();
var callbackB = listener();
/*
* Do async stuff with callbacks.
*
* Callbacks follow the Node.js convention. They expect an error or null as
* the first argument and an optional value as the second:
*
* Fail: callback(new Error('ouch!'));
* Return: callback(null, 'some return value');
*/
listener.then(function (err, values) {
/*
* err - 1) null if no callback err'd
* 2) the error of the callback that err'd
* 3) an error with name ErrorList wrapping multiple errors
*
* values - The non-undefined return values from all callbacks in order of
* callback creation
*/
});
```
## API
#### `listen()`
Creates and returns a new listener function.
#### `listen(values)`
Creates and returns a new listener with the given initial values.
#### `listener()`
Creates a new callback associated with the listener. Throws if called after `then`.
#### `listener(name)`
Creates a new named callback that provides its value under the given name.
#### `listener(timeout)`
Creates a new callback that errs with a `TimeoutError` if the callback was not invoked within the given timeout.
#### `listener(func)`
Creates a new callback that also invokes the given function with `(err, value)`.
#### `listener(name, func)`
Combined `listener(name)` and `listener(func)`.
#### `listener(name, timeout)`
Combined `listener(name)` and `listener(timeout)`.
#### `listener(func, timeout)`
Combined `listener(func)` and `listener(timeout)`.
#### `listener(name, func, timeout)`
Combined `listener(name)`, `listener(func)` and `listener(timeout)`.
#### `listener.then(func)`
Invokes the given function once all callbacks where invoked. If none of the callbacks had errors, the first argument is `null`, otherwise it's an `Error`. The second argument is the values array in order of callback creation. Can only be called once.
#### `listener.push(value)`
Pushes a value to the internal values array. Throws if called after `then`.
#### `listener.err(error)`
Adds an error to the internal error list. Throws if called after `then`.
## Contributing
Here is what you need for development:
- `npm install` will install all the dev dependencies

@@ -103,0 +32,0 @@ - `make` does all of the following

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc