{"version":3,"sources":["node_modules\\babel-polyfill\\node_modules\\core-js\\modules\\es6.promise.js"],"names":["LIBRARY","require","global","ctx","classof","$export","isObject","aFunction","anInstance","forOf","speciesConstructor","task","set","microtask","PROMISE","TypeError","process","$Promise","isNode","empty","Internal","GenericPromiseCapability","Wrapper","USE_NATIVE","promise","resolve","FakePromise","constructor","exec","PromiseRejectionEvent","then","e","sameConstructor","a","b","isThenable","it","newPromiseCapability","C","PromiseCapability","reject","$$resolve","$$reject","undefined","perform","error","notify","isReject","_n","chain","_c","value","_v","ok","_s","i","run","reaction","handler","fail","domain","result","_h","onHandleUnhandled","enter","exit","call","length","onUnhandled","abrupt","console","isUnhandled","emit","onunhandledrejection","reason","_a","onrejectionhandled","$reject","_d","_w","slice","$resolve","wrapper","Promise","executor","err","prototype","onFulfilled","onRejected","push","G","W","F","S","r","capability","x","iter","all","iterable","values","index","remaining","$index","alreadyCalled","race"],"mappings":"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","file":"es6.promise.js","sourceRoot":"D:/Work/Office/react-native-on-web/cli/tmpl/project","sourcesContent":["'use strict';\nvar LIBRARY            = require('./_library')\n  , global             = require('./_global')\n  , ctx                = require('./_ctx')\n  , classof            = require('./_classof')\n  , $export            = require('./_export')\n  , isObject           = require('./_is-object')\n  , aFunction          = require('./_a-function')\n  , anInstance         = require('./_an-instance')\n  , forOf              = require('./_for-of')\n  , speciesConstructor = require('./_species-constructor')\n  , task               = require('./_task').set\n  , microtask          = require('./_microtask')()\n  , PROMISE            = 'Promise'\n  , TypeError          = global.TypeError\n  , process            = global.process\n  , $Promise           = global[PROMISE]\n  , process            = global.process\n  , isNode             = classof(process) == 'process'\n  , empty              = function(){ /* empty */ }\n  , Internal, GenericPromiseCapability, Wrapper;\n\nvar USE_NATIVE = !!function(){\n  try {\n    // correct subclassing with @@species support\n    var promise     = $Promise.resolve(1)\n      , FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function(exec){ exec(empty, empty); };\n    // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n    return (isNode || typeof PromiseRejectionEvent == 'function') && promise.then(empty) instanceof FakePromise;\n  } catch(e){ /* empty */ }\n}();\n\n// helpers\nvar sameConstructor = function(a, b){\n  // with library wrapper special case\n  return a === b || a === $Promise && b === Wrapper;\n};\nvar isThenable = function(it){\n  var then;\n  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar newPromiseCapability = function(C){\n  return sameConstructor($Promise, C)\n    ? new PromiseCapability(C)\n    : new GenericPromiseCapability(C);\n};\nvar PromiseCapability = GenericPromiseCapability = function(C){\n  var resolve, reject;\n  this.promise = new C(function($$resolve, $$reject){\n    if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');\n    resolve = $$resolve;\n    reject  = $$reject;\n  });\n  this.resolve = aFunction(resolve);\n  this.reject  = aFunction(reject);\n};\nvar perform = function(exec){\n  try {\n    exec();\n  } catch(e){\n    return {error: e};\n  }\n};\nvar notify = function(promise, isReject){\n  if(promise._n)return;\n  promise._n = true;\n  var chain = promise._c;\n  microtask(function(){\n    var value = promise._v\n      , ok    = promise._s == 1\n      , i     = 0;\n    var run = function(reaction){\n      var handler = ok ? reaction.ok : reaction.fail\n        , resolve = reaction.resolve\n        , reject  = reaction.reject\n        , domain  = reaction.domain\n        , result, then;\n      try {\n        if(handler){\n          if(!ok){\n            if(promise._h == 2)onHandleUnhandled(promise);\n            promise._h = 1;\n          }\n          if(handler === true)result = value;\n          else {\n            if(domain)domain.enter();\n            result = handler(value);\n            if(domain)domain.exit();\n          }\n          if(result === reaction.promise){\n            reject(TypeError('Promise-chain cycle'));\n          } else if(then = isThenable(result)){\n            then.call(result, resolve, reject);\n          } else resolve(result);\n        } else reject(value);\n      } catch(e){\n        reject(e);\n      }\n    };\n    while(chain.length > i)run(chain[i++]); // variable length - can't use forEach\n    promise._c = [];\n    promise._n = false;\n    if(isReject && !promise._h)onUnhandled(promise);\n  });\n};\nvar onUnhandled = function(promise){\n  task.call(global, function(){\n    var value = promise._v\n      , abrupt, handler, console;\n    if(isUnhandled(promise)){\n      abrupt = perform(function(){\n        if(isNode){\n          process.emit('unhandledRejection', value, promise);\n        } else if(handler = global.onunhandledrejection){\n          handler({promise: promise, reason: value});\n        } else if((console = global.console) && console.error){\n          console.error('Unhandled promise rejection', value);\n        }\n      });\n      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n      promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n    } promise._a = undefined;\n    if(abrupt)throw abrupt.error;\n  });\n};\nvar isUnhandled = function(promise){\n  if(promise._h == 1)return false;\n  var chain = promise._a || promise._c\n    , i     = 0\n    , reaction;\n  while(chain.length > i){\n    reaction = chain[i++];\n    if(reaction.fail || !isUnhandled(reaction.promise))return false;\n  } return true;\n};\nvar onHandleUnhandled = function(promise){\n  task.call(global, function(){\n    var handler;\n    if(isNode){\n      process.emit('rejectionHandled', promise);\n    } else if(handler = global.onrejectionhandled){\n      handler({promise: promise, reason: promise._v});\n    }\n  });\n};\nvar $reject = function(value){\n  var promise = this;\n  if(promise._d)return;\n  promise._d = true;\n  promise = promise._w || promise; // unwrap\n  promise._v = value;\n  promise._s = 2;\n  if(!promise._a)promise._a = promise._c.slice();\n  notify(promise, true);\n};\nvar $resolve = function(value){\n  var promise = this\n    , then;\n  if(promise._d)return;\n  promise._d = true;\n  promise = promise._w || promise; // unwrap\n  try {\n    if(promise === value)throw TypeError(\"Promise can't be resolved itself\");\n    if(then = isThenable(value)){\n      microtask(function(){\n        var wrapper = {_w: promise, _d: false}; // wrap\n        try {\n          then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n        } catch(e){\n          $reject.call(wrapper, e);\n        }\n      });\n    } else {\n      promise._v = value;\n      promise._s = 1;\n      notify(promise, false);\n    }\n  } catch(e){\n    $reject.call({_w: promise, _d: false}, e); // wrap\n  }\n};\n\n// constructor polyfill\nif(!USE_NATIVE){\n  // 25.4.3.1 Promise(executor)\n  $Promise = function Promise(executor){\n    anInstance(this, $Promise, PROMISE, '_h');\n    aFunction(executor);\n    Internal.call(this);\n    try {\n      executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n    } catch(err){\n      $reject.call(this, err);\n    }\n  };\n  Internal = function Promise(executor){\n    this._c = [];             // <- awaiting reactions\n    this._a = undefined;      // <- checked in isUnhandled reactions\n    this._s = 0;              // <- state\n    this._d = false;          // <- done\n    this._v = undefined;      // <- value\n    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n    this._n = false;          // <- notify\n  };\n  Internal.prototype = require('./_redefine-all')($Promise.prototype, {\n    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n    then: function then(onFulfilled, onRejected){\n      var reaction    = newPromiseCapability(speciesConstructor(this, $Promise));\n      reaction.ok     = typeof onFulfilled == 'function' ? onFulfilled : true;\n      reaction.fail   = typeof onRejected == 'function' && onRejected;\n      reaction.domain = isNode ? process.domain : undefined;\n      this._c.push(reaction);\n      if(this._a)this._a.push(reaction);\n      if(this._s)notify(this, false);\n      return reaction.promise;\n    },\n    // 25.4.5.1 Promise.prototype.catch(onRejected)\n    'catch': function(onRejected){\n      return this.then(undefined, onRejected);\n    }\n  });\n  PromiseCapability = function(){\n    var promise  = new Internal;\n    this.promise = promise;\n    this.resolve = ctx($resolve, promise, 1);\n    this.reject  = ctx($reject, promise, 1);\n  };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: $Promise});\nrequire('./_set-to-string-tag')($Promise, PROMISE);\nrequire('./_set-species')(PROMISE);\nWrapper = require('./_core')[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n  // 25.4.4.5 Promise.reject(r)\n  reject: function reject(r){\n    var capability = newPromiseCapability(this)\n      , $$reject   = capability.reject;\n    $$reject(r);\n    return capability.promise;\n  }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n  // 25.4.4.6 Promise.resolve(x)\n  resolve: function resolve(x){\n    // instanceof instead of internal slot check because we should fix it without replacement native Promise core\n    if(x instanceof $Promise && sameConstructor(x.constructor, this))return x;\n    var capability = newPromiseCapability(this)\n      , $$resolve  = capability.resolve;\n    $$resolve(x);\n    return capability.promise;\n  }\n});\n$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function(iter){\n  $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n  // 25.4.4.1 Promise.all(iterable)\n  all: function all(iterable){\n    var C          = this\n      , capability = newPromiseCapability(C)\n      , resolve    = capability.resolve\n      , reject     = capability.reject;\n    var abrupt = perform(function(){\n      var values    = []\n        , index     = 0\n        , remaining = 1;\n      forOf(iterable, false, function(promise){\n        var $index        = index++\n          , alreadyCalled = false;\n        values.push(undefined);\n        remaining++;\n        C.resolve(promise).then(function(value){\n          if(alreadyCalled)return;\n          alreadyCalled  = true;\n          values[$index] = value;\n          --remaining || resolve(values);\n        }, reject);\n      });\n      --remaining || resolve(values);\n    });\n    if(abrupt)reject(abrupt.error);\n    return capability.promise;\n  },\n  // 25.4.4.4 Promise.race(iterable)\n  race: function race(iterable){\n    var C          = this\n      , capability = newPromiseCapability(C)\n      , reject     = capability.reject;\n    var abrupt = perform(function(){\n      forOf(iterable, false, function(promise){\n        C.resolve(promise).then(capability.resolve, reject);\n      });\n    });\n    if(abrupt)reject(abrupt.error);\n    return capability.promise;\n  }\n});"]}