state-decorator 7.0.0-beta.13-dev → 7.0.0-beta.14-dev
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.
- package/README.md +9 -5
- package/es/impl.d.ts +1 -1
- package/es/impl.js +1 -1
- package/es/index.js +1 -1
- package/es/test.js +1 -1
- package/es/types.d.ts +8 -4
- package/es/v6.d.ts +4 -2
- package/es/v6.js +1 -1
- package/impl.d.ts +1 -1
- package/impl.js +1 -1
- package/index.js +1 -1
- package/package.json +1 -1
- package/test.js +1 -1
- package/types.d.ts +8 -4
- package/v6.d.ts +4 -2
- package/v6.js +1 -1
package/README.md
CHANGED
|
@@ -1154,14 +1154,16 @@ setGlobalConfig({
|
|
|
1154
1154
|
});
|
|
1155
1155
|
```
|
|
1156
1156
|
|
|
1157
|
-
#
|
|
1157
|
+
# Trace actions
|
|
1158
1158
|
|
|
1159
|
-
To
|
|
1159
|
+
To trace actions, add a logger development middleware to the store.
|
|
1160
|
+
|
|
1161
|
+
These middlewares are deactivated if the `NODE_ENV` during the build is not `development` or `test`.
|
|
1160
1162
|
|
|
1161
1163
|
## Concise logger
|
|
1162
1164
|
|
|
1163
1165
|
```typescript
|
|
1164
|
-
import { logEffects } from 'state-decorator/
|
|
1166
|
+
import { logEffects } from 'state-decorator/development';
|
|
1165
1167
|
|
|
1166
1168
|
function Container(props: Props) {
|
|
1167
1169
|
const { state, actions } = useLocalStore({ getInitialState, actions, middlewares: [logEffects()] });
|
|
@@ -1191,7 +1193,7 @@ Example:
|
|
|
1191
1193
|
## Detailed Logger
|
|
1192
1194
|
|
|
1193
1195
|
```typescript
|
|
1194
|
-
import { logDetailedEffects } from 'state-decorator/
|
|
1196
|
+
import { logDetailedEffects } from 'state-decorator/development';
|
|
1195
1197
|
|
|
1196
1198
|
function Container(props: Props) {
|
|
1197
1199
|
const { state, actions } = useLocalStore({ getInitialState, actions, middlewares: [logDetailedEffects()] });
|
|
@@ -1215,12 +1217,14 @@ Example:
|
|
|
1215
1217
|
║ calendarEndDate : null => 2018-08-19T22:00:00.000Z
|
|
1216
1218
|
```
|
|
1217
1219
|
|
|
1220
|
+
Note: In v7, it can be activated by adding `logEnabled: true` in the configuration.
|
|
1221
|
+
|
|
1218
1222
|
## Redux devtools
|
|
1219
1223
|
|
|
1220
1224
|
You can connect any StateDecorator store to [Chrome Redux devtools extension](https://chrome.google.com/webstore/detail/redux-devtools/lmhkpmbekcpmknklioeibfkpmmfibljd?hl=en) by adding the `devtools` middleware to the store.
|
|
1221
1225
|
|
|
1222
1226
|
```typescript
|
|
1223
|
-
import { devtools } from 'state-decorator/
|
|
1227
|
+
import { devtools } from 'state-decorator/development';
|
|
1224
1228
|
|
|
1225
1229
|
function Container(props: Props) {
|
|
1226
1230
|
const { state, actions } = useLocalStore({ getInitialState, actions, middlewares: [devtools()] });
|
package/es/impl.d.ts
CHANGED
|
@@ -187,7 +187,7 @@ export declare function addStateToContext<T, S>(ctx: T, stateRef: Ref<S>): T & C
|
|
|
187
187
|
/** @internal */
|
|
188
188
|
export declare function addContextActions<T, A>(ctx: T, actionsRef: Ref<A>): T & InvocationContextActions<A>;
|
|
189
189
|
/** @internal */
|
|
190
|
-
export declare function decorateSimpleSyncAction<S, DS, F extends (...args: any[]) => any, A extends DecoratedActions, P>(actionName: keyof A, action: SimpleSyncAction<S, F, P, DS>, stateRef: Ref<S>, derivedStateRef: Ref<DerivedState<DS>>, propsRef: Ref<P>, initializedRef: Ref<boolean>, setState: SetStateFunc<S, A>): (...args: Parameters<F>) => void;
|
|
190
|
+
export declare function decorateSimpleSyncAction<S, DS, F extends (...args: any[]) => any, A extends DecoratedActions, P>(actionName: keyof A, action: SimpleSyncAction<S, F, P, DS>, stateRef: Ref<S>, derivedStateRef: Ref<DerivedState<DS>>, propsRef: Ref<P>, initializedRef: Ref<boolean>, options: StoreOptions<S, A, P, DS>, setState: SetStateFunc<S, A>): (...args: Parameters<F>) => void;
|
|
191
191
|
/** @internal */
|
|
192
192
|
export declare function decorateSyncAction<S, DS, F extends (...args: any[]) => any, A extends DecoratedActions, P>(actionName: keyof A, action: SyncAction<S, F, A, P, DS>, stateRef: Ref<S>, derivedStateRef: Ref<DerivedState<DS>>, propsRef: Ref<P>, actionsRef: Ref<A>, initializedRef: Ref<boolean>, timeoutMap: Ref<TimeoutMap<A>>, options: StoreOptions<S, A, P, any>, setState: SetStateFunc<S, A>, clearError: ClearErrorFunc<A>): (...args: Parameters<F>) => void;
|
|
193
193
|
/** @internal */
|
package/es/impl.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e=function(r,t){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])})(r,t)};function r(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=r}e(r,t),r.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var t=function(){return(t=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++)for(var o in r=arguments[t])Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);return e}).apply(this,arguments)};function n(e,r,t,n){return new(t||(t=Promise))((function(o,i){function c(e){try{a(n.next(e))}catch(e){i(e)}}function u(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(c,u)}a((n=n.apply(e,r||[])).next())}))}function o(e,r){var t,n,o,i,c={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(t)throw new TypeError("Generator is already executing.");for(;c;)try{if(t=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return c.label++,{value:i[1],done:!1};case 5:c.label++,n=i[1],i=[0];continue;case 7:i=c.ops.pop(),c.trys.pop();continue;default:if(!(o=c.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){c=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){c.label=i[1];break}if(6===i[0]&&c.label<o[1]){c.label=o[1],o=i;break}if(o&&c.label<o[2]){c.label=o[2],c.ops.push(i);break}o[2]&&c.ops.pop(),c.trys.pop();continue}i=r.call(e,c)}catch(e){i=[6,e],n=0}finally{t=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}function i(e,r,t){if(t||2===arguments.length)for(var n,o=0,i=r.length;o<i;o++)!n&&o in r||(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))}var c,u=function(){function e(e){this.keys=e,this.adj={}}return e.prototype.isCyclicUtil=function(e,r,t){var n;if(t.has(e))return!0;if(r.has(e))return!1;r.add(e),t.add(e);for(var o=0,i=null!==(n=this.adj[e])&&void 0!==n?n:[];o<i.length;o++){var c=i[o];if(this.isCyclicUtil(c,r,t))return!0}return t.delete(e),!1},e.prototype.setEdges=function(e,r){this.adj[e]=r},e.prototype.isCyclic=function(){for(var e=new Set,r=new Set,t=0,n=this.keys;t<n.length;t++){var o=n[t];if(this.isCyclicUtil(o,e,r))return!0}return!1},e}();!function(e){e.REJECT="reject",e.IGNORE="ignore",e.KEEP_LAST="keepLast",e.KEEP_ALL="keepAll",e.PARALLEL="parallel",e.REUSE="reuse"}(c||(c={}));var a=function(e){function t(r,n){var o=e.call(this,r.message)||this;return o.source=r,o.initialError=n,Object.setPrototypeOf(o,t.prototype),o}return r(t,e),t}(Error),l={clone:function(e){return JSON.parse(JSON.stringify(e))},comparator:function(e,r){if(Object.is(e,r))return!0;if("object"!=typeof e||null===e||"object"!=typeof r||null===r)return!1;if(e instanceof Set||r instanceof Set)return!1;var t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;for(var o=0;o<t.length;o++)if(!Object.prototype.hasOwnProperty.call(r,t[o])||!Object.is(e[t[o]],r[t[o]]))return!1;return!0},asyncErrorHandler:function(){},retryOnErrorFunction:function(e){return e instanceof TypeError},notifySuccess:void 0,notifyError:void 0,notifyWarning:void 0,getErrorMessage:void 0,defaultMiddlewares:[]};function f(e){Object.keys(e).forEach((function(r){null!=e[r]&&(l[r]=e[r])}))}function s(e){try{return l.clone(e)}catch(e){throw new Error("StateDecorator: Cannot clone object. Set setCloneFunction on global global with another implementation like lodash/cloneDeep.")}}function d(e){return!(e instanceof Function)&&(e.hasOwnProperty("getPromise")||e.hasOwnProperty("getGetPromise"))}function v(e){return"function"==typeof e}function p(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")}function h(e){return"function"!=typeof e&&e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")}function g(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&e.hasOwnProperty("getGetPromise")}function y(e){return g(e)?t(t({},e),{getPromise:e.getGetPromise,retryCount:3,conflictPolicy:c.REUSE}):e}function E(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=!1,a)),u))}function P(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=void 0,a)),u))}var m=function(e){function t(r){var n=e.call(this,"Error")||this;return n.promiseIds=r,Object.setPrototypeOf(n,t.prototype),n}return r(t,e),t}(Error);function w(e){return Object.keys(e).reduce((function(r,t){var n=e[t];if(null==n[z]);else if(n[z])r[t]=n[z];else{var o=Object.keys(n).reduce((function(e,r){return null!=n[r]&&(e.hasErr=!0,e.map[r]=n[r]),e}),{hasErr:!1,map:{}});o.hasErr&&(r[t]=new m(o.map))}return r}),{})}function S(e,r,t,i){return void 0===r&&(r=1),void 0===t&&(t=1e3),void 0===i&&(i=function(){return!0}),1===r?e:function(c){var u=e(c);return null===u?null:function u(a,l){return n(this,void 0,void 0,(function(){return o(this,(function(n){return null===l?[2,null]:[2,l.catch((function(n){return i(n)?a===r?Promise.reject(n):new Promise((function(r,n){setTimeout((function(){var t=e(c);u(a+1,t).then(r).catch(n)}),t*a)})):Promise.reject(n)}))]}))}))}(1,u)}}function b(e){return void 0===e&&(e=null),{current:e}}function R(e,r,t){var n,o;return{state:e.current,s:e.current,ds:null===(n=null==r?void 0:r.current)||void 0===n?void 0:n.state,derived:null===(o=null==r?void 0:r.current)||void 0===o?void 0:o.state,props:t.current,p:t.current}}function O(e,r,t,n){return _(R(e,r,t),n)}function j(e,r,n,o){return t(t({},R(e,r,n)),{abortedActions:o})}function A(e,r,t,n,o,i,c){var u=R(e,r,t);return u.indices=n,u.index=o,u.isInit=i,u.getInitialState=c,u}function L(e,r,t,n,o){var i=R(e,r,t);return i.args=n,o&&(i.promiseId=o),i}function C(e,r,t,n,o,i){var c=L(e,r,t,n,i);return c.result=o,c.res=o,c}function k(e,r,t,n,o,i,c){var u=_(L(e,r,t,n,c),o);return u.abortSignal=i,u}function T(e,r){var t=e;return t.state=r.current,t.s=r.current,t}function _(e,r){var t=e;return t.actions=r.current,t.a=r.current,t}function M(e,r,t,n,o,i){var c,u=_(e,n);T(e,r);var a=null===(c=null==t?void 0:t.current)||void 0===c?void 0:c.state;return u.derived=a,u.ds=a,u.notifyWarning=o,u.clearError=i,u}function x(e,r){return null==r?null:t(t({},e.current),r)}function D(e,r,t,n,o,i,c){return function(){for(var u=[],a=0;a<arguments.length;a++)u[a]=arguments[a];if(i.current){var l=L(t,n,o,u),f=x(t,r(l));c(f,null,e,"effects",!1,l,!1)}}}function I(e,r,t,n,o,i,c,u,a,l,f){var s,d=C(t,n,o,f,void 0),v=!1;if(null!=r.effects){var p=x(t,r.effects(d));null===p?v=!0:a(p,void 0,e,"effects",!1,d,!1)}if(!v)if(r.debounceSideEffectsTimeout>0){var h=c.current[e];h&&clearTimeout(h),c.current[e]=setTimeout((function(){var o;null===(o=r.sideEffects)||void 0===o||o.call(r,M(d,t,n,i,u.notifyWarning,l)),delete c.current[e]}),r.debounceSideEffectsTimeout)}else null===(s=r.sideEffects)||void 0===s||s.call(r,M(d,t,n,i,u.notifyWarning,l))}function G(e,r,t,n,o,i,c,u,a,l,f){return function(){for(var s=[],d=0;d<arguments.length;d++)s[d]=arguments[d];if(c.current)if(r.debounceTimeout){var v=u.current[e];v&&clearTimeout(v),u.current[e]=setTimeout((function(){delete u.current[e],I(e,r,t,n,o,i,u,a,l,f,s)}),r.debounceTimeout)}else I(e,r,t,n,o,i,u,a,l,f,s)}}function U(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,f=e.promisesRef,s=e.actionsRef,d=e.loadingParallelMapRef,v=e.conflictActionsRef,p=e.actionName,h=e.options,g=e.setState,y=e.clearError;if(e.initializedRef.current){var P=null,m=C(i,c,u,n,t,r);if(o.effects)try{P=x(i,o.effects(m))}catch(e){return Promise.reject(new a(e))}g(P,E(d.current,p,r,!1),p,"effects",!0,m,!1);var w=h.notifySuccess||l.notifySuccess;if(w){var S=void 0;o.getSuccessMessage&&(S=o.getSuccessMessage(m)),S&&w(S)}return delete f.current[p][r],o.sideEffects&&o.sideEffects(M(m,i,c,s,l.notifyWarning,y)),H(p,s.current,v.current),t}}function N(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,f=e.actionsRef,s=e.loadingParallelMapRef,d=e.errorMapRef,v=e.promisesRef,p=e.conflictActionsRef,h=e.actionName,g=e.options,y=e.clearError,m=e.setState;if(e.initializedRef.current){var w=null,S=t,b=function(e,r,t,n,o,i){var c=L(e,r,t,n,i);return c.error=o,c.err=o,c}(i,c,u,n,S,r);if(o.errorEffects)try{w=x(i,o.errorEffects(b))}catch(e){S=new a(e,t)}d.current=P(d.current,h,r,S),m(w,E(s.current,h,r,!1),h,"errorEffects",!0,b,!1);var R=!1;(null!=w||o.errorSideEffects||o.isErrorManaged||g.isErrorManaged)&&(R=!0);var O=g.notifyError||l.notifyError;if(O){var j=void 0;o.getErrorMessage&&(j=o.getErrorMessage(b)),void 0===j&&!R&&l.getErrorMessage&&(j=l.getErrorMessage(S)),j&&(R=!0,O(j))}return l.asyncErrorHandler(S,R||o.rejectPromiseOnError,i.current,u.current,h,n),delete v.current[h][r],o.errorSideEffects&&o.errorSideEffects(M(b,i,c,f,l.notifyWarning,y)),H(h,f.current,p.current),!R||o.rejectPromiseOnError?Promise.reject(S):Promise.resolve()}}function K(e){var r=e.action,n=e.stateRef,o=e.derivedStateRef,u=e.propsRef,f=e.actionsRef,s=e.promisesRef,d=e.loadingParallelMapRef,v=e.errorMapRef,p=e.initializedRef,h=e.conflictActionsRef,g=e.actionName,y=e.setState;return function(){for(var m,w,b,R=[],O=0;O<arguments.length;O++)R[O]=arguments[O];if(!p.current)return null;var j=s.current,A=r.conflictPolicy,C=void 0===A?c.KEEP_ALL:A,T=C===c.PARALLEL,_=null;if(T){if(!r.getPromiseId)throw new Error("If conflict policy is set to ConflictPolicy.PARALLEL, getPromiseId must be set and return a string.");_=r.getPromiseId.apply(r,R)}else _=z;if(!T&&(null===(w=j[g])||void 0===w?void 0:w[_]))return J(j,h.current,g,C,R);var M=null,D=!1,I=L(n,o,u,R,_);if(r.preEffects){try{M=x(n,r.preEffects(I))}catch(e){return l.asyncErrorHandler(new a(e),!1,n.current,u.current,g,R),Promise.reject(new a(e))}M&&(D=!0,n.current=M)}var G=r.abortable,K=r.retryCount,W=r.retryDelaySeed,F=r.isTriggerRetryError,H=G&&window.AbortController?new AbortController:null,q=S(r.getPromise,K?1+K:1,W,F||l.retryOnErrorFunction),B=null===(b=q(k(n,o,u,R,f,null==H?void 0:H.signal)))||void 0===b?void 0:b.then((function(r){return U(e,_,r,R)})).catch((function(r){return N(e,_,r,R)}));return null!=B&&(j[g]=t(t({},j[g]||{}),((m={})[_||z]={abortController:H,promise:B,refArgs:C===c.REUSE&&R.length>0?i([],R,!0):[]},m))),v.current=P(v.current,g,_,null),y(null!=B||D?n.current:void 0,null==B?void 0:E(d.current,g,_,!0),g,"preEffects",!0,I,!1),B}}function W(e){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return r.some((function(r){var t,n=null,o=z;Array.isArray(r)?(n=r[0],o=void 0===(t=r[1])?z:t):n=r;var i=e[n];return null!=i&&(null!=i[o]&&i[o])}))}var z="__def__";function F(e,r){return e.length===r.length&&-1===e.findIndex((function(e,t){return r[t]!==e}))}function J(e,r,t,n,o){var i=n;if(i===c.REUSE){if(F(e[t][z].refArgs,o))return e[t][z].promise;i=c.KEEP_ALL}return new Promise((function(e,n){var u={resolve:e,reject:n,args:s(o),timestamp:Date.now()};switch(i){case c.IGNORE:e(void 0);break;case c.REJECT:n(new Error("An asynchronous action ".concat(t," is already ongoing.")));break;case c.KEEP_LAST:r[t]=[u];break;case c.KEEP_ALL:var a=r[t];a||(r[t]=a=[]),a.push(u);break;case c.PARALLEL:case c.REUSE:}}))}function H(e,r,t){var n=t[e];if(n&&n.length>0){var o=t[e].shift();if(o){var i=r[e].apply(r,o.args);null==i?H(e,r,t):i.then((function(n){null===n&&H(e,r,t),o.resolve(n)})).catch((function(e){return o.reject(e)}))}}}function q(e,r,n,o){if(null==(null==o?void 0:o.derivedState))return!1;var i=!1,c=l.comparator,u=n.current.deps,a=R(e,null,r),f=Object.keys(o.derivedState);return n.current.state=f.reduce((function(e,r){var l,f,s=!1,d=o.derivedState[r],v=u[r],p=null!==(f=null===(l=d.getDeps)||void 0===l?void 0:l.call(d,a))&&void 0!==f?f:[];return d.derivedDeps&&d.derivedDeps.forEach((function(r){var t,o,i;return p.push(null!==(t=e[r])&&void 0!==t?t:null===(i=null===(o=n.current)||void 0===o?void 0:o.state)||void 0===i?void 0:i[r])})),s=null==v||null!=p.find((function(e,r){return v.length<r||!c(v[r],e)})),i=i||s,u[r]=p,e[r]=s?o.derivedState[r].get(function(e,r){return t(t({},e),{ds:r,derived:r})}(a,e)):n.current.state[r],e}),{}),i}function B(e){var r,t=Object.keys(e.derivedState),n=new u(t);if(t.forEach((function(r){n.setEdges(r,e.derivedState[r].derivedDeps)})),n.isCyclic())throw new Error("There are cycles in the derived state dependencies");for(var o=!1,i={},c=0,a=t;c<a.length;c++){var l=a[c],f=null!==(r=e.derivedState[l].derivedDeps)&&void 0!==r?r:[];o=o||f.length>0,i[l]=f.concat()}if(o){t.sort((function(e,r){return i[e].length-i[r].length}));for(var s=[],d=new Set,v=t.length;d.size!==v;){var p=t.pop();if(!d.has(p))i[p]=i[p].filter((function(e){return!d.has(e)})),0===i[p].length?(s.push(p),d.add(p)):t.splice(0,0,p)}for(var h={},g=0,y=s;g<y.length;g++){h[p=y[g]]=e.derivedState[p]}e.derivedState=h}}function Q(e,r,n,o,i,c,u,a,f,s){var d=null!=(null==c?void 0:c.derivedState);if(null!=c.onPropsChange){var v;v=Array.isArray(c.onPropsChange)?c.onPropsChange:[c.onPropsChange];var p=!1,h=b(e.current),g=[],y=l.comparator;v.forEach((function(t,i){var c,l=t.getDeps;if(l){var d=!1,v=[];if(f){if(!(!s&&t.onMount||s&&t.onMountDeferred))return;d=!0}else{var E=l(o),P=l(n.current);E.length!==P.length?(console.warn("options.onPropsChange.getDeps returned array must be stable (same length)"),d=!0):E.forEach((function(e,r){y(e,P[r])||(d=!0,v.push(r))}))}if(d){var m=A(h,r,n,v,i,f,u),w=x(e,null===(c=t.effects)||void 0===c?void 0:c.call(t,m));null!=w&&(p=!0,h.current=w,a(h.current,void 0,"onPropsChange","effects",!1,m,!0,f)),t.sideEffects&&g.push({index:i,indices:v,ctx:m})}}})),!p&&d&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0),g.length>0&&g.forEach((function(e){v[e.index].sideEffects(t(t({},T(_(e.ctx,i),h)),{indices:e.indices}))}))}else null!=(null==c?void 0:c.derivedState)&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0)}function V(e,r,t,n,o,i,c,u){if("onPropsChange"===o&&void 0===t)return{newState:null,newLoading:!1};if(e&&e.length>0){var a=e.reduce((function(e,r){var t=r.effects({isAsync:c,name:o,type:i,context:u},e.oldState,e.newState,n);return{newState:(null==t?void 0:t.state)||e.newState,oldState:(null==t?void 0:t.state)?e.newState:e.oldState,loading:null==(null==t?void 0:t.loading)?e.loading:t.loading}}),{oldState:r,newState:t,loading:n});return{newLoading:a.loading,newState:a.newState}}return{newState:t,newLoading:n}}export{z as DEFAULT_PROMISE_ID,a as EffectError,m as ParallelActionError,_ as addContextActions,T as addStateToContext,F as areSameArgs,w as buildErrorMap,R as buildInvocationContextBase,E as buildLoadingMap,O as buildOnMountInvocationContext,A as buildOnPropChangeEffects,j as buildOnUnMountInvocationContext,y as computeAsyncActionInput,q as computeDerivedValues,b as createRef,K as decorateAsyncAction,D as decorateSimpleSyncAction,G as decorateSyncAction,B as fixDerivedDeps,l as globalConfig,d as isAsyncAction,h as isAsyncGetPromiseAction,g as isAsyncGetPromiseGetAction,W as isLoadingImpl,v as isSimpleSyncAction,p as isSyncAction,Q as onPropChange,S as retryPromiseDecorator,V as runMiddlewares,f as setGlobalConfig,P as updateErrorMap};
|
|
1
|
+
var e=function(r,t){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])})(r,t)};function r(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=r}e(r,t),r.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var t=function(){return(t=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++)for(var o in r=arguments[t])Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);return e}).apply(this,arguments)};function n(e,r,t,n){return new(t||(t=Promise))((function(o,i){function c(e){try{a(n.next(e))}catch(e){i(e)}}function u(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(c,u)}a((n=n.apply(e,r||[])).next())}))}function o(e,r){var t,n,o,i,c={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(t)throw new TypeError("Generator is already executing.");for(;c;)try{if(t=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return c.label++,{value:i[1],done:!1};case 5:c.label++,n=i[1],i=[0];continue;case 7:i=c.ops.pop(),c.trys.pop();continue;default:if(!(o=c.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){c=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){c.label=i[1];break}if(6===i[0]&&c.label<o[1]){c.label=o[1],o=i;break}if(o&&c.label<o[2]){c.label=o[2],c.ops.push(i);break}o[2]&&c.ops.pop(),c.trys.pop();continue}i=r.call(e,c)}catch(e){i=[6,e],n=0}finally{t=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}function i(e,r,t){if(t||2===arguments.length)for(var n,o=0,i=r.length;o<i;o++)!n&&o in r||(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))}var c,u=function(){function e(e){this.keys=e,this.adj={}}return e.prototype.isCyclicUtil=function(e,r,t){var n;if(t.has(e))return!0;if(r.has(e))return!1;r.add(e),t.add(e);for(var o=0,i=null!==(n=this.adj[e])&&void 0!==n?n:[];o<i.length;o++){var c=i[o];if(this.isCyclicUtil(c,r,t))return!0}return t.delete(e),!1},e.prototype.setEdges=function(e,r){this.adj[e]=r},e.prototype.isCyclic=function(){for(var e=new Set,r=new Set,t=0,n=this.keys;t<n.length;t++){var o=n[t];if(this.isCyclicUtil(o,e,r))return!0}return!1},e}();!function(e){e.REJECT="reject",e.IGNORE="ignore",e.KEEP_LAST="keepLast",e.KEEP_ALL="keepAll",e.PARALLEL="parallel",e.REUSE="reuse"}(c||(c={}));var a=function(e){function t(r,n){var o=e.call(this,r.message)||this;return o.source=r,o.initialError=n,Object.setPrototypeOf(o,t.prototype),o}return r(t,e),t}(Error),l={clone:function(e){return JSON.parse(JSON.stringify(e))},comparator:function(e,r){if(Object.is(e,r))return!0;if("object"!=typeof e||null===e||"object"!=typeof r||null===r)return!1;if(e instanceof Set||r instanceof Set)return!1;var t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;for(var o=0;o<t.length;o++)if(!Object.prototype.hasOwnProperty.call(r,t[o])||!Object.is(e[t[o]],r[t[o]]))return!1;return!0},asyncErrorHandler:function(){},retryOnErrorFunction:function(e){return e instanceof TypeError},notifySuccess:void 0,notifyError:void 0,notifyWarning:void 0,getErrorMessage:void 0,defaultMiddlewares:[]};function f(e){Object.keys(e).forEach((function(r){null!=e[r]&&(l[r]=e[r])}))}function s(e){try{return l.clone(e)}catch(e){throw new Error("StateDecorator: Cannot clone object. Set setCloneFunction on global global with another implementation like lodash/cloneDeep.")}}function d(e){return!(e instanceof Function)&&(e.hasOwnProperty("getPromise")||e.hasOwnProperty("getGetPromise"))}function v(e){return"function"==typeof e}function p(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")}function h(e){return"function"!=typeof e&&e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")}function g(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&e.hasOwnProperty("getGetPromise")}function y(e){return g(e)?t(t({},e),{getPromise:e.getGetPromise,retryCount:3,conflictPolicy:c.REUSE}):e}function E(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=!1,a)),u))}function P(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=void 0,a)),u))}var S=function(e){function t(r){var n=e.call(this,"Error")||this;return n.promiseIds=r,Object.setPrototypeOf(n,t.prototype),n}return r(t,e),t}(Error);function m(e){return Object.keys(e).reduce((function(r,t){var n=e[t];if(null==n[z]);else if(n[z])r[t]=n[z];else{var o=Object.keys(n).reduce((function(e,r){return null!=n[r]&&(e.hasErr=!0,e.map[r]=n[r]),e}),{hasErr:!1,map:{}});o.hasErr&&(r[t]=new S(o.map))}return r}),{})}function w(e,r,t,i){return void 0===r&&(r=1),void 0===t&&(t=1e3),void 0===i&&(i=function(){return!0}),1===r?e:function(c){var u=e(c);return null===u?null:function u(a,l){return n(this,void 0,void 0,(function(){return o(this,(function(n){return null===l?[2,null]:[2,l.catch((function(n){return i(n)?a===r?Promise.reject(n):new Promise((function(r,n){setTimeout((function(){var t=e(c);u(a+1,t).then(r).catch(n)}),t*a)})):Promise.reject(n)}))]}))}))}(1,u)}}function b(e){return void 0===e&&(e=null),{current:e}}function R(e,r,t){var n,o;return{state:e.current,s:e.current,ds:null===(n=null==r?void 0:r.current)||void 0===n?void 0:n.state,derived:null===(o=null==r?void 0:r.current)||void 0===o?void 0:o.state,props:t.current,p:t.current}}function O(e,r,t,n){return _(R(e,r,t),n)}function j(e,r,n,o){return t(t({},R(e,r,n)),{abortedActions:o})}function A(e,r,t,n,o,i,c){var u=R(e,r,t);return u.indices=n,u.index=o,u.isInit=i,u.getInitialState=c,u}function L(e,r,t,n,o){var i=R(e,r,t);return i.args=n,o&&(i.promiseId=o),i}function C(e,r,t,n,o,i){var c=L(e,r,t,n,i);return c.result=o,c.res=o,c}function k(e,r,t,n,o,i,c){var u=_(L(e,r,t,n,c),o);return u.abortSignal=i,u}function T(e,r){var t=e;return t.state=r.current,t.s=r.current,t}function _(e,r){var t=e;return t.actions=r.current,t.a=r.current,t}function M(e,r,t,n,o,i){var c,u=_(e,n);T(e,r);var a=null===(c=null==t?void 0:t.current)||void 0===c?void 0:c.state;return u.derived=a,u.ds=a,u.notifyWarning=o,u.clearError=i,u}function x(e,r,n){return(null==n?void 0:n.fullStateEffects)?r:null==r?null:t(t({},e.current),r)}function D(e,r,t,n,o,i,c,u){return function(){for(var a=[],l=0;l<arguments.length;l++)a[l]=arguments[l];if(i.current){var f=L(t,n,o,a),s=x(t,r(f),c);u(s,null,e,"effects",!1,f,!1)}}}function I(e,r,t,n,o,i,c,u,a,l,f){var s,d=C(t,n,o,f,void 0),v=!1;if(null!=r.effects){var p=x(t,r.effects(d),u);null===p?v=!0:a(p,void 0,e,"effects",!1,d,!1)}if(!v)if(r.debounceSideEffectsTimeout>0){var h=c.current[e];h&&clearTimeout(h),c.current[e]=setTimeout((function(){var o;null===(o=r.sideEffects)||void 0===o||o.call(r,M(d,t,n,i,u.notifyWarning,l)),delete c.current[e]}),r.debounceSideEffectsTimeout)}else null===(s=r.sideEffects)||void 0===s||s.call(r,M(d,t,n,i,u.notifyWarning,l))}function G(e,r,t,n,o,i,c,u,a,l,f){return function(){for(var s=[],d=0;d<arguments.length;d++)s[d]=arguments[d];if(c.current)if(r.debounceTimeout){var v=u.current[e];v&&clearTimeout(v),u.current[e]=setTimeout((function(){delete u.current[e],I(e,r,t,n,o,i,u,a,l,f,s)}),r.debounceTimeout)}else I(e,r,t,n,o,i,u,a,l,f,s)}}function U(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,f=e.promisesRef,s=e.actionsRef,d=e.loadingParallelMapRef,v=e.conflictActionsRef,p=e.actionName,h=e.options,g=e.setState,y=e.clearError;if(e.initializedRef.current){var P=null,S=C(i,c,u,n,t,r);if(o.effects)try{P=x(i,o.effects(S),h)}catch(e){return Promise.reject(new a(e))}g(P,E(d.current,p,r,!1),p,"effects",!0,S,!1);var m=h.notifySuccess||l.notifySuccess;if(m){var w=void 0;o.getSuccessMessage&&(w=o.getSuccessMessage(S)),w&&m(w)}return delete f.current[p][r],o.sideEffects&&o.sideEffects(M(S,i,c,s,l.notifyWarning,y)),H(p,s.current,v.current),t}}function N(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,f=e.actionsRef,s=e.loadingParallelMapRef,d=e.errorMapRef,v=e.promisesRef,p=e.conflictActionsRef,h=e.actionName,g=e.options,y=e.clearError,S=e.setState;if(e.initializedRef.current){var m=null,w=t,b=function(e,r,t,n,o,i){var c=L(e,r,t,n,i);return c.error=o,c.err=o,c}(i,c,u,n,w,r);if(o.errorEffects)try{m=x(i,o.errorEffects(b),g)}catch(e){w=new a(e,t)}d.current=P(d.current,h,r,w),S(m,E(s.current,h,r,!1),h,"errorEffects",!0,b,!1);var R=!1;(null!=m||o.errorSideEffects||o.isErrorManaged||g.isErrorManaged)&&(R=!0);var O=g.notifyError||l.notifyError;if(O){var j=void 0;o.getErrorMessage&&(j=o.getErrorMessage(b)),void 0===j&&!R&&l.getErrorMessage&&(j=l.getErrorMessage(w)),j&&(R=!0,O(j))}return l.asyncErrorHandler(w,R||o.rejectPromiseOnError,i.current,u.current,h,n),delete v.current[h][r],o.errorSideEffects&&o.errorSideEffects(M(b,i,c,f,l.notifyWarning,y)),H(h,f.current,p.current),!R||o.rejectPromiseOnError?Promise.reject(w):Promise.resolve()}}function K(e){var r=e.action,n=e.stateRef,o=e.derivedStateRef,u=e.propsRef,f=e.actionsRef,s=e.promisesRef,d=e.loadingParallelMapRef,v=e.errorMapRef,p=e.initializedRef,h=e.conflictActionsRef,g=e.actionName,y=e.setState,S=e.options;return function(){for(var m,b,R,O=[],j=0;j<arguments.length;j++)O[j]=arguments[j];if(!p.current)return null;var A=s.current,C=r.conflictPolicy,T=void 0===C?c.KEEP_ALL:C,_=T===c.PARALLEL,M=null;if(_){if(!r.getPromiseId)throw new Error("If conflict policy is set to ConflictPolicy.PARALLEL, getPromiseId must be set and return a string.");M=r.getPromiseId.apply(r,O)}else M=z;if(!_&&(null===(b=A[g])||void 0===b?void 0:b[M]))return J(A,h.current,g,T,O);var D=null,I=!1,G=L(n,o,u,O,M);if(r.preEffects){try{D=x(n,r.preEffects(G),S)}catch(e){return l.asyncErrorHandler(new a(e),!1,n.current,u.current,g,O),Promise.reject(new a(e))}D&&(I=!0,n.current=D)}var K=r.abortable,W=r.retryCount,F=r.retryDelaySeed,H=r.isTriggerRetryError,q=K&&window.AbortController?new AbortController:null,B=w(r.getPromise,W?1+W:1,F,H||l.retryOnErrorFunction),Q=null===(R=B(k(n,o,u,O,f,null==q?void 0:q.signal)))||void 0===R?void 0:R.then((function(r){return U(e,M,r,O)})).catch((function(r){return N(e,M,r,O)}));return null!=Q&&(A[g]=t(t({},A[g]||{}),((m={})[M||z]={abortController:q,promise:Q,refArgs:T===c.REUSE&&O.length>0?i([],O,!0):[]},m))),v.current=P(v.current,g,M,null),y(null!=Q||I?n.current:void 0,null==Q?void 0:E(d.current,g,M,!0),g,"preEffects",!0,G,!1),Q}}function W(e){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return r.some((function(r){var t,n=null,o=z;Array.isArray(r)?(n=r[0],o=void 0===(t=r[1])?z:t):n=r;var i=e[n];return null!=i&&(null!=i[o]&&i[o])}))}var z="__def__";function F(e,r){return e.length===r.length&&-1===e.findIndex((function(e,t){return r[t]!==e}))}function J(e,r,t,n,o){var i=n;if(i===c.REUSE){if(F(e[t][z].refArgs,o))return e[t][z].promise;i=c.KEEP_ALL}return new Promise((function(e,n){var u={resolve:e,reject:n,args:s(o),timestamp:Date.now()};switch(i){case c.IGNORE:e(void 0);break;case c.REJECT:n(new Error("An asynchronous action ".concat(t," is already ongoing.")));break;case c.KEEP_LAST:r[t]=[u];break;case c.KEEP_ALL:var a=r[t];a||(r[t]=a=[]),a.push(u);break;case c.PARALLEL:case c.REUSE:}}))}function H(e,r,t){var n=t[e];if(n&&n.length>0){var o=t[e].shift();if(o){var i=r[e].apply(r,o.args);null==i?H(e,r,t):i.then((function(n){null===n&&H(e,r,t),o.resolve(n)})).catch((function(e){return o.reject(e)}))}}}function q(e,r,n,o){if(null==(null==o?void 0:o.derivedState))return!1;var i=!1,c=l.comparator,u=n.current.deps,a=R(e,null,r),f=Object.keys(o.derivedState);return n.current.state=f.reduce((function(e,r){var l,f,s=!1,d=o.derivedState[r],v=u[r],p=null!==(f=null===(l=d.getDeps)||void 0===l?void 0:l.call(d,a))&&void 0!==f?f:[];return d.derivedDeps&&d.derivedDeps.forEach((function(r){var t,o,i;return p.push(null!==(t=e[r])&&void 0!==t?t:null===(i=null===(o=n.current)||void 0===o?void 0:o.state)||void 0===i?void 0:i[r])})),s=null==v||null!=p.find((function(e,r){return v.length<r||!c(v[r],e)})),i=i||s,u[r]=p,e[r]=s?o.derivedState[r].get(function(e,r){return t(t({},e),{ds:r,derived:r})}(a,e)):n.current.state[r],e}),{}),i}function B(e){var r,t=Object.keys(e.derivedState),n=new u(t);if(t.forEach((function(r){n.setEdges(r,e.derivedState[r].derivedDeps)})),n.isCyclic())throw new Error("There are cycles in the derived state dependencies");for(var o=!1,i={},c=0,a=t;c<a.length;c++){var l=a[c],f=null!==(r=e.derivedState[l].derivedDeps)&&void 0!==r?r:[];o=o||f.length>0,i[l]=f.concat()}if(o){t.sort((function(e,r){return i[e].length-i[r].length}));for(var s=[],d=new Set,v=t.length;d.size!==v;){var p=t.pop();if(!d.has(p))i[p]=i[p].filter((function(e){return!d.has(e)})),0===i[p].length?(s.push(p),d.add(p)):t.splice(0,0,p)}for(var h={},g=0,y=s;g<y.length;g++){h[p=y[g]]=e.derivedState[p]}e.derivedState=h}}function Q(e,r,n,o,i,c,u,a,f,s){var d=null!=(null==c?void 0:c.derivedState);if(null!=c.onPropsChange){var v;v=Array.isArray(c.onPropsChange)?c.onPropsChange:[c.onPropsChange];var p=!1,h=b(e.current),g=[],y=l.comparator;v.forEach((function(t,i){var l,d=t.getDeps;if(d){var v=!1,E=[];if(f){if(!(!s&&t.onMount||s&&t.onMountDeferred))return;v=!0}else{var P=d(o),S=d(n.current);P.length!==S.length?(console.warn("options.onPropsChange.getDeps returned array must be stable (same length)"),v=!0):P.forEach((function(e,r){y(e,S[r])||(v=!0,E.push(r))}))}if(v){var m=A(h,r,n,E,i,f,u),w=x(e,null===(l=t.effects)||void 0===l?void 0:l.call(t,m),c);null!=w&&(p=!0,h.current=w,a(h.current,void 0,"onPropsChange","effects",!1,m,!0,f)),t.sideEffects&&g.push({index:i,indices:E,ctx:m})}}})),!p&&d&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0),g.length>0&&g.forEach((function(e){v[e.index].sideEffects(t(t({},T(_(e.ctx,i),h)),{indices:e.indices}))}))}else null!=(null==c?void 0:c.derivedState)&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0)}function V(e,r,t,n,o,i,c,u){if("onPropsChange"===o&&void 0===t)return{newState:null,newLoading:!1};if(e&&e.length>0){var a=e.reduce((function(e,r){var t=r.effects({isAsync:c,name:o,type:i,context:u},e.oldState,e.newState,n);return{newState:(null==t?void 0:t.state)||e.newState,oldState:(null==t?void 0:t.state)?e.newState:e.oldState,loading:null==(null==t?void 0:t.loading)?e.loading:t.loading}}),{oldState:r,newState:t,loading:n});return{newLoading:a.loading,newState:a.newState}}return{newState:t,newLoading:n}}export{z as DEFAULT_PROMISE_ID,a as EffectError,S as ParallelActionError,_ as addContextActions,T as addStateToContext,F as areSameArgs,m as buildErrorMap,R as buildInvocationContextBase,E as buildLoadingMap,O as buildOnMountInvocationContext,A as buildOnPropChangeEffects,j as buildOnUnMountInvocationContext,y as computeAsyncActionInput,q as computeDerivedValues,b as createRef,K as decorateAsyncAction,D as decorateSimpleSyncAction,G as decorateSyncAction,B as fixDerivedDeps,l as globalConfig,d as isAsyncAction,h as isAsyncGetPromiseAction,g as isAsyncGetPromiseGetAction,W as isLoadingImpl,v as isSimpleSyncAction,p as isSyncAction,Q as onPropChange,w as retryPromiseDecorator,V as runMiddlewares,f as setGlobalConfig,P as updateErrorMap};
|
|
2
2
|
//# sourceMappingURL=impl.js.map
|
package/es/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import r,{useMemo as n,useContext as t,useReducer as e,useRef as u,useLayoutEffect as o,useEffect as c}from"react";import{createRef as i,isSimpleSyncAction as l,decorateSimpleSyncAction as a,isAsyncAction as f,decorateAsyncAction as s,computeAsyncActionInput as d,isSyncAction as v,decorateSyncAction as p,globalConfig as g,onPropChange as y,DEFAULT_PROMISE_ID as S,fixDerivedDeps as b,computeDerivedValues as h,buildOnMountInvocationContext as E,buildOnUnMountInvocationContext as O,isLoadingImpl as m,runMiddlewares as j,buildLoadingMap as M,buildErrorMap as k}from"./impl";export{EffectError,ParallelActionError,setGlobalConfig}from"./impl";import{logDetailedEffects as w}from"./development";var x=function(){return(x=Object.assign||function(r){for(var n,t=1,e=arguments.length;t<e;t++)for(var u in n=arguments[t])Object.prototype.hasOwnProperty.call(n,u)&&(r[u]=n[u]);return r}).apply(this,arguments)};function P(r,n,t){if(t||2===arguments.length)for(var e,u=0,o=n.length;u<o;u++)!e&&u in n||(e||(e=Array.prototype.slice.call(n,0,u)),e[u]=n[u]);return r.concat(e||Array.prototype.slice.call(n))}function L(r){var n={exports:{}};return r(n,n.exports),n.exports}var R="function"==typeof Object.is?Object.is:function(r,n){return r===n&&(0!==r||1/r==1/n)||r!=r&&n!=n},A=r.useState,D=r.useEffect,I=r.useLayoutEffect,V=r.useDebugValue;function C(r){var n=r.getSnapshot;r=r.value;try{var t=n();return!R(r,t)}catch(r){return!0}}var T="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(r,n){return n()}:function(r,n){var t=n(),e=A({inst:{value:t,getSnapshot:n}}),u=e[0].inst,o=e[1];return I((function(){u.value=t,u.getSnapshot=n,C(u)&&o({inst:u})}),[r,t,n]),D((function(){return C(u)&&o({inst:u}),r((function(){C(u)&&o({inst:u})}))}),[r]),V(t),t},G={useSyncExternalStore:void 0!==r.useSyncExternalStore?r.useSyncExternalStore:T},K=L((function(r){r.exports=G}));var N,U="function"==typeof Object.is?Object.is:function(r,n){return r===n&&(0!==r||1/r==1/n)||r!=r&&n!=n},W=K.useSyncExternalStore,_=r.useRef,z=r.useEffect,F=r.useMemo,J=r.useDebugValue,q={useSyncExternalStoreWithSelector:function(r,n,t,e,u){var o=_(null);if(null===o.current){var c={hasValue:!1,value:null};o.current=c}else c=o.current;o=F((function(){function r(r){if(!l){if(l=!0,o=r,r=e(r),void 0!==u&&c.hasValue){var n=c.value;if(u(n,r))return i=n}return i=r}if(n=i,U(o,r))return n;var t=e(r);return void 0!==u&&u(n,t)?n:(o=r,i=t)}var o,i,l=!1,a=void 0===t?null:t;return[function(){return r(n())},null===a?void 0:function(){return r(a())}]}),[n,t,e,u]);var i=W(r,o[0],o[1]);return z((function(){c.hasValue=!0,c.value=i}),[i]),J(i),i}},B=L((function(r){r.exports=q}));!function(r){r.REJECT="reject",r.IGNORE="ignore",r.KEEP_LAST="keepLast",r.KEEP_ALL="keepAll",r.PARALLEL="parallel",r.REUSE="reuse"}(N||(N={}));var H=B.useSyncExternalStoreWithSelector;function Q(r){var n=i(),t=i(),e=i(),u=i(),o=i(),c=i(),L=i(),R=i(),A=i(),D=i(),I=i(),V=i(!1),C=i(),T=i([]),G=r.actions,K=r.middlewares,N=void 0===K?[]:K,U=function(r,n){var t={};for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&n.indexOf(e)<0&&(t[e]=r[e]);if(null!=r&&"function"==typeof Object.getOwnPropertySymbols){var u=0;for(e=Object.getOwnPropertySymbols(r);u<e.length;u++)n.indexOf(e[u])<0&&Object.prototype.propertyIsEnumerable.call(r,e[u])&&(t[e[u]]=r[e[u]])}return t}(r,["actions","middlewares"]),W=r.getInitialState||function(){return r.initialState},_={},z=0;function F(){C.current=x(x(x(x({},u.current),n.current),t.current.state),{isLoading:Y,abortAction:Z,loading:R.current,loadingMap:L.current,loadingParallelMap:c.current,errorMap:$(),errorParallelMap:A.current}),Object.keys(_).forEach((function(r){var n;null===(n=_[r])||void 0===n||n.call(_)}))}function J(r){n.current=r,h(n,e,t,U),F()}function q(r){c.current=r,L.current=function(){if(V.current){var r=c.current;return Object.keys(r).reduce((function(n,t){var e=r[t];return n[t]=null!=Object.keys(e).find((function(r){return!!e[r]})),n}),{})}return null}(),R.current=function(){if(V.current){var r=c.current;return null!=Object.keys(r).find((function(n){var t=r[n];return Object.keys(t).find((function(r){return!!t[r]}))}))}return null}()}function B(c){var i;if(!V.current){e.current=c,V.current=!0,n.current=W(c);var l=new Set(null==U?void 0:U.initialActionsMarkedLoading);q(Object.keys(G).reduce((function(r,n){var t;return r[n]=l.has(n)?((t={})[S]=!0,t):{},r}),{})),A.current=Object.keys(G).reduce((function(r,n){return r[n]={},r}),{}),o.current={},D.current={},I.current={},t.current={state:null,deps:{}},(null==U?void 0:U.derivedState)&&b(U),T.current=[];var a={options:U,get state(){return n.current},actions:G,setState:J};r.logEnabled&&w&&(console.log("logDetailedEffects"),N.push(w()));var f=function(r){var n,t=r();T.current.push(t),null===(n=t.init)||void 0===n||n.call(t,a)};null===(i=g.defaultMiddlewares)||void 0===i||i.forEach(f),null==N||N.forEach(f),h(n,e,t,U),y(n,t,e,null,u,U,W,Q,!0,!1),(null==U?void 0:U.onMount)&&U.onMount(E(n,t,e,u)),F()}}function H(r,n){void 0===n&&(n=S);var t=A.current[r];(null==t?void 0:t[n])&&delete t[n],F()}function Q(r,u,o,i,l,a,f,s){void 0===f&&(f=!1),void 0===s&&(s=!1);var d=!1;if(V.current){var v=u,p=!!l&&m(v||c.current,[o,null==a?void 0:a.promiseId]),g=j(T.current,n.current,r,p,o,i,l,a),y=g.newState,b=g.newLoading;if(null!=y&&(d=!0,n.current=y),p!==b&&(v=M(v,o,(null==a?void 0:a.promiseId)||S,b),0===Object.keys(v).length&&(v=void 0)),null!=v&&(d=!0,q(v)),d)h(n,e,t,U),s||(n.current=y||n.current,F());else if(f){h(n,e,t,U)&&!s&&F()}}}var X=Object.keys(G);function Y(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return m.apply(void 0,P([c.current],r,!1))}function Z(r,n){var t,e;void 0===n&&(n=S);var u=null===(e=null===(t=D.current[r])||void 0===t?void 0:t[n])||void 0===e?void 0:e.abortController,o=!1;return u&&(u.abort(),o=!0),o}function $(){return V.current?k(A.current):null}return u.current=X.reduce((function(r,i){var g=G[i];return l(g)?r[i]=a(i,g,n,t,e,V,Q):f(g)?r[i]=s({actionName:i,stateRef:n,derivedStateRef:t,propsRef:e,loadingParallelMapRef:c,errorMapRef:A,actionsRef:u,promisesRef:D,conflictActionsRef:I,initializedRef:V,options:U,setState:Q,clearError:H,action:d(g)}):v(g)&&(r[i]=p(i,g,n,t,e,u,V,o,U,Q,H)),r}),{}),{getConfig:function(){return x({},r)},setProps:function(r){var o=e.current;e.current=r,V.current?y(n,t,e,o,u,U,W,Q,!1,!1):B(r)},addStateListener:function(r){var n="".concat(z++);return _[n]=r,function(){delete _[n]}},init:B,destroy:function(){var r;if(V.current){var u=Object.keys(G).reduce((function(r,n){var t=G[n];if(f(t)&&t.abortable){var e=c.current[n],u=Object.keys(e).reduce((function(r,t){return e[t]&&(Z(n,t),r.push(t)),r}),[]);u.length>0&&(r[n]=u)}return r}),{});null===(r=null==U?void 0:U.onUnmount)||void 0===r||r.call(U,O(n,t,e,u)),e.current=null,n.current=null,c.current=null,L.current=null,R.current=null,A.current=null,D.current=null,I.current=null,t.current=null,C.current=null,Object.keys(o.current).forEach((function(r){clearTimeout(o.current[r])})),o.current=null,_={},V.current=!1,T.current.forEach((function(r){var n;null===(n=r.destroy)||void 0===n||n.call(r)})),T.current=[]}},isLoading:Y,abortAction:Z,clearError:H,getSnapshot:function(){return C.current},invokeOnMountDeferred:function(){y(n,t,e,null,u,U,W,Q,!0,!0),(null==U?void 0:U.onMountDeferred)&&U.onMountDeferred(E(n,t,e,u))},get actions(){return u.current},get state(){return V.current?x(x({},n.current),t.current.state):null},get loading(){return R.current},get loadingMap(){return L.current},get errorMap(){return $()},get loadingParallelMap(){return V.current?c.current:null},get errorParallelMap(){return V.current?A.current:null}}}function X(r,t){var e=n((function(){return t instanceof Function?t:function(r){return rr(r,t)}}),[t]);return H(r.addStateListener,r.getSnapshot,r.getSnapshot,e,g.comparator)}function Y(r,n){return X(t(r),n)}function Z(r,n,t){void 0===n&&(n=null),void 0===t&&(t=!0);var c=e((function(r){return r>100?0:r+1}),0)[1],i=u(r);return r.setProps(n),o((function(){r.init(n)}),[]),o((function(){if(t)return i.current.addStateListener((function(){c()}))}),[t]),r}function $(r,n,t){void 0===t&&(t=!0);var e=u();return null==e.current&&(e.current=Q(r)),c((function(){return e.current.invokeOnMountDeferred(),function(){var r;null===(r=e.current)||void 0===r||r.destroy()}}),[]),Z(e.current,n,t)}function rr(r,n){return n.reduce((function(n,t){return r.hasOwnProperty(t)&&(n[t]=r[t]),n}),{})}function nr(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return function(n){return rr(n,r)}}export default $;export{N as ConflictPolicy,Q as createStore,rr as pick,nr as slice,$ as useLocalStore,Z as useStore,Y as useStoreContextSlice,X as useStoreSlice};
|
|
1
|
+
import r,{useMemo as n,useContext as t,useReducer as e,useRef as u,useLayoutEffect as o,useEffect as c}from"react";import{createRef as i,isSimpleSyncAction as l,decorateSimpleSyncAction as a,isAsyncAction as f,decorateAsyncAction as s,computeAsyncActionInput as d,isSyncAction as v,decorateSyncAction as p,globalConfig as g,onPropChange as y,DEFAULT_PROMISE_ID as S,fixDerivedDeps as b,computeDerivedValues as h,buildOnMountInvocationContext as E,buildOnUnMountInvocationContext as O,isLoadingImpl as m,runMiddlewares as j,buildLoadingMap as M,buildErrorMap as k}from"./impl";export{EffectError,ParallelActionError,setGlobalConfig}from"./impl";import{logDetailedEffects as w}from"./development";var x=function(){return(x=Object.assign||function(r){for(var n,t=1,e=arguments.length;t<e;t++)for(var u in n=arguments[t])Object.prototype.hasOwnProperty.call(n,u)&&(r[u]=n[u]);return r}).apply(this,arguments)};function P(r,n,t){if(t||2===arguments.length)for(var e,u=0,o=n.length;u<o;u++)!e&&u in n||(e||(e=Array.prototype.slice.call(n,0,u)),e[u]=n[u]);return r.concat(e||Array.prototype.slice.call(n))}function L(r){var n={exports:{}};return r(n,n.exports),n.exports}var R="function"==typeof Object.is?Object.is:function(r,n){return r===n&&(0!==r||1/r==1/n)||r!=r&&n!=n},A=r.useState,D=r.useEffect,I=r.useLayoutEffect,V=r.useDebugValue;function C(r){var n=r.getSnapshot;r=r.value;try{var t=n();return!R(r,t)}catch(r){return!0}}var T="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(r,n){return n()}:function(r,n){var t=n(),e=A({inst:{value:t,getSnapshot:n}}),u=e[0].inst,o=e[1];return I((function(){u.value=t,u.getSnapshot=n,C(u)&&o({inst:u})}),[r,t,n]),D((function(){return C(u)&&o({inst:u}),r((function(){C(u)&&o({inst:u})}))}),[r]),V(t),t},G={useSyncExternalStore:void 0!==r.useSyncExternalStore?r.useSyncExternalStore:T},K=L((function(r){r.exports=G}));var N,U="function"==typeof Object.is?Object.is:function(r,n){return r===n&&(0!==r||1/r==1/n)||r!=r&&n!=n},W=K.useSyncExternalStore,_=r.useRef,z=r.useEffect,F=r.useMemo,J=r.useDebugValue,q={useSyncExternalStoreWithSelector:function(r,n,t,e,u){var o=_(null);if(null===o.current){var c={hasValue:!1,value:null};o.current=c}else c=o.current;o=F((function(){function r(r){if(!l){if(l=!0,o=r,r=e(r),void 0!==u&&c.hasValue){var n=c.value;if(u(n,r))return i=n}return i=r}if(n=i,U(o,r))return n;var t=e(r);return void 0!==u&&u(n,t)?n:(o=r,i=t)}var o,i,l=!1,a=void 0===t?null:t;return[function(){return r(n())},null===a?void 0:function(){return r(a())}]}),[n,t,e,u]);var i=W(r,o[0],o[1]);return z((function(){c.hasValue=!0,c.value=i}),[i]),J(i),i}},B=L((function(r){r.exports=q}));!function(r){r.REJECT="reject",r.IGNORE="ignore",r.KEEP_LAST="keepLast",r.KEEP_ALL="keepAll",r.PARALLEL="parallel",r.REUSE="reuse"}(N||(N={}));var H=B.useSyncExternalStoreWithSelector;function Q(r){var n=i(),t=i(),e=i(),u=i(),o=i(),c=i(),L=i(),R=i(),A=i(),D=i(),I=i(),V=i(!1),C=i(),T=i([]),G=r.actions,K=r.middlewares,N=void 0===K?[]:K,U=function(r,n){var t={};for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&n.indexOf(e)<0&&(t[e]=r[e]);if(null!=r&&"function"==typeof Object.getOwnPropertySymbols){var u=0;for(e=Object.getOwnPropertySymbols(r);u<e.length;u++)n.indexOf(e[u])<0&&Object.prototype.propertyIsEnumerable.call(r,e[u])&&(t[e[u]]=r[e[u]])}return t}(r,["actions","middlewares"]),W=r.getInitialState||function(){return r.initialState},_={},z=0;function F(){C.current=x(x(x(x({},u.current),n.current),t.current.state),{isLoading:Y,abortAction:Z,loading:R.current,loadingMap:L.current,loadingParallelMap:c.current,errorMap:$(),errorParallelMap:A.current}),Object.keys(_).forEach((function(r){var n;null===(n=_[r])||void 0===n||n.call(_)}))}function J(r){n.current=r,h(n,e,t,U),F()}function q(r){c.current=r,L.current=function(){if(V.current){var r=c.current;return Object.keys(r).reduce((function(n,t){var e=r[t];return n[t]=null!=Object.keys(e).find((function(r){return!!e[r]})),n}),{})}return null}(),R.current=function(){if(V.current){var r=c.current;return null!=Object.keys(r).find((function(n){var t=r[n];return Object.keys(t).find((function(r){return!!t[r]}))}))}return null}()}function B(c){var i;if(!V.current){e.current=c,V.current=!0,n.current=W(c);var l=new Set(null==U?void 0:U.initialActionsMarkedLoading);q(Object.keys(G).reduce((function(r,n){var t;return r[n]=l.has(n)?((t={})[S]=!0,t):{},r}),{})),A.current=Object.keys(G).reduce((function(r,n){return r[n]={},r}),{}),o.current={},D.current={},I.current={},t.current={state:null,deps:{}},(null==U?void 0:U.derivedState)&&b(U),T.current=[];var a={options:U,get state(){return n.current},actions:G,setState:J};r.logEnabled&&w&&(console.log("logDetailedEffects"),N.push(w()));var f=function(r){var n,t=r();T.current.push(t),null===(n=t.init)||void 0===n||n.call(t,a)};null===(i=g.defaultMiddlewares)||void 0===i||i.forEach(f),null==N||N.forEach(f),h(n,e,t,U),y(n,t,e,null,u,U,W,Q,!0,!1),(null==U?void 0:U.onMount)&&U.onMount(E(n,t,e,u)),F()}}function H(r,n){void 0===n&&(n=S);var t=A.current[r];(null==t?void 0:t[n])&&delete t[n],F()}function Q(r,u,o,i,l,a,f,s){void 0===f&&(f=!1),void 0===s&&(s=!1);var d=!1;if(V.current){var v=u,p=!!l&&m(v||c.current,[o,null==a?void 0:a.promiseId]),g=j(T.current,n.current,r,p,o,i,l,a),y=g.newState,b=g.newLoading;if(null!=y&&(d=!0,n.current=y),p!==b&&(v=M(v,o,(null==a?void 0:a.promiseId)||S,b),0===Object.keys(v).length&&(v=void 0)),null!=v&&(d=!0,q(v)),d)h(n,e,t,U),s||(n.current=y||n.current,F());else if(f){h(n,e,t,U)&&!s&&F()}}}var X=Object.keys(G);function Y(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return m.apply(void 0,P([c.current],r,!1))}function Z(r,n){var t,e;void 0===n&&(n=S);var u=null===(e=null===(t=D.current[r])||void 0===t?void 0:t[n])||void 0===e?void 0:e.abortController,o=!1;return u&&(u.abort(),o=!0),o}function $(){return V.current?k(A.current):null}return u.current=X.reduce((function(r,i){var g=G[i];return l(g)?r[i]=a(i,g,n,t,e,V,U,Q):f(g)?r[i]=s({actionName:i,stateRef:n,derivedStateRef:t,propsRef:e,loadingParallelMapRef:c,errorMapRef:A,actionsRef:u,promisesRef:D,conflictActionsRef:I,initializedRef:V,options:U,setState:Q,clearError:H,action:d(g)}):v(g)&&(r[i]=p(i,g,n,t,e,u,V,o,U,Q,H)),r}),{}),{getConfig:function(){return x({},r)},setProps:function(r){var o=e.current;e.current=r,V.current?y(n,t,e,o,u,U,W,Q,!1,!1):B(r)},addStateListener:function(r){var n="".concat(z++);return _[n]=r,function(){delete _[n]}},init:B,destroy:function(){var r;if(V.current){var u=Object.keys(G).reduce((function(r,n){var t=G[n];if(f(t)&&t.abortable){var e=c.current[n],u=Object.keys(e).reduce((function(r,t){return e[t]&&(Z(n,t),r.push(t)),r}),[]);u.length>0&&(r[n]=u)}return r}),{});null===(r=null==U?void 0:U.onUnmount)||void 0===r||r.call(U,O(n,t,e,u)),e.current=null,n.current=null,c.current=null,L.current=null,R.current=null,A.current=null,D.current=null,I.current=null,t.current=null,C.current=null,Object.keys(o.current).forEach((function(r){clearTimeout(o.current[r])})),o.current=null,_={},V.current=!1,T.current.forEach((function(r){var n;null===(n=r.destroy)||void 0===n||n.call(r)})),T.current=[]}},isLoading:Y,abortAction:Z,clearError:H,getSnapshot:function(){return C.current},invokeOnMountDeferred:function(){y(n,t,e,null,u,U,W,Q,!0,!0),(null==U?void 0:U.onMountDeferred)&&U.onMountDeferred(E(n,t,e,u))},get actions(){return u.current},get state(){return V.current?x(x({},n.current),t.current.state):null},get loading(){return R.current},get loadingMap(){return L.current},get errorMap(){return $()},get loadingParallelMap(){return V.current?c.current:null},get errorParallelMap(){return V.current?A.current:null}}}function X(r,t){var e=n((function(){return t instanceof Function?t:function(r){return rr(r,t)}}),[t]);return H(r.addStateListener,r.getSnapshot,r.getSnapshot,e,g.comparator)}function Y(r,n){return X(t(r),n)}function Z(r,n,t){void 0===n&&(n=null),void 0===t&&(t=!0);var c=e((function(r){return r>100?0:r+1}),0)[1],i=u(r);return r.setProps(n),o((function(){r.init(n)}),[]),o((function(){if(t)return i.current.addStateListener((function(){c()}))}),[t]),r}function $(r,n,t){void 0===t&&(t=!0);var e=u();return null==e.current&&(e.current=Q(r)),c((function(){return e.current.invokeOnMountDeferred(),function(){var r;null===(r=e.current)||void 0===r||r.destroy()}}),[]),Z(e.current,n,t)}function rr(r,n){return n.reduce((function(n,t){return r.hasOwnProperty(t)&&(n[t]=r[t]),n}),{})}function nr(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return function(n){return rr(n,r)}}export default $;export{N as ConflictPolicy,Q as createStore,rr as pick,nr as slice,$ as useLocalStore,Z as useStore,Y as useStoreContextSlice,X as useStoreSlice};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/es/test.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createRef as t,computeDerivedValues as r,onPropChange as n,buildOnMountInvocationContext as e,isSimpleSyncAction as o,decorateSimpleSyncAction as i,isSyncAction as u,decorateSyncAction as c,isAsyncAction as s,computeAsyncActionInput as a,decorateAsyncAction as l,buildErrorMap as f}from"./impl";var p=function(t,r){return(p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])})(t,r)};var v=function(){return(v=Object.assign||function(t){for(var r,n=1,e=arguments.length;n<e;n++)for(var o in r=arguments[n])Object.prototype.hasOwnProperty.call(r,o)&&(t[o]=r[o]);return t}).apply(this,arguments)};function d(t,r){return void 0===r&&(r={}),P(t.getConfig(),r)}function P(t,r){void 0===r&&(r={});var n=t.actions,e=function(t,r){var n={};for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&r.indexOf(e)<0&&(n[e]=t[e]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(e=Object.getOwnPropertySymbols(t);o<e.length;o++)r.indexOf(e[o])<0&&Object.prototype.propertyIsEnumerable.call(t,e[o])&&(n[e[o]]=t[e[o]])}return n}(t,["actions"]);return m(t.getInitialState||function(){return t.initialState},n,r,e)}function m(o,i,u,c,s){void 0===u&&(u={}),void 0===c&&(c={});var a=t(o(u)),l=t(u);function f(t,r,n){return m((function(){return null!=t?t:a.current}),i,null!=r?r:l.current,c,null!=n?n:s)}function p(n,e){void 0===n&&(n=void 0),void 0===e&&(e=void 0);var o=t({state:null,deps:{}});return r(n||a,e||l,o,c),v(v({},(null==n?void 0:n.current)||a.current),o.current.state||{})}return{getInitialState:o,test:function(t){return t(p(),l.current),this},setMockActions:function(t){return f(void 0,void 0,t)},onMount:function(t){return void 0===t&&(t={}),this.onInit(t)},setState:function(t){return f(t,void 0)},setProps:function(t){return f(void 0,t)},setPartialState:function(t){return f(v(v({},a.current),t),void 0)},setPartialProps:function(t){return f(void 0,v(v({},l.current),t))},onPropsChange:function(r,n){void 0===n&&(n=!1);var e=t(a.current),o=t(v(v({},l.current),r)),u=t({state:null,deps:{}}),c=y(i,s),f=this.onPropsChangeImpl(e,o,u,c,(function(t,r,n,o,i){null!=t&&(e.current=t)}),n,!1);return v(v({},f),{test:function(t){t(f)}})},onPropsChangeImpl:function(t,e,i,u,s,f,v){return r(a,l,i,c),n(t,i,e,l.current,u,c,o,s,f,v),{prevState:p(a,l),state:p(t,e),props:e.current,actions:u.current,errorMap:{}}},onInit:function(r){void 0===r&&(r={});var n=o(u),a=t(n),f=t(v(v({},l.current),r)),d=t({state:null,deps:{}}),P=y(i,s),m=function(t,r,n,e,o){null!=t&&(a.current=t)};this.onPropsChangeImpl(a,f,d,P,m,!0,!1),(null==c?void 0:c.onMount)&&c.onMount(e(a,d,f,P)),this.onPropsChangeImpl(a,f,d,P,m,!0,!0),(null==c?void 0:c.onMountDeferred)&&c.onMountDeferred(e(a,d,f,P));var h={prevState:null,state:p(a,f),props:f.current,actions:P.current,errorMap:{}};return v(v({},h),{test:function(t){t(h)}})},getAction:function(t){return S(a.current,t,i,l.current,null,c,void 0)}}}function y(r,n){var e=Object.keys(r);return t(e.reduce((function(t,r){return t[r]=h(null==n?void 0:n[r]),t}),{}))}var h=function(t){return jest.fn(t)};function g(t){h=t}var O=function(t){function r(n,e,o,i,u){var c=t.call(this,n.message)||this;return Object.setPrototypeOf(c,r.prototype),c.sourceError=n,c.prevState=e,c.props=i,c.state=o,c.actions=u,Error.captureStackTrace&&Error.captureStackTrace(c,r),c}return function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=t}p(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}(r,t),r}(Error);function S(n,e,p,d,P,m,h){var g=t(n),b=t(d),j=P;function M(t,r,n,o){return void 0===o&&(o=h),S(null!=t?t:g.current,e,p,null!=r?r:b.current,null!=n?n:j,m,o)}function E(n,e){void 0===n&&(n=void 0),void 0===e&&(e=void 0);var o=t({state:null,deps:{}});return r(null!=n?n:g,null!=e?e:b,o,m),v(v({},(null==n?void 0:n.current)||g.current),o.current.state||{})}return{setMockActions:function(t){return M(void 0,void 0,void 0,t)},setState:function(t){return M(t,void 0,void 0)},setProps:function(t){return M(void 0,t,void 0)},setPartialState:function(t){return M(v(v({},g.current),t),void 0,void 0)},setPartialProps:function(t){return M(void 0,v(v({},b.current),t),void 0)},promiseResolves:function(t){return M(void 0,void 0,Promise.resolve(t))},promiseRejects:function(t){return M(void 0,void 0,Promise.reject(t))},test:function(t){return t(E(),b.current),this},call:function(){for(var n=[],d=0;d<arguments.length;d++)n[d]=arguments[d];var P=t(v({},g.current)),S=t({state:null,deps:{}});r(P,b,S,m);var M=y(p,h),R=t({}),w=t({}),I=function(t){null!=t&&(P.current=t)},_=p[e],C=null;if(o(_))i(e,_,P,S,b,t(!0),I).apply(void 0,n),C=Promise.resolve();else if(u(_))c(e,v(v({},_),{debounceSideEffectsTimeout:0,debounceTimeout:0}),P,S,b,M,t(!0),null,m,I,(function(t){})).apply(void 0,n),C=Promise.resolve();else if(s(_)){var k=t({}),A=t({}),T=t(!0),x=v({},a(_));j&&(x.getPromise=function(){return j}),x.optimisticEffects&&(x.effects=x.optimisticEffects,delete x.optimisticEffects),C=l({actionName:e,derivedStateRef:S,propsRef:b,loadingParallelMapRef:R,errorMapRef:w,promisesRef:k,conflictActionsRef:A,initializedRef:T,options:m,setState:I,stateRef:P,actionsRef:M,action:x,clearError:function(t){}}).apply(void 0,n)}return(null!=C?C:Promise.resolve()).then((function(){return R.current={},{prevState:E(g),state:E(P),props:b.current,errorMap:f(w.current),actions:M.current}})).catch((function(t){return Promise.reject(new O(t,E(g),E(P),b.current,M.current))}))}}}export{O as ActionError,d as createMockFromStore,P as createMockStore,S as createMockStoreAction,m as createMockStoreV6,g as setMockFactory};
|
|
1
|
+
import{createRef as t,computeDerivedValues as r,onPropChange as n,buildOnMountInvocationContext as e,isSimpleSyncAction as o,decorateSimpleSyncAction as i,isSyncAction as u,decorateSyncAction as c,isAsyncAction as s,computeAsyncActionInput as a,decorateAsyncAction as l,buildErrorMap as f}from"./impl";var p=function(t,r){return(p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])})(t,r)};var v=function(){return(v=Object.assign||function(t){for(var r,n=1,e=arguments.length;n<e;n++)for(var o in r=arguments[n])Object.prototype.hasOwnProperty.call(r,o)&&(t[o]=r[o]);return t}).apply(this,arguments)};function d(t,r){return void 0===r&&(r={}),P(t.getConfig(),r)}function P(t,r){void 0===r&&(r={});var n=t.actions,e=function(t,r){var n={};for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&r.indexOf(e)<0&&(n[e]=t[e]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(e=Object.getOwnPropertySymbols(t);o<e.length;o++)r.indexOf(e[o])<0&&Object.prototype.propertyIsEnumerable.call(t,e[o])&&(n[e[o]]=t[e[o]])}return n}(t,["actions"]);return m(t.getInitialState||function(){return t.initialState},n,r,e)}function m(o,i,u,c,s){void 0===u&&(u={}),void 0===c&&(c={});var a=t(o(u)),l=t(u);function f(t,r,n){return m((function(){return null!=t?t:a.current}),i,null!=r?r:l.current,c,null!=n?n:s)}function p(n,e){void 0===n&&(n=void 0),void 0===e&&(e=void 0);var o=t({state:null,deps:{}});return r(n||a,e||l,o,c),v(v({},(null==n?void 0:n.current)||a.current),o.current.state||{})}return{getInitialState:o,test:function(t){return t(p(),l.current),this},setMockActions:function(t){return f(void 0,void 0,t)},onMount:function(t){return void 0===t&&(t={}),this.onInit(t)},setState:function(t){return f(t,void 0)},setProps:function(t){return f(void 0,t)},setPartialState:function(t){return f(v(v({},a.current),t),void 0)},setPartialProps:function(t){return f(void 0,v(v({},l.current),t))},onPropsChange:function(r,n){void 0===n&&(n=!1);var e=t(a.current),o=t(v(v({},l.current),r)),u=t({state:null,deps:{}}),c=y(i,s),f=this.onPropsChangeImpl(e,o,u,c,(function(t,r,n,o,i){null!=t&&(e.current=t)}),n,!1);return v(v({},f),{test:function(t){t(f)}})},onPropsChangeImpl:function(t,e,i,u,s,f,v){return r(a,l,i,c),n(t,i,e,l.current,u,c,o,s,f,v),{prevState:p(a,l),state:p(t,e),props:e.current,actions:u.current,errorMap:{}}},onInit:function(r){void 0===r&&(r={});var n=o(u),a=t(n),f=t(v(v({},l.current),r)),d=t({state:null,deps:{}}),P=y(i,s),m=function(t,r,n,e,o){null!=t&&(a.current=t)};this.onPropsChangeImpl(a,f,d,P,m,!0,!1),(null==c?void 0:c.onMount)&&c.onMount(e(a,d,f,P)),this.onPropsChangeImpl(a,f,d,P,m,!0,!0),(null==c?void 0:c.onMountDeferred)&&c.onMountDeferred(e(a,d,f,P));var h={prevState:null,state:p(a,f),props:f.current,actions:P.current,errorMap:{}};return v(v({},h),{test:function(t){t(h)}})},getAction:function(t){return S(a.current,t,i,l.current,null,c,void 0)}}}function y(r,n){var e=Object.keys(r);return t(e.reduce((function(t,r){return t[r]=h(null==n?void 0:n[r]),t}),{}))}var h=function(t){return jest.fn(t)};function g(t){h=t}var O=function(t){function r(n,e,o,i,u){var c=t.call(this,n.message)||this;return Object.setPrototypeOf(c,r.prototype),c.sourceError=n,c.prevState=e,c.props=i,c.state=o,c.actions=u,Error.captureStackTrace&&Error.captureStackTrace(c,r),c}return function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=t}p(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}(r,t),r}(Error);function S(n,e,p,d,P,m,h){var g=t(n),b=t(d),j=P;function M(t,r,n,o){return void 0===o&&(o=h),S(null!=t?t:g.current,e,p,null!=r?r:b.current,null!=n?n:j,m,o)}function E(n,e){void 0===n&&(n=void 0),void 0===e&&(e=void 0);var o=t({state:null,deps:{}});return r(null!=n?n:g,null!=e?e:b,o,m),v(v({},(null==n?void 0:n.current)||g.current),o.current.state||{})}return{setMockActions:function(t){return M(void 0,void 0,void 0,t)},setState:function(t){return M(t,void 0,void 0)},setProps:function(t){return M(void 0,t,void 0)},setPartialState:function(t){return M(v(v({},g.current),t),void 0,void 0)},setPartialProps:function(t){return M(void 0,v(v({},b.current),t),void 0)},promiseResolves:function(t){return M(void 0,void 0,Promise.resolve(t))},promiseRejects:function(t){return M(void 0,void 0,Promise.reject(t))},test:function(t){return t(E(),b.current),this},call:function(){for(var n=[],d=0;d<arguments.length;d++)n[d]=arguments[d];var P=t(v({},g.current)),S=t({state:null,deps:{}});r(P,b,S,m);var M=y(p,h),R=t({}),w=t({}),I=function(t){null!=t&&(P.current=t)},_=p[e],C=null;if(o(_))i(e,_,P,S,b,t(!0),m,I).apply(void 0,n),C=Promise.resolve();else if(u(_))c(e,v(v({},_),{debounceSideEffectsTimeout:0,debounceTimeout:0}),P,S,b,M,t(!0),null,m,I,(function(t){})).apply(void 0,n),C=Promise.resolve();else if(s(_)){var k=t({}),A=t({}),T=t(!0),x=v({},a(_));j&&(x.getPromise=function(){return j}),x.optimisticEffects&&(x.effects=x.optimisticEffects,delete x.optimisticEffects),C=l({actionName:e,derivedStateRef:S,propsRef:b,loadingParallelMapRef:R,errorMapRef:w,promisesRef:k,conflictActionsRef:A,initializedRef:T,options:m,setState:I,stateRef:P,actionsRef:M,action:x,clearError:function(t){}}).apply(void 0,n)}return(null!=C?C:Promise.resolve()).then((function(){return R.current={},{prevState:E(g),state:E(P),props:b.current,errorMap:f(w.current),actions:M.current}})).catch((function(t){return Promise.reject(new O(t,E(g),E(P),b.current,M.current))}))}}}export{O as ActionError,d as createMockFromStore,P as createMockStore,S as createMockStoreAction,m as createMockStoreV6,g as setMockFactory};
|
|
2
2
|
//# sourceMappingURL=test.js.map
|
package/es/types.d.ts
CHANGED
|
@@ -317,18 +317,21 @@ type DerivedStateOption<S, P, DS> = {
|
|
|
317
317
|
derivedDeps?: (keyof DS)[];
|
|
318
318
|
};
|
|
319
319
|
};
|
|
320
|
-
export type OnPropsChangeOptions<S, DS, A, P
|
|
320
|
+
export type OnPropsChangeOptions<S, DS, A, P, FxRes = Partial<S>> = {
|
|
321
321
|
onMount?: boolean;
|
|
322
322
|
onMountDeferred?: boolean;
|
|
323
323
|
getDeps: (p: P) => any[];
|
|
324
|
-
effects?: (ctx: OnPropsChangeEffectsContext<S, DS, P>) =>
|
|
324
|
+
effects?: (ctx: OnPropsChangeEffectsContext<S, DS, P>) => FxRes;
|
|
325
325
|
sideEffects?: (ctx: OnPropsChangeSideEffectsContext<S, P, A>) => void;
|
|
326
326
|
};
|
|
327
|
-
export type StoreOptions<S, A, P = {}, DS = {}
|
|
327
|
+
export type StoreOptions<S, A, P = {}, DS = {}, FxRes = Partial<S>> = {
|
|
328
328
|
/**
|
|
329
329
|
* The state decorator name. Use in debug traces to identify the useStateDecorator instance.
|
|
330
330
|
*/
|
|
331
331
|
name?: string;
|
|
332
|
+
/**
|
|
333
|
+
* In development only (NODE_ENV="development"), activates state changes traces on the console.
|
|
334
|
+
*/
|
|
332
335
|
logEnabled?: boolean;
|
|
333
336
|
/**
|
|
334
337
|
* Indicates that all asynchronous actions errors are managed externally.
|
|
@@ -344,7 +347,7 @@ export type StoreOptions<S, A, P = {}, DS = {}> = {
|
|
|
344
347
|
/**
|
|
345
348
|
* One or several configurations of inbound properties change managements.
|
|
346
349
|
*/
|
|
347
|
-
onPropsChange?: OnPropsChangeOptions<S, DS, A, P> | OnPropsChangeOptions<S, DS, A, P>[];
|
|
350
|
+
onPropsChange?: OnPropsChangeOptions<S, DS, A, P, FxRes> | OnPropsChangeOptions<S, DS, A, P, FxRes>[];
|
|
348
351
|
/**
|
|
349
352
|
* The callback function called if an asynchronous function succeeded and a success messsage is defined.
|
|
350
353
|
*/
|
|
@@ -374,6 +377,7 @@ export type StoreOptions<S, A, P = {}, DS = {}> = {
|
|
|
374
377
|
* Compute derived state
|
|
375
378
|
*/
|
|
376
379
|
derivedState?: DerivedStateOption<S, P, DS>;
|
|
380
|
+
fullStateEffects?: boolean;
|
|
377
381
|
};
|
|
378
382
|
type StoreConfigBase<S, A extends DecoratedActions, P = {}, DS = {}> = {
|
|
379
383
|
actions: StoreActions<S, A, P, DS>;
|
package/es/v6.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { GlobalConfig, ParallelActionError, EffectError } from './impl';
|
|
2
|
-
import { DecoratedActions, StoreActions, AsyncAction, SyncAction, SimpleSyncAction, LoadingMap, ErrorMap, LoadingParallelMap, ErrorParallelMap, StoreOptions, AsyncActionPromise, InvocationContext, GetPromiseInvocationContext, EffectsInvocationContext, InvocationContextActions, WarningNotifyFunc, ErrorEffectsInvocationContext, OnMountInvocationContext, ContextBase, OnPropsChangeEffectsContext, ContextState, ConflictPolicy, Middleware, AbortActionCallback, MiddlewareFactory, LoadingProps, ErrorProps, LoadingMapProps, StoreConfig } from './types';
|
|
2
|
+
import { DecoratedActions, StoreActions, AsyncAction, SyncAction, SimpleSyncAction, LoadingMap, ErrorMap, LoadingParallelMap, ErrorParallelMap, StoreOptions as StoreOptionsBase, AsyncActionPromise, InvocationContext, GetPromiseInvocationContext, EffectsInvocationContext, InvocationContextActions, WarningNotifyFunc, ErrorEffectsInvocationContext, OnMountInvocationContext, ContextBase, OnPropsChangeEffectsContext, ContextState, ConflictPolicy, Middleware, AbortActionCallback, MiddlewareFactory, LoadingProps, ErrorProps, LoadingMapProps, StoreConfig } from './types';
|
|
3
3
|
import { setGlobalConfig, IsLoadingFunc, StoreApi, StateListenerContext } from './index';
|
|
4
|
-
export { StateListenerContext, StoreApi, EffectError, DecoratedActions, StoreActions, LoadingMap, ErrorMap, LoadingParallelMap, ErrorParallelMap, ParallelActionError,
|
|
4
|
+
export { StateListenerContext, StoreApi, EffectError, DecoratedActions, StoreActions, LoadingMap, ErrorMap, LoadingParallelMap, ErrorParallelMap, ParallelActionError, AsyncActionPromise as AsynchActionPromise, InvocationContext, GetPromiseInvocationContext, EffectsInvocationContext, InvocationContextActions, WarningNotifyFunc, ErrorEffectsInvocationContext, OnMountInvocationContext, ContextBase, OnPropsChangeEffectsContext, SyncAction, AsyncAction, SimpleSyncAction, ContextState, ConflictPolicy, GlobalConfig, Middleware, setGlobalConfig, LoadingProps, AbortActionCallback, ErrorProps, LoadingMapProps, StoreConfig, IsLoadingFunc, };
|
|
5
|
+
export type StoreOptions<S, A, P = {}, DS = {}, FxRes = S> = StoreOptionsBase<S, A, P, DS, FxRes>;
|
|
6
|
+
export type StoreAction<S, F extends (...args: any[]) => any, A, P, DS = {}, FxRes = S> = AsyncAction<S, F, A, P, DS, FxRes> | SimpleSyncAction<S, F, P, DS, FxRes> | SyncAction<S, F, A, P, DS, FxRes>;
|
|
5
7
|
/**
|
|
6
8
|
* Creates and manages a local store.
|
|
7
9
|
* The component will be refreshed for every change in the store.
|
package/es/v6.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{EffectError,ParallelActionError}from"./impl";import r from"./index";export{setGlobalConfig}from"./index";var e,t=function(){return(t=Object.assign||function(r){for(var e,t=1,o=arguments.length;t<o;t++)for(var n in e=arguments[t])Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}).apply(this,arguments)};function o(e,o,n,a,i
|
|
1
|
+
export{EffectError,ParallelActionError}from"./impl";import r from"./index";export{setGlobalConfig}from"./index";var e,t=function(){return(t=Object.assign||function(r){for(var e,t=1,o=arguments.length;t<o;t++)for(var n in e=arguments[t])Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}).apply(this,arguments)};function o(e,o,n,a,l,i){return void 0===i&&(i=!0),r(t(t({getInitialState:e,actions:o},a),{middlewares:l,fullStateEffects:!0}),n,i)}!function(r){r.REJECT="reject",r.IGNORE="ignore",r.KEEP_LAST="keepLast",r.KEEP_ALL="keepAll",r.PARALLEL="parallel",r.REUSE="reuse"}(e||(e={}));var n=o;export default o;export{e as ConflictPolicy,n as useLocalStore};
|
|
2
2
|
//# sourceMappingURL=v6.js.map
|
package/impl.d.ts
CHANGED
|
@@ -187,7 +187,7 @@ export declare function addStateToContext<T, S>(ctx: T, stateRef: Ref<S>): T & C
|
|
|
187
187
|
/** @internal */
|
|
188
188
|
export declare function addContextActions<T, A>(ctx: T, actionsRef: Ref<A>): T & InvocationContextActions<A>;
|
|
189
189
|
/** @internal */
|
|
190
|
-
export declare function decorateSimpleSyncAction<S, DS, F extends (...args: any[]) => any, A extends DecoratedActions, P>(actionName: keyof A, action: SimpleSyncAction<S, F, P, DS>, stateRef: Ref<S>, derivedStateRef: Ref<DerivedState<DS>>, propsRef: Ref<P>, initializedRef: Ref<boolean>, setState: SetStateFunc<S, A>): (...args: Parameters<F>) => void;
|
|
190
|
+
export declare function decorateSimpleSyncAction<S, DS, F extends (...args: any[]) => any, A extends DecoratedActions, P>(actionName: keyof A, action: SimpleSyncAction<S, F, P, DS>, stateRef: Ref<S>, derivedStateRef: Ref<DerivedState<DS>>, propsRef: Ref<P>, initializedRef: Ref<boolean>, options: StoreOptions<S, A, P, DS>, setState: SetStateFunc<S, A>): (...args: Parameters<F>) => void;
|
|
191
191
|
/** @internal */
|
|
192
192
|
export declare function decorateSyncAction<S, DS, F extends (...args: any[]) => any, A extends DecoratedActions, P>(actionName: keyof A, action: SyncAction<S, F, A, P, DS>, stateRef: Ref<S>, derivedStateRef: Ref<DerivedState<DS>>, propsRef: Ref<P>, actionsRef: Ref<A>, initializedRef: Ref<boolean>, timeoutMap: Ref<TimeoutMap<A>>, options: StoreOptions<S, A, P, any>, setState: SetStateFunc<S, A>, clearError: ClearErrorFunc<A>): (...args: Parameters<F>) => void;
|
|
193
193
|
/** @internal */
|
package/impl.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=function(r,t){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])})(r,t)};function r(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=r}e(r,t),r.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var t=function(){return(t=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++)for(var o in r=arguments[t])Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);return e}).apply(this,arguments)};function n(e,r,t,n){return new(t||(t=Promise))((function(o,i){function c(e){try{a(n.next(e))}catch(e){i(e)}}function u(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(c,u)}a((n=n.apply(e,r||[])).next())}))}function o(e,r){var t,n,o,i,c={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(t)throw new TypeError("Generator is already executing.");for(;c;)try{if(t=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return c.label++,{value:i[1],done:!1};case 5:c.label++,n=i[1],i=[0];continue;case 7:i=c.ops.pop(),c.trys.pop();continue;default:if(!(o=c.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){c=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){c.label=i[1];break}if(6===i[0]&&c.label<o[1]){c.label=o[1],o=i;break}if(o&&c.label<o[2]){c.label=o[2],c.ops.push(i);break}o[2]&&c.ops.pop(),c.trys.pop();continue}i=r.call(e,c)}catch(e){i=[6,e],n=0}finally{t=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}function i(e,r,t){if(t||2===arguments.length)for(var n,o=0,i=r.length;o<i;o++)!n&&o in r||(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))}var c,u=function(){function e(e){this.keys=e,this.adj={}}return e.prototype.isCyclicUtil=function(e,r,t){var n;if(t.has(e))return!0;if(r.has(e))return!1;r.add(e),t.add(e);for(var o=0,i=null!==(n=this.adj[e])&&void 0!==n?n:[];o<i.length;o++){var c=i[o];if(this.isCyclicUtil(c,r,t))return!0}return t.delete(e),!1},e.prototype.setEdges=function(e,r){this.adj[e]=r},e.prototype.isCyclic=function(){for(var e=new Set,r=new Set,t=0,n=this.keys;t<n.length;t++){var o=n[t];if(this.isCyclicUtil(o,e,r))return!0}return!1},e}();!function(e){e.REJECT="reject",e.IGNORE="ignore",e.KEEP_LAST="keepLast",e.KEEP_ALL="keepAll",e.PARALLEL="parallel",e.REUSE="reuse"}(c||(c={}));var a=function(e){function t(r,n){var o=e.call(this,r.message)||this;return o.source=r,o.initialError=n,Object.setPrototypeOf(o,t.prototype),o}return r(t,e),t}(Error),s={clone:function(e){return JSON.parse(JSON.stringify(e))},comparator:function(e,r){if(Object.is(e,r))return!0;if("object"!=typeof e||null===e||"object"!=typeof r||null===r)return!1;if(e instanceof Set||r instanceof Set)return!1;var t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;for(var o=0;o<t.length;o++)if(!Object.prototype.hasOwnProperty.call(r,t[o])||!Object.is(e[t[o]],r[t[o]]))return!1;return!0},asyncErrorHandler:function(){},retryOnErrorFunction:function(e){return e instanceof TypeError},notifySuccess:void 0,notifyError:void 0,notifyWarning:void 0,getErrorMessage:void 0,defaultMiddlewares:[]};function l(e){try{return s.clone(e)}catch(e){throw new Error("StateDecorator: Cannot clone object. Set setCloneFunction on global global with another implementation like lodash/cloneDeep.")}}function f(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&e.hasOwnProperty("getGetPromise")}function d(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=!1,a)),u))}function p(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=void 0,a)),u))}var v=function(e){function t(r){var n=e.call(this,"Error")||this;return n.promiseIds=r,Object.setPrototypeOf(n,t.prototype),n}return r(t,e),t}(Error);function g(e,r,t,i){return void 0===r&&(r=1),void 0===t&&(t=1e3),void 0===i&&(i=function(){return!0}),1===r?e:function(c){var u=e(c);return null===u?null:function u(a,s){return n(this,void 0,void 0,(function(){return o(this,(function(n){return null===s?[2,null]:[2,s.catch((function(n){return i(n)?a===r?Promise.reject(n):new Promise((function(r,n){setTimeout((function(){var t=e(c);u(a+1,t).then(r).catch(n)}),t*a)})):Promise.reject(n)}))]}))}))}(1,u)}}function h(e){return void 0===e&&(e=null),{current:e}}function y(e,r,t){var n,o;return{state:e.current,s:e.current,ds:null===(n=null==r?void 0:r.current)||void 0===n?void 0:n.state,derived:null===(o=null==r?void 0:r.current)||void 0===o?void 0:o.state,props:t.current,p:t.current}}function E(e,r,t,n,o,i,c){var u=y(e,r,t);return u.indices=n,u.index=o,u.isInit=i,u.getInitialState=c,u}function P(e,r,t,n,o){var i=y(e,r,t);return i.args=n,o&&(i.promiseId=o),i}function m(e,r,t,n,o,i){var c=P(e,r,t,n,i);return c.result=o,c.res=o,c}function S(e,r,t,n,o,i,c){var u=w(P(e,r,t,n,c),o);return u.abortSignal=i,u}function b(e,r){var t=e;return t.state=r.current,t.s=r.current,t}function w(e,r){var t=e;return t.actions=r.current,t.a=r.current,t}function x(e,r,t,n,o,i){var c,u=w(e,n);b(e,r);var a=null===(c=null==t?void 0:t.current)||void 0===c?void 0:c.state;return u.derived=a,u.ds=a,u.notifyWarning=o,u.clearError=i,u}function A(e,r){return null==r?null:t(t({},e.current),r)}function O(e,r,t,n,o,i,c,u,a,s,l){var f,d=m(t,n,o,l,void 0),p=!1;if(null!=r.effects){var v=A(t,r.effects(d));null===v?p=!0:a(v,void 0,e,"effects",!1,d,!1)}if(!p)if(r.debounceSideEffectsTimeout>0){var g=c.current[e];g&&clearTimeout(g),c.current[e]=setTimeout((function(){var o;null===(o=r.sideEffects)||void 0===o||o.call(r,x(d,t,n,i,u.notifyWarning,s)),delete c.current[e]}),r.debounceSideEffectsTimeout)}else null===(f=r.sideEffects)||void 0===f||f.call(r,x(d,t,n,i,u.notifyWarning,s))}function R(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,l=e.promisesRef,f=e.actionsRef,p=e.loadingParallelMapRef,v=e.conflictActionsRef,g=e.actionName,h=e.options,y=e.setState,E=e.clearError;if(e.initializedRef.current){var P=null,S=m(i,c,u,n,t,r);if(o.effects)try{P=A(i,o.effects(S))}catch(e){return Promise.reject(new a(e))}y(P,d(p.current,g,r,!1),g,"effects",!0,S,!1);var b=h.notifySuccess||s.notifySuccess;if(b){var w=void 0;o.getSuccessMessage&&(w=o.getSuccessMessage(S)),w&&b(w)}return delete l.current[g][r],o.sideEffects&&o.sideEffects(x(S,i,c,f,s.notifyWarning,E)),_(g,f.current,v.current),t}}function j(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,l=e.actionsRef,f=e.loadingParallelMapRef,v=e.errorMapRef,g=e.promisesRef,h=e.conflictActionsRef,y=e.actionName,E=e.options,m=e.clearError,S=e.setState;if(e.initializedRef.current){var b=null,w=t,O=function(e,r,t,n,o,i){var c=P(e,r,t,n,i);return c.error=o,c.err=o,c}(i,c,u,n,w,r);if(o.errorEffects)try{b=A(i,o.errorEffects(O))}catch(e){w=new a(e,t)}v.current=p(v.current,y,r,w),S(b,d(f.current,y,r,!1),y,"errorEffects",!0,O,!1);var R=!1;(null!=b||o.errorSideEffects||o.isErrorManaged||E.isErrorManaged)&&(R=!0);var j=E.notifyError||s.notifyError;if(j){var C=void 0;o.getErrorMessage&&(C=o.getErrorMessage(O)),void 0===C&&!R&&s.getErrorMessage&&(C=s.getErrorMessage(w)),C&&(R=!0,j(C))}return s.asyncErrorHandler(w,R||o.rejectPromiseOnError,i.current,u.current,y,n),delete g.current[y][r],o.errorSideEffects&&o.errorSideEffects(x(O,i,c,l,s.notifyWarning,m)),_(y,l.current,h.current),!R||o.rejectPromiseOnError?Promise.reject(w):Promise.resolve()}}var C="__def__";function L(e,r){return e.length===r.length&&-1===e.findIndex((function(e,t){return r[t]!==e}))}function M(e,r,t,n,o){var i=n;if(i===c.REUSE){if(L(e[t][C].refArgs,o))return e[t][C].promise;i=c.KEEP_ALL}return new Promise((function(e,n){var u={resolve:e,reject:n,args:l(o),timestamp:Date.now()};switch(i){case c.IGNORE:e(void 0);break;case c.REJECT:n(new Error("An asynchronous action ".concat(t," is already ongoing.")));break;case c.KEEP_LAST:r[t]=[u];break;case c.KEEP_ALL:var a=r[t];a||(r[t]=a=[]),a.push(u);break;case c.PARALLEL:case c.REUSE:}}))}function _(e,r,t){var n=t[e];if(n&&n.length>0){var o=t[e].shift();if(o){var i=r[e].apply(r,o.args);null==i?_(e,r,t):i.then((function(n){null===n&&_(e,r,t),o.resolve(n)})).catch((function(e){return o.reject(e)}))}}}exports.DEFAULT_PROMISE_ID=C,exports.EffectError=a,exports.ParallelActionError=v,exports.addContextActions=w,exports.addStateToContext=b,exports.areSameArgs=L,exports.buildErrorMap=function(e){return Object.keys(e).reduce((function(r,t){var n=e[t];if(null==n[C]);else if(n[C])r[t]=n[C];else{var o=Object.keys(n).reduce((function(e,r){return null!=n[r]&&(e.hasErr=!0,e.map[r]=n[r]),e}),{hasErr:!1,map:{}});o.hasErr&&(r[t]=new v(o.map))}return r}),{})},exports.buildInvocationContextBase=y,exports.buildLoadingMap=d,exports.buildOnMountInvocationContext=function(e,r,t,n){return w(y(e,r,t),n)},exports.buildOnPropChangeEffects=E,exports.buildOnUnMountInvocationContext=function(e,r,n,o){return t(t({},y(e,r,n)),{abortedActions:o})},exports.computeAsyncActionInput=function(e){return f(e)?t(t({},e),{getPromise:e.getGetPromise,retryCount:3,conflictPolicy:c.REUSE}):e},exports.computeDerivedValues=function(e,r,n,o){if(null==(null==o?void 0:o.derivedState))return!1;var i=!1,c=s.comparator,u=n.current.deps,a=y(e,null,r),l=Object.keys(o.derivedState);return n.current.state=l.reduce((function(e,r){var s,l,f=!1,d=o.derivedState[r],p=u[r],v=null!==(l=null===(s=d.getDeps)||void 0===s?void 0:s.call(d,a))&&void 0!==l?l:[];return d.derivedDeps&&d.derivedDeps.forEach((function(r){var t,o,i;return v.push(null!==(t=e[r])&&void 0!==t?t:null===(i=null===(o=n.current)||void 0===o?void 0:o.state)||void 0===i?void 0:i[r])})),f=null==p||null!=v.find((function(e,r){return p.length<r||!c(p[r],e)})),i=i||f,u[r]=v,e[r]=f?o.derivedState[r].get(function(e,r){return t(t({},e),{ds:r,derived:r})}(a,e)):n.current.state[r],e}),{}),i},exports.createRef=h,exports.decorateAsyncAction=function(e){var r=e.action,n=e.stateRef,o=e.derivedStateRef,u=e.propsRef,l=e.actionsRef,f=e.promisesRef,v=e.loadingParallelMapRef,h=e.errorMapRef,y=e.initializedRef,E=e.conflictActionsRef,m=e.actionName,b=e.setState;return function(){for(var w,x,O,L=[],_=0;_<arguments.length;_++)L[_]=arguments[_];if(!y.current)return null;var k=f.current,T=r.conflictPolicy,D=void 0===T?c.KEEP_ALL:T,I=D===c.PARALLEL,G=null;if(I){if(!r.getPromiseId)throw new Error("If conflict policy is set to ConflictPolicy.PARALLEL, getPromiseId must be set and return a string.");G=r.getPromiseId.apply(r,L)}else G=C;if(!I&&(null===(x=k[m])||void 0===x?void 0:x[G]))return M(k,E.current,m,D,L);var U=null,N=!1,K=P(n,o,u,L,G);if(r.preEffects){try{U=A(n,r.preEffects(K))}catch(e){return s.asyncErrorHandler(new a(e),!1,n.current,u.current,m,L),Promise.reject(new a(e))}U&&(N=!0,n.current=U)}var W=r.abortable,F=r.retryCount,z=r.retryDelaySeed,J=r.isTriggerRetryError,H=W&&window.AbortController?new AbortController:null,B=g(r.getPromise,F?1+F:1,z,J||s.retryOnErrorFunction),V=null===(O=B(S(n,o,u,L,l,null==H?void 0:H.signal)))||void 0===O?void 0:O.then((function(r){return R(e,G,r,L)})).catch((function(r){return j(e,G,r,L)}));return null!=V&&(k[m]=t(t({},k[m]||{}),((w={})[G||C]={abortController:H,promise:V,refArgs:D===c.REUSE&&L.length>0?i([],L,!0):[]},w))),h.current=p(h.current,m,G,null),b(null!=V||N?n.current:void 0,null==V?void 0:d(v.current,m,G,!0),m,"preEffects",!0,K,!1),V}},exports.decorateSimpleSyncAction=function(e,r,t,n,o,i,c){return function(){for(var u=[],a=0;a<arguments.length;a++)u[a]=arguments[a];if(i.current){var s=P(t,n,o,u),l=A(t,r(s));c(l,null,e,"effects",!1,s,!1)}}},exports.decorateSyncAction=function(e,r,t,n,o,i,c,u,a,s,l){return function(){for(var f=[],d=0;d<arguments.length;d++)f[d]=arguments[d];if(c.current)if(r.debounceTimeout){var p=u.current[e];p&&clearTimeout(p),u.current[e]=setTimeout((function(){delete u.current[e],O(e,r,t,n,o,i,u,a,s,l,f)}),r.debounceTimeout)}else O(e,r,t,n,o,i,u,a,s,l,f)}},exports.fixDerivedDeps=function(e){var r,t=Object.keys(e.derivedState),n=new u(t);if(t.forEach((function(r){n.setEdges(r,e.derivedState[r].derivedDeps)})),n.isCyclic())throw new Error("There are cycles in the derived state dependencies");for(var o=!1,i={},c=0,a=t;c<a.length;c++){var s=a[c],l=null!==(r=e.derivedState[s].derivedDeps)&&void 0!==r?r:[];o=o||l.length>0,i[s]=l.concat()}if(o){t.sort((function(e,r){return i[e].length-i[r].length}));for(var f=[],d=new Set,p=t.length;d.size!==p;){var v=t.pop();if(!d.has(v))i[v]=i[v].filter((function(e){return!d.has(e)})),0===i[v].length?(f.push(v),d.add(v)):t.splice(0,0,v)}for(var g={},h=0,y=f;h<y.length;h++){g[v=y[h]]=e.derivedState[v]}e.derivedState=g}},exports.globalConfig=s,exports.isAsyncAction=function(e){return!(e instanceof Function)&&(e.hasOwnProperty("getPromise")||e.hasOwnProperty("getGetPromise"))},exports.isAsyncGetPromiseAction=function(e){return"function"!=typeof e&&e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")},exports.isAsyncGetPromiseGetAction=f,exports.isLoadingImpl=function(e){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return r.some((function(r){var t,n=null,o=C;Array.isArray(r)?(n=r[0],o=void 0===(t=r[1])?C:t):n=r;var i=e[n];return null!=i&&(null!=i[o]&&i[o])}))},exports.isSimpleSyncAction=function(e){return"function"==typeof e},exports.isSyncAction=function(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")},exports.onPropChange=function(e,r,n,o,i,c,u,a,l,f){var d=null!=(null==c?void 0:c.derivedState);if(null!=c.onPropsChange){var p;p=Array.isArray(c.onPropsChange)?c.onPropsChange:[c.onPropsChange];var v=!1,g=h(e.current),y=[],P=s.comparator;p.forEach((function(t,i){var c,s=t.getDeps;if(s){var d=!1,p=[];if(l){if(!(!f&&t.onMount||f&&t.onMountDeferred))return;d=!0}else{var h=s(o),m=s(n.current);h.length!==m.length?(console.warn("options.onPropsChange.getDeps returned array must be stable (same length)"),d=!0):h.forEach((function(e,r){P(e,m[r])||(d=!0,p.push(r))}))}if(d){var S=E(g,r,n,p,i,l,u),b=A(e,null===(c=t.effects)||void 0===c?void 0:c.call(t,S));null!=b&&(v=!0,g.current=b,a(g.current,void 0,"onPropsChange","effects",!1,S,!0,l)),t.sideEffects&&y.push({index:i,indices:p,ctx:S})}}})),!v&&d&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0),y.length>0&&y.forEach((function(e){p[e.index].sideEffects(t(t({},b(w(e.ctx,i),g)),{indices:e.indices}))}))}else null!=(null==c?void 0:c.derivedState)&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0)},exports.retryPromiseDecorator=g,exports.runMiddlewares=function(e,r,t,n,o,i,c,u){if("onPropsChange"===o&&void 0===t)return{newState:null,newLoading:!1};if(e&&e.length>0){var a=e.reduce((function(e,r){var t=r.effects({isAsync:c,name:o,type:i,context:u},e.oldState,e.newState,n);return{newState:(null==t?void 0:t.state)||e.newState,oldState:(null==t?void 0:t.state)?e.newState:e.oldState,loading:null==(null==t?void 0:t.loading)?e.loading:t.loading}}),{oldState:r,newState:t,loading:n});return{newLoading:a.loading,newState:a.newState}}return{newState:t,newLoading:n}},exports.setGlobalConfig=function(e){Object.keys(e).forEach((function(r){null!=e[r]&&(s[r]=e[r])}))},exports.updateErrorMap=p;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=function(r,t){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])})(r,t)};function r(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=r}e(r,t),r.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var t=function(){return(t=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++)for(var o in r=arguments[t])Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);return e}).apply(this,arguments)};function n(e,r,t,n){return new(t||(t=Promise))((function(o,i){function c(e){try{a(n.next(e))}catch(e){i(e)}}function u(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(c,u)}a((n=n.apply(e,r||[])).next())}))}function o(e,r){var t,n,o,i,c={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(t)throw new TypeError("Generator is already executing.");for(;c;)try{if(t=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return c.label++,{value:i[1],done:!1};case 5:c.label++,n=i[1],i=[0];continue;case 7:i=c.ops.pop(),c.trys.pop();continue;default:if(!(o=c.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){c=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){c.label=i[1];break}if(6===i[0]&&c.label<o[1]){c.label=o[1],o=i;break}if(o&&c.label<o[2]){c.label=o[2],c.ops.push(i);break}o[2]&&c.ops.pop(),c.trys.pop();continue}i=r.call(e,c)}catch(e){i=[6,e],n=0}finally{t=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}function i(e,r,t){if(t||2===arguments.length)for(var n,o=0,i=r.length;o<i;o++)!n&&o in r||(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))}var c,u=function(){function e(e){this.keys=e,this.adj={}}return e.prototype.isCyclicUtil=function(e,r,t){var n;if(t.has(e))return!0;if(r.has(e))return!1;r.add(e),t.add(e);for(var o=0,i=null!==(n=this.adj[e])&&void 0!==n?n:[];o<i.length;o++){var c=i[o];if(this.isCyclicUtil(c,r,t))return!0}return t.delete(e),!1},e.prototype.setEdges=function(e,r){this.adj[e]=r},e.prototype.isCyclic=function(){for(var e=new Set,r=new Set,t=0,n=this.keys;t<n.length;t++){var o=n[t];if(this.isCyclicUtil(o,e,r))return!0}return!1},e}();!function(e){e.REJECT="reject",e.IGNORE="ignore",e.KEEP_LAST="keepLast",e.KEEP_ALL="keepAll",e.PARALLEL="parallel",e.REUSE="reuse"}(c||(c={}));var a=function(e){function t(r,n){var o=e.call(this,r.message)||this;return o.source=r,o.initialError=n,Object.setPrototypeOf(o,t.prototype),o}return r(t,e),t}(Error),s={clone:function(e){return JSON.parse(JSON.stringify(e))},comparator:function(e,r){if(Object.is(e,r))return!0;if("object"!=typeof e||null===e||"object"!=typeof r||null===r)return!1;if(e instanceof Set||r instanceof Set)return!1;var t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;for(var o=0;o<t.length;o++)if(!Object.prototype.hasOwnProperty.call(r,t[o])||!Object.is(e[t[o]],r[t[o]]))return!1;return!0},asyncErrorHandler:function(){},retryOnErrorFunction:function(e){return e instanceof TypeError},notifySuccess:void 0,notifyError:void 0,notifyWarning:void 0,getErrorMessage:void 0,defaultMiddlewares:[]};function l(e){try{return s.clone(e)}catch(e){throw new Error("StateDecorator: Cannot clone object. Set setCloneFunction on global global with another implementation like lodash/cloneDeep.")}}function f(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&e.hasOwnProperty("getGetPromise")}function d(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=!1,a)),u))}function p(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=void 0,a)),u))}var v=function(e){function t(r){var n=e.call(this,"Error")||this;return n.promiseIds=r,Object.setPrototypeOf(n,t.prototype),n}return r(t,e),t}(Error);function g(e,r,t,i){return void 0===r&&(r=1),void 0===t&&(t=1e3),void 0===i&&(i=function(){return!0}),1===r?e:function(c){var u=e(c);return null===u?null:function u(a,s){return n(this,void 0,void 0,(function(){return o(this,(function(n){return null===s?[2,null]:[2,s.catch((function(n){return i(n)?a===r?Promise.reject(n):new Promise((function(r,n){setTimeout((function(){var t=e(c);u(a+1,t).then(r).catch(n)}),t*a)})):Promise.reject(n)}))]}))}))}(1,u)}}function h(e){return void 0===e&&(e=null),{current:e}}function y(e,r,t){var n,o;return{state:e.current,s:e.current,ds:null===(n=null==r?void 0:r.current)||void 0===n?void 0:n.state,derived:null===(o=null==r?void 0:r.current)||void 0===o?void 0:o.state,props:t.current,p:t.current}}function E(e,r,t,n,o,i,c){var u=y(e,r,t);return u.indices=n,u.index=o,u.isInit=i,u.getInitialState=c,u}function P(e,r,t,n,o){var i=y(e,r,t);return i.args=n,o&&(i.promiseId=o),i}function S(e,r,t,n,o,i){var c=P(e,r,t,n,i);return c.result=o,c.res=o,c}function m(e,r,t,n,o,i,c){var u=w(P(e,r,t,n,c),o);return u.abortSignal=i,u}function b(e,r){var t=e;return t.state=r.current,t.s=r.current,t}function w(e,r){var t=e;return t.actions=r.current,t.a=r.current,t}function x(e,r,t,n,o,i){var c,u=w(e,n);b(e,r);var a=null===(c=null==t?void 0:t.current)||void 0===c?void 0:c.state;return u.derived=a,u.ds=a,u.notifyWarning=o,u.clearError=i,u}function A(e,r,n){return(null==n?void 0:n.fullStateEffects)?r:null==r?null:t(t({},e.current),r)}function O(e,r,t,n,o,i,c,u,a,s,l){var f,d=S(t,n,o,l,void 0),p=!1;if(null!=r.effects){var v=A(t,r.effects(d),u);null===v?p=!0:a(v,void 0,e,"effects",!1,d,!1)}if(!p)if(r.debounceSideEffectsTimeout>0){var g=c.current[e];g&&clearTimeout(g),c.current[e]=setTimeout((function(){var o;null===(o=r.sideEffects)||void 0===o||o.call(r,x(d,t,n,i,u.notifyWarning,s)),delete c.current[e]}),r.debounceSideEffectsTimeout)}else null===(f=r.sideEffects)||void 0===f||f.call(r,x(d,t,n,i,u.notifyWarning,s))}function R(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,l=e.promisesRef,f=e.actionsRef,p=e.loadingParallelMapRef,v=e.conflictActionsRef,g=e.actionName,h=e.options,y=e.setState,E=e.clearError;if(e.initializedRef.current){var P=null,m=S(i,c,u,n,t,r);if(o.effects)try{P=A(i,o.effects(m),h)}catch(e){return Promise.reject(new a(e))}y(P,d(p.current,g,r,!1),g,"effects",!0,m,!1);var b=h.notifySuccess||s.notifySuccess;if(b){var w=void 0;o.getSuccessMessage&&(w=o.getSuccessMessage(m)),w&&b(w)}return delete l.current[g][r],o.sideEffects&&o.sideEffects(x(m,i,c,f,s.notifyWarning,E)),_(g,f.current,v.current),t}}function j(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,l=e.actionsRef,f=e.loadingParallelMapRef,v=e.errorMapRef,g=e.promisesRef,h=e.conflictActionsRef,y=e.actionName,E=e.options,S=e.clearError,m=e.setState;if(e.initializedRef.current){var b=null,w=t,O=function(e,r,t,n,o,i){var c=P(e,r,t,n,i);return c.error=o,c.err=o,c}(i,c,u,n,w,r);if(o.errorEffects)try{b=A(i,o.errorEffects(O),E)}catch(e){w=new a(e,t)}v.current=p(v.current,y,r,w),m(b,d(f.current,y,r,!1),y,"errorEffects",!0,O,!1);var R=!1;(null!=b||o.errorSideEffects||o.isErrorManaged||E.isErrorManaged)&&(R=!0);var j=E.notifyError||s.notifyError;if(j){var C=void 0;o.getErrorMessage&&(C=o.getErrorMessage(O)),void 0===C&&!R&&s.getErrorMessage&&(C=s.getErrorMessage(w)),C&&(R=!0,j(C))}return s.asyncErrorHandler(w,R||o.rejectPromiseOnError,i.current,u.current,y,n),delete g.current[y][r],o.errorSideEffects&&o.errorSideEffects(x(O,i,c,l,s.notifyWarning,S)),_(y,l.current,h.current),!R||o.rejectPromiseOnError?Promise.reject(w):Promise.resolve()}}var C="__def__";function L(e,r){return e.length===r.length&&-1===e.findIndex((function(e,t){return r[t]!==e}))}function M(e,r,t,n,o){var i=n;if(i===c.REUSE){if(L(e[t][C].refArgs,o))return e[t][C].promise;i=c.KEEP_ALL}return new Promise((function(e,n){var u={resolve:e,reject:n,args:l(o),timestamp:Date.now()};switch(i){case c.IGNORE:e(void 0);break;case c.REJECT:n(new Error("An asynchronous action ".concat(t," is already ongoing.")));break;case c.KEEP_LAST:r[t]=[u];break;case c.KEEP_ALL:var a=r[t];a||(r[t]=a=[]),a.push(u);break;case c.PARALLEL:case c.REUSE:}}))}function _(e,r,t){var n=t[e];if(n&&n.length>0){var o=t[e].shift();if(o){var i=r[e].apply(r,o.args);null==i?_(e,r,t):i.then((function(n){null===n&&_(e,r,t),o.resolve(n)})).catch((function(e){return o.reject(e)}))}}}exports.DEFAULT_PROMISE_ID=C,exports.EffectError=a,exports.ParallelActionError=v,exports.addContextActions=w,exports.addStateToContext=b,exports.areSameArgs=L,exports.buildErrorMap=function(e){return Object.keys(e).reduce((function(r,t){var n=e[t];if(null==n[C]);else if(n[C])r[t]=n[C];else{var o=Object.keys(n).reduce((function(e,r){return null!=n[r]&&(e.hasErr=!0,e.map[r]=n[r]),e}),{hasErr:!1,map:{}});o.hasErr&&(r[t]=new v(o.map))}return r}),{})},exports.buildInvocationContextBase=y,exports.buildLoadingMap=d,exports.buildOnMountInvocationContext=function(e,r,t,n){return w(y(e,r,t),n)},exports.buildOnPropChangeEffects=E,exports.buildOnUnMountInvocationContext=function(e,r,n,o){return t(t({},y(e,r,n)),{abortedActions:o})},exports.computeAsyncActionInput=function(e){return f(e)?t(t({},e),{getPromise:e.getGetPromise,retryCount:3,conflictPolicy:c.REUSE}):e},exports.computeDerivedValues=function(e,r,n,o){if(null==(null==o?void 0:o.derivedState))return!1;var i=!1,c=s.comparator,u=n.current.deps,a=y(e,null,r),l=Object.keys(o.derivedState);return n.current.state=l.reduce((function(e,r){var s,l,f=!1,d=o.derivedState[r],p=u[r],v=null!==(l=null===(s=d.getDeps)||void 0===s?void 0:s.call(d,a))&&void 0!==l?l:[];return d.derivedDeps&&d.derivedDeps.forEach((function(r){var t,o,i;return v.push(null!==(t=e[r])&&void 0!==t?t:null===(i=null===(o=n.current)||void 0===o?void 0:o.state)||void 0===i?void 0:i[r])})),f=null==p||null!=v.find((function(e,r){return p.length<r||!c(p[r],e)})),i=i||f,u[r]=v,e[r]=f?o.derivedState[r].get(function(e,r){return t(t({},e),{ds:r,derived:r})}(a,e)):n.current.state[r],e}),{}),i},exports.createRef=h,exports.decorateAsyncAction=function(e){var r=e.action,n=e.stateRef,o=e.derivedStateRef,u=e.propsRef,l=e.actionsRef,f=e.promisesRef,v=e.loadingParallelMapRef,h=e.errorMapRef,y=e.initializedRef,E=e.conflictActionsRef,S=e.actionName,b=e.setState,w=e.options;return function(){for(var x,O,L,_=[],k=0;k<arguments.length;k++)_[k]=arguments[k];if(!y.current)return null;var T=f.current,D=r.conflictPolicy,I=void 0===D?c.KEEP_ALL:D,G=I===c.PARALLEL,U=null;if(G){if(!r.getPromiseId)throw new Error("If conflict policy is set to ConflictPolicy.PARALLEL, getPromiseId must be set and return a string.");U=r.getPromiseId.apply(r,_)}else U=C;if(!G&&(null===(O=T[S])||void 0===O?void 0:O[U]))return M(T,E.current,S,I,_);var N=null,K=!1,W=P(n,o,u,_,U);if(r.preEffects){try{N=A(n,r.preEffects(W),w)}catch(e){return s.asyncErrorHandler(new a(e),!1,n.current,u.current,S,_),Promise.reject(new a(e))}N&&(K=!0,n.current=N)}var F=r.abortable,z=r.retryCount,J=r.retryDelaySeed,H=r.isTriggerRetryError,B=F&&window.AbortController?new AbortController:null,V=g(r.getPromise,z?1+z:1,J,H||s.retryOnErrorFunction),q=null===(L=V(m(n,o,u,_,l,null==B?void 0:B.signal)))||void 0===L?void 0:L.then((function(r){return R(e,U,r,_)})).catch((function(r){return j(e,U,r,_)}));return null!=q&&(T[S]=t(t({},T[S]||{}),((x={})[U||C]={abortController:B,promise:q,refArgs:I===c.REUSE&&_.length>0?i([],_,!0):[]},x))),h.current=p(h.current,S,U,null),b(null!=q||K?n.current:void 0,null==q?void 0:d(v.current,S,U,!0),S,"preEffects",!0,W,!1),q}},exports.decorateSimpleSyncAction=function(e,r,t,n,o,i,c,u){return function(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];if(i.current){var l=P(t,n,o,a),f=A(t,r(l),c);u(f,null,e,"effects",!1,l,!1)}}},exports.decorateSyncAction=function(e,r,t,n,o,i,c,u,a,s,l){return function(){for(var f=[],d=0;d<arguments.length;d++)f[d]=arguments[d];if(c.current)if(r.debounceTimeout){var p=u.current[e];p&&clearTimeout(p),u.current[e]=setTimeout((function(){delete u.current[e],O(e,r,t,n,o,i,u,a,s,l,f)}),r.debounceTimeout)}else O(e,r,t,n,o,i,u,a,s,l,f)}},exports.fixDerivedDeps=function(e){var r,t=Object.keys(e.derivedState),n=new u(t);if(t.forEach((function(r){n.setEdges(r,e.derivedState[r].derivedDeps)})),n.isCyclic())throw new Error("There are cycles in the derived state dependencies");for(var o=!1,i={},c=0,a=t;c<a.length;c++){var s=a[c],l=null!==(r=e.derivedState[s].derivedDeps)&&void 0!==r?r:[];o=o||l.length>0,i[s]=l.concat()}if(o){t.sort((function(e,r){return i[e].length-i[r].length}));for(var f=[],d=new Set,p=t.length;d.size!==p;){var v=t.pop();if(!d.has(v))i[v]=i[v].filter((function(e){return!d.has(e)})),0===i[v].length?(f.push(v),d.add(v)):t.splice(0,0,v)}for(var g={},h=0,y=f;h<y.length;h++){g[v=y[h]]=e.derivedState[v]}e.derivedState=g}},exports.globalConfig=s,exports.isAsyncAction=function(e){return!(e instanceof Function)&&(e.hasOwnProperty("getPromise")||e.hasOwnProperty("getGetPromise"))},exports.isAsyncGetPromiseAction=function(e){return"function"!=typeof e&&e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")},exports.isAsyncGetPromiseGetAction=f,exports.isLoadingImpl=function(e){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return r.some((function(r){var t,n=null,o=C;Array.isArray(r)?(n=r[0],o=void 0===(t=r[1])?C:t):n=r;var i=e[n];return null!=i&&(null!=i[o]&&i[o])}))},exports.isSimpleSyncAction=function(e){return"function"==typeof e},exports.isSyncAction=function(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")},exports.onPropChange=function(e,r,n,o,i,c,u,a,l,f){var d=null!=(null==c?void 0:c.derivedState);if(null!=c.onPropsChange){var p;p=Array.isArray(c.onPropsChange)?c.onPropsChange:[c.onPropsChange];var v=!1,g=h(e.current),y=[],P=s.comparator;p.forEach((function(t,i){var s,d=t.getDeps;if(d){var p=!1,h=[];if(l){if(!(!f&&t.onMount||f&&t.onMountDeferred))return;p=!0}else{var S=d(o),m=d(n.current);S.length!==m.length?(console.warn("options.onPropsChange.getDeps returned array must be stable (same length)"),p=!0):S.forEach((function(e,r){P(e,m[r])||(p=!0,h.push(r))}))}if(p){var b=E(g,r,n,h,i,l,u),w=A(e,null===(s=t.effects)||void 0===s?void 0:s.call(t,b),c);null!=w&&(v=!0,g.current=w,a(g.current,void 0,"onPropsChange","effects",!1,b,!0,l)),t.sideEffects&&y.push({index:i,indices:h,ctx:b})}}})),!v&&d&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0),y.length>0&&y.forEach((function(e){p[e.index].sideEffects(t(t({},b(w(e.ctx,i),g)),{indices:e.indices}))}))}else null!=(null==c?void 0:c.derivedState)&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0)},exports.retryPromiseDecorator=g,exports.runMiddlewares=function(e,r,t,n,o,i,c,u){if("onPropsChange"===o&&void 0===t)return{newState:null,newLoading:!1};if(e&&e.length>0){var a=e.reduce((function(e,r){var t=r.effects({isAsync:c,name:o,type:i,context:u},e.oldState,e.newState,n);return{newState:(null==t?void 0:t.state)||e.newState,oldState:(null==t?void 0:t.state)?e.newState:e.oldState,loading:null==(null==t?void 0:t.loading)?e.loading:t.loading}}),{oldState:r,newState:t,loading:n});return{newLoading:a.loading,newState:a.newState}}return{newState:t,newLoading:n}},exports.setGlobalConfig=function(e){Object.keys(e).forEach((function(r){null!=e[r]&&(s[r]=e[r])}))},exports.updateErrorMap=p;
|
|
2
2
|
//# sourceMappingURL=impl.js.map
|
package/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("./impl"),t=require("./development");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=n(e),o=function(){return(o=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++)for(var u in r=arguments[t])Object.prototype.hasOwnProperty.call(r,u)&&(e[u]=r[u]);return e}).apply(this,arguments)};function c(e,r,t){if(t||2===arguments.length)for(var n,u=0,o=r.length;u<o;u++)!n&&u in r||(n||(n=Array.prototype.slice.call(r,0,u)),n[u]=r[u]);return e.concat(n||Array.prototype.slice.call(r))}function i(e){var r={exports:{}};return e(r,r.exports),r.exports}var l="function"==typeof Object.is?Object.is:function(e,r){return e===r&&(0!==e||1/e==1/r)||e!=e&&r!=r},a=u.default.useState,f=u.default.useEffect,s=u.default.useLayoutEffect,d=u.default.useDebugValue;function v(e){var r=e.getSnapshot;e=e.value;try{var t=r();return!l(e,t)}catch(e){return!0}}var p="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,r){return r()}:function(e,r){var t=r(),n=a({inst:{value:t,getSnapshot:r}}),u=n[0].inst,o=n[1];return s((function(){u.value=t,u.getSnapshot=r,v(u)&&o({inst:u})}),[e,t,r]),f((function(){return v(u)&&o({inst:u}),e((function(){v(u)&&o({inst:u})}))}),[e]),d(t),t},g={useSyncExternalStore:void 0!==u.default.useSyncExternalStore?u.default.useSyncExternalStore:p},y=i((function(e){e.exports=g}));var S,b="function"==typeof Object.is?Object.is:function(e,r){return e===r&&(0!==e||1/e==1/r)||e!=e&&r!=r},E=y.useSyncExternalStore,O=u.default.useRef,h=u.default.useEffect,R=u.default.useMemo,x=u.default.useDebugValue,m={useSyncExternalStoreWithSelector:function(e,r,t,n,u){var o=O(null);if(null===o.current){var c={hasValue:!1,value:null};o.current=c}else c=o.current;o=R((function(){function e(e){if(!l){if(l=!0,o=e,e=n(e),void 0!==u&&c.hasValue){var r=c.value;if(u(r,e))return i=r}return i=e}if(r=i,b(o,e))return r;var t=n(e);return void 0!==u&&u(r,t)?r:(o=e,i=t)}var o,i,l=!1,a=void 0===t?null:t;return[function(){return e(r())},null===a?void 0:function(){return e(a())}]}),[r,t,n,u]);var i=E(e,o[0],o[1]);return h((function(){c.hasValue=!0,c.value=i}),[i]),x(i),i}},M=i((function(e){e.exports=m}));exports.ConflictPolicy=void 0,(S=exports.ConflictPolicy||(exports.ConflictPolicy={})).REJECT="reject",S.IGNORE="ignore",S.KEEP_LAST="keepLast",S.KEEP_ALL="keepAll",S.PARALLEL="parallel",S.REUSE="reuse";var P=M.useSyncExternalStoreWithSelector;function A(e){var n=r.createRef(),u=r.createRef(),i=r.createRef(),l=r.createRef(),a=r.createRef(),f=r.createRef(),s=r.createRef(),d=r.createRef(),v=r.createRef(),p=r.createRef(),g=r.createRef(),y=r.createRef(!1),S=r.createRef(),b=r.createRef([]),E=e.actions,O=e.middlewares,h=void 0===O?[]:O,R=function(e,r){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&r.indexOf(n)<0&&(t[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var u=0;for(n=Object.getOwnPropertySymbols(e);u<n.length;u++)r.indexOf(n[u])<0&&Object.prototype.propertyIsEnumerable.call(e,n[u])&&(t[n[u]]=e[n[u]])}return t}(e,["actions","middlewares"]),x=e.getInitialState||function(){return e.initialState},m={},M=0;function P(){S.current=o(o(o(o({},l.current),n.current),u.current.state),{isLoading:w,abortAction:C,loading:d.current,loadingMap:s.current,loadingParallelMap:f.current,errorMap:_(),errorParallelMap:v.current}),Object.keys(m).forEach((function(e){var r;null===(r=m[e])||void 0===r||r.call(m)}))}function A(e){n.current=e,r.computeDerivedValues(n,i,u,R),P()}function j(e){f.current=e,s.current=function(){if(y.current){var e=f.current;return Object.keys(e).reduce((function(r,t){var n=e[t];return r[t]=null!=Object.keys(n).find((function(e){return!!n[e]})),r}),{})}return null}(),d.current=function(){if(y.current){var e=f.current;return null!=Object.keys(e).find((function(r){var t=e[r];return Object.keys(t).find((function(e){return!!t[e]}))}))}return null}()}function L(o){var c;if(!y.current){i.current=o,y.current=!0,n.current=x(o);var f=new Set(null==R?void 0:R.initialActionsMarkedLoading);j(Object.keys(E).reduce((function(e,t){var n;return e[t]=f.has(t)?((n={})[r.DEFAULT_PROMISE_ID]=!0,n):{},e}),{})),v.current=Object.keys(E).reduce((function(e,r){return e[r]={},e}),{}),a.current={},p.current={},g.current={},u.current={state:null,deps:{}},(null==R?void 0:R.derivedState)&&r.fixDerivedDeps(R),b.current=[];var s={options:R,get state(){return n.current},actions:E,setState:A};e.logEnabled&&t.logDetailedEffects&&(console.log("logDetailedEffects"),h.push(t.logDetailedEffects()));var d=function(e){var r,t=e();b.current.push(t),null===(r=t.init)||void 0===r||r.call(t,s)};null===(c=r.globalConfig.defaultMiddlewares)||void 0===c||c.forEach(d),null==h||h.forEach(d),r.computeDerivedValues(n,i,u,R),r.onPropChange(n,u,i,null,l,R,x,I,!0,!1),(null==R?void 0:R.onMount)&&R.onMount(r.buildOnMountInvocationContext(n,u,i,l)),P()}}function D(e,t){void 0===t&&(t=r.DEFAULT_PROMISE_ID);var n=v.current[e];(null==n?void 0:n[t])&&delete n[t],P()}function I(e,t,o,c,l,a,s,d){void 0===s&&(s=!1),void 0===d&&(d=!1);var v=!1;if(y.current){var p=t,g=!!l&&r.isLoadingImpl(p||f.current,[o,null==a?void 0:a.promiseId]),S=r.runMiddlewares(b.current,n.current,e,g,o,c,l,a),E=S.newState,O=S.newLoading;if(null!=E&&(v=!0,n.current=E),g!==O&&(p=r.buildLoadingMap(p,o,(null==a?void 0:a.promiseId)||r.DEFAULT_PROMISE_ID,O),0===Object.keys(p).length&&(p=void 0)),null!=p&&(v=!0,j(p)),v)r.computeDerivedValues(n,i,u,R),d||(n.current=E||n.current,P());else if(s){r.computeDerivedValues(n,i,u,R)&&!d&&P()}}}var k=Object.keys(E);function w(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.isLoadingImpl.apply(void 0,c([f.current],e,!1))}function C(e,t){var n,u;void 0===t&&(t=r.DEFAULT_PROMISE_ID);var o=null===(u=null===(n=p.current[e])||void 0===n?void 0:n[t])||void 0===u?void 0:u.abortController,c=!1;return o&&(o.abort(),c=!0),c}function _(){return y.current?r.buildErrorMap(v.current):null}return l.current=k.reduce((function(e,t){var o=E[t];return r.isSimpleSyncAction(o)?e[t]=r.decorateSimpleSyncAction(t,o,n,u,i,y,I):r.isAsyncAction(o)?e[t]=r.decorateAsyncAction({actionName:t,stateRef:n,derivedStateRef:u,propsRef:i,loadingParallelMapRef:f,errorMapRef:v,actionsRef:l,promisesRef:p,conflictActionsRef:g,initializedRef:y,options:R,setState:I,clearError:D,action:r.computeAsyncActionInput(o)}):r.isSyncAction(o)&&(e[t]=r.decorateSyncAction(t,o,n,u,i,l,y,a,R,I,D)),e}),{}),{getConfig:function(){return o({},e)},setProps:function(e){var t=i.current;i.current=e,y.current?r.onPropChange(n,u,i,t,l,R,x,I,!1,!1):L(e)},addStateListener:function(e){var r="".concat(M++);return m[r]=e,function(){delete m[r]}},init:L,destroy:function(){var e;if(y.current){var t=Object.keys(E).reduce((function(e,t){var n=E[t];if(r.isAsyncAction(n)&&n.abortable){var u=f.current[t],o=Object.keys(u).reduce((function(e,r){return u[r]&&(C(t,r),e.push(r)),e}),[]);o.length>0&&(e[t]=o)}return e}),{});null===(e=null==R?void 0:R.onUnmount)||void 0===e||e.call(R,r.buildOnUnMountInvocationContext(n,u,i,t)),i.current=null,n.current=null,f.current=null,s.current=null,d.current=null,v.current=null,p.current=null,g.current=null,u.current=null,S.current=null,Object.keys(a.current).forEach((function(e){clearTimeout(a.current[e])})),a.current=null,m={},y.current=!1,b.current.forEach((function(e){var r;null===(r=e.destroy)||void 0===r||r.call(e)})),b.current=[]}},isLoading:w,abortAction:C,clearError:D,getSnapshot:function(){return S.current},invokeOnMountDeferred:function(){r.onPropChange(n,u,i,null,l,R,x,I,!0,!0),(null==R?void 0:R.onMountDeferred)&&R.onMountDeferred(r.buildOnMountInvocationContext(n,u,i,l))},get actions(){return l.current},get state(){return y.current?o(o({},n.current),u.current.state):null},get loading(){return d.current},get loadingMap(){return s.current},get errorMap(){return _()},get loadingParallelMap(){return y.current?f.current:null},get errorParallelMap(){return y.current?v.current:null}}}function j(t,n){var u=e.useMemo((function(){return n instanceof Function?n:function(e){return I(e,n)}}),[n]);return P(t.addStateListener,t.getSnapshot,t.getSnapshot,u,r.globalConfig.comparator)}function L(r,t,n){void 0===t&&(t=null),void 0===n&&(n=!0);var u=e.useReducer((function(e){return e>100?0:e+1}),0)[1],o=e.useRef(r);return r.setProps(t),e.useLayoutEffect((function(){r.init(t)}),[]),e.useLayoutEffect((function(){if(n)return o.current.addStateListener((function(){u()}))}),[n]),r}function D(r,t,n){void 0===n&&(n=!0);var u=e.useRef();return null==u.current&&(u.current=A(r)),e.useEffect((function(){return u.current.invokeOnMountDeferred(),function(){var e;null===(e=u.current)||void 0===e||e.destroy()}}),[]),L(u.current,t,n)}function I(e,r){return r.reduce((function(r,t){return e.hasOwnProperty(t)&&(r[t]=e[t]),r}),{})}Object.defineProperty(exports,"EffectError",{enumerable:!0,get:function(){return r.EffectError}}),Object.defineProperty(exports,"ParallelActionError",{enumerable:!0,get:function(){return r.ParallelActionError}}),Object.defineProperty(exports,"setGlobalConfig",{enumerable:!0,get:function(){return r.setGlobalConfig}}),exports.createStore=A,exports.default=D,exports.pick=I,exports.slice=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return function(r){return I(r,e)}},exports.useLocalStore=D,exports.useStore=L,exports.useStoreContextSlice=function(r,t){return j(e.useContext(r),t)},exports.useStoreSlice=j;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("./impl"),t=require("./development");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=n(e),o=function(){return(o=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++)for(var u in r=arguments[t])Object.prototype.hasOwnProperty.call(r,u)&&(e[u]=r[u]);return e}).apply(this,arguments)};function c(e,r,t){if(t||2===arguments.length)for(var n,u=0,o=r.length;u<o;u++)!n&&u in r||(n||(n=Array.prototype.slice.call(r,0,u)),n[u]=r[u]);return e.concat(n||Array.prototype.slice.call(r))}function i(e){var r={exports:{}};return e(r,r.exports),r.exports}var l="function"==typeof Object.is?Object.is:function(e,r){return e===r&&(0!==e||1/e==1/r)||e!=e&&r!=r},a=u.default.useState,f=u.default.useEffect,s=u.default.useLayoutEffect,d=u.default.useDebugValue;function v(e){var r=e.getSnapshot;e=e.value;try{var t=r();return!l(e,t)}catch(e){return!0}}var p="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,r){return r()}:function(e,r){var t=r(),n=a({inst:{value:t,getSnapshot:r}}),u=n[0].inst,o=n[1];return s((function(){u.value=t,u.getSnapshot=r,v(u)&&o({inst:u})}),[e,t,r]),f((function(){return v(u)&&o({inst:u}),e((function(){v(u)&&o({inst:u})}))}),[e]),d(t),t},g={useSyncExternalStore:void 0!==u.default.useSyncExternalStore?u.default.useSyncExternalStore:p},y=i((function(e){e.exports=g}));var S,b="function"==typeof Object.is?Object.is:function(e,r){return e===r&&(0!==e||1/e==1/r)||e!=e&&r!=r},E=y.useSyncExternalStore,O=u.default.useRef,h=u.default.useEffect,R=u.default.useMemo,x=u.default.useDebugValue,m={useSyncExternalStoreWithSelector:function(e,r,t,n,u){var o=O(null);if(null===o.current){var c={hasValue:!1,value:null};o.current=c}else c=o.current;o=R((function(){function e(e){if(!l){if(l=!0,o=e,e=n(e),void 0!==u&&c.hasValue){var r=c.value;if(u(r,e))return i=r}return i=e}if(r=i,b(o,e))return r;var t=n(e);return void 0!==u&&u(r,t)?r:(o=e,i=t)}var o,i,l=!1,a=void 0===t?null:t;return[function(){return e(r())},null===a?void 0:function(){return e(a())}]}),[r,t,n,u]);var i=E(e,o[0],o[1]);return h((function(){c.hasValue=!0,c.value=i}),[i]),x(i),i}},M=i((function(e){e.exports=m}));exports.ConflictPolicy=void 0,(S=exports.ConflictPolicy||(exports.ConflictPolicy={})).REJECT="reject",S.IGNORE="ignore",S.KEEP_LAST="keepLast",S.KEEP_ALL="keepAll",S.PARALLEL="parallel",S.REUSE="reuse";var P=M.useSyncExternalStoreWithSelector;function A(e){var n=r.createRef(),u=r.createRef(),i=r.createRef(),l=r.createRef(),a=r.createRef(),f=r.createRef(),s=r.createRef(),d=r.createRef(),v=r.createRef(),p=r.createRef(),g=r.createRef(),y=r.createRef(!1),S=r.createRef(),b=r.createRef([]),E=e.actions,O=e.middlewares,h=void 0===O?[]:O,R=function(e,r){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&r.indexOf(n)<0&&(t[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var u=0;for(n=Object.getOwnPropertySymbols(e);u<n.length;u++)r.indexOf(n[u])<0&&Object.prototype.propertyIsEnumerable.call(e,n[u])&&(t[n[u]]=e[n[u]])}return t}(e,["actions","middlewares"]),x=e.getInitialState||function(){return e.initialState},m={},M=0;function P(){S.current=o(o(o(o({},l.current),n.current),u.current.state),{isLoading:w,abortAction:C,loading:d.current,loadingMap:s.current,loadingParallelMap:f.current,errorMap:_(),errorParallelMap:v.current}),Object.keys(m).forEach((function(e){var r;null===(r=m[e])||void 0===r||r.call(m)}))}function A(e){n.current=e,r.computeDerivedValues(n,i,u,R),P()}function j(e){f.current=e,s.current=function(){if(y.current){var e=f.current;return Object.keys(e).reduce((function(r,t){var n=e[t];return r[t]=null!=Object.keys(n).find((function(e){return!!n[e]})),r}),{})}return null}(),d.current=function(){if(y.current){var e=f.current;return null!=Object.keys(e).find((function(r){var t=e[r];return Object.keys(t).find((function(e){return!!t[e]}))}))}return null}()}function L(o){var c;if(!y.current){i.current=o,y.current=!0,n.current=x(o);var f=new Set(null==R?void 0:R.initialActionsMarkedLoading);j(Object.keys(E).reduce((function(e,t){var n;return e[t]=f.has(t)?((n={})[r.DEFAULT_PROMISE_ID]=!0,n):{},e}),{})),v.current=Object.keys(E).reduce((function(e,r){return e[r]={},e}),{}),a.current={},p.current={},g.current={},u.current={state:null,deps:{}},(null==R?void 0:R.derivedState)&&r.fixDerivedDeps(R),b.current=[];var s={options:R,get state(){return n.current},actions:E,setState:A};e.logEnabled&&t.logDetailedEffects&&(console.log("logDetailedEffects"),h.push(t.logDetailedEffects()));var d=function(e){var r,t=e();b.current.push(t),null===(r=t.init)||void 0===r||r.call(t,s)};null===(c=r.globalConfig.defaultMiddlewares)||void 0===c||c.forEach(d),null==h||h.forEach(d),r.computeDerivedValues(n,i,u,R),r.onPropChange(n,u,i,null,l,R,x,I,!0,!1),(null==R?void 0:R.onMount)&&R.onMount(r.buildOnMountInvocationContext(n,u,i,l)),P()}}function D(e,t){void 0===t&&(t=r.DEFAULT_PROMISE_ID);var n=v.current[e];(null==n?void 0:n[t])&&delete n[t],P()}function I(e,t,o,c,l,a,s,d){void 0===s&&(s=!1),void 0===d&&(d=!1);var v=!1;if(y.current){var p=t,g=!!l&&r.isLoadingImpl(p||f.current,[o,null==a?void 0:a.promiseId]),S=r.runMiddlewares(b.current,n.current,e,g,o,c,l,a),E=S.newState,O=S.newLoading;if(null!=E&&(v=!0,n.current=E),g!==O&&(p=r.buildLoadingMap(p,o,(null==a?void 0:a.promiseId)||r.DEFAULT_PROMISE_ID,O),0===Object.keys(p).length&&(p=void 0)),null!=p&&(v=!0,j(p)),v)r.computeDerivedValues(n,i,u,R),d||(n.current=E||n.current,P());else if(s){r.computeDerivedValues(n,i,u,R)&&!d&&P()}}}var k=Object.keys(E);function w(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.isLoadingImpl.apply(void 0,c([f.current],e,!1))}function C(e,t){var n,u;void 0===t&&(t=r.DEFAULT_PROMISE_ID);var o=null===(u=null===(n=p.current[e])||void 0===n?void 0:n[t])||void 0===u?void 0:u.abortController,c=!1;return o&&(o.abort(),c=!0),c}function _(){return y.current?r.buildErrorMap(v.current):null}return l.current=k.reduce((function(e,t){var o=E[t];return r.isSimpleSyncAction(o)?e[t]=r.decorateSimpleSyncAction(t,o,n,u,i,y,R,I):r.isAsyncAction(o)?e[t]=r.decorateAsyncAction({actionName:t,stateRef:n,derivedStateRef:u,propsRef:i,loadingParallelMapRef:f,errorMapRef:v,actionsRef:l,promisesRef:p,conflictActionsRef:g,initializedRef:y,options:R,setState:I,clearError:D,action:r.computeAsyncActionInput(o)}):r.isSyncAction(o)&&(e[t]=r.decorateSyncAction(t,o,n,u,i,l,y,a,R,I,D)),e}),{}),{getConfig:function(){return o({},e)},setProps:function(e){var t=i.current;i.current=e,y.current?r.onPropChange(n,u,i,t,l,R,x,I,!1,!1):L(e)},addStateListener:function(e){var r="".concat(M++);return m[r]=e,function(){delete m[r]}},init:L,destroy:function(){var e;if(y.current){var t=Object.keys(E).reduce((function(e,t){var n=E[t];if(r.isAsyncAction(n)&&n.abortable){var u=f.current[t],o=Object.keys(u).reduce((function(e,r){return u[r]&&(C(t,r),e.push(r)),e}),[]);o.length>0&&(e[t]=o)}return e}),{});null===(e=null==R?void 0:R.onUnmount)||void 0===e||e.call(R,r.buildOnUnMountInvocationContext(n,u,i,t)),i.current=null,n.current=null,f.current=null,s.current=null,d.current=null,v.current=null,p.current=null,g.current=null,u.current=null,S.current=null,Object.keys(a.current).forEach((function(e){clearTimeout(a.current[e])})),a.current=null,m={},y.current=!1,b.current.forEach((function(e){var r;null===(r=e.destroy)||void 0===r||r.call(e)})),b.current=[]}},isLoading:w,abortAction:C,clearError:D,getSnapshot:function(){return S.current},invokeOnMountDeferred:function(){r.onPropChange(n,u,i,null,l,R,x,I,!0,!0),(null==R?void 0:R.onMountDeferred)&&R.onMountDeferred(r.buildOnMountInvocationContext(n,u,i,l))},get actions(){return l.current},get state(){return y.current?o(o({},n.current),u.current.state):null},get loading(){return d.current},get loadingMap(){return s.current},get errorMap(){return _()},get loadingParallelMap(){return y.current?f.current:null},get errorParallelMap(){return y.current?v.current:null}}}function j(t,n){var u=e.useMemo((function(){return n instanceof Function?n:function(e){return I(e,n)}}),[n]);return P(t.addStateListener,t.getSnapshot,t.getSnapshot,u,r.globalConfig.comparator)}function L(r,t,n){void 0===t&&(t=null),void 0===n&&(n=!0);var u=e.useReducer((function(e){return e>100?0:e+1}),0)[1],o=e.useRef(r);return r.setProps(t),e.useLayoutEffect((function(){r.init(t)}),[]),e.useLayoutEffect((function(){if(n)return o.current.addStateListener((function(){u()}))}),[n]),r}function D(r,t,n){void 0===n&&(n=!0);var u=e.useRef();return null==u.current&&(u.current=A(r)),e.useEffect((function(){return u.current.invokeOnMountDeferred(),function(){var e;null===(e=u.current)||void 0===e||e.destroy()}}),[]),L(u.current,t,n)}function I(e,r){return r.reduce((function(r,t){return e.hasOwnProperty(t)&&(r[t]=e[t]),r}),{})}Object.defineProperty(exports,"EffectError",{enumerable:!0,get:function(){return r.EffectError}}),Object.defineProperty(exports,"ParallelActionError",{enumerable:!0,get:function(){return r.ParallelActionError}}),Object.defineProperty(exports,"setGlobalConfig",{enumerable:!0,get:function(){return r.setGlobalConfig}}),exports.createStore=A,exports.default=D,exports.pick=I,exports.slice=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return function(r){return I(r,e)}},exports.useLocalStore=D,exports.useStore=L,exports.useStoreContextSlice=function(r,t){return j(e.useContext(r),t)},exports.useStoreSlice=j;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
package/test.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("./impl"),e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])})(t,r)};var r=function(){return(r=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function n(t,e){void 0===e&&(e={});var r=t.actions,n=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(t);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(r[n[o]]=t[n[o]])}return r}(t,["actions"]);return o(t.getInitialState||function(){return t.initialState},r,e,n)}function o(e,n,i,u,s){void 0===i&&(i={}),void 0===u&&(u={});var l=t.createRef(e(i)),f=t.createRef(i);function p(t,e,r){return o((function(){return null!=t?t:l.current}),n,null!=e?e:f.current,u,null!=r?r:s)}function v(e,n){void 0===e&&(e=void 0),void 0===n&&(n=void 0);var o=t.createRef({state:null,deps:{}});return t.computeDerivedValues(e||l,n||f,o,u),r(r({},(null==e?void 0:e.current)||l.current),o.current.state||{})}return{getInitialState:e,test:function(t){return t(v(),f.current),this},setMockActions:function(t){return p(void 0,void 0,t)},onMount:function(t){return void 0===t&&(t={}),this.onInit(t)},setState:function(t){return p(t,void 0)},setProps:function(t){return p(void 0,t)},setPartialState:function(t){return p(r(r({},l.current),t),void 0)},setPartialProps:function(t){return p(void 0,r(r({},f.current),t))},onPropsChange:function(e,o){void 0===o&&(o=!1);var i=t.createRef(l.current),u=t.createRef(r(r({},f.current),e)),a=t.createRef({state:null,deps:{}}),p=c(n,s),v=this.onPropsChangeImpl(i,u,a,p,(function(t,e,r,n,o){null!=t&&(i.current=t)}),o,!1);return r(r({},v),{test:function(t){t(v)}})},onPropsChangeImpl:function(r,n,o,c,i,a,s){return t.computeDerivedValues(l,f,o,u),t.onPropChange(r,o,n,f.current,c,u,e,i,a,s),{prevState:v(l,f),state:v(r,n),props:n.current,actions:c.current,errorMap:{}}},onInit:function(o){void 0===o&&(o={});var a=e(i),l=t.createRef(a),p=t.createRef(r(r({},f.current),o)),d=t.createRef({state:null,deps:{}}),y=c(n,s),m=function(t,e,r,n,o){null!=t&&(l.current=t)};this.onPropsChangeImpl(l,p,d,y,m,!0,!1),(null==u?void 0:u.onMount)&&u.onMount(t.buildOnMountInvocationContext(l,d,p,y)),this.onPropsChangeImpl(l,p,d,y,m,!0,!0),(null==u?void 0:u.onMountDeferred)&&u.onMountDeferred(t.buildOnMountInvocationContext(l,d,p,y));var R={prevState:null,state:v(l,p),props:p.current,actions:y.current,errorMap:{}};return r(r({},R),{test:function(t){t(R)}})},getAction:function(t){return a(l.current,t,n,f.current,null,u,void 0)}}}function c(e,r){var n=Object.keys(e);return t.createRef(n.reduce((function(t,e){return t[e]=i(null==r?void 0:r[e]),t}),{}))}var i=function(t){return jest.fn(t)};var u=function(t){function r(e,n,o,c,i){var u=t.call(this,e.message)||this;return Object.setPrototypeOf(u,r.prototype),u.sourceError=e,u.prevState=n,u.props=c,u.state=o,u.actions=i,Error.captureStackTrace&&Error.captureStackTrace(u,r),u}return function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}(r,t),r}(Error);function a(e,n,o,i,s,l,f){var p=t.createRef(e),v=t.createRef(i),d=s;function y(t,e,r,c){return void 0===c&&(c=f),a(null!=t?t:p.current,n,o,null!=e?e:v.current,null!=r?r:d,l,c)}function m(e,n){void 0===e&&(e=void 0),void 0===n&&(n=void 0);var o=t.createRef({state:null,deps:{}});return t.computeDerivedValues(null!=e?e:p,null!=n?n:v,o,l),r(r({},(null==e?void 0:e.current)||p.current),o.current.state||{})}return{setMockActions:function(t){return y(void 0,void 0,void 0,t)},setState:function(t){return y(t,void 0,void 0)},setProps:function(t){return y(void 0,t,void 0)},setPartialState:function(t){return y(r(r({},p.current),t),void 0,void 0)},setPartialProps:function(t){return y(void 0,r(r({},v.current),t),void 0)},promiseResolves:function(t){return y(void 0,void 0,Promise.resolve(t))},promiseRejects:function(t){return y(void 0,void 0,Promise.reject(t))},test:function(t){return t(m(),v.current),this},call:function(){for(var e=[],i=0;i<arguments.length;i++)e[i]=arguments[i];var a=t.createRef(r({},p.current)),s=t.createRef({state:null,deps:{}});t.computeDerivedValues(a,v,s,l);var y=c(o,f),R=t.createRef({}),P=t.createRef({}),S=function(t){null!=t&&(a.current=t)},h=o[n],O=null;if(t.isSimpleSyncAction(h))t.decorateSimpleSyncAction(n,h,a,s,v,t.createRef(!0),S).apply(void 0,e),O=Promise.resolve();else if(t.isSyncAction(h))t.decorateSyncAction(n,r(r({},h),{debounceSideEffectsTimeout:0,debounceTimeout:0}),a,s,v,y,t.createRef(!0),null,l,S,(function(t){})).apply(void 0,e),O=Promise.resolve();else if(t.isAsyncAction(h)){var g=t.createRef({}),M=t.createRef({}),b=t.createRef(!0),A=r({},t.computeAsyncActionInput(h));d&&(A.getPromise=function(){return d}),A.optimisticEffects&&(A.effects=A.optimisticEffects,delete A.optimisticEffects),O=t.decorateAsyncAction({actionName:n,derivedStateRef:s,propsRef:v,loadingParallelMapRef:R,errorMapRef:P,promisesRef:g,conflictActionsRef:M,initializedRef:b,options:l,setState:S,stateRef:a,actionsRef:y,action:A,clearError:function(t){}}).apply(void 0,e)}return(null!=O?O:Promise.resolve()).then((function(){return R.current={},{prevState:m(p),state:m(a),props:v.current,errorMap:t.buildErrorMap(P.current),actions:y.current}})).catch((function(t){return Promise.reject(new u(t,m(p),m(a),v.current,y.current))}))}}}exports.ActionError=u,exports.createMockFromStore=function(t,e){return void 0===e&&(e={}),n(t.getConfig(),e)},exports.createMockStore=n,exports.createMockStoreAction=a,exports.createMockStoreV6=o,exports.setMockFactory=function(t){i=t};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("./impl"),e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])})(t,r)};var r=function(){return(r=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function n(t,e){void 0===e&&(e={});var r=t.actions,n=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(t);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(r[n[o]]=t[n[o]])}return r}(t,["actions"]);return o(t.getInitialState||function(){return t.initialState},r,e,n)}function o(e,n,i,u,s){void 0===i&&(i={}),void 0===u&&(u={});var l=t.createRef(e(i)),f=t.createRef(i);function p(t,e,r){return o((function(){return null!=t?t:l.current}),n,null!=e?e:f.current,u,null!=r?r:s)}function v(e,n){void 0===e&&(e=void 0),void 0===n&&(n=void 0);var o=t.createRef({state:null,deps:{}});return t.computeDerivedValues(e||l,n||f,o,u),r(r({},(null==e?void 0:e.current)||l.current),o.current.state||{})}return{getInitialState:e,test:function(t){return t(v(),f.current),this},setMockActions:function(t){return p(void 0,void 0,t)},onMount:function(t){return void 0===t&&(t={}),this.onInit(t)},setState:function(t){return p(t,void 0)},setProps:function(t){return p(void 0,t)},setPartialState:function(t){return p(r(r({},l.current),t),void 0)},setPartialProps:function(t){return p(void 0,r(r({},f.current),t))},onPropsChange:function(e,o){void 0===o&&(o=!1);var i=t.createRef(l.current),u=t.createRef(r(r({},f.current),e)),a=t.createRef({state:null,deps:{}}),p=c(n,s),v=this.onPropsChangeImpl(i,u,a,p,(function(t,e,r,n,o){null!=t&&(i.current=t)}),o,!1);return r(r({},v),{test:function(t){t(v)}})},onPropsChangeImpl:function(r,n,o,c,i,a,s){return t.computeDerivedValues(l,f,o,u),t.onPropChange(r,o,n,f.current,c,u,e,i,a,s),{prevState:v(l,f),state:v(r,n),props:n.current,actions:c.current,errorMap:{}}},onInit:function(o){void 0===o&&(o={});var a=e(i),l=t.createRef(a),p=t.createRef(r(r({},f.current),o)),d=t.createRef({state:null,deps:{}}),y=c(n,s),m=function(t,e,r,n,o){null!=t&&(l.current=t)};this.onPropsChangeImpl(l,p,d,y,m,!0,!1),(null==u?void 0:u.onMount)&&u.onMount(t.buildOnMountInvocationContext(l,d,p,y)),this.onPropsChangeImpl(l,p,d,y,m,!0,!0),(null==u?void 0:u.onMountDeferred)&&u.onMountDeferred(t.buildOnMountInvocationContext(l,d,p,y));var R={prevState:null,state:v(l,p),props:p.current,actions:y.current,errorMap:{}};return r(r({},R),{test:function(t){t(R)}})},getAction:function(t){return a(l.current,t,n,f.current,null,u,void 0)}}}function c(e,r){var n=Object.keys(e);return t.createRef(n.reduce((function(t,e){return t[e]=i(null==r?void 0:r[e]),t}),{}))}var i=function(t){return jest.fn(t)};var u=function(t){function r(e,n,o,c,i){var u=t.call(this,e.message)||this;return Object.setPrototypeOf(u,r.prototype),u.sourceError=e,u.prevState=n,u.props=c,u.state=o,u.actions=i,Error.captureStackTrace&&Error.captureStackTrace(u,r),u}return function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}(r,t),r}(Error);function a(e,n,o,i,s,l,f){var p=t.createRef(e),v=t.createRef(i),d=s;function y(t,e,r,c){return void 0===c&&(c=f),a(null!=t?t:p.current,n,o,null!=e?e:v.current,null!=r?r:d,l,c)}function m(e,n){void 0===e&&(e=void 0),void 0===n&&(n=void 0);var o=t.createRef({state:null,deps:{}});return t.computeDerivedValues(null!=e?e:p,null!=n?n:v,o,l),r(r({},(null==e?void 0:e.current)||p.current),o.current.state||{})}return{setMockActions:function(t){return y(void 0,void 0,void 0,t)},setState:function(t){return y(t,void 0,void 0)},setProps:function(t){return y(void 0,t,void 0)},setPartialState:function(t){return y(r(r({},p.current),t),void 0,void 0)},setPartialProps:function(t){return y(void 0,r(r({},v.current),t),void 0)},promiseResolves:function(t){return y(void 0,void 0,Promise.resolve(t))},promiseRejects:function(t){return y(void 0,void 0,Promise.reject(t))},test:function(t){return t(m(),v.current),this},call:function(){for(var e=[],i=0;i<arguments.length;i++)e[i]=arguments[i];var a=t.createRef(r({},p.current)),s=t.createRef({state:null,deps:{}});t.computeDerivedValues(a,v,s,l);var y=c(o,f),R=t.createRef({}),P=t.createRef({}),S=function(t){null!=t&&(a.current=t)},h=o[n],O=null;if(t.isSimpleSyncAction(h))t.decorateSimpleSyncAction(n,h,a,s,v,t.createRef(!0),l,S).apply(void 0,e),O=Promise.resolve();else if(t.isSyncAction(h))t.decorateSyncAction(n,r(r({},h),{debounceSideEffectsTimeout:0,debounceTimeout:0}),a,s,v,y,t.createRef(!0),null,l,S,(function(t){})).apply(void 0,e),O=Promise.resolve();else if(t.isAsyncAction(h)){var g=t.createRef({}),M=t.createRef({}),b=t.createRef(!0),A=r({},t.computeAsyncActionInput(h));d&&(A.getPromise=function(){return d}),A.optimisticEffects&&(A.effects=A.optimisticEffects,delete A.optimisticEffects),O=t.decorateAsyncAction({actionName:n,derivedStateRef:s,propsRef:v,loadingParallelMapRef:R,errorMapRef:P,promisesRef:g,conflictActionsRef:M,initializedRef:b,options:l,setState:S,stateRef:a,actionsRef:y,action:A,clearError:function(t){}}).apply(void 0,e)}return(null!=O?O:Promise.resolve()).then((function(){return R.current={},{prevState:m(p),state:m(a),props:v.current,errorMap:t.buildErrorMap(P.current),actions:y.current}})).catch((function(t){return Promise.reject(new u(t,m(p),m(a),v.current,y.current))}))}}}exports.ActionError=u,exports.createMockFromStore=function(t,e){return void 0===e&&(e={}),n(t.getConfig(),e)},exports.createMockStore=n,exports.createMockStoreAction=a,exports.createMockStoreV6=o,exports.setMockFactory=function(t){i=t};
|
|
2
2
|
//# sourceMappingURL=test.js.map
|
package/types.d.ts
CHANGED
|
@@ -317,18 +317,21 @@ type DerivedStateOption<S, P, DS> = {
|
|
|
317
317
|
derivedDeps?: (keyof DS)[];
|
|
318
318
|
};
|
|
319
319
|
};
|
|
320
|
-
export type OnPropsChangeOptions<S, DS, A, P
|
|
320
|
+
export type OnPropsChangeOptions<S, DS, A, P, FxRes = Partial<S>> = {
|
|
321
321
|
onMount?: boolean;
|
|
322
322
|
onMountDeferred?: boolean;
|
|
323
323
|
getDeps: (p: P) => any[];
|
|
324
|
-
effects?: (ctx: OnPropsChangeEffectsContext<S, DS, P>) =>
|
|
324
|
+
effects?: (ctx: OnPropsChangeEffectsContext<S, DS, P>) => FxRes;
|
|
325
325
|
sideEffects?: (ctx: OnPropsChangeSideEffectsContext<S, P, A>) => void;
|
|
326
326
|
};
|
|
327
|
-
export type StoreOptions<S, A, P = {}, DS = {}
|
|
327
|
+
export type StoreOptions<S, A, P = {}, DS = {}, FxRes = Partial<S>> = {
|
|
328
328
|
/**
|
|
329
329
|
* The state decorator name. Use in debug traces to identify the useStateDecorator instance.
|
|
330
330
|
*/
|
|
331
331
|
name?: string;
|
|
332
|
+
/**
|
|
333
|
+
* In development only (NODE_ENV="development"), activates state changes traces on the console.
|
|
334
|
+
*/
|
|
332
335
|
logEnabled?: boolean;
|
|
333
336
|
/**
|
|
334
337
|
* Indicates that all asynchronous actions errors are managed externally.
|
|
@@ -344,7 +347,7 @@ export type StoreOptions<S, A, P = {}, DS = {}> = {
|
|
|
344
347
|
/**
|
|
345
348
|
* One or several configurations of inbound properties change managements.
|
|
346
349
|
*/
|
|
347
|
-
onPropsChange?: OnPropsChangeOptions<S, DS, A, P> | OnPropsChangeOptions<S, DS, A, P>[];
|
|
350
|
+
onPropsChange?: OnPropsChangeOptions<S, DS, A, P, FxRes> | OnPropsChangeOptions<S, DS, A, P, FxRes>[];
|
|
348
351
|
/**
|
|
349
352
|
* The callback function called if an asynchronous function succeeded and a success messsage is defined.
|
|
350
353
|
*/
|
|
@@ -374,6 +377,7 @@ export type StoreOptions<S, A, P = {}, DS = {}> = {
|
|
|
374
377
|
* Compute derived state
|
|
375
378
|
*/
|
|
376
379
|
derivedState?: DerivedStateOption<S, P, DS>;
|
|
380
|
+
fullStateEffects?: boolean;
|
|
377
381
|
};
|
|
378
382
|
type StoreConfigBase<S, A extends DecoratedActions, P = {}, DS = {}> = {
|
|
379
383
|
actions: StoreActions<S, A, P, DS>;
|
package/v6.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { GlobalConfig, ParallelActionError, EffectError } from './impl';
|
|
2
|
-
import { DecoratedActions, StoreActions, AsyncAction, SyncAction, SimpleSyncAction, LoadingMap, ErrorMap, LoadingParallelMap, ErrorParallelMap, StoreOptions, AsyncActionPromise, InvocationContext, GetPromiseInvocationContext, EffectsInvocationContext, InvocationContextActions, WarningNotifyFunc, ErrorEffectsInvocationContext, OnMountInvocationContext, ContextBase, OnPropsChangeEffectsContext, ContextState, ConflictPolicy, Middleware, AbortActionCallback, MiddlewareFactory, LoadingProps, ErrorProps, LoadingMapProps, StoreConfig } from './types';
|
|
2
|
+
import { DecoratedActions, StoreActions, AsyncAction, SyncAction, SimpleSyncAction, LoadingMap, ErrorMap, LoadingParallelMap, ErrorParallelMap, StoreOptions as StoreOptionsBase, AsyncActionPromise, InvocationContext, GetPromiseInvocationContext, EffectsInvocationContext, InvocationContextActions, WarningNotifyFunc, ErrorEffectsInvocationContext, OnMountInvocationContext, ContextBase, OnPropsChangeEffectsContext, ContextState, ConflictPolicy, Middleware, AbortActionCallback, MiddlewareFactory, LoadingProps, ErrorProps, LoadingMapProps, StoreConfig } from './types';
|
|
3
3
|
import { setGlobalConfig, IsLoadingFunc, StoreApi, StateListenerContext } from './index';
|
|
4
|
-
export { StateListenerContext, StoreApi, EffectError, DecoratedActions, StoreActions, LoadingMap, ErrorMap, LoadingParallelMap, ErrorParallelMap, ParallelActionError,
|
|
4
|
+
export { StateListenerContext, StoreApi, EffectError, DecoratedActions, StoreActions, LoadingMap, ErrorMap, LoadingParallelMap, ErrorParallelMap, ParallelActionError, AsyncActionPromise as AsynchActionPromise, InvocationContext, GetPromiseInvocationContext, EffectsInvocationContext, InvocationContextActions, WarningNotifyFunc, ErrorEffectsInvocationContext, OnMountInvocationContext, ContextBase, OnPropsChangeEffectsContext, SyncAction, AsyncAction, SimpleSyncAction, ContextState, ConflictPolicy, GlobalConfig, Middleware, setGlobalConfig, LoadingProps, AbortActionCallback, ErrorProps, LoadingMapProps, StoreConfig, IsLoadingFunc, };
|
|
5
|
+
export type StoreOptions<S, A, P = {}, DS = {}, FxRes = S> = StoreOptionsBase<S, A, P, DS, FxRes>;
|
|
6
|
+
export type StoreAction<S, F extends (...args: any[]) => any, A, P, DS = {}, FxRes = S> = AsyncAction<S, F, A, P, DS, FxRes> | SimpleSyncAction<S, F, P, DS, FxRes> | SyncAction<S, F, A, P, DS, FxRes>;
|
|
5
7
|
/**
|
|
6
8
|
* Creates and manages a local store.
|
|
7
9
|
* The component will be refreshed for every change in the store.
|
package/v6.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./impl"),r=require("./index");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o,n=t(r),l=function(){return(l=Object.assign||function(e){for(var r,t=1,o=arguments.length;t<o;t++)for(var n in r=arguments[t])Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n]);return e}).apply(this,arguments)};function i(e,r,t,o,i,a){return void 0===a&&(a=!0),n.default(l(l({getInitialState:e,actions:r},o),{middlewares:i}),t,a)}exports.ConflictPolicy=void 0,(o=exports.ConflictPolicy||(exports.ConflictPolicy={})).REJECT="reject",o.IGNORE="ignore",o.KEEP_LAST="keepLast",o.KEEP_ALL="keepAll",o.PARALLEL="parallel",o.REUSE="reuse";var a=i;Object.defineProperty(exports,"EffectError",{enumerable:!0,get:function(){return e.EffectError}}),Object.defineProperty(exports,"ParallelActionError",{enumerable:!0,get:function(){return e.ParallelActionError}}),Object.defineProperty(exports,"setGlobalConfig",{enumerable:!0,get:function(){return r.setGlobalConfig}}),exports.default=i,exports.useLocalStore=a;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./impl"),r=require("./index");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o,n=t(r),l=function(){return(l=Object.assign||function(e){for(var r,t=1,o=arguments.length;t<o;t++)for(var n in r=arguments[t])Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n]);return e}).apply(this,arguments)};function i(e,r,t,o,i,a){return void 0===a&&(a=!0),n.default(l(l({getInitialState:e,actions:r},o),{middlewares:i,fullStateEffects:!0}),t,a)}exports.ConflictPolicy=void 0,(o=exports.ConflictPolicy||(exports.ConflictPolicy={})).REJECT="reject",o.IGNORE="ignore",o.KEEP_LAST="keepLast",o.KEEP_ALL="keepAll",o.PARALLEL="parallel",o.REUSE="reuse";var a=i;Object.defineProperty(exports,"EffectError",{enumerable:!0,get:function(){return e.EffectError}}),Object.defineProperty(exports,"ParallelActionError",{enumerable:!0,get:function(){return e.ParallelActionError}}),Object.defineProperty(exports,"setGlobalConfig",{enumerable:!0,get:function(){return r.setGlobalConfig}}),exports.default=i,exports.useLocalStore=a;
|
|
2
2
|
//# sourceMappingURL=v6.js.map
|