UNPKG

@lifaon/rx-js-light

Version:

Blazing fast Observables

14 lines (13 loc) 491 B
import {runTask} from "./run-task.mjs"; export function postMessageImplementation(global) { const messagePrefix = `setImmediate$${Math.random()}$`; const length = messagePrefix.length; global.addEventListener('message', event => { if (event.source === global && typeof event.data === 'string' && event.data.indexOf(messagePrefix) === 0) { runTask(+event.data.slice(length)); } }, false); return handle => { global.postMessage(messagePrefix + handle, '*'); }; }