# @pluginjs/emitter

> A workflow for modern frontend development.

Latest version **0.8.9** (published 2022-08-29) · GPL-3.0 license · 0 weekly downloads

## Install

```sh
npm install @pluginjs/emitter
pnpm add @pluginjs/emitter
yarn add @pluginjs/emitter
bun add @pluginjs/emitter
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.8.9 |
| Published | 2022-08-29 |
| First published | 2017-12-26 |
| Weekly downloads | 0 |
| License | GPL-3.0 |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Node | >= 8 |
| Dependencies | 1 |
| Unpacked size | 57.2 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 17 |
| Author | Creation Studio Limited |
| Maintainers | thecreation, kaptinlin |

## Links

- npm: https://www.npmjs.com/package/@pluginjs/emitter
- Repository: https://github.com/pluginjs/pluginjs
- Homepage: https://pluginjs.com
- Issues: https://github.com/pluginjs/pluginjs/issues
- npm.io page: https://npm.io/package/@pluginjs/emitter

## Dependencies (1)

- [@pluginjs/simple-emitter](https://npm.io/package/@pluginjs/simple-emitter.md) ^0.8.9

## Recent versions

- 0.8.9 (latest) — 2022-08-29
- 0.8.8 — 2022-01-08
- 0.8.7 — 2021-07-01
- 0.8.6 — 2021-03-25
- 0.8.5 — 2021-03-01
- 0.8.4 — 2020-07-11
- 0.8.3 — 2020-02-11
- 0.8.2 — 2020-02-11
- 0.7.21 — 2020-01-15
- 0.7.20 — 2019-12-17
- 0.7.19 — 2019-12-16
- 0.7.18 — 2019-12-16
- 0.7.17 — 2019-12-16
- 0.7.16 — 2019-12-16
- 0.7.15 — 2019-09-20
- … 38 more at https://npm.io/package/@pluginjs/emitter/versions

## README

# Emitter

[![npm package](https://img.shields.io/npm/v/@pluginjs/emitter.svg)](https://www.npmjs.com/package/@pluginjs/emitter)

`emitter` is a utility JavaScript library for event emitter.

## Introduction
### Installation

#### Yarn

```javascript
yarn add @pluginjs/emitter
```

#### NPM

```javascript
npm i @pluginjs/emitter
```

## Getting Started

**CDN:**

Development:

```html
<script src="https://unpkg.com/@pluginjs/emitter/dist/emitter.js"></script>
```

Production:

```html
<script src="https://unpkg.com/@pluginjs/emitter/dist/emitter.min.js"></script>
```

## API

### emit

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |
| args | Any[] | args for handler |

Returns

| Name | Type | Description |
|||-|
| Ok | `Boolean` | |

### on

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |
| listener | Function | handler |
| context | Object | this |
| priority | Number | priority level |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### once

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |
| listener | Function | handler |
| context | Object | this |
| priority | Number | priority level |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### off

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |
| listener | Function | handler |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### addListener

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |
| listener | Function | handler |
| context | Object | this |
| priority | Number | priority level |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### addListenerOnce

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |
| listener | Function | handler |
| context | Object | this |
| priority | Number | priority level |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### removeListener

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |
| listener | Function | handler |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### removeAllListeners

Parameters

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### ensureListener

Parameters

| Name | Type | Description |
|||-|
| listener | Function | handler |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### hasListeners

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |

Returns

| Name | Type | Description |
|||-|
| this | `Object` | Instance |

### getListeners

Parameters

| Name | Type | Description |
|||-|
| event | String | event name |

Returns

| Name | Type | Description |
|||-|
| listeners | `Array` | |

## Browser support

Tested on all major browsers.

| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt="IE / Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>IE / Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Safari | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/opera/opera_48x48.png" alt="Opera" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Opera |
| --------- | --------- | --------- | --------- | --------- |
| IE11, Edge| last 2 versions| last 2 versions| last 2 versions| last 2 versions|

## License

@pluginjs/emitter is Licensed under [the GPL-v3 license](LICENSE).

If you want to use @pluginjs/emitter project to develop commercial sites, themes, projects, and applications, the Commercial license is the appropriate license. With this option, your source code is kept proprietary.

For purchase an Commercial License, contact us purchase@thecreation.co.

## Copyright

Copyright (C) 2022 [Creation Studio Limited](creationstudio.com).

---
_Source: https://npm.io/package/@pluginjs/emitter · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
