Files
upload-google-play/node_modules/es6-promise/lib/es6-promise/then.js
Drew Heavner a29f8cd536 Finished action
Adding the monolith node_modules dir for deployment
2019-12-04 09:58:34 -05:00

33 lines
609 B
JavaScript

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;
}