UNPKG

@turbox3d/reactivity

Version:

Large-scale reactive state management library

21 lines 661 B
import { isPromise } from '@turbox3d/shared'; export function normalNextReturn(next, dispatchedAction, callback, errorCallback) { var result = next(dispatchedAction); if (isPromise(result)) { return new Promise(function (resolve, reject) { result.then(function (res) { callback && callback(); resolve(res); })["catch"](function (error) { errorCallback && errorCallback(error.stack || error.message); reject(error); }); }); } if (result && result instanceof Error) { errorCallback && errorCallback(result.stack || result.message); } else { callback && callback(); } return result; }