{"version":3,"sources":["webpack:///./node_modules/setimmediate/setImmediate.js"],"names":["global","setImmediate","registerImmediate","html","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","document","attachTo","Object","getPrototypeOf","setTimeout","toString","call","process","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","undefined","run","self","this"],"mappings":"+EAAA,6BACI,aAEA,IAAIA,EAAOC,aAAX,CAIA,IAIIC,EA6HIC,EAZAC,EArBAC,EACAC,EAjGJC,EAAa,EACbC,EAAgB,GAChBC,GAAwB,EACxBC,EAAMV,EAAOW,SAoJbC,EAAWC,OAAOC,gBAAkBD,OAAOC,eAAed,GAC9DY,EAAWA,GAAYA,EAASG,WAAaH,EAAWZ,EAGf,qBAArC,GAAGgB,SAASC,KAAKjB,EAAOkB,SApFxBhB,EAAoB,SAASiB,GACzBD,EAAQE,SAAS,WAAcC,EAAaF,OAIpD,WAGI,GAAInB,EAAOsB,cAAgBtB,EAAOuB,cAAe,CAC7C,IAAIC,GAA4B,EAC5BC,EAAezB,EAAO0B,UAM1B,OALA1B,EAAO0B,UAAY,WACfF,GAA4B,GAEhCxB,EAAOsB,YAAY,GAAI,KACvBtB,EAAO0B,UAAYD,EACZD,GAwEJG,GAIA3B,EAAO4B,iBA9CVxB,EAAU,IAAIwB,gBACVC,MAAMH,UAAY,SAASI,GAE/BT,EADaS,EAAMC,OAIvB7B,EAAoB,SAASiB,GACzBf,EAAQ4B,MAAMV,YAAYH,KA2CvBT,GAAO,uBAAwBA,EAAIuB,cAAc,WAtCpD9B,EAAOO,EAAIwB,gBACfhC,EAAoB,SAASiB,GAGzB,IAAIgB,EAASzB,EAAIuB,cAAc,UAC/BE,EAAOC,mBAAqB,WACxBf,EAAaF,GACbgB,EAAOC,mBAAqB,KAC5BjC,EAAKkC,YAAYF,GACjBA,EAAS,MAEbhC,EAAKmC,YAAYH,KAKrBjC,EAAoB,SAASiB,GACzBJ,WAAWM,EAAc,EAAGF,KAlD5Bd,EAAgB,gBAAkBkC,KAAKC,SAAW,IAClDlC,EAAkB,SAASwB,GACvBA,EAAMW,SAAWzC,GACK,iBAAf8B,EAAMC,MACyB,IAAtCD,EAAMC,KAAKW,QAAQrC,IACnBgB,GAAcS,EAAMC,KAAKY,MAAMtC,EAAcuC,UAIjD5C,EAAO6C,iBACP7C,EAAO6C,iBAAiB,UAAWvC,GAAiB,GAEpDN,EAAO8C,YAAY,YAAaxC,GAGpCJ,EAAoB,SAASiB,GACzBnB,EAAOsB,YAAYjB,EAAgBc,EAAQ,OAgEnDP,EAASX,aA1KT,SAAsB8C,GAEI,mBAAbA,IACTA,EAAW,IAAIC,SAAS,GAAKD,IAI/B,IADA,IAAIE,EAAO,IAAIC,MAAMC,UAAUP,OAAS,GAC/BQ,EAAI,EAAGA,EAAIH,EAAKL,OAAQQ,IAC7BH,EAAKG,GAAKD,UAAUC,EAAI,GAG5B,IAAIC,EAAO,CAAEN,SAAUA,EAAUE,KAAMA,GAGvC,OAFAzC,EAAcD,GAAc8C,EAC5BnD,EAAkBK,GACXA,KA6JTK,EAAS0C,eAAiBA,EA1J1B,SAASA,EAAenC,UACbX,EAAcW,GAyBzB,SAASE,EAAaF,GAGlB,GAAIV,EAGAM,WAAWM,EAAc,EAAGF,OACzB,CACH,IAAIkC,EAAO7C,EAAcW,GACzB,GAAIkC,EAAM,CACN5C,GAAwB,EACxB,KAjCZ,SAAa4C,GACT,IAAIN,EAAWM,EAAKN,SAChBE,EAAOI,EAAKJ,KAChB,OAAQA,EAAKL,QACb,KAAK,EACDG,IACA,MACJ,KAAK,EACDA,EAASE,EAAK,IACd,MACJ,KAAK,EACDF,EAASE,EAAK,GAAIA,EAAK,IACvB,MACJ,KAAK,EACDF,EAASE,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAChC,MACJ,QACIF,EAASQ,MAAMC,EAAWP,IAiBlBQ,CAAIJ,GACN,QACEC,EAAenC,GACfV,GAAwB,MAvE5C,CAyLkB,oBAATiD,UAAyC,IAAX1D,EAAyB2D,KAAO3D,EAAS0D,Q","file":"npm.setimmediate.af6b36cf2b15975d3c7e.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 <script> element; its readystatechange event will be fired asynchronously once it is inserted\n            // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n            var script = doc.createElement(\"script\");\n            script.onreadystatechange = function () {\n                runIfPresent(handle);\n                script.onreadystatechange = null;\n                html.removeChild(script);\n                script = null;\n            };\n            html.appendChild(script);\n        };\n    }\n\n    function installSetTimeoutImplementation() {\n        registerImmediate = function(handle) {\n            setTimeout(runIfPresent, 0, handle);\n        };\n    }\n\n    // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n    var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n    attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n    // Don't get fooled by e.g. browserify environments.\n    if ({}.toString.call(global.process) === \"[object process]\") {\n        // For Node.js before 0.9\n        installNextTickImplementation();\n\n    } else if (canUsePostMessage()) {\n        // For non-IE10 modern browsers\n        installPostMessageImplementation();\n\n    } else if (global.MessageChannel) {\n        // For web workers, where supported\n        installMessageChannelImplementation();\n\n    } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n        // For IE 6–8\n        installReadyStateChangeImplementation();\n\n    } else {\n        // For older browsers\n        installSetTimeoutImplementation();\n    }\n\n    attachTo.setImmediate = setImmediate;\n    attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n"],"sourceRoot":""}