Websocket
[VSoRC/.git] / node_modules / websocket / node_modules / yaeti / README.md
diff --git a/node_modules/websocket/node_modules/yaeti/README.md b/node_modules/websocket/node_modules/yaeti/README.md
new file mode 100644 (file)
index 0000000..db253a4
--- /dev/null
@@ -0,0 +1,98 @@
+# yaeti
+
+Yet Another [EventTarget](https://developer.mozilla.org/es/docs/Web/API/EventTarget) Implementation.
+
+The library exposes both the [EventTarget](https://developer.mozilla.org/es/docs/Web/API/EventTarget) interface and the [Event](https://developer.mozilla.org/en-US/docs/Web/API/Event) interface.
+
+
+## Installation
+
+```bash
+$ npm install yaeti --save
+```
+
+
+## Usage
+
+```javascript
+var yaeti = require('yaeti');
+
+
+// Custom class we want to make an EventTarget.
+function Foo() {
+    // Make Foo an EventTarget.
+    yaeti.EventTarget.call(this);
+}
+
+// Create an instance.
+var foo = new Foo();
+
+function listener1() {
+    console.log('listener1');
+}
+
+function listener2() {
+    console.log('listener2');
+}
+foo.addEventListener('bar', listener1);
+foo.addEventListener('bar', listener2);
+foo.removeEventListener('bar', listener1);
+
+var event = new yaeti.Event('bar');
+
+foo.dispatchEvent(event);
+
+
+// Output:
+// => "listener2"
+```
+
+
+
+## API
+
+
+#### `yaeti.EventTarget` interface
+
+Implementation of the [EventTarget](https://developer.mozilla.org/es/docs/Web/API/EventTarget) interface.
+
+* Make a custom class inherit from `EventTarget`:
+```javascript
+function Foo() {
+    yaeti.EventTarget.call(this);
+}
+```
+
+* Make an existing object an `EventTarget`:
+```javascript
+yaeti.EventTarget.call(obj);
+```
+
+The interface implements the `addEventListener`, `removeEventListener` and `dispatchEvent` methods as defined by the W3C.
+
+
+##### `listeners` read-only property
+
+Returns an object whose keys are configured event types (String) and whose values are an array of listeners (functions) for those event types.
+
+
+#### `yaeti.Event` interface
+
+Implementation of the [Event](https://developer.mozilla.org/en-US/docs/Web/API/Event) interface.
+
+*NOTE:* Just useful in Node (the browser already exposes the native `Event` interface).
+
+```javascript
+var event = new yaeti.Event('bar');
+```
+
+
+## Author
+
+[IƱaki Baz Castillo](https://github.com/ibc)
+
+
+## License
+
+[MIT](./LICENSE)