UNPKG

@haoxh/redux-dva

Version:
2 lines (1 loc) 2.37 kB
"use strict";function isGenerator(e){return"function"==typeof e.next&&"function"==typeof e.throw}function isPromise(e){return e instanceof Promise||"function"==typeof e.then}function isObject(e){return"[object Object]"==={}.toString.call(e)}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function promiseQueue(e,t){var n=Array.isArray(t)?"array":isPromise(t)?"promise":isObject(t)?"object":void 0;if(n){"promise"===n&&(t=[t]);var o=Object.keys(t);(t=Object.values(t))&&Promise.all(t).then(onFulfilled.bind(this,e,"reslove",n,o),onFulfilled.bind(this,e,"reject")).catch(onFulfilled.bind(this,e,"reject"))}}function onFulfilled(e,t,n,o,r){if(isGenerator(e)){if("promise"===n)r=r&&r[0];else if("object"===n){var i={};o.forEach(function(e,t){return i[e]=r[t]}),r=i}var a={};(a="reslove"===t?e.next(r):e.throw(r)).done||taskGenerator(e,a.value)}}function taskGenerator(e,t){if(isGenerator(e)){var n=null,o={};for(t&&(o.value=t);!n;){if(isGenerator(o))taskGenerator(o.value);else{if(o.value&&(isPromise(o.value)||"object"===_typeof(o.value))){n=null,promiseQueue(e,o.value);break}o=e.next(o.value)}n=o.done}}}function dva(){var c={};function l(e){if("function"==typeof e){for(var t=arguments.length,n=Array(1<t?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];return e.apply(void 0,n)}if(e)return e}function s(e){if("function"==typeof e){var t={};return Object.keys(c).forEach(function(e){t[e]=c[e].state}),e(t)}}function n(e,t){var n=e.type,o=e.payload,r=void 0===o?{}:o,i=e.callback,a=(void 0===n?"":n).split("/"),u=c[a[0]].effects[a[1]],f=u&&u({payload:r,callback:i},{put:function(e,t,n,o){var r=n.split("/"),i=r[0];2===r.length&&(e=r[0],i=r[1]);var a=c[e].reducers[i];"function"==typeof a&&(c[e].state=a(c[e].state,{type:n,payload:o}),t({type:e,data:c[e].state}))}.bind(this,a[0],t),call:l,select:s});f&&taskGenerator(f)}return{createReducers:function(e){e.forEach(function(e){c[e.namespace]=e});var t={};return Object.keys(c).forEach(function(o){t[o]=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:o;return e=e||c[n].state,t.type===n?t.data:e}}),t},middleware:function(e){return function(t){return function(e){n(e,t)}}}}}var index=dva();module.exports=index;