easy-soft-dva 3.10.40 → 3.10.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- import e from"invariant";import{combineReducers as t}from"redux";import n from"redux-saga";import*as r from"redux-saga";export{r as saga};import{isPlainObject as o}from"is-plain-object";import a from"flatten";import{configureStore as c}from"@reduxjs/toolkit";import u from"warning";export{Provider,connect}from"react-redux";const i=Array.isArray.bind(Array),s=e=>"function"==typeof e,f=e=>e;var l=Object.freeze({__proto__:null,findIndex:(e,t)=>{for(let n=0,{length:r}=e;n<r;n+=1)if(t(e[n],n))return n;return-1},isArray:i,isFunction:s,isPlainObject:o,noop:()=>{},returnSelf:f});function p(t,n){const{namespace:r,reducers:a,effects:c,subscriptions:u}=t;e(r,"[app.model] namespace should be defined"),e("string"==typeof r,"[app.model] namespace should be string, but got "+typeof r),e(!n.some((e=>e.namespace===r)),"[app.model] namespace should be unique"),a&&(e(o(a)||i(a),"[app.model] reducers should be plain object or array, but got "+typeof a),e(!i(a)||o(a[0])&&s(a[1]),"[app.model] reducers with array should be [Object, Function]")),c&&e(o(c),"[app.model] effects should be plain object, but got "+typeof c),u&&(e(o(u),"[app.model] subscriptions should be plain object, but got "+typeof u),e(function(e){return Object.keys(e).every((t=>s(e[t])))}(u),"[app.model] subscription should be function"))}const d="/";function h(e){return()=>t=>n=>{const{type:r}=n;return function(t){if(!t||"string"!=typeof t)return!1;const[n]=t.split(d),r=e._models.find((e=>e.namespace===n));if(r&&r.effects&&r.effects[t])return!0;return!1}(r)?new Promise(((e,r)=>{t({__dva_resolve:e,__dva_reject:r,...n})})):t(n)}}function y(e){return e}function v(t,n,r){const o=Object.keys(t).map((n=>function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:y,r=arguments.length>2?arguments[2]:void 0;return(o,a)=>{const{type:c}=a;return e(c,"dispatch: action should be a plain Object with type"),t===c?n(o,a,r):o}}(n,t[n],r))),a=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(e,n)=>t.reduce(((e,t)=>t(e,n)),e)}(...o);return function(){return a(arguments.length>0&&void 0!==arguments[0]?arguments[0]:n,arguments.length>1?arguments[1]:void 0,r)}}function m(e,t,n,r){return Array.isArray(e)?e[1]((n||v)(e[0],t,r)):(n||v)(e||{},t,r)}var g=function(e){return"@@redux-saga/"+e},E=g("CANCEL_PROMISE"),b=g("IO"),_=g("MULTICAST"),w=g("SELF_CANCELLATION"),A=g("TASK");function N(){return N=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},N.apply(this,arguments)}var O=function(e){return null==e},k=function(e){return null!=e},x=function(e){return"function"==typeof e},S=function(e){return"string"==typeof e},C=Array.isArray,q=function(e){return e&&!C(e)&&"object"==typeof e},j=function(e){return e&&e[A]},T=function(e){return e&&x(e.isEmpty)&&x(e.take)&&x(e.put)},L=function e(t){return t&&(S(t)||R(t)||x(t)||C(t)&&t.every(e))},$=function(e){return e&&x(e.take)&&x(e.close)},D=function(e){return x(e)&&e.hasOwnProperty("toString")},R=function(e){return Boolean(e)&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype},V=function(e){return $(e)&&e[_]},P=function(e){return e&&e[b]},U=2147483647;function F(e,t){if(void 0===t&&(t=!0),"production"!==process.env.NODE_ENV&&e>U)throw new Error("delay only supports a maximum value of "+U+"ms");var n,r=new Promise((function(r){n=setTimeout(r,Math.min(U,e),t)}));return r[E]=function(){clearTimeout(n)},r}process.env.NODE_ENV;var M=function(e){return e};function I(e,t,n){if(!t(e))throw new Error(n)}var H=function(e){throw e},K=function(e){return{value:e,done:!0}};var z=function(e){return function(e,t){void 0===e&&(e=10);var n=new Array(e),r=0,o=0,a=0,c=function(t){n[o]=t,o=(o+1)%e,r++},u=function(){if(0!=r){var t=n[a];return n[a]=null,r--,a=(a+1)%e,t}},i=function(){for(var e=[];r;)e.push(u());return e};return{isEmpty:function(){return 0==r},put:function(u){var s;if(r<e)c(u);else switch(t){case 1:throw new Error("Channel's Buffer overflow!");case 3:n[o]=u,a=o=(o+1)%e;break;case 4:s=2*e,n=i(),r=n.length,o=n.length,a=0,n.length=s,e=s,c(u)}},take:u,flush:i}}(e,3)},X="TAKE",B="PUT",G="RACE",J="CALL",W="FORK",Q="JOIN",Y="CANCEL",Z="SELECT",ee="ACTION_CHANNEL",te="CANCELLED",ne="FLUSH",re="GET_CONTEXT",oe="SET_CONTEXT",ae=Object.freeze({__proto__:null,TAKE:X,PUT:B,ALL:"ALL",RACE:G,CALL:J,CPS:"CPS",FORK:W,JOIN:Q,CANCEL:Y,SELECT:Z,ACTION_CHANNEL:ee,CANCELLED:te,FLUSH:ne,GET_CONTEXT:re,SET_CONTEXT:oe}),ce="\n(HINT: if you are getting these errors in tests, consider using createMockTask from @redux-saga/testing-utils)",ue=function(e,t){var n;return(n={})[b]=!0,n.combinator=!1,n.type=e,n.payload=t,n},ie=function(e){return P(e)&&e.type===W};function se(e,t){if(void 0===e&&(e="*"),"production"!==process.env.NODE_ENV&&arguments.length&&I(arguments[0],k,"take(patternOrChannel): patternOrChannel is undefined"),L(e))return k(t)&&console.warn("take(pattern) takes one argument but two were provided. Consider passing an array for listening to several action types"),ue(X,{pattern:e});if(V(e)&&k(t)&&L(t))return ue(X,{channel:e,pattern:t});if($(e))return k(t)&&console.warn("take(channel) takes one argument but two were provided. Second argument is ignored."),ue(X,{channel:e});if("production"!==process.env.NODE_ENV)throw new Error("take(patternOrChannel): argument "+e+" is not valid channel or a valid pattern")}function fe(e,t){return"production"!==process.env.NODE_ENV&&(arguments.length>1?(I(e,k,"put(channel, action): argument channel is undefined"),I(e,$,"put(channel, action): argument "+e+" is not a valid channel"),I(t,k,"put(channel, action): argument action is undefined")):I(e,k,"put(action): argument action is undefined")),O(t)&&(t=e,e=void 0),ue(B,{channel:e,action:t})}function le(e){var t=ue(G,e);return t.combinator=!0,t}var pe=function(e,t){if(I(t,k,e+": argument fn is undefined or null"),!x(t)){var n,r=null;if(C(t))r=t[0],I(n=t[1],k,e+": argument of type [context, fn] has undefined or null `fn`");else{if(!q(t))return void I(t,x,e+": argument fn is not function");r=t.context,I(n=t.fn,k,e+": argument of type {context, fn} has undefined or null `fn`")}r&&S(n)?I(r[n],x,e+': context arguments has no such method - "'+n+'"'):I(n,x,e+": unpacked fn argument (from [context, fn] or {context, fn}) is not a function")}};function de(e,t){var n,r=null;return x(e)?n=e:(C(e)?(r=e[0],n=e[1]):(r=e.context,n=e.fn),r&&S(n)&&x(r[n])&&(n=r[n])),{context:r,fn:n,args:t}}var he=function(e){return e!==Ee};function ye(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];if("production"!==process.env.NODE_ENV){var o="number"==typeof n[0]?n[0]:"ms";I(e,he,"instead of writing `yield call(delay, "+o+")` where delay is an effect from `redux-saga/effects` you should write `yield delay("+o+")`"),pe("call",e)}return ue(J,de(e,n))}function ve(e){"production"!==process.env.NODE_ENV&&(pe("fork",e),I(e,(function(e){return!P(e)}),"fork: argument must not be an effect"));for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return ue(W,de(e,n))}function me(e){if(void 0===e&&(e=w),"production"!==process.env.NODE_ENV){if(arguments.length>1)throw new Error("cancel(...tasks) is not supported any more. Please use cancel([...tasks]) to cancel multiple tasks.");C(e)?e.forEach((function(e){I(e,j,"cancel([...tasks]): argument "+e+" is not a valid Task object "+ce)})):e!==w&&k(e)&&I(e,j,"cancel(task): argument "+e+" is not a valid Task object "+ce)}return ue(Y,e)}function ge(e,t){return"production"!==process.env.NODE_ENV&&(I(e,L,"actionChannel(pattern,...): argument pattern is not valid"),arguments.length>1&&(I(t,k,"actionChannel(pattern, buffer): argument buffer is undefined"),I(t,T,"actionChannel(pattern, buffer): argument "+t+" is not a valid buffer"))),ue(ee,{pattern:e,buffer:t})}var Ee=ye.bind(null,F),be=function(e){return{done:!0,value:e}},_e={};function we(e){return $(e)?"channel":D(e)?String(e):x(e)?e.name:String(e)}function Ae(e,t,n){var r,o,a,c=t;function u(t,n){if(c===_e)return be(t);if(n&&!o)throw c=_e,n;r&&r(t);var u=n?e[o](n):e[c]();return c=u.nextState,a=u.effect,r=u.stateUpdater,o=u.errorState,c===_e?be(t):a}return function(e,t,n){void 0===t&&(t=H),void 0===n&&(n="iterator");var r={meta:{name:n},next:e,throw:t,return:K,isSagaIterator:!0};return"undefined"!=typeof Symbol&&(r[Symbol.iterator]=function(){return r}),r}(u,(function(e){return u(null,e)}),n)}function Ne(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];var a,c={done:!1,value:se(e)},u=function(e){return a=e};return Ae({q1:function(){return{nextState:"q2",effect:c,stateUpdater:u}},q2:function(){return{nextState:"q1",effect:(e=a,{done:!1,value:ve.apply(void 0,[t].concat(r,[e]))})};var e}},"q1","takeEvery("+we(e)+", "+t.name+")")}function Oe(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];var a,c,u={done:!1,value:se(e)},i=function(e){return{done:!1,value:ve.apply(void 0,[t].concat(r,[e]))}},s=function(e){return{done:!1,value:me(e)}},f=function(e){return a=e},l=function(e){return c=e};return Ae({q1:function(){return{nextState:"q2",effect:u,stateUpdater:l}},q2:function(){return a?{nextState:"q3",effect:s(a)}:{nextState:"q1",effect:i(c),stateUpdater:f}},q3:function(){return{nextState:"q1",effect:i(c),stateUpdater:f}}},"q1","takeLatest("+we(e)+", "+t.name+")")}function ke(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];var a,c={done:!1,value:se(e)},u=function(e){return a=e};return Ae({q1:function(){return{nextState:"q2",effect:c,stateUpdater:u}},q2:function(){return{nextState:"q1",effect:(e=a,{done:!1,value:ye.apply(void 0,[t].concat(r,[e]))})};var e}},"q1","takeLeading("+we(e)+", "+t.name+")")}function xe(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];var c,u,i={done:!1,value:Ee(e)},s=function(e){return c=e},f=function(e){return u=e},l=!$(t);return l||f(t),Ae({q1:function(){return{nextState:"q2",effect:{done:!1,value:ge(t,z(1))},stateUpdater:f}},q2:function(){return{nextState:"q3",effect:{done:!1,value:se(u)},stateUpdater:s}},q3:function(){return{nextState:"q4",effect:(e=c,{done:!1,value:ve.apply(void 0,[n].concat(o,[e]))})};var e},q4:function(){return{nextState:"q2",effect:i}}},l?"q1":"q2","throttle("+we(t)+", "+n.name+")")}function Se(e,t,n){for(var r=e,o=arguments.length,a=new Array(o>3?o-3:0),c=3;c<o;c++)a[c-3]=arguments[c];var u={done:!1,value:ye.apply(void 0,[n].concat(a))},i={done:!1,value:Ee(t)};return Ae({q1:function(){return{nextState:"q2",effect:u,errorState:"q10"}},q2:function(){return{nextState:_e}},q10:function(e){if((r-=1)<=0)throw e;return{nextState:"q1",effect:i}}},"q1","retry("+n.name+")")}function Ce(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];var c,u,i={done:!1,value:se(t)},s={done:!1,value:le({action:se(t),debounce:Ee(e)})},f=function(e){return c=e},l=function(e){return u=e};return Ae({q1:function(){return{nextState:"q2",effect:i,stateUpdater:f}},q2:function(){return{nextState:"q3",effect:s,stateUpdater:l}},q3:function(){return u.debounce?{nextState:"q1",effect:(t=c,{done:!1,value:ve.apply(void 0,[n].concat(o,[t]))})}:{nextState:"q2",effect:(e=u.action,{done:!1,value:e}),stateUpdater:f};var e,t}},"q1","debounce("+we(t)+", "+n.name+")")}var qe=function(e,t,n){I(t,k,e.name+" requires a pattern or channel"),I(n,k,e.name+" requires a saga parameter")};function je(e,t){"production"!==process.env.NODE_ENV&&qe(je,e,t);for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];return ve.apply(void 0,[Ne,e,t].concat(r))}function Te(e,t){"production"!==process.env.NODE_ENV&&qe(Te,e,t);for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];return ve.apply(void 0,[Oe,e,t].concat(r))}function Le(e,t,n){"production"!==process.env.NODE_ENV&&(I(t,k,"throttle requires a pattern or channel"),I(n,k,"throttle requires a saga parameter"));for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];return ve.apply(void 0,[xe,e,t,n].concat(o))}var $e=Object.freeze({__proto__:null,actionChannel:ge,all:function(e){var t=ue("ALL",e);return t.combinator=!0,t},apply:function(e,t,n){void 0===n&&(n=[]);var r=[e,t];return"production"!==process.env.NODE_ENV&&pe("apply",r),ue(J,de([e,t],n))},call:ye,cancel:me,cancelled:function(){return ue(te,{})},cps:function(e){"production"!==process.env.NODE_ENV&&pe("cps",e);for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return ue("CPS",de(e,n))},debounce:function(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];return ve.apply(void 0,[Ce,e,t,n].concat(o))},delay:Ee,effectTypes:ae,flush:function(e){return"production"!==process.env.NODE_ENV&&I(e,$,"flush(channel): argument "+e+" is not valid channel"),ue(ne,e)},fork:ve,getContext:function(e){return"production"!==process.env.NODE_ENV&&I(e,S,"getContext(prop): argument "+e+" is not a string"),ue(re,e)},join:function(e){if("production"!==process.env.NODE_ENV){if(arguments.length>1)throw new Error("join(...tasks) is not supported any more. Please use join([...tasks]) to join multiple tasks.");C(e)?e.forEach((function(e){I(e,j,"join([...tasks]): argument "+e+" is not a valid Task object "+ce)})):I(e,j,"join(task): argument "+e+" is not a valid Task object "+ce)}return ue(Q,e)},put:fe,putResolve:function(){var e=fe.apply(void 0,arguments);return e.payload.resolve=!0,e},race:le,retry:function(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];return ye.apply(void 0,[Se,e,t,n].concat(o))},select:function(e){void 0===e&&(e=M);for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return"production"!==process.env.NODE_ENV&&arguments.length&&(I(arguments[0],k,"select(selector, [...]): argument selector is undefined"),I(e,x,"select(selector, [...]): argument "+e+" is not a function")),ue(Z,{selector:e,args:n})},setContext:function(e){return"production"!==process.env.NODE_ENV&&I(e,q,function(e,t){return"setContext(props): argument "+t+" is not a plain object"}(0,e)),ue(oe,e)},spawn:function(e){"production"!==process.env.NODE_ENV&&pe("spawn",e);for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return o=ve.apply(void 0,[e].concat(n)),"production"!==process.env.NODE_ENV&&I(o,ie,"detach(eff): argument must be a fork effect"),ue(W,N({},o.payload,{detached:!0}));var o},take:se,takeEvery:je,takeLatest:Te,takeLeading:function e(t,n){"production"!==process.env.NODE_ENV&&qe(e,t,n);for(var r=arguments.length,o=new Array(r>2?r-2:0),a=2;a<r;a++)o[a-2]=arguments[a];return ve.apply(void 0,[ke,t,n].concat(o))},takeMaybe:function(){var e=se.apply(void 0,arguments);return e.payload.maybe=!0,e},throttle:Le});function De(e,t){const n=`${t.namespace}${d}${e}`,r=n.replace(/\/@@[^/]+?$/,"");return(Array.isArray(t.reducers)?t.reducers[0][r]:t.reducers&&t.reducers[r])||t.effects&&t.effects[r]?n:e}function Re(){}function Ve(e,t,n,r){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};return function*(){for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)){const c=Pe(a,e[a],t,n,r,o),u=yield ve(c);yield ve((function*(){yield se(`${t.namespace}/@@CANCEL_EFFECTS`),yield me(u)}))}}}function Pe(t,n,r,o,a,c){let i,s,f=n,l="takeEvery";if(Array.isArray(n)){[f]=n;const t=n[1];t&&t.type&&(({type:l}=t),"throttle"===l&&(e(t.ms,"app.start: opts.ms should be defined if type is throttle"),({ms:i}=t)),"poll"===l&&(e(t.delay,"app.start: opts.delay should be defined if type is poll"),({delay:s}=t))),e(["watcher","takeEvery","takeLatest","throttle","poll"].includes(l),"app.start: effect type should be takeEvery, takeLatest, throttle, poll or watcher")}function*p(){for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];const{__dva_resolve:s=Re,__dva_reject:l=Re}=a.length>0?a[0]:{};try{yield fe({type:`${t}${d}@@start`});const n=yield f(...a.concat(function(t,n){function r(r,o){e(r,"dispatch: action should be a plain Object with type");const{namespacePrefixWarning:a=!0}=n;a&&u(0!==r.indexOf(`${t.namespace}${d}`),`[${o}] ${r} should not be prefixed with namespace ${t.namespace}`)}function o(e){const{type:n}=e;return r(n,"sagaEffects.put"),fe({...e,type:De(n,t)})}function a(e){const{type:n}=e;return r(n,"sagaEffects.put.resolve"),fe.resolve({...e,type:De(n,t)})}function c(e){return"string"==typeof e?(r(e,"sagaEffects.take"),se(De(e,t))):Array.isArray(e)?se(e.map((e=>"string"==typeof e?(r(e,"sagaEffects.take"),De(e,t)):e))):se(e)}return o.resolve=a,{...$e,put:o,take:c}}(r,c)));yield fe({type:`${t}${d}@@end`}),s(n)}catch(e){o(e,{key:t,effectArgs:a}),e._doNotReject||l(e)}}const h=function(e,t,n,r){for(const o of e)t=o(t,$e,n,r);return t}(a,p,r,t);switch(l){case"watcher":return p;case"takeLatest":return function*(){yield Te(t,h)};case"throttle":return function*(){yield Le(i,t,h)};case"poll":return function*(){function e(e){return new Promise((t=>setTimeout(t,e)))}function*n(t,n){const{call:r}=t;for(;;)yield r(h,n),yield r(e,s)}const{call:r,take:o,race:a}=$e;for(;;){const e=yield o(`${t}-start`);yield a([r(n,$e,e),o(`${t}-stop`)])}};default:return function*(){yield je(t,h)}}}const Ue=["onError","onStateChange","onAction","onHmr","onReducer","onEffect","extraReducers","extraEnhancers","_handleActions"];class Fe{constructor(){this._handleActions=null,this.hooks=Ue.reduce(((e,t)=>(e[t]=[],e)),{})}use(t){e(o(t),"plugin.use: plugin should be plain object");const{hooks:n}=this;for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e(n[r],`plugin.use: unknown plugin property: ${r}`),"_handleActions"===r?this._handleActions=t[r]:"extraEnhancers"===r?n[r]=t[r]:n[r].push(t[r]))}apply(t,n){const{hooks:r}=this;e(["onError","onHmr"].includes(t),`plugin.apply: hook ${t} cannot be applied`);const o=r[t];return function(){if(o.length>0)for(const e of o)e(...arguments);else n&&n(...arguments)}}get(t){const{hooks:n}=this;return e(t in n,`plugin.get: hook ${t} cannot be got`),"extraReducers"===t?function(e){let t={};for(const n of e)t={...t,...n};return t}(n[t]):"onReducer"===t?(r=n[t],function(e){for(const t of r)e=t(e);return e}):n[t];var r}}function Me(e,t,n){return Object.keys(e).reduce(((r,o)=>{u(0!==o.indexOf(`${t}${d}`),`[prefixNamespace]: ${n} ${o} should not be prefixed with namespace ${t}`);return r[`${t}${d}${o}`]=e[o],r}),{})}function Ie(e){const{namespace:t,reducers:n,effects:r}=e;if(n)if(i(n)){const[r,...o]=n;e.reducers=[Me(r,t,"reducer"),...o]}else e.reducers=Me(n,t,"reducer");return r&&(e.effects=Me(r,t,"effect")),e}function He(t,n){return r=>{const{type:o}=r;return e(o,"dispatch: action should be a plain Object with type"),u(0!==o.indexOf(`${n.namespace}${d}`),`dispatch: ${o} should not be prefixed with namespace ${n.namespace}`),t({...r,type:De(o,n)})}}function Ke(e,t,n,r){const o=[],a=[];for(const c in e)if(Object.prototype.hasOwnProperty.call(e,c)){const u=(0,e[c])({dispatch:He(n._store.dispatch,t),history:n._history},r);s(u)?o.push(u):a.push(c)}return{funcs:o,nonFuncs:a}}function ze(e,t){if(!e[t])return;const{funcs:n,nonFuncs:r}=e[t];u(0===r.length,`[app.unModel] subscription should return unListener function, check these subscriptions ${r.join(", ")}`);for(const e of n)e();delete e[t]}const{noop:Xe,findIndex:Be}=l,Ge={namespace:"@@dva",state:0,reducers:{UPDATE:e=>e+1}};function Je(){let r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{initialReducer:u,setupApp:s=Xe}=o,l=new Fe;l.use(function(e){return Object.keys(e).reduce(((t,n)=>(Ue.includes(n)&&(t[n]=e[n]),t)),{})}(r));const d={_models:[Ie({...Ge})],_store:null,_plugin:l,use:l.use.bind(l),model:y,start:function(){const p=(e,t)=>{e&&("string"==typeof e&&(e=new Error(e)),e.preventDefault=()=>{e._doNotReject=!0},l.apply("onError",(e=>{throw new Error(e.stack||e)}))(e,d._store.dispatch,t))},y=n(),b=h(d);d._getSaga=Ve.bind(null);const _=[],w={...u};for(const e of d._models)w[e.namespace]=m(e.reducers,e.state,l._handleActions,e.namespace),e.effects&&_.push(d._getSaga(e.effects,e,p,l.get("onEffect"),r));const A=l.get("onReducer"),N=l.get("extraReducers");e(Object.keys(N).every((e=>!(e in w))),`[app.start] extraReducers is conflict with other reducers, reducers list: ${Object.keys(w).join(", ")}`),d._store=function(t){let{reducers:n,initialState:r,plugin:o,sagaMiddleware:u,promiseMiddleware:s,createOpts:{setupMiddleWares:l=f}}=t;const p=o.get("extraEnhancers");e(i(p),"[app.start] extraEnhancers should be array, but got "+typeof p);const d=o.get("onAction"),h=l([s,u,...a(d)]);return c({reducer:n,preloadedState:r,middleware:e=>[...e({serializableCheck:!1}),...h],enhancers:e=>[...e(),...p]})}({reducers:S(),initialState:r.initialState||{},plugin:l,createOpts:o,sagaMiddleware:y,promiseMiddleware:b});const O=d._store;O.runSaga=y.run,O.asyncReducers={};const k=l.get("onStateChange");for(const e of k)O.subscribe((()=>{e(O.getState())}));_.forEach((e=>{y.run(e)})),s(d);const x={};for(const e of this._models)e.subscriptions&&(x[e.namespace]=Ke(e.subscriptions,e,d,p));function S(){return A(t({...w,...N,...d._store?d._store.asyncReducers:{}}))}d.model=v.bind(d,S,p,x),d.unModel=g.bind(d,S,w,x),d.replaceModel=E.bind(d,S,w,x,p)}};return d;function y(e){"production"!==process.env.NODE_ENV&&p(e,d._models);const t=Ie({...e});return d._models.push(t),t}function v(e,t,n,o){o=y(o);const a=d._store;a.asyncReducers[o.namespace]=m(o.reducers,o.state,l._handleActions,o.namespace),a.replaceReducer(e()),o.effects&&a.runSaga(d._getSaga(o.effects,o,t,l.get("onEffect"),r)),o.subscriptions&&(n[o.namespace]=Ke(o.subscriptions,o,d,t))}function g(e,t,n,r){const o=d._store;delete o.asyncReducers[r],delete t[r],o.replaceReducer(e()),o.dispatch({type:"@@dva/UPDATE"}),o.dispatch({type:`${r}/@@CANCEL_EFFECTS`}),ze(n,r),d._models=d._models.filter((e=>e.namespace!==r))}function E(e,t,n,r,o){const a=d._store,{namespace:c}=o,u=Be(d._models,(e=>e.namespace===c));~u&&(a.dispatch({type:`${c}/@@CANCEL_EFFECTS`}),delete a.asyncReducers[c],delete t[c],ze(n,c),d._models.splice(u,1)),d.model(o),a.dispatch({type:"@@dva/UPDATE"})}}export{Je as create,l as utils};
1
+ import e from"invariant";import{combineReducers as t}from"redux";import n from"redux-saga";import*as r from"redux-saga";export{r as saga};import{isPlainObject as o}from"is-plain-object";import a from"flatten";import{configureStore as c}from"@reduxjs/toolkit";import u from"warning";export{Provider,connect}from"react-redux";const i=Array.isArray.bind(Array),s=e=>"function"==typeof e,f=e=>e;var l=Object.freeze({__proto__:null,findIndex:(e,t)=>{for(let n=0,{length:r}=e;n<r;n+=1)if(t(e[n],n))return n;return-1},isArray:i,isFunction:s,isPlainObject:o,noop:()=>{},returnSelf:f});function p(t,n){const{namespace:r,reducers:a,effects:c,subscriptions:u}=t;e(r,"[app.model] namespace should be defined"),e("string"==typeof r,"[app.model] namespace should be string, but got "+typeof r),e(!n.some((e=>e.namespace===r)),"[app.model] namespace should be unique"),a&&(e(o(a)||i(a),"[app.model] reducers should be plain object or array, but got "+typeof a),e(!i(a)||o(a[0])&&s(a[1]),"[app.model] reducers with array should be [Object, Function]")),c&&e(o(c),"[app.model] effects should be plain object, but got "+typeof c),u&&(e(o(u),"[app.model] subscriptions should be plain object, but got "+typeof u),e(function(e){return Object.keys(e).every((t=>s(e[t])))}(u),"[app.model] subscription should be function"))}const d="/";function h(e){return()=>t=>n=>{const{type:r}=n;return function(t){if(!t||"string"!=typeof t)return!1;const[n]=t.split(d),r=e._models.find((e=>e.namespace===n));if(r&&r.effects&&r.effects[t])return!0;return!1}(r)?new Promise(((e,r)=>{t({__dva_resolve:e,__dva_reject:r,...n})})):t(n)}}function y(e){return e}function v(t,n,r){const o=Object.keys(t).map((n=>function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:y,r=arguments.length>2?arguments[2]:void 0;return(o,a)=>{const{type:c}=a;return e(c,"dispatch: action should be a plain Object with type"),t===c?n(o,a,r):o}}(n,t[n],r))),a=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(e,n)=>t.reduce(((e,t)=>t(e,n)),e)}(...o);return function(){return a(arguments.length>0&&void 0!==arguments[0]?arguments[0]:n,arguments.length>1?arguments[1]:void 0,r)}}function m(e,t,n,r){return Array.isArray(e)?e[1]((n||v)(e[0],t,r)):(n||v)(e||{},t,r)}var g=function(e){return"@@redux-saga/"+e},E=g("CANCEL_PROMISE"),b=g("IO"),_=g("MULTICAST"),w=g("SELF_CANCELLATION"),A=g("TASK");function N(){return N=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},N.apply(null,arguments)}var O=function(e){return null==e},k=function(e){return null!=e},x=function(e){return"function"==typeof e},S=function(e){return"string"==typeof e},C=Array.isArray,q=function(e){return e&&!C(e)&&"object"==typeof e},j=function(e){return e&&e[A]},T=function(e){return e&&x(e.isEmpty)&&x(e.take)&&x(e.put)},L=function e(t){return t&&(S(t)||R(t)||x(t)||C(t)&&t.every(e))},$=function(e){return e&&x(e.take)&&x(e.close)},D=function(e){return x(e)&&e.hasOwnProperty("toString")},R=function(e){return Boolean(e)&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype},V=function(e){return $(e)&&e[_]},P=function(e){return e&&e[b]},U=2147483647;function F(e,t){if(void 0===t&&(t=!0),"production"!==process.env.NODE_ENV&&e>U)throw new Error("delay only supports a maximum value of "+U+"ms");var n,r=new Promise((function(r){n=setTimeout(r,Math.min(U,e),t)}));return r[E]=function(){clearTimeout(n)},r}process.env.NODE_ENV;var M=function(e){return e};function I(e,t,n){if(!t(e))throw new Error(n)}var H=function(e){throw e},K=function(e){return{value:e,done:!0}};var z=function(e){return function(e,t){void 0===e&&(e=10);var n=new Array(e),r=0,o=0,a=0,c=function(t){n[o]=t,o=(o+1)%e,r++},u=function(){if(0!=r){var t=n[a];return n[a]=null,r--,a=(a+1)%e,t}},i=function(){for(var e=[];r;)e.push(u());return e};return{isEmpty:function(){return 0==r},put:function(u){var s;if(r<e)c(u);else switch(t){case 1:throw new Error("Channel's Buffer overflow!");case 3:n[o]=u,a=o=(o+1)%e;break;case 4:s=2*e,n=i(),r=n.length,o=n.length,a=0,n.length=s,e=s,c(u)}},take:u,flush:i}}(e,3)},X="TAKE",B="PUT",G="RACE",J="CALL",W="FORK",Q="JOIN",Y="CANCEL",Z="SELECT",ee="ACTION_CHANNEL",te="CANCELLED",ne="FLUSH",re="GET_CONTEXT",oe="SET_CONTEXT",ae=Object.freeze({__proto__:null,TAKE:X,PUT:B,ALL:"ALL",RACE:G,CALL:J,CPS:"CPS",FORK:W,JOIN:Q,CANCEL:Y,SELECT:Z,ACTION_CHANNEL:ee,CANCELLED:te,FLUSH:ne,GET_CONTEXT:re,SET_CONTEXT:oe}),ce="\n(HINT: if you are getting these errors in tests, consider using createMockTask from @redux-saga/testing-utils)",ue=function(e,t){var n;return(n={})[b]=!0,n.combinator=!1,n.type=e,n.payload=t,n},ie=function(e){return P(e)&&e.type===W};function se(e,t){if(void 0===e&&(e="*"),"production"!==process.env.NODE_ENV&&arguments.length&&I(arguments[0],k,"take(patternOrChannel): patternOrChannel is undefined"),L(e))return k(t)&&console.warn("take(pattern) takes one argument but two were provided. Consider passing an array for listening to several action types"),ue(X,{pattern:e});if(V(e)&&k(t)&&L(t))return ue(X,{channel:e,pattern:t});if($(e))return k(t)&&console.warn("take(channel) takes one argument but two were provided. Second argument is ignored."),ue(X,{channel:e});if("production"!==process.env.NODE_ENV)throw new Error("take(patternOrChannel): argument "+e+" is not valid channel or a valid pattern")}function fe(e,t){return"production"!==process.env.NODE_ENV&&(arguments.length>1?(I(e,k,"put(channel, action): argument channel is undefined"),I(e,$,"put(channel, action): argument "+e+" is not a valid channel"),I(t,k,"put(channel, action): argument action is undefined")):I(e,k,"put(action): argument action is undefined")),O(t)&&(t=e,e=void 0),ue(B,{channel:e,action:t})}function le(e){var t=ue(G,e);return t.combinator=!0,t}var pe=function(e,t){if(I(t,k,e+": argument fn is undefined or null"),!x(t)){var n,r=null;if(C(t))r=t[0],I(n=t[1],k,e+": argument of type [context, fn] has undefined or null `fn`");else{if(!q(t))return void I(t,x,e+": argument fn is not function");r=t.context,I(n=t.fn,k,e+": argument of type {context, fn} has undefined or null `fn`")}r&&S(n)?I(r[n],x,e+': context arguments has no such method - "'+n+'"'):I(n,x,e+": unpacked fn argument (from [context, fn] or {context, fn}) is not a function")}};function de(e,t){var n,r=null;return x(e)?n=e:(C(e)?(r=e[0],n=e[1]):(r=e.context,n=e.fn),r&&S(n)&&x(r[n])&&(n=r[n])),{context:r,fn:n,args:t}}var he=function(e){return e!==Ee};function ye(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];if("production"!==process.env.NODE_ENV){var o="number"==typeof n[0]?n[0]:"ms";I(e,he,"instead of writing `yield call(delay, "+o+")` where delay is an effect from `redux-saga/effects` you should write `yield delay("+o+")`"),pe("call",e)}return ue(J,de(e,n))}function ve(e){"production"!==process.env.NODE_ENV&&(pe("fork",e),I(e,(function(e){return!P(e)}),"fork: argument must not be an effect"));for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return ue(W,de(e,n))}function me(e){if(void 0===e&&(e=w),"production"!==process.env.NODE_ENV){if(arguments.length>1)throw new Error("cancel(...tasks) is not supported any more. Please use cancel([...tasks]) to cancel multiple tasks.");C(e)?e.forEach((function(e){I(e,j,"cancel([...tasks]): argument "+e+" is not a valid Task object "+ce)})):e!==w&&k(e)&&I(e,j,"cancel(task): argument "+e+" is not a valid Task object "+ce)}return ue(Y,e)}function ge(e,t){return"production"!==process.env.NODE_ENV&&(I(e,L,"actionChannel(pattern,...): argument pattern is not valid"),arguments.length>1&&(I(t,k,"actionChannel(pattern, buffer): argument buffer is undefined"),I(t,T,"actionChannel(pattern, buffer): argument "+t+" is not a valid buffer"))),ue(ee,{pattern:e,buffer:t})}var Ee=ye.bind(null,F),be=function(e){return{done:!0,value:e}},_e={};function we(e){return $(e)?"channel":D(e)?String(e):x(e)?e.name:String(e)}function Ae(e,t,n){var r,o,a,c=t;function u(t,n){if(c===_e)return be(t);if(n&&!o)throw c=_e,n;r&&r(t);var u=n?e[o](n):e[c]();return c=u.nextState,a=u.effect,r=u.stateUpdater,o=u.errorState,c===_e?be(t):a}return function(e,t,n){void 0===t&&(t=H),void 0===n&&(n="iterator");var r={meta:{name:n},next:e,throw:t,return:K,isSagaIterator:!0};return"undefined"!=typeof Symbol&&(r[Symbol.iterator]=function(){return r}),r}(u,(function(e){return u(null,e)}),n)}function Ne(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];var a,c={done:!1,value:se(e)},u=function(e){return a=e};return Ae({q1:function(){return{nextState:"q2",effect:c,stateUpdater:u}},q2:function(){return{nextState:"q1",effect:(e=a,{done:!1,value:ve.apply(void 0,[t].concat(r,[e]))})};var e}},"q1","takeEvery("+we(e)+", "+t.name+")")}function Oe(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];var a,c,u={done:!1,value:se(e)},i=function(e){return{done:!1,value:ve.apply(void 0,[t].concat(r,[e]))}},s=function(e){return{done:!1,value:me(e)}},f=function(e){return a=e},l=function(e){return c=e};return Ae({q1:function(){return{nextState:"q2",effect:u,stateUpdater:l}},q2:function(){return a?{nextState:"q3",effect:s(a)}:{nextState:"q1",effect:i(c),stateUpdater:f}},q3:function(){return{nextState:"q1",effect:i(c),stateUpdater:f}}},"q1","takeLatest("+we(e)+", "+t.name+")")}function ke(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];var a,c={done:!1,value:se(e)},u=function(e){return a=e};return Ae({q1:function(){return{nextState:"q2",effect:c,stateUpdater:u}},q2:function(){return{nextState:"q1",effect:(e=a,{done:!1,value:ye.apply(void 0,[t].concat(r,[e]))})};var e}},"q1","takeLeading("+we(e)+", "+t.name+")")}function xe(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];var c,u,i={done:!1,value:Ee(e)},s=function(e){return c=e},f=function(e){return u=e},l=!$(t);return l||f(t),Ae({q1:function(){return{nextState:"q2",effect:{done:!1,value:ge(t,z(1))},stateUpdater:f}},q2:function(){return{nextState:"q3",effect:{done:!1,value:se(u)},stateUpdater:s}},q3:function(){return{nextState:"q4",effect:(e=c,{done:!1,value:ve.apply(void 0,[n].concat(o,[e]))})};var e},q4:function(){return{nextState:"q2",effect:i}}},l?"q1":"q2","throttle("+we(t)+", "+n.name+")")}function Se(e,t,n){for(var r=e,o=arguments.length,a=new Array(o>3?o-3:0),c=3;c<o;c++)a[c-3]=arguments[c];var u={done:!1,value:ye.apply(void 0,[n].concat(a))},i={done:!1,value:Ee(t)};return Ae({q1:function(){return{nextState:"q2",effect:u,errorState:"q10"}},q2:function(){return{nextState:_e}},q10:function(e){if((r-=1)<=0)throw e;return{nextState:"q1",effect:i}}},"q1","retry("+n.name+")")}function Ce(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];var c,u,i={done:!1,value:se(t)},s={done:!1,value:le({action:se(t),debounce:Ee(e)})},f=function(e){return c=e},l=function(e){return u=e};return Ae({q1:function(){return{nextState:"q2",effect:i,stateUpdater:f}},q2:function(){return{nextState:"q3",effect:s,stateUpdater:l}},q3:function(){return u.debounce?{nextState:"q1",effect:(t=c,{done:!1,value:ve.apply(void 0,[n].concat(o,[t]))})}:{nextState:"q2",effect:(e=u.action,{done:!1,value:e}),stateUpdater:f};var e,t}},"q1","debounce("+we(t)+", "+n.name+")")}var qe=function(e,t,n){I(t,k,e.name+" requires a pattern or channel"),I(n,k,e.name+" requires a saga parameter")};function je(e,t){"production"!==process.env.NODE_ENV&&qe(je,e,t);for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];return ve.apply(void 0,[Ne,e,t].concat(r))}function Te(e,t){"production"!==process.env.NODE_ENV&&qe(Te,e,t);for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o<n;o++)r[o-2]=arguments[o];return ve.apply(void 0,[Oe,e,t].concat(r))}function Le(e,t,n){"production"!==process.env.NODE_ENV&&(I(t,k,"throttle requires a pattern or channel"),I(n,k,"throttle requires a saga parameter"));for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];return ve.apply(void 0,[xe,e,t,n].concat(o))}var $e=Object.freeze({__proto__:null,actionChannel:ge,all:function(e){var t=ue("ALL",e);return t.combinator=!0,t},apply:function(e,t,n){void 0===n&&(n=[]);var r=[e,t];return"production"!==process.env.NODE_ENV&&pe("apply",r),ue(J,de([e,t],n))},call:ye,cancel:me,cancelled:function(){return ue(te,{})},cps:function(e){"production"!==process.env.NODE_ENV&&pe("cps",e);for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return ue("CPS",de(e,n))},debounce:function(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];return ve.apply(void 0,[Ce,e,t,n].concat(o))},delay:Ee,effectTypes:ae,flush:function(e){return"production"!==process.env.NODE_ENV&&I(e,$,"flush(channel): argument "+e+" is not valid channel"),ue(ne,e)},fork:ve,getContext:function(e){return"production"!==process.env.NODE_ENV&&I(e,S,"getContext(prop): argument "+e+" is not a string"),ue(re,e)},join:function(e){if("production"!==process.env.NODE_ENV){if(arguments.length>1)throw new Error("join(...tasks) is not supported any more. Please use join([...tasks]) to join multiple tasks.");C(e)?e.forEach((function(e){I(e,j,"join([...tasks]): argument "+e+" is not a valid Task object "+ce)})):I(e,j,"join(task): argument "+e+" is not a valid Task object "+ce)}return ue(Q,e)},put:fe,putResolve:function(){var e=fe.apply(void 0,arguments);return e.payload.resolve=!0,e},race:le,retry:function(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),a=3;a<r;a++)o[a-3]=arguments[a];return ye.apply(void 0,[Se,e,t,n].concat(o))},select:function(e){void 0===e&&(e=M);for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return"production"!==process.env.NODE_ENV&&arguments.length&&(I(arguments[0],k,"select(selector, [...]): argument selector is undefined"),I(e,x,"select(selector, [...]): argument "+e+" is not a function")),ue(Z,{selector:e,args:n})},setContext:function(e){return"production"!==process.env.NODE_ENV&&I(e,q,function(e,t){return"setContext(props): argument "+t+" is not a plain object"}(0,e)),ue(oe,e)},spawn:function(e){"production"!==process.env.NODE_ENV&&pe("spawn",e);for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return o=ve.apply(void 0,[e].concat(n)),"production"!==process.env.NODE_ENV&&I(o,ie,"detach(eff): argument must be a fork effect"),ue(W,N({},o.payload,{detached:!0}));var o},take:se,takeEvery:je,takeLatest:Te,takeLeading:function e(t,n){"production"!==process.env.NODE_ENV&&qe(e,t,n);for(var r=arguments.length,o=new Array(r>2?r-2:0),a=2;a<r;a++)o[a-2]=arguments[a];return ve.apply(void 0,[ke,t,n].concat(o))},takeMaybe:function(){var e=se.apply(void 0,arguments);return e.payload.maybe=!0,e},throttle:Le});function De(e,t){const n=`${t.namespace}${d}${e}`,r=n.replace(/\/@@[^/]+?$/,"");return(Array.isArray(t.reducers)?t.reducers[0][r]:t.reducers&&t.reducers[r])||t.effects&&t.effects[r]?n:e}function Re(){}function Ve(e,t,n,r){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};return function*(){for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)){const c=Pe(a,e[a],t,n,r,o),u=yield ve(c);yield ve((function*(){yield se(`${t.namespace}/@@CANCEL_EFFECTS`),yield me(u)}))}}}function Pe(t,n,r,o,a,c){let i,s,f=n,l="takeEvery";if(Array.isArray(n)){[f]=n;const t=n[1];t&&t.type&&(({type:l}=t),"throttle"===l&&(e(t.ms,"app.start: opts.ms should be defined if type is throttle"),({ms:i}=t)),"poll"===l&&(e(t.delay,"app.start: opts.delay should be defined if type is poll"),({delay:s}=t))),e(["watcher","takeEvery","takeLatest","throttle","poll"].includes(l),"app.start: effect type should be takeEvery, takeLatest, throttle, poll or watcher")}function*p(){for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];const{__dva_resolve:s=Re,__dva_reject:l=Re}=a.length>0?a[0]:{};try{yield fe({type:`${t}${d}@@start`});const n=yield f(...a.concat(function(t,n){function r(r,o){e(r,"dispatch: action should be a plain Object with type");const{namespacePrefixWarning:a=!0}=n;a&&u(0!==r.indexOf(`${t.namespace}${d}`),`[${o}] ${r} should not be prefixed with namespace ${t.namespace}`)}function o(e){const{type:n}=e;return r(n,"sagaEffects.put"),fe({...e,type:De(n,t)})}function a(e){const{type:n}=e;return r(n,"sagaEffects.put.resolve"),fe.resolve({...e,type:De(n,t)})}function c(e){return"string"==typeof e?(r(e,"sagaEffects.take"),se(De(e,t))):Array.isArray(e)?se(e.map((e=>"string"==typeof e?(r(e,"sagaEffects.take"),De(e,t)):e))):se(e)}return o.resolve=a,{...$e,put:o,take:c}}(r,c)));yield fe({type:`${t}${d}@@end`}),s(n)}catch(e){o(e,{key:t,effectArgs:a}),e._doNotReject||l(e)}}const h=function(e,t,n,r){for(const o of e)t=o(t,$e,n,r);return t}(a,p,r,t);switch(l){case"watcher":return p;case"takeLatest":return function*(){yield Te(t,h)};case"throttle":return function*(){yield Le(i,t,h)};case"poll":return function*(){function e(e){return new Promise((t=>setTimeout(t,e)))}function*n(t,n){const{call:r}=t;for(;;)yield r(h,n),yield r(e,s)}const{call:r,take:o,race:a}=$e;for(;;){const e=yield o(`${t}-start`);yield a([r(n,$e,e),o(`${t}-stop`)])}};default:return function*(){yield je(t,h)}}}const Ue=["onError","onStateChange","onAction","onHmr","onReducer","onEffect","extraReducers","extraEnhancers","_handleActions"];class Fe{constructor(){this._handleActions=null,this.hooks=Ue.reduce(((e,t)=>(e[t]=[],e)),{})}use(t){e(o(t),"plugin.use: plugin should be plain object");const{hooks:n}=this;for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e(n[r],`plugin.use: unknown plugin property: ${r}`),"_handleActions"===r?this._handleActions=t[r]:"extraEnhancers"===r?n[r]=t[r]:n[r].push(t[r]))}apply(t,n){const{hooks:r}=this;e(["onError","onHmr"].includes(t),`plugin.apply: hook ${t} cannot be applied`);const o=r[t];return function(){if(o.length>0)for(const e of o)e(...arguments);else n&&n(...arguments)}}get(t){const{hooks:n}=this;return e(t in n,`plugin.get: hook ${t} cannot be got`),"extraReducers"===t?function(e){let t={};for(const n of e)t={...t,...n};return t}(n[t]):"onReducer"===t?(r=n[t],function(e){for(const t of r)e=t(e);return e}):n[t];var r}}function Me(e,t,n){return Object.keys(e).reduce(((r,o)=>{u(0!==o.indexOf(`${t}${d}`),`[prefixNamespace]: ${n} ${o} should not be prefixed with namespace ${t}`);return r[`${t}${d}${o}`]=e[o],r}),{})}function Ie(e){const{namespace:t,reducers:n,effects:r}=e;if(n)if(i(n)){const[r,...o]=n;e.reducers=[Me(r,t,"reducer"),...o]}else e.reducers=Me(n,t,"reducer");return r&&(e.effects=Me(r,t,"effect")),e}function He(t,n){return r=>{const{type:o}=r;return e(o,"dispatch: action should be a plain Object with type"),u(0!==o.indexOf(`${n.namespace}${d}`),`dispatch: ${o} should not be prefixed with namespace ${n.namespace}`),t({...r,type:De(o,n)})}}function Ke(e,t,n,r){const o=[],a=[];for(const c in e)if(Object.prototype.hasOwnProperty.call(e,c)){const u=(0,e[c])({dispatch:He(n._store.dispatch,t),history:n._history},r);s(u)?o.push(u):a.push(c)}return{funcs:o,nonFuncs:a}}function ze(e,t){if(!e[t])return;const{funcs:n,nonFuncs:r}=e[t];u(0===r.length,`[app.unModel] subscription should return unListener function, check these subscriptions ${r.join(", ")}`);for(const e of n)e();delete e[t]}const{noop:Xe,findIndex:Be}=l,Ge={namespace:"@@dva",state:0,reducers:{UPDATE:e=>e+1}};function Je(){let r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{initialReducer:u,setupApp:s=Xe}=o,l=new Fe;l.use(function(e){return Object.keys(e).reduce(((t,n)=>(Ue.includes(n)&&(t[n]=e[n]),t)),{})}(r));const d={_models:[Ie({...Ge})],_store:null,_plugin:l,use:l.use.bind(l),model:y,start:function(){const p=(e,t)=>{e&&("string"==typeof e&&(e=new Error(e)),e.preventDefault=()=>{e._doNotReject=!0},l.apply("onError",(e=>{throw new Error(e.stack||e)}))(e,d._store.dispatch,t))},y=n(),b=h(d);d._getSaga=Ve.bind(null);const _=[],w={...u};for(const e of d._models)w[e.namespace]=m(e.reducers,e.state,l._handleActions,e.namespace),e.effects&&_.push(d._getSaga(e.effects,e,p,l.get("onEffect"),r));const A=l.get("onReducer"),N=l.get("extraReducers");e(Object.keys(N).every((e=>!(e in w))),`[app.start] extraReducers is conflict with other reducers, reducers list: ${Object.keys(w).join(", ")}`),d._store=function(t){let{reducers:n,initialState:r,plugin:o,sagaMiddleware:u,promiseMiddleware:s,createOpts:{setupMiddleWares:l=f}}=t;const p=o.get("extraEnhancers");e(i(p),"[app.start] extraEnhancers should be array, but got "+typeof p);const d=o.get("onAction"),h=l([s,u,...a(d)]);return c({reducer:n,preloadedState:r,middleware:e=>[...e({serializableCheck:!1}),...h],enhancers:e=>[...e(),...p]})}({reducers:S(),initialState:r.initialState||{},plugin:l,createOpts:o,sagaMiddleware:y,promiseMiddleware:b});const O=d._store;O.runSaga=y.run,O.asyncReducers={};const k=l.get("onStateChange");for(const e of k)O.subscribe((()=>{e(O.getState())}));_.forEach((e=>{y.run(e)})),s(d);const x={};for(const e of this._models)e.subscriptions&&(x[e.namespace]=Ke(e.subscriptions,e,d,p));function S(){return A(t({...w,...N,...d._store?d._store.asyncReducers:{}}))}d.model=v.bind(d,S,p,x),d.unModel=g.bind(d,S,w,x),d.replaceModel=E.bind(d,S,w,x,p)}};return d;function y(e){"production"!==process.env.NODE_ENV&&p(e,d._models);const t=Ie({...e});return d._models.push(t),t}function v(e,t,n,o){o=y(o);const a=d._store;a.asyncReducers[o.namespace]=m(o.reducers,o.state,l._handleActions,o.namespace),a.replaceReducer(e()),o.effects&&a.runSaga(d._getSaga(o.effects,o,t,l.get("onEffect"),r)),o.subscriptions&&(n[o.namespace]=Ke(o.subscriptions,o,d,t))}function g(e,t,n,r){const o=d._store;delete o.asyncReducers[r],delete t[r],o.replaceReducer(e()),o.dispatch({type:"@@dva/UPDATE"}),o.dispatch({type:`${r}/@@CANCEL_EFFECTS`}),ze(n,r),d._models=d._models.filter((e=>e.namespace!==r))}function E(e,t,n,r,o){const a=d._store,{namespace:c}=o,u=Be(d._models,(e=>e.namespace===c));~u&&(a.dispatch({type:`${c}/@@CANCEL_EFFECTS`}),delete a.asyncReducers[c],delete t[c],ze(n,c),d._models.splice(u,1)),d.model(o),a.dispatch({type:"@@dva/UPDATE"})}}export{Je as create,l as utils};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easy-soft-dva",
3
- "version": "3.10.40",
3
+ "version": "3.10.41",
4
4
  "description": "The core lightweight library for dva, based on redux and redux-saga.",
