0.0.5 • Published 9 months ago

eeemiter v0.0.5

Weekly downloads
-
License
-
Repository
github
Last release
9 months ago

eeemiter

yet another js event emmiter

  • ✅ Super simple and small
  • 🥳 Typesafe
  • 📦 Zero deps
npm install eeemiter

yarn add eeemiter

pnpm add eeemiter

Usage

import { createEventEmmiter } from 'eeemiter'

type MyEvents =
  | { type: 'foo'; payload: string }
  | { type: 'bar'; payload: { foo: 'lalala' } }

const events = createEventEmmiter<MyEvents>()

// register listener
const unsubscribe = events.on('bar', (payload) => {
  // payload type infered from event type
  payload.foo
})

// emit event, typesafe, autocompleted, payload is string...
events.emit('foo', 'bar')

// once: auto unsubscribes after first execution
events.once('foo', s => s)

// remove listeners by event type
event.remove('bar')

// clear all listeners
event.clear()
0.0.5

9 months ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago