/
opt
/
alt
/
alt-nodejs12
/
root
/
lib
/
node_modules
/
npm
/
node_modules.bundled
/
es6-promise
/
lib
/
es6-promise
/
Upload Filee
HOME
import { invokeCallback, subscribe, FULFILLED, REJECTED, noop, makePromise, PROMISE_ID } from './-internal'; import { asap } from './asap'; export default function then(onFulfillment, onRejection) { const parent = this; const child = new this.constructor(noop); if (child[PROMISE_ID] === undefined) { makePromise(child); } const { _state } = parent; if (_state) { const callback = arguments[_state - 1]; asap(() => invokeCallback(_state, child, callback, parent._result)); } else { subscribe(parent, child, onFulfillment, onRejection); } return child; }