5
5
  "license": "MIT",
6
6
  "sideEffects": false,
@@ -79,7 +79,7 @@
79
79
  "@rollup/plugin-alias": "^5.1.0",
80
80
  "@rollup/plugin-babel": "6.0.4",
81
81
  "@rollup/plugin-buble": "^1.0.3",
82
- "@rollup/plugin-commonjs": "^25.0.7",
82
+ "@rollup/plugin-commonjs": "^25.0.8",
83
83
  "@rollup/plugin-json": "^6.1.0",
84
84
  "@rollup/plugin-node-resolve": "^15.2.3",
85
85
  "@rollup/plugin-replace": "^5.0.5",
@@ -89,10 +89,10 @@
89
89
  "@types/fs-extra": "^11.0.4",
90
90
  "@types/jest": "^29.5.12",
91
91
  "@types/node": "^20.12.12",
92
- "@types/react": "^18.3.2",
92
+ "@types/react": "^18.3.3",
93
93
  "@types/react-dom": "^18.3.0",
94
94
  "@types/shelljs": "^0.8.15",
95
- "@typescript-eslint/parser": "^7.9.0",
95
+ "@typescript-eslint/parser": "^7.10.0",
96
96
  "autoprefixer": "^10.4.19",
97
97
  "babel-jest": "^29.7.0",
