UNPKG

observable-webworkers

Version:
32 lines 902 B
const events = {}; const observable = (worker) => { worker.addEventListener('message', (event) => { observable.dispatchEvent('message', worker, event); }); if (worker.port != null) { worker.port.addEventListener('message', (event) => { observable.dispatchEvent('message', worker, event); }); } }; observable.addEventListener = (type, fn) => { if (events[type] == null) { events[type] = []; } events[type].push(fn); }; observable.removeEventListener = (type, fn) => { if (events[type] == null) { return; } events[type] = events[type] .filter(listener => listener === fn); }; observable.dispatchEvent = function (type, worker, event) { if (events[type] == null) { return; } events[type].forEach(fn => fn(worker, event)); }; export default observable; //# sourceMappingURL=index.js.map