- pubsub is a basic pubsub impl - autoredraw is glue code to register callback to pubsub and onevent moved e.redraw to autoredraw
15 lines
428 B
JavaScript
15 lines
428 B
JavaScript
"use strict"
|
|
|
|
module.exports = function() {
|
|
var callbacks = []
|
|
function unsubscribe(callback) {
|
|
var index = callbacks.indexOf(callback)
|
|
if (index > -1) callbacks.splice(index, 1)
|
|
}
|
|
function publish() {
|
|
for (var i = 0; i < callbacks.length; i++) {
|
|
callbacks[i].apply(this, arguments)
|
|
}
|
|
}
|
|
return {subscribe: callbacks.push.bind(callbacks), unsubscribe: unsubscribe, publish: publish}
|
|
}
|