98
98
  "commitizen": "^4.3.0",
@@ -101,7 +101,7 @@
101
101
  "cssnano": "^7.0.1",
102
102
  "cz-git": "^1.9.1",
103
103
  "documentation": "^14.0.3",
104
- "easy-soft-develop": "^2.1.163",
104
+ "easy-soft-develop": "^2.1.167",
105
105
  "eslint": "^8.57.0",
106
106
  "eslint-config-airbnb": "^19.0.4",
107
107
  "eslint-config-airbnb-typescript": "^18.0.0",
@@ -120,14 +120,14 @@
120
120
  "eslint-plugin-unicorn": "^52.0.0",
121
121
  "husky": "^9.0.11",
122
122
  "jest": "^29.7.0",
123
- "lint-staged": "^15.2.2",
123
+ "lint-staged": "^15.2.4",
124
124
  "mm": "^3.4.0",
125
125
  "npm-check-updates": "^16.14.20",
126
126
  "prettier": "^3.2.5",
127
127
  "prettier-plugin-organize-imports": "^3.2.4",
128
128
  "prettier-plugin-packagejson": "^2.5.0",
129
129
  "rimraf": "^5.0.7",
130
- "rollup": "^4.17.2",
130
+ "rollup": "^4.18.0",
131
131
  "rollup-plugin-copy": "^3.5.0",
132
132
  "rollup-plugin-livereload": "^2.0.5",
133
133
  "rollup-plugin-postcss": "^4.0.2",