{"version":3,"sources":["webpack:///./node_modules/setimmediate/setImmediate.js"],"names":["global","process","undefined","setImmediate","registerImmediate","html","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","document","attachTo","Object","getPrototypeOf","setTimeout","toString","call","handle","nextTick","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","event","data","port2","createElement","documentElement","script","onreadystatechange","removeChild","appendChild","Math","random","source","indexOf","slice","length","addEventListener","attachEvent","callback","Function","args","Array","arguments","i","task","clearImmediate","apply","run","self","this"],"mappings":"+FAAA,SAAAA,EAAAC,IAAA,SAAAD,EAAAE,GACA,aAEA,IAAAF,EAAAG,aAAA,CAIA,IAIAC,EA6HAC,EAZAC,EArBAC,EACAC,EAjGAC,EAAA,EACAC,EAAA,GACAC,GAAA,EACAC,EAAAZ,EAAAa,SAoJAC,EAAAC,OAAAC,gBAAAD,OAAAC,eAAAhB,GACAc,OAAAG,WAAAH,EAAAd,EAGU,qBAAV,GAAUkB,SAAAC,KAAAnB,EAAAC,SApFVG,EAAA,SAAAgB,GACAnB,EAAAoB,SAAA,WAA0CC,EAAAF,OAI1C,WAGA,GAAApB,EAAAuB,cAAAvB,EAAAwB,cAAA,CACA,IAAAC,GAAA,EACAC,EAAA1B,EAAA2B,UAMA,OALA3B,EAAA2B,UAAA,WACAF,GAAA,GAEAzB,EAAAuB,YAAA,QACAvB,EAAA2B,UAAAD,EACAD,GAwEKG,GAIA5B,EAAA6B,iBA9CLvB,EAAA,IAAAuB,gBACAC,MAAAH,UAAA,SAAAI,GAEAT,EADAS,EAAAC,OAIA5B,EAAA,SAAAgB,GACAd,EAAA2B,MAAAV,YAAAH,KA2CKR,GAAA,uBAAAA,EAAAsB,cAAA,WAtCL7B,EAAAO,EAAAuB,gBACA/B,EAAA,SAAAgB,GAGA,IAAAgB,EAAAxB,EAAAsB,cAAA,UACAE,EAAAC,mBAAA,WACAf,EAAAF,GACAgB,EAAAC,mBAAA,KACAhC,EAAAiC,YAAAF,GACAA,EAAA,MAEA/B,EAAAkC,YAAAH,KAKAhC,EAAA,SAAAgB,GACAH,WAAAK,EAAA,EAAAF,KAlDAb,EAAA,gBAAAiC,KAAAC,SAAA,IACAjC,EAAA,SAAAuB,GACAA,EAAAW,SAAA1C,GACA,iBAAA+B,EAAAC,MACA,IAAAD,EAAAC,KAAAW,QAAApC,IACAe,GAAAS,EAAAC,KAAAY,MAAArC,EAAAsC,UAIA7C,EAAA8C,iBACA9C,EAAA8C,iBAAA,UAAAtC,GAAA,GAEAR,EAAA+C,YAAA,YAAAvC,GAGAJ,EAAA,SAAAgB,GACApB,EAAAuB,YAAAhB,EAAAa,EAAA,OAgEAN,EAAAX,aA1KA,SAAA6C,GAEA,mBAAAA,IACAA,EAAA,IAAAC,SAAA,GAAAD,IAIA,IADA,IAAAE,EAAA,IAAAC,MAAAC,UAAAP,OAAA,GACAQ,EAAA,EAAqBA,EAAAH,EAAAL,OAAiBQ,IACtCH,EAAAG,GAAAD,UAAAC,EAAA,GAGA,IAAAC,EAAA,CAAkBN,WAAAE,QAGlB,OAFAxC,EAAAD,GAAA6C,EACAlD,EAAAK,GACAA,KA6JAK,EAAAyC,iBA1JA,SAAAA,EAAAnC,UACAV,EAAAU,GAyBA,SAAAE,EAAAF,GAGA,GAAAT,EAGAM,WAAAK,EAAA,EAAAF,OACS,CACT,IAAAkC,EAAA5C,EAAAU,GACA,GAAAkC,EAAA,CACA3C,GAAA,EACA,KAjCA,SAAA2C,GACA,IAAAN,EAAAM,EAAAN,SACAE,EAAAI,EAAAJ,KACA,OAAAA,EAAAL,QACA,OACAG,IACA,MACA,OACAA,EAAAE,EAAA,IACA,MACA,OACAF,EAAAE,EAAA,GAAAA,EAAA,IACA,MACA,OACAF,EAAAE,EAAA,GAAAA,EAAA,GAAAA,EAAA,IACA,MACA,QACAF,EAAAQ,MAAAtD,EAAAgD,IAiBAO,CAAAH,GACiB,QACjBC,EAAAnC,GACAT,GAAA,MAvEA,CAyLC,oBAAA+C,UAAA,IAAA1D,EAAA2D,KAAA3D,EAAA0D","file":"npm.setimmediate.js","sourcesContent":["(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a