Security News
ESLint is Now Language-Agnostic: Linting JSON, Markdown, and Beyond
ESLint has added JSON and Markdown linting support with new officially-supported plugins, expanding its versatility beyond JavaScript.
mini-signals
Advanced tools
signals, in JavaScript, fast
Custom event/messaging system for JavaScript inspired by js-signals originally based on EventEmitter3 code base.
There are several advantages to signals over event-emitters (see Comparison between different Observer Pattern implementations). However, the current implementation of js-signals is (arguably) slow compared to other implementations (see EventsSpeedTests). mini-signals
is a fast, minimal emitter, with an API similar to js-signals.
npm install mini-signals
jspm install mini-signals=github:Hypercubed/mini-signals
bower install mini-signals
When not using a module loader the mini-signals constructor (MiniSignal
) is global.
var MiniSignal = require('mini-signals');
var mySignal = new MiniSignal();
var binding = mySignal.add(onSignal); //add listener
mySignal.dispatch('foo', 'bar'); //dispatch signal passing custom parameters
binding.detach(); //remove a single listener
function onSignal(foo, bar) {
assert(foo === 'foo');
assert(bar === 'bar');
}
var myObject = {
foo: 'bar',
updated: new MiniSignal()
}
myObject.updated.add(onUpdated, myObject); //add listener with context
myObject.foo = 'baz';
myObject.updated.dispatch(); //dispatch signal
function onUpdated() {
assert(this === myObject);
assert(this.foo === 'baz');
}
Copyright (c) 2015 Jayson Harshbarger
MIT License
FAQs
signals, in TypeScript, fast
The npm package mini-signals receives a total of 24,748 weekly downloads. As such, mini-signals popularity was classified as popular.
We found that mini-signals demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
ESLint has added JSON and Markdown linting support with new officially-supported plugins, expanding its versatility beyond JavaScript.
Security News
Members Hub is conducting large-scale campaigns to artificially boost Discord server metrics, undermining community trust and platform integrity.
Security News
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.