@mic-rexjs/usecases-react 2.8.2 → 2.9.1

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/dist/index.min.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see index.min.js.LICENSE.txt */
2
- (()=>{var t={20:(t,e,n)=>{"use strict";var r=n(594),o=Symbol.for("react.element"),u=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};e.jsx=function(t,e,n){var r,c={},f=null,l=null;for(r in void 0!==n&&(f=""+n),void 0!==e.key&&(f=""+e.key),void 0!==e.ref&&(l=e.ref),e)u.call(e,r)&&!i.hasOwnProperty(r)&&(c[r]=e[r]);if(t&&t.defaultProps)for(r in e=t.defaultProps)void 0===c[r]&&(c[r]=e[r]);return{$$typeof:o,type:t,key:f,ref:l,props:c,_owner:a.current}}},848:(t,e,n)=>{"use strict";t.exports=n(20)},594:t=>{"use strict";t.exports=React}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var u=e[r]={exports:{}};return t[r](u,u.exports,n),u.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var r={};(()=>{"use strict";n.r(r),n.d(r,{UseCaseFragment:()=>x,useUseCase:()=>_});var t=n(848),e=n(594),o=n.n(e);function u(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function a(t,e){if(t){if("string"==typeof t)return u(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(t,e):void 0}}function i(t){return function(t){if(Array.isArray(t))return u(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||a(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,u,a,i=[],c=!0,f=!1;try{if(u=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=u.call(n)).done)&&(i.push(r.value),i.length!==e);c=!0);}catch(t){f=!0,o=t}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(f)throw o}}return i}}(t,e)||a(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}const f=ahooks;var l=function(t){return c((0,e.useState)((function(){return t})),1)[0]},s=function(t){return c((0,e.useState)(t),1)[0]};const y=usecases;var v,d;!function(t){t[t.None=0]="None",t[t.Entity=2]="Entity"}(v||(v={})),function(t){t[t.None=0]="None",t[t.RootEnabled=2]="RootEnabled",t[t.ContextEnabled=4]="ContextEnabled",t[t.EntityEnabled=8]="EntityEnabled",t[t.ContextRootEnabled=6]="ContextRootEnabled",t[t.EntityRootEnabled=14]="EntityRootEnabled"}(d||(d={}));var b=(0,y.createUseCase)((function(){var t=new Map,n=(0,e.createContext)(null);return function(){return{createContextValue:function(t,e,n){return(n&d.EntityEnabled)===d.EntityEnabled?{store:t,reducers:e,statuses:n}:{reducers:e,statuses:n}},registerUseCase:function(r,o){if(t.has(r)){var u=t.get(r),a=u.value,i=u.times;return t.set(r,{value:a,times:i+1}),a}if((o&v.Entity)!==v.Entity)return n;var c=(0,e.createContext)(null);return t.set(r,{value:c,times:1}),c},unregisterUseCase:function(e,n){if((n&v.Entity)!==v.Entity)return!1;if(!t.has(e))return!1;var r=t.get(e),o=r.value,u=r.times;return 1===u?t.delete(e):t.set(e,{value:o,times:u-1}),!0}}}})),p=function(){return s((function(){return b()}))};function E(t){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},E(t)}function m(t){var e=function(t,e){if("object"!=E(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!=E(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==E(e)?e:String(e)}var h=["watch","onChange","options"];function g(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function O(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?g(Object(n),!0).forEach((function(e){var r,o,u;r=t,o=e,u=n[e],(o=m(o))in r?Object.defineProperty(r,o,{value:u,enumerable:!0,configurable:!0,writable:!0}):r[o]=u})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var w=function(t,e){var n=t.length;if(n!==e.length)return!1;for(var r=0;r<n;r++)if(t[r]!==e[r])return!1;return!0},j=function(t,e){var n,r=e||{},o=r.onShouldCache,u=void 0===o?function(){return!0}:o,a=r.onCompare,i=void 0===a?function(t,e){return w(t,e)}:a;return function(){for(var e=u(),r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];if(n&&e){var c=n,f=c.parameters,l=c.returnValue;if(i(f,o))return l}var s=t.apply(void 0,o);return e&&(n={parameters:o,returnValue:s}),s}},S=function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,o=(0,f.useLatest)(n),u=(0,f.useCreation)((function(){return j(o.current,{onCompare:function(){return!0}})}),[r,o]);return(0,f.useCreation)((function(){return(e&d.RootEnabled)!==d.RootEnabled&&t?t:u()}),[e,t,u])},C=function(t,e){return"object"===E(t)&&null!==t&&Object.hasOwn(t,e)},R=function t(e,n,r,o){var u=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],a=void 0,f=c(r.match(/^([^.]+)\.(.+)$/)||[],3),l=f[1],s=void 0===l?r:l,y=f[2],v=void 0===y?"":y,d=C(e,s),b=C(n,s),p=[].concat(i(u),[s]);if(d||b){var E=d?e[s]:a,m=b?n[s]:a;if(v)return void t(E,m,v,o,p);if(E===m)return;o(E,m,p)}else if(!/^\d+^/.test(s))for(var h=Array.isArray(e)?e:[],g=Array.isArray(n)?n:[],O=h.length,w=g.length,j=Math.max(O,w),S=0;S<j;S++)t(h[S],g[S],r,o,[].concat(i(u),["".concat(S)]))},P=function(t,e,n){for(var r=function(){var t=c(u[o],2),r=t[0],a=t[1];R(n,e,r,(function(t,r,o){a({fieldPaths:o,newEntity:e,oldEntity:n,newValue:r,oldValue:t})}))},o=0,u=Object.entries(t);o<u.length;o++)r()},_=function(){for(var t,n=((t=(0,e.useRef)(!0)).current=!0,(0,e.useEffect)((function(){t.current=!1})),t),r=arguments.length,u=new Array(r),a=0;a<r;a++)u[a]=arguments[a];var b=function(t){return s((function(){var e=v.None;return"function"===E(c(t,2)[1])&&(e|=v.Entity),e}))}(u),m=function(t,e){var n=c(t,4),r=n[0],o=n[1],u=n[2],a=n[3];return(e&v.Entity)!==v.Entity?[null,r,o||{},u||[]]:[r,o,u||{},a||[]]}(u,b),g=c(m,4),C=g[0],R=g[1],_=g[2],x=g[3],A=l(R),U=A,M=A,N=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:v.None,n=p(),r=n.registerUseCase,o=n.unregisterUseCase,u=s((function(){return r(t,e)}));return(0,f.useUnmount)((function(){o(t,e)})),u}(A,b),I=(0,e.useContext)(N),k=I,T=function(t,e){return(0,f.useCreation)((function(){var n=d.None,r=(e||{}).store;return(t&v.Entity)===v.Entity&&(n|=d.EntityRootEnabled),n|=e?d.ContextEnabled:d.RootEnabled,r&&(n|=d.EntityEnabled),n}),[t,e])}(b,I),L=(0,f.useLatest)(_),D=function(t){var n=(0,e.useRef)(0),r=(0,e.useRef)([]),o=r.current,u=w(t,o);return r.current=t,n.current+=u?0:1,n.current}(x),V=(I||{}).reducers,F=void 0===V?null:V,$=(k||{}).store,z=c(function(t,n,r,o){var u=(0,f.useUpdate)(),a=(0,f.useLatest)(o),i=r?r.value:null,c=(t&d.EntityEnabled)===d.EntityEnabled,l=(t&d.EntityRootEnabled)===d.EntityRootEnabled,s=S(r,t,(function(){if(!l)return new y.EntityStore(null);var t="function"==typeof n;return new y.EntityStore(t?n():n)})),v=function(t,n,r,o){var u=(0,e.useRef)(n);if((o&d.EntityRootEnabled)!==d.EntityRootEnabled)return r;var a="function"==typeof n,i=u.current;switch(!0){case a:case i===n:return t.value}return u.current=n,n}(s,n,i,t),b=(0,f.useMemoizedFn)((function(t,e){var n=a.current,r=n.onChange,o=n.watch;o&&P(o,t,e),null==r||r(t,e),l&&u()}));return l&&(s.value=v),(0,e.useEffect)((function(){if(c)return s.watch(b),function(){s.unwatch(b)}}),[c,s,b]),(0,f.useCreation)((function(){return[v,s]}),[v,s])}(T,C,void 0===$?null:$,_),2),B=z[0],G=z[1],W=S(F,T,(function(){var t,e,n,r=(t=_,e=function(t,e){var n,r;return null===(n=(r=L.current)[t])||void 0===n?void 0:n.call.apply(n,[r].concat(i(e)))},n={},Object.keys(t).forEach((function(r){var o=t[r];n[r]="function"!=typeof o?o:function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return e(r,n)}})),n);return(T&d.EntityEnabled)!==d.EntityEnabled?U(r):function(t,e,n){n.watch,n.onChange;var r=n.options,o=function(t,e){if(null==t)return{};var n,r,o=function(t,e){if(null==t)return{};var n,r,o={},u=Object.keys(t);for(r=0;r<u.length;r++)n=u[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(t);for(r=0;r<u.length;r++)n=u[r],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}(n,h);return(0,y.createEntityReducers)(e,t,O(O(O({},o),r),{},{onGenerate:function(t,e){return e}}))}(M,G,r)}),D),Y=function(t,n,r,u){var a=r.value,i=p().createContextValue,c=(0,e.useMemo)((function(){return i(r,u,t)}),[t,a,r,u,i]),s=(0,f.useLatest)(c);return l((function(t){var e=t.children,r=t.with,u=void 0===r?[]:r,a=n.Provider,i=s.current;return o().createElement(a,{value:i},u.reduceRight((function(t,e){return o().createElement(e,{},t)}),e))}))}(T,N,G,W);return(0,f.useCreation)((function(){if((T&d.EntityEnabled)!==d.EntityEnabled)return W;var t=(T&d.RootEnabled)===d.RootEnabled,e=function(t,e){var n={};return Object.entries(t).forEach((function(t){var r=c(t,2),o=r[0],u=r[1];n[o]=j(u,e)})),n}(W,{onShouldCache:function(){return n.current}});return t?[B,e,Y]:[B,e]}),[T,B,W,Y,n])},x=function(n){var r=n.usecase,o=n.watch,u=n.onChange;return _(r,{watch:o,onChange:u}),(0,t.jsx)(e.Fragment,{})}})();var o=usecases="undefined"==typeof usecases?{}:usecases;for(var u in r)o[u]=r[u];r.__esModule&&Object.defineProperty(o,"__esModule",{value:!0})})();
2
+ (()=>{var t={20:(t,e,n)=>{"use strict";var r=n(594),o=Symbol.for("react.element"),u=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};e.jsx=function(t,e,n){var r,c={},l=null,f=null;for(r in void 0!==n&&(l=""+n),void 0!==e.key&&(l=""+e.key),void 0!==e.ref&&(f=e.ref),e)u.call(e,r)&&!i.hasOwnProperty(r)&&(c[r]=e[r]);if(t&&t.defaultProps)for(r in e=t.defaultProps)void 0===c[r]&&(c[r]=e[r]);return{$$typeof:o,type:t,key:l,ref:f,props:c,_owner:a.current}}},848:(t,e,n)=>{"use strict";t.exports=n(20)},594:t=>{"use strict";t.exports=React}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var u=e[r]={exports:{}};return t[r](u,u.exports,n),u.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var r={};(()=>{"use strict";n.r(r),n.d(r,{UseCaseFragment:()=>x,useUseCase:()=>_});var t=n(848),e=n(594),o=n.n(e);function u(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function a(t,e){if(t){if("string"==typeof t)return u(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(t,e):void 0}}function i(t){return function(t){if(Array.isArray(t))return u(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||a(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,u,a,i=[],c=!0,l=!1;try{if(u=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=u.call(n)).done)&&(i.push(r.value),i.length!==e);c=!0);}catch(t){l=!0,o=t}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(l)throw o}}return i}}(t,e)||a(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}const l=ahooks;var f=function(t){return c((0,e.useState)((function(){return t})),1)[0]},s=function(t){return c((0,e.useState)(t),1)[0]};const y=usecases;var v,d;!function(t){t[t.None=0]="None",t[t.Entity=2]="Entity"}(v||(v={})),function(t){t[t.None=0]="None",t[t.RootEnabled=2]="RootEnabled",t[t.ContextEnabled=4]="ContextEnabled",t[t.EntityEnabled=8]="EntityEnabled",t[t.ContextRootEnabled=6]="ContextRootEnabled",t[t.EntityRootEnabled=14]="EntityRootEnabled"}(d||(d={}));var b=(0,y.createUseCase)((function(){var t=new Map,n=(0,e.createContext)(null);return function(){return{createContextValue:function(t,e,n){return(n&d.EntityEnabled)===d.EntityEnabled?{store:t,reducers:e,statuses:n}:{reducers:e,statuses:n}},registerUseCase:function(r,o){if(t.has(r)){var u=t.get(r),a=u.value,i=u.times;return t.set(r,{value:a,times:i+1}),a}if((o&v.Entity)!==v.Entity)return n;var c=(0,e.createContext)(null);return t.set(r,{value:c,times:1}),c},unregisterUseCase:function(e,n){if((n&v.Entity)!==v.Entity)return!1;if(!t.has(e))return!1;var r=t.get(e),o=r.value,u=r.times;return 1===u?t.delete(e):t.set(e,{value:o,times:u-1}),!0}}}})),p=function(){return s((function(){return b()}))};function E(t){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},E(t)}function m(t){var e=function(t,e){if("object"!=E(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!=E(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==E(e)?e:String(e)}var h=["watch","onChange","options"];function g(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function O(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?g(Object(n),!0).forEach((function(e){var r,o,u;r=t,o=e,u=n[e],(o=m(o))in r?Object.defineProperty(r,o,{value:u,enumerable:!0,configurable:!0,writable:!0}):r[o]=u})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var w=function(t,e){var n=t.length;if(n!==e.length)return!1;for(var r=0;r<n;r++)if(t[r]!==e[r])return!1;return!0},j=function(t,e){var n,r=e||{},o=r.onShouldCache,u=void 0===o?function(){return!0}:o,a=r.onCompare,i=void 0===a?function(t,e){return w(t,e)}:a;return function(){for(var e=u(),r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];if(n&&e){var c=n,l=c.parameters,f=c.returnValue;if(i(l,o))return f}var s=t.apply(void 0,o);return e&&(n={parameters:o,returnValue:s}),s}},S=function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,o=(0,l.useLatest)(n),u=(0,l.useCreation)((function(){return j(o.current,{onCompare:function(){return!0}})}),[r,o]);return(0,l.useCreation)((function(){return(e&d.RootEnabled)!==d.RootEnabled&&t?t:u()}),[e,t,u])},C=function(t,e){return"object"===E(t)&&null!==t&&Object.hasOwn(t,e)},R=function t(e,n,r,o){var u=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],a=void 0,l=c(r.match(/^([^.]+)\.(.+)$/)||[],3),f=l[1],s=void 0===f?r:f,y=l[2],v=void 0===y?"":y,d=C(e,s),b=C(n,s),p=[].concat(i(u),[s]);if(d||b){var E=d?e[s]:a,m=b?n[s]:a;if(v)return void t(E,m,v,o,p);if(E===m)return;o(E,m,p)}else if(!/^\d+^/.test(s))for(var h=Array.isArray(e)?e:[],g=Array.isArray(n)?n:[],O=h.length,w=g.length,j=Math.max(O,w),S=0;S<j;S++)t(h[S],g[S],r,o,[].concat(i(u),["".concat(S)]))},P=function(t,e,n){for(var r=function(){var t=c(u[o],2),r=t[0],a=t[1];R(n,e,r,(function(t,r,o){a({fieldPaths:o,newEntity:e,oldEntity:n,newValue:r,oldValue:t})}))},o=0,u=Object.entries(t);o<u.length;o++)r()},_=function(){for(var t,n=((t=(0,e.useRef)(!0)).current=!0,(0,e.useEffect)((function(){t.current=!1})),t),r=arguments.length,u=new Array(r),a=0;a<r;a++)u[a]=arguments[a];var b=function(t){return s((function(){var e=v.None;return"function"===E(c(t,2)[1])&&(e|=v.Entity),e}))}(u),m=function(t,e){var n=c(t,4),r=n[0],o=n[1],u=n[2],a=n[3];return(e&v.Entity)!==v.Entity?[null,r,o||{},u||[]]:[r,o,u||{},a||[]]}(u,b),g=c(m,4),C=g[0],R=g[1],_=g[2],x=g[3],A=f(R),U=A,M=A,N=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:v.None,n=p(),r=n.registerUseCase,o=n.unregisterUseCase,u=s((function(){return r(t,e)}));return(0,l.useUnmount)((function(){o(t,e)})),u}(A,b),I=(0,e.useContext)(N),k=I,T=function(t,e){return(0,l.useCreation)((function(){var n=d.None,r=(e||{}).store;return(t&v.Entity)===v.Entity&&(n|=d.EntityRootEnabled),n|=e?d.ContextEnabled:d.RootEnabled,r&&(n|=d.EntityEnabled),n}),[t,e])}(b,I),L=(0,l.useLatest)(_),D=function(t){var n=(0,e.useRef)(0),r=(0,e.useRef)([]),o=r.current,u=w(t,o);return r.current=t,n.current+=u?0:1,n.current}(x),V=(I||{}).reducers,F=void 0===V?null:V,$=(k||{}).store,z=c(function(t,n,r,o,u){var a=(0,l.useUpdate)(),i=(0,e.useRef)(),c=(0,l.useLatest)(o),f=r?r.value:null,s=(t&d.EntityEnabled)===d.EntityEnabled,v=(t&d.EntityRootEnabled)===d.EntityRootEnabled,b=S(r,t,(function(){var t;if(v){var e,r="function"==typeof n?n(null===(e=i.current)||void 0===e?void 0:e.value):n;t=new y.EntityStore(r)}else t=new y.EntityStore(null);return i.current=t,t}),u),p=function(t,n,r,o){var u=(0,e.useRef)(n);if((o&d.EntityRootEnabled)!==d.EntityRootEnabled)return r;var a="function"==typeof n,i=u.current;switch(!0){case a:case i===n:return t.value}return u.current=n,n}(b,n,f,t),E=(0,l.useMemoizedFn)((function(t,e){var n=c.current,r=n.onChange,o=n.watch;o&&P(o,t,e),null==r||r(t,e),v&&a()}));return v&&(b.value=p),(0,l.useCreation)((function(){s&&b.watch(E)}),[s,b,E]),(0,e.useEffect)((function(){return function(){b.unwatch(E)}}),[s,b,E]),(0,l.useCreation)((function(){return[p,b]}),[p,b])}(T,C,void 0===$?null:$,_,D),2),B=z[0],G=z[1],W=S(F,T,(function(){var t,e,n,r=(t=_,e=function(t,e){var n,r;return null===(n=(r=L.current)[t])||void 0===n?void 0:n.call.apply(n,[r].concat(i(e)))},n={},Object.keys(t).forEach((function(r){var o=t[r];n[r]="function"!=typeof o?o:function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return e(r,n)}})),n);return(T&d.EntityEnabled)!==d.EntityEnabled?U(r):function(t,e,n){n.watch,n.onChange;var r=n.options,o=function(t,e){if(null==t)return{};var n,r,o=function(t,e){if(null==t)return{};var n,r,o={},u=Object.keys(t);for(r=0;r<u.length;r++)n=u[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(t);for(r=0;r<u.length;r++)n=u[r],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}(n,h);return(0,y.createEntityReducers)(e,t,O(O(O({},o),r),{},{onGenerate:function(t,e){return e}}))}(M,G,r)}),D),Y=function(t,n,r,u){var a=r.value,i=p().createContextValue,c=(0,e.useMemo)((function(){return i(r,u,t)}),[t,a,r,u,i]),s=(0,l.useLatest)(c);return f((function(t){var e=t.children,r=t.with,u=void 0===r?[]:r,a=n.Provider,i=s.current;return o().createElement(a,{value:i},u.reduceRight((function(t,e){return o().createElement(e,{},t)}),e))}))}(T,N,G,W);return(0,l.useCreation)((function(){if((T&d.EntityEnabled)!==d.EntityEnabled)return W;var t=(T&d.RootEnabled)===d.RootEnabled,e=function(t,e){var n={};return Object.entries(t).forEach((function(t){var r=c(t,2),o=r[0],u=r[1];n[o]=j(u,e)})),n}(W,{onShouldCache:function(){return n.current}});return t?[B,e,Y]:[B,e]}),[T,B,W,Y,n])},x=function(n){var r=n.usecase,o=n.watch,u=n.onChange;return _(r,{watch:o,onChange:u}),(0,t.jsx)(e.Fragment,{})}})();var o=usecases="undefined"==typeof usecases?{}:usecases;for(var u in r)o[u]=r[u];r.__esModule&&Object.defineProperty(o,"__esModule",{value:!0})})();
@@ -1,4 +1,4 @@
1
1
  import { EntityStore } from '@mic-rexjs/usecases';
2
2
  import { Statuses } from '../../enums/Statuses';
3
3
  import { EntityGetter, UseCaseHookOptions } from '../useUseCase/types';
4
- export declare const useEntity: <T, TUseCaseOptions extends object, TOptions extends UseCaseHookOptions<T, TUseCaseOptions> = UseCaseHookOptions<T, TUseCaseOptions>>(statuses: Statuses, entityArg: T | EntityGetter<T>, contextStore: EntityStore<T> | null, options: TOptions) => [entity: T, store: EntityStore<T>];
4
+ export declare const useEntity: <T, TUseCaseOptions extends object, TOptions extends UseCaseHookOptions<T, TUseCaseOptions> = UseCaseHookOptions<T, TUseCaseOptions>>(statuses: Statuses, entityArg: T | EntityGetter<T>, contextStore: EntityStore<T> | null, options: TOptions, depsKey: number) => [entity: T, store: EntityStore<T>];
@@ -1,23 +1,30 @@
1
- import { useEffect } from 'react';
1
+ import { useEffect, useRef } from 'react';
2
2
  import { EntityStore } from '@mic-rexjs/usecases';
3
3
  import { Statuses } from '../../enums/Statuses';
4
4
  import { useContextualItem } from '../useContextualItem';
5
5
  import { useCreation, useLatest, useMemoizedFn, useUpdate } from 'ahooks';
6
6
  import { triggerWatchers } from '../../methods/triggerWatchers';
7
7
  import { useRuntimeEntity } from '../useRuntimeEntity';
8
- export const useEntity = (statuses, entityArg, contextStore, options) => {
8
+ export const useEntity = (statuses, entityArg, contextStore, options, depsKey) => {
9
9
  const update = useUpdate();
10
+ const storeRef = useRef();
10
11
  const optionsRef = useLatest(options);
11
12
  const contextEntity = (contextStore ? contextStore.value : null);
12
13
  const entityEnabled = (statuses & Statuses.EntityEnabled) === Statuses.EntityEnabled;
13
14
  const entityRootEnabled = (statuses & Statuses.EntityRootEnabled) === Statuses.EntityRootEnabled;
14
15
  const store = useContextualItem(contextStore, statuses, () => {
15
- if (!entityRootEnabled) {
16
- return new EntityStore(null);
16
+ let newStore;
17
+ if (entityRootEnabled) {
18
+ const isFunction = typeof entityArg === 'function';
19
+ const initailEntity = isFunction ? entityArg(storeRef.current?.value) : entityArg;
20
+ newStore = new EntityStore(initailEntity);
17
21
  }
18
- const isFunction = typeof entityArg === 'function';
19
- return new EntityStore(isFunction ? entityArg() : entityArg);
20
- });
22
+ else {
23
+ newStore = new EntityStore(null);
24
+ }
25
+ storeRef.current = newStore;
26
+ return newStore;
27
+ }, depsKey);
21
28
  const runtimeEntity = useRuntimeEntity(store, entityArg, contextEntity, statuses);
22
29
  const onEntityChange = useMemoizedFn((newEntity, oldEntity) => {
23
30
  const { onChange, watch } = optionsRef.current;
@@ -34,11 +41,20 @@ export const useEntity = (statuses, entityArg, contextStore, options) => {
34
41
  // 执行同步操作
35
42
  store.value = runtimeEntity;
36
43
  }
37
- useEffect(() => {
44
+ /**
45
+ * 需要马上 `watch`,因为 `useEffect` 在子组件内优先执行,
46
+ * 如果使用了 `setEntity` 则无法监控到变化
47
+ */
48
+ useCreation(() => {
38
49
  if (!entityEnabled) {
39
50
  return;
40
51
  }
41
52
  store.watch(onEntityChange);
53
+ }, [entityEnabled, store, onEntityChange]);
54
+ /**
55
+ * 在变化时候,组件更新前,使用 `unwatch`
56
+ */
57
+ useEffect(() => {
42
58
  return () => {
43
59
  store.unwatch(onEntityChange);
44
60
  };
@@ -30,7 +30,7 @@ export const useUseCase = ((...args) => {
30
30
  const depsKey = useCompareDeps(deps);
31
31
  const { reducers: contextReducers = null } = contextValue || {};
32
32
  const { store: contextStore = null } = entityContextValue || {};
33
- const [entity, store] = useEntity(statuses, unsafeEntity, contextStore, options);
33
+ const [entity, store] = useEntity(statuses, unsafeEntity, contextStore, options, depsKey);
34
34
  const reducers = useContextualItem(contextReducers, statuses, () => {
35
35
  const opts = captureCalls(options, (key, callArgs) => {
36
36
  return optionsRef.current[key]?.(...callArgs);
@@ -179,6 +179,41 @@ describe('useUseCase', () => {
179
179
  });
180
180
  expect(result.current[0]).toEqual({ ...defaultFile, path: PATH_2 });
181
181
  });
182
+ test('Should support entity getter', () => {
183
+ const file = defaultFile;
184
+ const { result } = renderHook(() => {
185
+ return useUseCase(() => {
186
+ return file;
187
+ }, fileUseCase);
188
+ });
189
+ const { current: [currentFile], } = result;
190
+ expect(currentFile).toEqual(file);
191
+ });
192
+ test('Entity getter should provide the first argument with current entity when deps has change.', () => {
193
+ let entityArg;
194
+ const file = defaultFile;
195
+ const { result } = renderHook(() => {
196
+ return useUseCase((entity = file) => {
197
+ const { path } = entity;
198
+ entityArg = entity;
199
+ return {
200
+ ...entity,
201
+ path: path + '1',
202
+ };
203
+ }, fileUseCase, {}, [Date.now()]);
204
+ });
205
+ const { current: collection1 } = result;
206
+ const [currentFile1, { setPath }] = collection1;
207
+ expect(entityArg).toEqual(defaultFile);
208
+ expect(currentFile1).toEqual({ ...defaultFile, path: '1' });
209
+ act(() => {
210
+ setPath('2');
211
+ });
212
+ const { current: collection2 } = result;
213
+ const [currentFile2] = collection2;
214
+ expect(entityArg).toEqual({ ...defaultFile, path: '2' });
215
+ expect(currentFile2).toEqual({ ...defaultFile, path: '21' });
216
+ });
182
217
  test('`reducers` should be returned as an object', () => {
183
218
  const { result } = renderHook(() => {
184
219
  return useUseCase(defaultFile, fileUseCase);
@@ -1282,8 +1317,8 @@ describe('useUseCase', () => {
1282
1317
  expect(changeTimes).toBe(0);
1283
1318
  fireEvent.click(screen.getByText(buttonText));
1284
1319
  expect(onChangeA).toHaveReturnedWith(2);
1285
- expect(onChangeB).toHaveReturnedWith(1);
1286
- expect(onChangeC).toHaveReturnedWith(3);
1320
+ expect(onChangeB).toHaveReturnedWith(3);
1321
+ expect(onChangeC).toHaveReturnedWith(1);
1287
1322
  });
1288
1323
  test('`options.onChange` should always trigger the latest one in child components', () => {
1289
1324
  const onFirstChange = jest.fn();
@@ -1389,8 +1424,8 @@ describe('useUseCase', () => {
1389
1424
  expect(changeTimes).toBe(0);
1390
1425
  fireEvent.click(screen.getByText(buttonText));
1391
1426
  expect(onChangeA).toHaveReturnedWith(2);
1392
- expect(onChangeB).toHaveReturnedWith(1);
1393
- expect(onChangeC).toHaveReturnedWith(3);
1427
+ expect(onChangeB).toHaveReturnedWith(3);
1428
+ expect(onChangeC).toHaveReturnedWith(1);
1394
1429
  });
1395
1430
  test('`options.watch` should trigger the latest one in child components', () => {
1396
1431
  const onFirstExtChange = jest.fn();
@@ -16,7 +16,7 @@ export type ContextualCoreCollection<T, TEntityReducers extends EntityReducerMap
16
16
  ];
17
17
  export type CoreCollection<T, TEntityReducers extends EntityReducerMap<T>> = RootCoreCollection<T, TEntityReducers> | ContextualCoreCollection<T, TEntityReducers>;
18
18
  export interface EntityGetter<T> {
19
- (): T;
19
+ (entity?: T): T;
20
20
  }
21
21
  export interface EntityWatchEvent<T, TValue = unknown> {
22
22
  fieldPaths: string[];
@@ -11,19 +11,26 @@ var _useContextualItem = require("../useContextualItem");
11
11
  var _ahooks = require("ahooks");
12
12
  var _triggerWatchers = require("../../methods/triggerWatchers");
13
13
  var _useRuntimeEntity = require("../useRuntimeEntity");
14
- var useEntity = exports.useEntity = function useEntity(statuses, entityArg, contextStore, options) {
14
+ var useEntity = exports.useEntity = function useEntity(statuses, entityArg, contextStore, options, depsKey) {
15
15
  var update = (0, _ahooks.useUpdate)();
16
+ var storeRef = (0, _react.useRef)();
16
17
  var optionsRef = (0, _ahooks.useLatest)(options);
17
18
  var contextEntity = contextStore ? contextStore.value : null;
18
19
  var entityEnabled = (statuses & _Statuses.Statuses.EntityEnabled) === _Statuses.Statuses.EntityEnabled;
19
20
  var entityRootEnabled = (statuses & _Statuses.Statuses.EntityRootEnabled) === _Statuses.Statuses.EntityRootEnabled;
20
21
  var store = (0, _useContextualItem.useContextualItem)(contextStore, statuses, function () {
21
- if (!entityRootEnabled) {
22
- return new _usecases.EntityStore(null);
22
+ var newStore;
23
+ if (entityRootEnabled) {
24
+ var _storeRef$current;
25
+ var isFunction = typeof entityArg === 'function';
26
+ var initailEntity = isFunction ? entityArg((_storeRef$current = storeRef.current) === null || _storeRef$current === void 0 ? void 0 : _storeRef$current.value) : entityArg;
27
+ newStore = new _usecases.EntityStore(initailEntity);
28
+ } else {
29
+ newStore = new _usecases.EntityStore(null);
23
30
  }
24
- var isFunction = typeof entityArg === 'function';
25
- return new _usecases.EntityStore(isFunction ? entityArg() : entityArg);
26
- });
31
+ storeRef.current = newStore;
32
+ return newStore;
33
+ }, depsKey);
27
34
  var runtimeEntity = (0, _useRuntimeEntity.useRuntimeEntity)(store, entityArg, contextEntity, statuses);
28
35
  var onEntityChange = (0, _ahooks.useMemoizedFn)(function (newEntity, oldEntity) {
29
36
  var _optionsRef$current = optionsRef.current,
@@ -42,11 +49,20 @@ var useEntity = exports.useEntity = function useEntity(statuses, entityArg, cont
42
49
  // 执行同步操作
43
50
  store.value = runtimeEntity;
44
51
  }
45
- (0, _react.useEffect)(function () {
52
+ /**
53
+ * 需要马上 `watch`,因为 `useEffect` 在子组件内优先执行,
54
+ * 如果使用了 `setEntity` 则无法监控到变化
55
+ */
56
+ (0, _ahooks.useCreation)(function () {
46
57
  if (!entityEnabled) {
47
58
  return;
48
59
  }
49
60
  store.watch(onEntityChange);
61
+ }, [entityEnabled, store, onEntityChange]);
62
+ /**
63
+ * 在变化时候,组件更新前,使用 `unwatch`
64
+ */
65
+ (0, _react.useEffect)(function () {
50
66
  return function () {
51
67
  store.unwatch(onEntityChange);
52
68
  };
@@ -50,7 +50,7 @@ var useUseCase = exports.useUseCase = function useUseCase() {
50
50
  var _ref2 = entityContextValue || {},
51
51
  _ref2$store = _ref2.store,
52
52
  contextStore = _ref2$store === void 0 ? null : _ref2$store;
53
- var _useEntity = (0, _useEntity3.useEntity)(statuses, unsafeEntity, contextStore, options),
53
+ var _useEntity = (0, _useEntity3.useEntity)(statuses, unsafeEntity, contextStore, options, depsKey),
54
54
  _useEntity2 = (0, _slicedToArray2["default"])(_useEntity, 2),
55
55
  entity = _useEntity2[0],
56
56
  store = _useEntity2[1];
@@ -322,21 +322,68 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
322
322
  path: PATH_2
323
323
  }));
324
324
  });
325
- (0, _globals.test)('`reducers` should be returned as an object', function () {
325
+ (0, _globals.test)('Should support entity getter', function () {
326
+ var file = defaultFile;
326
327
  var _renderHook6 = (0, _react.renderHook)(function () {
327
- return (0, _.useUseCase)(defaultFile, fileUseCase);
328
+ return (0, _.useUseCase)(function () {
329
+ return file;
330
+ }, fileUseCase);
328
331
  }),
329
332
  result = _renderHook6.result;
333
+ var _result$current = (0, _slicedToArray2["default"])(result.current, 1),
334
+ currentFile = _result$current[0];
335
+ (0, _globals.expect)(currentFile).toEqual(file);
336
+ });
337
+ (0, _globals.test)('Entity getter should provide the first argument with current entity when deps has change.', function () {
338
+ var entityArg;
339
+ var file = defaultFile;
340
+ var _renderHook7 = (0, _react.renderHook)(function () {
341
+ return (0, _.useUseCase)(function () {
342
+ var entity = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : file;
343
+ var path = entity.path;
344
+ entityArg = entity;
345
+ return _objectSpread(_objectSpread({}, entity), {}, {
346
+ path: path + '1'
347
+ });
348
+ }, fileUseCase, {}, [Date.now()]);
349
+ }),
350
+ result = _renderHook7.result;
351
+ var collection1 = result.current;
352
+ var _collection3 = (0, _slicedToArray2["default"])(collection1, 2),
353
+ currentFile1 = _collection3[0],
354
+ setPath = _collection3[1].setPath;
355
+ (0, _globals.expect)(entityArg).toEqual(defaultFile);
356
+ (0, _globals.expect)(currentFile1).toEqual(_objectSpread(_objectSpread({}, defaultFile), {}, {
357
+ path: '1'
358
+ }));
359
+ (0, _react.act)(function () {
360
+ setPath('2');
361
+ });
362
+ var collection2 = result.current;
363
+ var _collection4 = (0, _slicedToArray2["default"])(collection2, 1),
364
+ currentFile2 = _collection4[0];
365
+ (0, _globals.expect)(entityArg).toEqual(_objectSpread(_objectSpread({}, defaultFile), {}, {
366
+ path: '2'
367
+ }));
368
+ (0, _globals.expect)(currentFile2).toEqual(_objectSpread(_objectSpread({}, defaultFile), {}, {
369
+ path: '21'
370
+ }));
371
+ });
372
+ (0, _globals.test)('`reducers` should be returned as an object', function () {
373
+ var _renderHook8 = (0, _react.renderHook)(function () {
374
+ return (0, _.useUseCase)(defaultFile, fileUseCase);
375
+ }),
376
+ result = _renderHook8.result;
330
377
  var cores = result.current;
331
378
  var _cores2 = (0, _slicedToArray2["default"])(cores, 2),
332
379
  reducers = _cores2[1];
333
380
  (0, _globals.expect)((0, _typeof2["default"])(reducers)).toBe('object');
334
381
  });
335
382
  (0, _globals.test)('`Provider` should be returned as a function', function () {
336
- var _renderHook7 = (0, _react.renderHook)(function () {
383
+ var _renderHook9 = (0, _react.renderHook)(function () {
337
384
  return (0, _.useUseCase)(defaultFile, fileUseCase);
338
385
  }),
339
- result = _renderHook7.result;
386
+ result = _renderHook9.result;
340
387
  var cores = result.current;
341
388
  var _cores3 = (0, _slicedToArray2["default"])(cores, 3),
342
389
  Provider = _cores3[2];
@@ -344,11 +391,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
344
391
  });
345
392
  (0, _globals.test)('`usecase` should be called only once if deps has not provided', function () {
346
393
  var mockUseCase = _globals.jest.fn(fileUseCase);
347
- var _renderHook8 = (0, _react.renderHook)(function () {
394
+ var _renderHook10 = (0, _react.renderHook)(function () {
348
395
  return (0, _.useUseCase)(defaultFile, mockUseCase);
349
396
  }),
350
- result = _renderHook8.result,
351
- rerender = _renderHook8.rerender;
397
+ result = _renderHook10.result,
398
+ rerender = _renderHook10.rerender;
352
399
  var cores = result.current;
353
400
  var _cores4 = (0, _slicedToArray2["default"])(cores, 2),
354
401
  setEntity = _cores4[1].setEntity;
@@ -361,11 +408,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
361
408
  });
362
409
  (0, _globals.test)('`usecase` should be called only once if deps has not changed', function () {
363
410
  var mockUseCase = _globals.jest.fn(fileUseCase);
364
- var _renderHook9 = (0, _react.renderHook)(function () {
411
+ var _renderHook11 = (0, _react.renderHook)(function () {
365
412
  return (0, _.useUseCase)(defaultFile, mockUseCase, {}, [1, 'x']);
366
413
  }),
367
- result = _renderHook9.result,
368
- rerender = _renderHook9.rerender;
414
+ result = _renderHook11.result,
415
+ rerender = _renderHook11.rerender;
369
416
  var cores = result.current;
370
417
  var _cores5 = (0, _slicedToArray2["default"])(cores, 2),
371
418
  setEntity = _cores5[1].setEntity;
@@ -379,11 +426,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
379
426
  (0, _globals.test)('`usecase` should be called if deps has changed', function () {
380
427
  var i = 0;
381
428
  var mockUseCase = _globals.jest.fn(fileUseCase);
382
- var _renderHook10 = (0, _react.renderHook)(function () {
429
+ var _renderHook12 = (0, _react.renderHook)(function () {
383
430
  return (0, _.useUseCase)(defaultFile, mockUseCase, {}, [i++, 'x']);
384
431
  }),
385
- result = _renderHook10.result,
386
- rerender = _renderHook10.rerender;
432
+ result = _renderHook12.result,
433
+ rerender = _renderHook12.rerender;
387
434
  var cores = result.current;
388
435
  var _cores6 = (0, _slicedToArray2["default"])(cores, 2),
389
436
  setEntity = _cores6[1].setEntity;
@@ -398,7 +445,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
398
445
  (0, _globals.test)('after call non-generator reducer, it should not trigger update', function () {
399
446
  var onUpdate = _globals.jest.fn();
400
447
  var onDeepUpdate = _globals.jest.fn();
401
- var _renderHook11 = (0, _react.renderHook)(function () {
448
+ var _renderHook13 = (0, _react.renderHook)(function () {
402
449
  var context = (0, _.useUseCase)(defaultFile, fileUseCase);
403
450
  var _context4 = (0, _slicedToArray2["default"])(context, 2),
404
451
  reducers = _context4[1];
@@ -418,7 +465,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
418
465
  update();
419
466
  };
420
467
  }),
421
- result = _renderHook11.result;
468
+ result = _renderHook13.result;
422
469
  (0, _react.act)(function () {
423
470
  result.current();
424
471
  });
@@ -432,13 +479,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
432
479
  });
433
480
  (0, _globals.test)('after `yield entity`, it should trigger update', function () {
434
481
  var onUpdate = _globals.jest.fn();
435
- var _renderHook12 = (0, _react.renderHook)(function () {
482
+ var _renderHook14 = (0, _react.renderHook)(function () {
436
483
  (0, _ahooks.useUpdateEffect)(function () {
437
484
  onUpdate();
438
485
  });
439
486
  return (0, _.useUseCase)(defaultFile, fileUseCase);
440
487
  }),
441
- result = _renderHook12.result;
488
+ result = _renderHook14.result;
442
489
  var cores = result.current;
443
490
  var _cores7 = (0, _slicedToArray2["default"])(cores, 2),
444
491
  entity = _cores7[0],
@@ -463,17 +510,17 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
463
510
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(1);
464
511
  });
465
512
  (0, _globals.test)('after `yield entity` on async mode, it should trigger update', /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
466
- var onUpdate, _renderHook13, result, cores, _cores8, entity, reducers, readFile, promise;
513
+ var onUpdate, _renderHook15, result, cores, _cores8, entity, reducers, readFile, promise;
467
514
  return _regenerator["default"].wrap(function _callee3$(_context5) {
468
515
  while (1) switch (_context5.prev = _context5.next) {
469
516
  case 0:
470
517
  onUpdate = _globals.jest.fn();
471
- _renderHook13 = (0, _react.renderHook)(function () {
518
+ _renderHook15 = (0, _react.renderHook)(function () {
472
519
  (0, _ahooks.useUpdateEffect)(function () {
473
520
  onUpdate();
474
521
  });
475
522
  return (0, _.useUseCase)(defaultFile, fileUseCase);
476
- }), result = _renderHook13.result;
523
+ }), result = _renderHook15.result;
477
524
  cores = result.current;
478
525
  _cores8 = (0, _slicedToArray2["default"])(cores, 2), entity = _cores8[0], reducers = _cores8[1];
479
526
  readFile = reducers.readFile;
@@ -501,13 +548,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
501
548
  })));
502
549
  (0, _globals.test)('after `yield entity` callbacks, it should trigger update', function () {
503
550
  var onUpdate = _globals.jest.fn();
504
- var _renderHook14 = (0, _react.renderHook)(function () {
551
+ var _renderHook16 = (0, _react.renderHook)(function () {
505
552
  (0, _ahooks.useUpdateEffect)(function () {
506
553
  onUpdate();
507
554
  });
508
555
  return (0, _.useUseCase)(defaultFile, fileUseCase);
509
556
  }),
510
- result = _renderHook14.result;
557
+ result = _renderHook16.result;
511
558
  var cores = result.current;
512
559
  var _cores9 = (0, _slicedToArray2["default"])(cores, 2),
513
560
  reducers = _cores9[1];
@@ -644,12 +691,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
644
691
  });
645
692
  (0, _globals.test)('`options.onChange` should be trigger when entity has changed', function () {
646
693
  var onChange = _globals.jest.fn();
647
- var _renderHook15 = (0, _react.renderHook)(function () {
694
+ var _renderHook17 = (0, _react.renderHook)(function () {
648
695
  return (0, _.useUseCase)(defaultFile, fileUseCase, {
649
696
  onChange: onChange
650
697
  });
651
698
  }),
652
- result = _renderHook15.result;
699
+ result = _renderHook17.result;
653
700
  var cores = result.current;
654
701
  var _cores10 = (0, _slicedToArray2["default"])(cores, 2),
655
702
  reducers = _cores10[1];
@@ -668,12 +715,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
668
715
  var onChange1 = _globals.jest.fn();
669
716
  var onChange2 = _globals.jest.fn();
670
717
  var onChange = onChange1;
671
- var _renderHook16 = (0, _react.renderHook)(function () {
718
+ var _renderHook18 = (0, _react.renderHook)(function () {
672
719
  return (0, _.useUseCase)(defaultFile, fileUseCase, {
673
720
  onChange: onChange
674
721
  }, []);
675
722
  }),
676
- result = _renderHook16.result;
723
+ result = _renderHook18.result;
677
724
  var cores = result.current;
678
725
  var _cores11 = (0, _slicedToArray2["default"])(cores, 2),
679
726
  reducers = _cores11[1];
@@ -703,7 +750,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
703
750
  }));
704
751
  });
705
752
  (0, _globals.test)('`options.options` should override rest options', function () {
706
- var _renderHook17 = (0, _react.renderHook)(function () {
753
+ var _renderHook19 = (0, _react.renderHook)(function () {
707
754
  return (0, _.useUseCase)(defaultFile, fileUseCase, {
708
755
  pathPrefix: 'xyz/',
709
756
  options: {
@@ -711,7 +758,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
711
758
  }
712
759
  });
713
760
  }),
714
- result = _renderHook17.result;
761
+ result = _renderHook19.result;
715
762
  var cores = result.current;
716
763
  var _cores12 = (0, _slicedToArray2["default"])(cores, 2),
717
764
  path = _cores12[0].path,
@@ -726,7 +773,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
726
773
  (0, _globals.test)('when `options` has changed, it should not trigger update', function () {
727
774
  var onUpdate = _globals.jest.fn();
728
775
  var onDeepUpdate = _globals.jest.fn();
729
- var _renderHook18 = (0, _react.renderHook)(function () {
776
+ var _renderHook20 = (0, _react.renderHook)(function () {
730
777
  var _useState = (0, _react2.useState)('user/'),
731
778
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
732
779
  pathPrefix = _useState2[0],
@@ -742,7 +789,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
742
789
  }, [context]);
743
790
  return setPathPrefix;
744
791
  }),
745
- result = _renderHook18.result;
792
+ result = _renderHook20.result;
746
793
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
747
794
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
748
795
  (0, _react.act)(function () {
@@ -754,7 +801,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
754
801
  (0, _globals.test)('when `deps` has changed, it should trigger update', function () {
755
802
  var onUpdate = _globals.jest.fn();
756
803
  var onDeepUpdate = _globals.jest.fn();
757
- var _renderHook19 = (0, _react.renderHook)(function () {
804
+ var _renderHook21 = (0, _react.renderHook)(function () {
758
805
  var _useState3 = (0, _react2.useState)('user/'),
759
806
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
760
807
  pathPrefix = _useState4[0],
@@ -770,7 +817,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
770
817
  }, [context]);
771
818
  return setPathPrefix;
772
819
  }),
773
- result = _renderHook19.result;
820
+ result = _renderHook21.result;
774
821
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
775
822
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
776
823
  (0, _react.act)(function () {
@@ -782,7 +829,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
782
829
  (0, _globals.test)('empty `deps` should not trigger update', function () {
783
830
  var onUpdate = _globals.jest.fn();
784
831
  var onDeepUpdate = _globals.jest.fn();
785
- var _renderHook20 = (0, _react.renderHook)(function () {
832
+ var _renderHook22 = (0, _react.renderHook)(function () {
786
833
  var _useState5 = (0, _react2.useState)('user/'),
787
834
  _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
788
835
  pathPrefix = _useState6[0],
@@ -798,7 +845,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
798
845
  }, [context]);
799
846
  return setPathPrefix;
800
847
  }),
801
- result = _renderHook20.result;
848
+ result = _renderHook22.result;
802
849
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
803
850
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
804
851
  (0, _react.act)(function () {
@@ -811,12 +858,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
811
858
  var onPathChange1 = _globals.jest.fn();
812
859
  var onPathChange2 = _globals.jest.fn();
813
860
  var onPathChange = onPathChange1;
814
- var _renderHook21 = (0, _react.renderHook)(function () {
861
+ var _renderHook23 = (0, _react.renderHook)(function () {
815
862
  return (0, _.useUseCase)(defaultFile, fileUseCase, {
816
863
  onPathChange: onPathChange
817
864
  });
818
865
  }),
819
- result = _renderHook21.result;
866
+ result = _renderHook23.result;
820
867
  var context = result.current;
821
868
  var _context6 = (0, _slicedToArray2["default"])(context, 2),
822
869
  setPath = _context6[1].setPath;
@@ -837,7 +884,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
837
884
  (0, _globals.test)('`options.watch` should be trigger after entity changed', function () {
838
885
  var onPathChange = _globals.jest.fn();
839
886
  var onSizeChange = _globals.jest.fn();
840
- var _renderHook22 = (0, _react.renderHook)(function () {
887
+ var _renderHook24 = (0, _react.renderHook)(function () {
841
888
  return (0, _.useUseCase)(defaultFile, fileUseCase, {
842
889
  watch: {
843
890
  path: onPathChange,
@@ -845,7 +892,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
845
892
  }
846
893
  });
847
894
  }),
848
- result = _renderHook22.result;
895
+ result = _renderHook24.result;
849
896
  var cores = result.current;
850
897
  var _cores13 = (0, _slicedToArray2["default"])(cores, 2),
851
898
  setPath = _cores13[1].setPath;
@@ -870,14 +917,14 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
870
917
  var onPathChange1 = _globals.jest.fn();
871
918
  var onPathChange2 = _globals.jest.fn();
872
919
  var onPathChange = onPathChange1;
873
- var _renderHook23 = (0, _react.renderHook)(function () {
920
+ var _renderHook25 = (0, _react.renderHook)(function () {
874
921
  return (0, _.useUseCase)(defaultFile, fileUseCase, {
875
922
  watch: {
876
923
  path: onPathChange
877
924
  }
878
925
  });
879
926
  }),
880
- result = _renderHook23.result;
927
+ result = _renderHook25.result;
881
928
  var cores = result.current;
882
929
  var _cores14 = (0, _slicedToArray2["default"])(cores, 2),
883
930
  _cores14$ = _cores14[1],
@@ -925,7 +972,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
925
972
  var initialData = {};
926
973
  var onExtChange = _globals.jest.fn();
927
974
  var onSizeChange = _globals.jest.fn();
928
- var _renderHook24 = (0, _react.renderHook)(function () {
975
+ var _renderHook26 = (0, _react.renderHook)(function () {
929
976
  return (0, _.useUseCase)(initialData, fieldPathUseCase, {
930
977
  watch: {
931
978
  'list.ext': onExtChange,
@@ -933,7 +980,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
933
980
  }
934
981
  });
935
982
  }),
936
- result = _renderHook24.result;
983
+ result = _renderHook26.result;
937
984
  var cores = result.current;
938
985
  var _cores15 = (0, _slicedToArray2["default"])(cores, 2),
939
986
  setEntity = _cores15[1].setEntity;
@@ -1221,7 +1268,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1221
1268
  var lengthUseCase = function lengthUseCase() {
1222
1269
  return (0, _usecases.entityUseCase)();
1223
1270
  };
1224
- var _renderHook25 = (0, _react.renderHook)(function () {
1271
+ var _renderHook27 = (0, _react.renderHook)(function () {
1225
1272
  return (0, _.useUseCase)([], lengthUseCase, {
1226
1273
  watch: {
1227
1274
  length: onEntityLengthChange,
@@ -1229,7 +1276,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1229
1276
  }
1230
1277
  });
1231
1278
  }),
1232
- result = _renderHook25.result;
1279
+ result = _renderHook27.result;
1233
1280
  var cores = result.current;
1234
1281
  var _cores16 = (0, _slicedToArray2["default"])(cores, 2),
1235
1282
  setEntity = _cores16[1].setEntity;
@@ -1264,14 +1311,14 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1264
1311
  (0, _globals.test)('`options.watch` should work with field path of nested array', function () {
1265
1312
  var initialData = {};
1266
1313
  var onChange = _globals.jest.fn();
1267
- var _renderHook26 = (0, _react.renderHook)(function () {
1314
+ var _renderHook28 = (0, _react.renderHook)(function () {
1268
1315
  return (0, _.useUseCase)(initialData, fieldPathUseCase, {
1269
1316
  watch: {
1270
1317
  'nestedList.size': onChange
1271
1318
  }
1272
1319
  });
1273
1320
  }),
1274
- result = _renderHook26.result;
1321
+ result = _renderHook28.result;
1275
1322
  var cores = result.current;
1276
1323
  var _cores17 = (0, _slicedToArray2["default"])(cores, 2),
1277
1324
  setEntity = _cores17[1].setEntity;
@@ -1359,7 +1406,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1359
1406
  var initialData = {};
1360
1407
  var onExtChange = _globals.jest.fn();
1361
1408
  var onSizeChange = _globals.jest.fn();
1362
- var _renderHook27 = (0, _react.renderHook)(function () {
1409
+ var _renderHook29 = (0, _react.renderHook)(function () {
1363
1410
  return (0, _.useUseCase)(initialData, fieldPathUseCase, {
1364
1411
  watch: {
1365
1412
  'obj.file.ext': onExtChange,
@@ -1367,7 +1414,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1367
1414
  }
1368
1415
  });
1369
1416
  }),
1370
- result = _renderHook27.result;
1417
+ result = _renderHook29.result;
1371
1418
  var cores = result.current;
1372
1419
  var _cores18 = (0, _slicedToArray2["default"])(cores, 2),
1373
1420
  setEntity = _cores18[1].setEntity;
@@ -1708,8 +1755,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1708
1755
  (0, _globals.expect)(changeTimes).toBe(0);
1709
1756
  _react.fireEvent.click(_react.screen.getByText(buttonText));
1710
1757
  (0, _globals.expect)(onChangeA).toHaveReturnedWith(2);
1711
- (0, _globals.expect)(onChangeB).toHaveReturnedWith(1);
1712
- (0, _globals.expect)(onChangeC).toHaveReturnedWith(3);
1758
+ (0, _globals.expect)(onChangeB).toHaveReturnedWith(3);
1759
+ (0, _globals.expect)(onChangeC).toHaveReturnedWith(1);
1713
1760
  });
1714
1761
  (0, _globals.test)('`options.onChange` should always trigger the latest one in child components', function () {
1715
1762
  var onFirstChange = _globals.jest.fn();
@@ -1857,8 +1904,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1857
1904
  (0, _globals.expect)(changeTimes).toBe(0);
1858
1905
  _react.fireEvent.click(_react.screen.getByText(buttonText));
1859
1906
  (0, _globals.expect)(onChangeA).toHaveReturnedWith(2);
1860
- (0, _globals.expect)(onChangeB).toHaveReturnedWith(1);
1861
- (0, _globals.expect)(onChangeC).toHaveReturnedWith(3);
1907
+ (0, _globals.expect)(onChangeB).toHaveReturnedWith(3);
1908
+ (0, _globals.expect)(onChangeC).toHaveReturnedWith(1);
1862
1909
  });
1863
1910
  (0, _globals.test)('`options.watch` should trigger the latest one in child components', function () {
1864
1911
  var onFirstExtChange = _globals.jest.fn();
@@ -1921,38 +1968,38 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1921
1968
  });
1922
1969
  (0, _globals.describe)('`useUseCase` should work the same as `useReducers`', function () {
1923
1970
  (0, _globals.test)('`entity` should equal `defaultFile`', function () {
1924
- var _renderHook28 = (0, _react.renderHook)(function () {
1971
+ var _renderHook30 = (0, _react.renderHook)(function () {
1925
1972
  return (0, _.useUseCase)(mathUseCase);
1926
1973
  }),
1927
- result = _renderHook28.result;
1974
+ result = _renderHook30.result;
1928
1975
  var reducers = result.current;
1929
1976
  (0, _globals.expect)(Array.isArray(reducers)).toBe(false);
1930
1977
  });
1931
1978
  (0, _globals.test)('returned reducer should work', function () {
1932
- var _renderHook29 = (0, _react.renderHook)(function () {
1979
+ var _renderHook31 = (0, _react.renderHook)(function () {
1933
1980
  return (0, _.useUseCase)(mathUseCase);
1934
1981
  }),
1935
- result = _renderHook29.result;
1982
+ result = _renderHook31.result;
1936
1983
  var reducers = result.current;
1937
1984
  var add = reducers.add;
1938
1985
  (0, _globals.expect)(add(1, 2)).toBe(3);
1939
1986
  });
1940
1987
  (0, _globals.test)('`usecase` should be called only once if deps has not provided', function () {
1941
1988
  var mockUseCase = _globals.jest.fn(mathUseCase);
1942
- var _renderHook30 = (0, _react.renderHook)(function () {
1989
+ var _renderHook32 = (0, _react.renderHook)(function () {
1943
1990
  return (0, _.useUseCase)(mockUseCase);
1944
1991
  }),
1945
- rerender = _renderHook30.rerender;
1992
+ rerender = _renderHook32.rerender;
1946
1993
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
1947
1994
  rerender();
1948
1995
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
1949
1996
  });
1950
1997
  (0, _globals.test)('`usecase` should be called only once if deps has not changed', function () {
1951
1998
  var mockUseCase = _globals.jest.fn(mathUseCase);
1952
- var _renderHook31 = (0, _react.renderHook)(function () {
1999
+ var _renderHook33 = (0, _react.renderHook)(function () {
1953
2000
  return (0, _.useUseCase)(mockUseCase, {}, [1, 'x']);
1954
2001
  }),
1955
- rerender = _renderHook31.rerender;
2002
+ rerender = _renderHook33.rerender;
1956
2003
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
1957
2004
  rerender();
1958
2005
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
@@ -1960,10 +2007,10 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1960
2007
  (0, _globals.test)('`usecase` should be called if deps has changed', function () {
1961
2008
  var i = 0;
1962
2009
  var mockUseCase = _globals.jest.fn(mathUseCase);
1963
- var _renderHook32 = (0, _react.renderHook)(function () {
2010
+ var _renderHook34 = (0, _react.renderHook)(function () {
1964
2011
  return (0, _.useUseCase)(mockUseCase, {}, [i++, 'x']);
1965
2012
  }),
1966
- rerender = _renderHook32.rerender;
2013
+ rerender = _renderHook34.rerender;
1967
2014
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
1968
2015
  rerender();
1969
2016
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(2);
@@ -2047,12 +2094,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2047
2094
  (0, _globals.expect)(subtractionReducer).toHaveReturnedWith(4);
2048
2095
  });
2049
2096
  (0, _globals.test)('`options.extraValue` should be added after call `add` method', function () {
2050
- var _renderHook33 = (0, _react.renderHook)(function () {
2097
+ var _renderHook35 = (0, _react.renderHook)(function () {
2051
2098
  return (0, _.useUseCase)(mathUseCase, {
2052
2099
  extraValue: 5
2053
2100
  });
2054
2101
  }),
2055
- result = _renderHook33.result;
2102
+ result = _renderHook35.result;
2056
2103
  var reducers = result.current;
2057
2104
  var add = reducers.add;
2058
2105
  (0, _globals.expect)(add(1, 2)).toBe(8);
@@ -2060,7 +2107,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2060
2107
  (0, _globals.test)('when `options` has changed, it should not trigger update', function () {
2061
2108
  var onUpdate = _globals.jest.fn();
2062
2109
  var onDeepUpdate = _globals.jest.fn();
2063
- var _renderHook34 = (0, _react.renderHook)(function () {
2110
+ var _renderHook36 = (0, _react.renderHook)(function () {
2064
2111
  var _useState7 = (0, _react2.useState)(0),
2065
2112
  _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
2066
2113
  extraValue = _useState8[0],
@@ -2076,7 +2123,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2076
2123
  }, [reducers]);
2077
2124
  return setExtraValue;
2078
2125
  }),
2079
- result = _renderHook34.result;
2126
+ result = _renderHook36.result;
2080
2127
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
2081
2128
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
2082
2129
  (0, _react.act)(function () {
@@ -2088,7 +2135,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2088
2135
  (0, _globals.test)('when `deps` change, it should update reducers', function () {
2089
2136
  var onUpdate = _globals.jest.fn();
2090
2137
  var onDeepUpdate = _globals.jest.fn();
2091
- var _renderHook35 = (0, _react.renderHook)(function () {
2138
+ var _renderHook37 = (0, _react.renderHook)(function () {
2092
2139
  var _useState9 = (0, _react2.useState)(0),
2093
2140
  _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
2094
2141
  extraValue = _useState10[0],
@@ -2104,7 +2151,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2104
2151
  }, [reducers]);
2105
2152
  return setExtraValue;
2106
2153
  }),
2107
- result = _renderHook35.result;
2154
+ result = _renderHook37.result;
2108
2155
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
2109
2156
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
2110
2157
  (0, _react.act)(function () {
@@ -2116,7 +2163,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2116
2163
  (0, _globals.test)('empty `deps` should not update reducers', function () {
2117
2164
  var onUpdate = _globals.jest.fn();
2118
2165
  var onDeepUpdate = _globals.jest.fn();
2119
- var _renderHook36 = (0, _react.renderHook)(function () {
2166
+ var _renderHook38 = (0, _react.renderHook)(function () {
2120
2167
  var _useState11 = (0, _react2.useState)(0),
2121
2168
  _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
2122
2169
  extraValue = _useState12[0],
@@ -2132,7 +2179,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2132
2179
  }, [reducers]);
2133
2180
  return setExtraValue;
2134
2181
  }),
2135
- result = _renderHook36.result;
2182
+ result = _renderHook38.result;
2136
2183
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
2137
2184
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
2138
2185
  (0, _react.act)(function () {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mic-rexjs/usecases-react",
3
- "version": "2.8.2",
3
+ "version": "2.9.1",
4
4
  "description": "React-based solution for use usecases of Clean Architecture",
5
5
  "private": false,
6
6
  "sideEffects": false,