UNPKG

angular2

Version:

Angular 2 - a web framework for modern web apps

44 lines 1.51 kB
// Promises are put into their own facade file so that they can be used without // introducing a dependency on rxjs. They are re-exported through facade/async. export { Promise }; export class PromiseWrapper { static resolve(obj) { return Promise.resolve(obj); } static reject(obj, _) { return Promise.reject(obj); } // Note: We can't rename this method into `catch`, as this is not a valid // method name in Dart. static catchError(promise, onError) { return promise.catch(onError); } static all(promises) { if (promises.length == 0) return Promise.resolve([]); return Promise.all(promises); } static then(promise, success, rejection) { return promise.then(success, rejection); } static wrap(computation) { return new Promise((res, rej) => { try { res(computation()); } catch (e) { rej(e); } }); } static scheduleMicrotask(computation) { PromiseWrapper.then(PromiseWrapper.resolve(null), computation, (_) => { }); } static isPromise(obj) { return obj instanceof Promise; } static completer() { var resolve; var reject; var p = new Promise(function (res, rej) { resolve = res; reject = rej; }); return { promise: p, resolve: resolve, reject: reject }; } } //# sourceMappingURL=promise.js.map