@mic-rexjs/usecases-react 2.9.2 → 2.9.4
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={},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})})();
|
|
2
|
+
(()=>{var t={20:(t,e,r)=>{"use strict";var n=r(594),o=Symbol.for("react.element"),u=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),i=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};e.jsx=function(t,e,r){var n,c={},f=null,l=null;for(n in void 0!==r&&(f=""+r),void 0!==e.key&&(f=""+e.key),void 0!==e.ref&&(l=e.ref),e)u.call(e,n)&&!a.hasOwnProperty(n)&&(c[n]=e[n]);if(t&&t.defaultProps)for(n in e=t.defaultProps)void 0===c[n]&&(c[n]=e[n]);return{$$typeof:o,type:t,key:f,ref:l,props:c,_owner:i.current}}},848:(t,e,r)=>{"use strict";t.exports=r(20)},594:t=>{"use strict";t.exports=React}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var u=e[n]={exports:{}};return t[n](u,u.exports,r),u.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var n={};(()=>{"use strict";r.r(n),r.d(n,{UseCaseFragment:()=>A,useUseCase:()=>x});var t=r(848),e=r(594),o=r.n(e);function u(t){return u="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},u(t)}function i(t,e,r){return(e=function(t){var e=function(t,e){if("object"!=u(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!=u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==u(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function c(t,e){if(t){if("string"==typeof t)return a(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(t,e):void 0}}function f(t){return function(t){if(Array.isArray(t))return a(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||c(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 l(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,u,i,a=[],c=!0,f=!1;try{if(u=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=u.call(r)).done)&&(a.push(n.value),a.length!==e);c=!0);}catch(t){f=!0,o=t}finally{try{if(!c&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(f)throw o}}return a}}(t,e)||c(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 s=ahooks;var y=function(t){return l((0,e.useState)((function(){return t})),1)[0]},v=function(t){return l((0,e.useState)(t),1)[0]};const b=usecases;var d,p;!function(t){t[t.None=0]="None",t[t.Entity=2]="Entity"}(d||(d={})),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"}(p||(p={}));var E=(0,b.createUseCase)((function(){var t=new Map,r=(0,e.createContext)(null);return function(){return{createContextValue:function(t,e,r){return(r&p.EntityEnabled)===p.EntityEnabled?{store:t,reducers:e,statuses:r}:{reducers:e,statuses:r}},registerUseCase:function(n,o){if(t.has(n)){var u=t.get(n),i=u.value,a=u.times;return t.set(n,{value:i,times:a+1}),i}if((o&d.Entity)!==d.Entity)return r;var c=(0,e.createContext)(null);return t.set(n,{value:c,times:1}),c},unregisterUseCase:function(e,r){if((r&d.Entity)!==d.Entity)return!1;if(!t.has(e))return!1;var n=t.get(e),o=n.value,u=n.times;return 1===u?t.delete(e):t.set(e,{value:o,times:u-1}),!0}}}})),h=function(){return v((function(){return E()}))};var m=["watch","onChange","options"];function O(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function g(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?O(Object(r),!0).forEach((function(e){i(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):O(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}var j=function(t,e){var r=t.length;if(r!==e.length)return!1;for(var n=0;n<r;n++)if(t[n]!==e[n])return!1;return!0},w=function(t,e){var r,n=e||{},o=n.onShouldCache,u=void 0===o?function(){return!0}:o,i=n.onCompare,a=void 0===i?function(t,e){return j(t,e)}:i;return function(){for(var e=u(),n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];if(r&&e){var c=r,f=c.parameters,l=c.returnValue;if(a(f,o))return l}var s=t.apply(void 0,o);return e&&(r={parameters:o,returnValue:s}),s}},S=function(t,e,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,o=(0,s.useLatest)(r),u=(0,s.useCreation)((function(){return w(o.current,{onCompare:function(){return!0}})}),[n,o]);return(0,s.useCreation)((function(){return(e&p.RootEnabled)!==p.RootEnabled&&t?t:u()}),[e,t,u])},C=function(t,e){return"object"===u(t)&&null!==t&&Object.hasOwn(t,e)},P=function t(e,r,n,o){var u=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],i=void 0,a=l(n.match(/^([^.]+)\.(.+)$/)||[],3),c=a[1],s=void 0===c?n:c,y=a[2],v=void 0===y?"":y,b=C(e,s),d=C(r,s),p=[].concat(f(u),[s]);if(b||d){var E=b?e[s]:i,h=d?r[s]:i;if(v)return void t(E,h,v,o,p);if(E===h)return;o(E,h,p)}else if(!/^\d+^/.test(s))for(var m=Array.isArray(e)?e:[],O=Array.isArray(r)?r:[],g=m.length,j=O.length,w=Math.max(g,j),S=0;S<w;S++)t(m[S],O[S],n,o,[].concat(f(u),["".concat(S)]))},R=function(t,e,r){for(var n=function(){var t=l(u[o],2),n=t[0],i=t[1];P(r,e,n,(function(t,n,o){i({fieldPaths:o,newEntity:e,oldEntity:r,newValue:n,oldValue:t})}))},o=0,u=Object.entries(t);o<u.length;o++)n()};function _(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}var x=function(){for(var t,r=((t=(0,e.useRef)(!0)).current=!0,(0,e.useEffect)((function(){t.current=!1})),t),n=arguments.length,a=new Array(n),c=0;c<n;c++)a[c]=arguments[c];var E=function(t){return v((function(){var e=d.None;return"function"===u(l(t,2)[1])&&(e|=d.Entity),e}))}(a),O=function(t,e){var r=l(t,4),n=r[0],o=r[1],u=r[2],i=r[3];return(e&d.Entity)!==d.Entity?[null,n,o||{},u||[]]:[n,o,u||{},i||[]]}(a,E),C=l(O,4),P=C[0],x=C[1],A=C[2],U=C[3],D=y(x),M=D,N=D,k=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:d.None,r=h(),n=r.registerUseCase,o=r.unregisterUseCase,u=v((function(){return n(t,e)}));return(0,s.useUnmount)((function(){o(t,e)})),u}(D,E),I=(0,e.useContext)(k),T=I,L=function(t,e){return(0,s.useCreation)((function(){var r=p.None,n=(e||{}).store;return(t&d.Entity)===d.Entity&&(r|=p.EntityRootEnabled),r|=e?p.ContextEnabled:p.RootEnabled,n&&(r|=p.EntityEnabled),r}),[t,e])}(E,I),V=(0,s.useLatest)(A),F=function(t){var r=(0,e.useRef)(0),n=(0,e.useRef)([]),o=n.current,u=j(t,o);return n.current=t,r.current+=u?0:1,r.current}(U),$=(I||{}).reducers,z=void 0===$?null:$,B=(T||{}).store,G=l(function(t,r,n,o,u){var i=(0,s.useUpdate)(),a=(0,e.useRef)(),c=(0,s.useLatest)(o),f=n?n.value:null,l=(t&p.EntityEnabled)===p.EntityEnabled,y=(t&p.EntityRootEnabled)===p.EntityRootEnabled,v=S(n,t,(function(){var t;if(y){var e,n="function"==typeof r?r(null===(e=a.current)||void 0===e?void 0:e.value):r;t=new b.EntityStore(n)}else t=new b.EntityStore(null);return a.current=t,t}),u),d=function(t,r,n,o){var u=(0,e.useRef)(r);if((o&p.EntityRootEnabled)!==p.EntityRootEnabled)return n;var i="function"==typeof r,a=u.current;switch(!0){case i:case a===r:return t.value}return u.current=r,r}(v,r,f,t),E=(0,s.useMemoizedFn)((function(t,e){var r=c.current,n=r.onChange,o=r.watch;o&&R(o,t,e),null==n||n(t,e),y&&i()}));return y&&(v.value=d),(0,s.useCreation)((function(){l&&v.watch(E)}),[l,v,E]),(0,e.useEffect)((function(){return function(){v.unwatch(E)}}),[l,v,E]),(0,s.useCreation)((function(){return[d,v]}),[d,v])}(L,P,void 0===B?null:B,A,F),2),W=G[0],Y=G[1],q=S(z,L,(function(){var t,e,r,n=(t=A,e=function(t,e){var r,n;return null===(r=(n=V.current)[t])||void 0===r?void 0:r.call.apply(r,[n].concat(f(e)))},r={},Object.keys(t).forEach((function(n){var o=t[n];r[n]="function"!=typeof o?o:function(){for(var t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return e(n,r)}})),r);return(L&p.EntityEnabled)!==p.EntityEnabled?M(n):function(t,e,r){r.watch,r.onChange;var n=r.options,o=function(t,e){if(null==t)return{};var r,n,o=function(t,e){if(null==t)return{};var r,n,o={},u=Object.keys(t);for(n=0;n<u.length;n++)r=u[n],e.indexOf(r)>=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(t);for(n=0;n<u.length;n++)r=u[n],e.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}(r,m);return(0,b.createEntityReducers)(e,t,g(g(g({},o),n),{},{onGenerate:function(t,e){return e}}))}(N,Y,n)}),F),H=function(t,r,n,u){var i=n.value,a=h().createContextValue,c=(0,e.useMemo)((function(){return a(n,u,t)}),[t,i,n,u,a]),f=(0,s.useLatest)(c);return y((function(t){var e=t.children,n=t.with,u=void 0===n?[]:n,i=r.Provider,a=f.current;return o().createElement(i,{value:a},u.reduceRight((function(t,e){return o().createElement(e,{},t)}),e))}))}(L,k,Y,q);return(0,s.useCreation)((function(){if((L&p.EntityEnabled)!==p.EntityEnabled)return q;var t=(L&p.RootEnabled)===p.RootEnabled,e=function(t,e){var r={};return Object.entries(t).forEach((function(t){var n=l(t,2),o=n[0],u=n[1];r[o]=w(u,e)})),r}(q,{onShouldCache:function(){return r.current}}),n=null===W,o=Array.isArray(W),a="object"!==u(W)||n||o?W:function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?_(Object(r),!0).forEach((function(e){i(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):_(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({},W);return t?[a,e,H]:[a,e]}),[L,W,q,H,r])},A=function(r){var n=r.usecase,o=r.watch,u=r.onChange;return x(n,{watch:o,onChange:u}),(0,t.jsx)(e.Fragment,{})}})();var o=usecases="undefined"==typeof usecases?{}:usecases;for(var u in n)o[u]=n[u];n.__esModule&&Object.defineProperty(o,"__esModule",{value:!0})})();
|
|
@@ -52,9 +52,15 @@ export const useUseCase = ((...args) => {
|
|
|
52
52
|
return isRenderingRef.current;
|
|
53
53
|
},
|
|
54
54
|
});
|
|
55
|
+
const isNull = entity === null;
|
|
56
|
+
const isArray = Array.isArray(entity);
|
|
57
|
+
const isObjectType = typeof entity === 'object';
|
|
58
|
+
const isObjectEntity = isObjectType && !isNull && !isArray;
|
|
59
|
+
// 这里是为了让访问器 `getter` 的值保持唯一性,否则每次 `getter` 返回的对象都是新对象,无法用于 `deps`
|
|
60
|
+
const newEntity = isObjectEntity ? { ...entity } : entity;
|
|
55
61
|
if (rootEnabled) {
|
|
56
|
-
return [
|
|
62
|
+
return [newEntity, cachedReducers, Provider];
|
|
57
63
|
}
|
|
58
|
-
return [
|
|
64
|
+
return [newEntity, cachedReducers];
|
|
59
65
|
}, [statuses, entity, reducers, Provider, isRenderingRef]);
|
|
60
66
|
});
|
|
@@ -4,7 +4,7 @@ import { beforeEach, describe, expect, jest, test } from '@jest/globals';
|
|
|
4
4
|
import { renderHook, act, render, fireEvent, screen } from '@testing-library/react';
|
|
5
5
|
import { useUseCase } from '.';
|
|
6
6
|
import { useDeepCompareEffect, useMemoizedFn, useMount, useUpdate, useUpdateEffect } from 'ahooks';
|
|
7
|
-
import { Fragment, useEffect, useRef, useState } from 'react';
|
|
7
|
+
import { Fragment, useEffect, useMemo, useRef, useState } from 'react';
|
|
8
8
|
const EXT_1 = '.png';
|
|
9
9
|
const EXT_2 = '.jpg';
|
|
10
10
|
const PATH_1 = `hello${EXT_1}`;
|
|
@@ -141,7 +141,7 @@ describe('useUseCase', () => {
|
|
|
141
141
|
});
|
|
142
142
|
const { current: cores } = result;
|
|
143
143
|
const [entity] = cores;
|
|
144
|
-
expect(entity).
|
|
144
|
+
expect(entity).toEqual(defaultFile);
|
|
145
145
|
});
|
|
146
146
|
test('Should return the `EntityStore.value` if root entity has not changed', () => {
|
|
147
147
|
const { result } = renderHook(() => {
|
|
@@ -189,8 +189,57 @@ describe('useUseCase', () => {
|
|
|
189
189
|
const { current: [currentFile], } = result;
|
|
190
190
|
expect(currentFile).toEqual(file);
|
|
191
191
|
});
|
|
192
|
+
test('Entity property getter should always return the same object if nothing changed after component update', () => {
|
|
193
|
+
let updateTimes = 0;
|
|
194
|
+
const data = {
|
|
195
|
+
x: 1,
|
|
196
|
+
get obj() {
|
|
197
|
+
return {};
|
|
198
|
+
},
|
|
199
|
+
};
|
|
200
|
+
const { rerender } = renderHook(() => {
|
|
201
|
+
const collection = useUseCase(data, objectUseCase);
|
|
202
|
+
const [{ obj }] = collection;
|
|
203
|
+
useMemo(() => {
|
|
204
|
+
void obj;
|
|
205
|
+
updateTimes++;
|
|
206
|
+
}, [obj]);
|
|
207
|
+
return collection;
|
|
208
|
+
});
|
|
209
|
+
expect(updateTimes).toEqual(1);
|
|
210
|
+
act(() => {
|
|
211
|
+
rerender();
|
|
212
|
+
});
|
|
213
|
+
expect(updateTimes).toEqual(1);
|
|
214
|
+
});
|
|
215
|
+
test('Entity property getter should always return a new object if something changed after component update', () => {
|
|
216
|
+
let updateTimes = 0;
|
|
217
|
+
const data = {
|
|
218
|
+
x: 1,
|
|
219
|
+
get obj() {
|
|
220
|
+
return {};
|
|
221
|
+
},
|
|
222
|
+
};
|
|
223
|
+
const { result } = renderHook(() => {
|
|
224
|
+
const collection = useUseCase(data, objectUseCase);
|
|
225
|
+
const [{ obj }] = collection;
|
|
226
|
+
useMemo(() => {
|
|
227
|
+
void obj;
|
|
228
|
+
updateTimes++;
|
|
229
|
+
}, [obj]);
|
|
230
|
+
return collection;
|
|
231
|
+
});
|
|
232
|
+
const { current } = result;
|
|
233
|
+
const [, { setEntity }] = current;
|
|
234
|
+
expect(updateTimes).toEqual(1);
|
|
235
|
+
act(() => {
|
|
236
|
+
setEntity({ x: 2 });
|
|
237
|
+
});
|
|
238
|
+
expect(updateTimes).toEqual(2);
|
|
239
|
+
});
|
|
192
240
|
test('Entity getter should provide the first argument with current entity when deps has change.', () => {
|
|
193
241
|
let entityArg;
|
|
242
|
+
let times = 0;
|
|
194
243
|
const file = defaultFile;
|
|
195
244
|
const { result } = renderHook(() => {
|
|
196
245
|
return useUseCase((entity = file) => {
|
|
@@ -200,7 +249,7 @@ describe('useUseCase', () => {
|
|
|
200
249
|
...entity,
|
|
201
250
|
path: path + '1',
|
|
202
251
|
};
|
|
203
|
-
}, fileUseCase, {}, [
|
|
252
|
+
}, fileUseCase, {}, [times++]);
|
|
204
253
|
});
|
|
205
254
|
const { current: collection1 } = result;
|
|
206
255
|
const [currentFile1, { setPath }] = collection1;
|
|
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.useUseCase = void 0;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
8
10
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
12
|
var _ahooks = require("ahooks");
|
|
@@ -23,6 +25,8 @@ var _cacheCalls = require("../../methods/cacheCalls");
|
|
|
23
25
|
var _useCompareDeps = require("../useCompareDeps");
|
|
24
26
|
var _captureCalls = require("../../methods/captureCalls");
|
|
25
27
|
var _useFullArguments = require("../useFullArguments");
|
|
28
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
29
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
26
30
|
var useUseCase = exports.useUseCase = function useUseCase() {
|
|
27
31
|
var isRenderingRef = (0, _useIsRenderingRef.useIsRenderingRef)();
|
|
28
32
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
@@ -76,9 +80,15 @@ var useUseCase = exports.useUseCase = function useUseCase() {
|
|
|
76
80
|
return isRenderingRef.current;
|
|
77
81
|
}
|
|
78
82
|
});
|
|
83
|
+
var isNull = entity === null;
|
|
84
|
+
var isArray = Array.isArray(entity);
|
|
85
|
+
var isObjectType = (0, _typeof2["default"])(entity) === 'object';
|
|
86
|
+
var isObjectEntity = isObjectType && !isNull && !isArray;
|
|
87
|
+
// 这里是为了让访问器 `getter` 的值保持唯一性,否则每次 `getter` 返回的对象都是新对象,无法用于 `deps`
|
|
88
|
+
var newEntity = isObjectEntity ? _objectSpread({}, entity) : entity;
|
|
79
89
|
if (rootEnabled) {
|
|
80
|
-
return [
|
|
90
|
+
return [newEntity, cachedReducers, Provider];
|
|
81
91
|
}
|
|
82
|
-
return [
|
|
92
|
+
return [newEntity, cachedReducers];
|
|
83
93
|
}, [statuses, entity, reducers, Provider, isRenderingRef]);
|
|
84
94
|
};
|
|
@@ -265,7 +265,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
265
265
|
var cores = result.current;
|
|
266
266
|
var _cores = (0, _slicedToArray2["default"])(cores, 1),
|
|
267
267
|
entity = _cores[0];
|
|
268
|
-
(0, _globals.expect)(entity).
|
|
268
|
+
(0, _globals.expect)(entity).toEqual(defaultFile);
|
|
269
269
|
});
|
|
270
270
|
(0, _globals.test)('Should return the `EntityStore.value` if root entity has not changed', function () {
|
|
271
271
|
var _renderHook3 = (0, _react.renderHook)(function () {
|
|
@@ -334,10 +334,66 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
334
334
|
currentFile = _result$current[0];
|
|
335
335
|
(0, _globals.expect)(currentFile).toEqual(file);
|
|
336
336
|
});
|
|
337
|
+
(0, _globals.test)('Entity property getter should always return the same object if nothing changed after component update', function () {
|
|
338
|
+
var updateTimes = 0;
|
|
339
|
+
var data = {
|
|
340
|
+
x: 1,
|
|
341
|
+
get obj() {
|
|
342
|
+
return {};
|
|
343
|
+
}
|
|
344
|
+
};
|
|
345
|
+
var _renderHook7 = (0, _react.renderHook)(function () {
|
|
346
|
+
var collection = (0, _.useUseCase)(data, _usecases.objectUseCase);
|
|
347
|
+
var _collection3 = (0, _slicedToArray2["default"])(collection, 1),
|
|
348
|
+
obj = _collection3[0].obj;
|
|
349
|
+
(0, _react2.useMemo)(function () {
|
|
350
|
+
void obj;
|
|
351
|
+
updateTimes++;
|
|
352
|
+
}, [obj]);
|
|
353
|
+
return collection;
|
|
354
|
+
}),
|
|
355
|
+
rerender = _renderHook7.rerender;
|
|
356
|
+
(0, _globals.expect)(updateTimes).toEqual(1);
|
|
357
|
+
(0, _react.act)(function () {
|
|
358
|
+
rerender();
|
|
359
|
+
});
|
|
360
|
+
(0, _globals.expect)(updateTimes).toEqual(1);
|
|
361
|
+
});
|
|
362
|
+
(0, _globals.test)('Entity property getter should always return a new object if something changed after component update', function () {
|
|
363
|
+
var updateTimes = 0;
|
|
364
|
+
var data = {
|
|
365
|
+
x: 1,
|
|
366
|
+
get obj() {
|
|
367
|
+
return {};
|
|
368
|
+
}
|
|
369
|
+
};
|
|
370
|
+
var _renderHook8 = (0, _react.renderHook)(function () {
|
|
371
|
+
var collection = (0, _.useUseCase)(data, _usecases.objectUseCase);
|
|
372
|
+
var _collection4 = (0, _slicedToArray2["default"])(collection, 1),
|
|
373
|
+
obj = _collection4[0].obj;
|
|
374
|
+
(0, _react2.useMemo)(function () {
|
|
375
|
+
void obj;
|
|
376
|
+
updateTimes++;
|
|
377
|
+
}, [obj]);
|
|
378
|
+
return collection;
|
|
379
|
+
}),
|
|
380
|
+
result = _renderHook8.result;
|
|
381
|
+
var current = result.current;
|
|
382
|
+
var _current = (0, _slicedToArray2["default"])(current, 2),
|
|
383
|
+
setEntity = _current[1].setEntity;
|
|
384
|
+
(0, _globals.expect)(updateTimes).toEqual(1);
|
|
385
|
+
(0, _react.act)(function () {
|
|
386
|
+
setEntity({
|
|
387
|
+
x: 2
|
|
388
|
+
});
|
|
389
|
+
});
|
|
390
|
+
(0, _globals.expect)(updateTimes).toEqual(2);
|
|
391
|
+
});
|
|
337
392
|
(0, _globals.test)('Entity getter should provide the first argument with current entity when deps has change.', function () {
|
|
338
393
|
var entityArg;
|
|
394
|
+
var times = 0;
|
|
339
395
|
var file = defaultFile;
|
|
340
|
-
var
|
|
396
|
+
var _renderHook9 = (0, _react.renderHook)(function () {
|
|
341
397
|
return (0, _.useUseCase)(function () {
|
|
342
398
|
var entity = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : file;
|
|
343
399
|
var path = entity.path;
|
|
@@ -345,13 +401,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
345
401
|
return _objectSpread(_objectSpread({}, entity), {}, {
|
|
346
402
|
path: path + '1'
|
|
347
403
|
});
|
|
348
|
-
}, fileUseCase, {}, [
|
|
404
|
+
}, fileUseCase, {}, [times++]);
|
|
349
405
|
}),
|
|
350
|
-
result =
|
|
406
|
+
result = _renderHook9.result;
|
|
351
407
|
var collection1 = result.current;
|
|
352
|
-
var
|
|
353
|
-
currentFile1 =
|
|
354
|
-
setPath =
|
|
408
|
+
var _collection5 = (0, _slicedToArray2["default"])(collection1, 2),
|
|
409
|
+
currentFile1 = _collection5[0],
|
|
410
|
+
setPath = _collection5[1].setPath;
|
|
355
411
|
(0, _globals.expect)(entityArg).toEqual(defaultFile);
|
|
356
412
|
(0, _globals.expect)(currentFile1).toEqual(_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
357
413
|
path: '1'
|
|
@@ -360,8 +416,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
360
416
|
setPath('2');
|
|
361
417
|
});
|
|
362
418
|
var collection2 = result.current;
|
|
363
|
-
var
|
|
364
|
-
currentFile2 =
|
|
419
|
+
var _collection6 = (0, _slicedToArray2["default"])(collection2, 1),
|
|
420
|
+
currentFile2 = _collection6[0];
|
|
365
421
|
(0, _globals.expect)(entityArg).toEqual(_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
366
422
|
path: '2'
|
|
367
423
|
}));
|
|
@@ -370,20 +426,20 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
370
426
|
}));
|
|
371
427
|
});
|
|
372
428
|
(0, _globals.test)('`reducers` should be returned as an object', function () {
|
|
373
|
-
var
|
|
429
|
+
var _renderHook10 = (0, _react.renderHook)(function () {
|
|
374
430
|
return (0, _.useUseCase)(defaultFile, fileUseCase);
|
|
375
431
|
}),
|
|
376
|
-
result =
|
|
432
|
+
result = _renderHook10.result;
|
|
377
433
|
var cores = result.current;
|
|
378
434
|
var _cores2 = (0, _slicedToArray2["default"])(cores, 2),
|
|
379
435
|
reducers = _cores2[1];
|
|
380
436
|
(0, _globals.expect)((0, _typeof2["default"])(reducers)).toBe('object');
|
|
381
437
|
});
|
|
382
438
|
(0, _globals.test)('`Provider` should be returned as a function', function () {
|
|
383
|
-
var
|
|
439
|
+
var _renderHook11 = (0, _react.renderHook)(function () {
|
|
384
440
|
return (0, _.useUseCase)(defaultFile, fileUseCase);
|
|
385
441
|
}),
|
|
386
|
-
result =
|
|
442
|
+
result = _renderHook11.result;
|
|
387
443
|
var cores = result.current;
|
|
388
444
|
var _cores3 = (0, _slicedToArray2["default"])(cores, 3),
|
|
389
445
|
Provider = _cores3[2];
|
|
@@ -391,11 +447,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
391
447
|
});
|
|
392
448
|
(0, _globals.test)('`usecase` should be called only once if deps has not provided', function () {
|
|
393
449
|
var mockUseCase = _globals.jest.fn(fileUseCase);
|
|
394
|
-
var
|
|
450
|
+
var _renderHook12 = (0, _react.renderHook)(function () {
|
|
395
451
|
return (0, _.useUseCase)(defaultFile, mockUseCase);
|
|
396
452
|
}),
|
|
397
|
-
result =
|
|
398
|
-
rerender =
|
|
453
|
+
result = _renderHook12.result,
|
|
454
|
+
rerender = _renderHook12.rerender;
|
|
399
455
|
var cores = result.current;
|
|
400
456
|
var _cores4 = (0, _slicedToArray2["default"])(cores, 2),
|
|
401
457
|
setEntity = _cores4[1].setEntity;
|
|
@@ -408,11 +464,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
408
464
|
});
|
|
409
465
|
(0, _globals.test)('`usecase` should be called only once if deps has not changed', function () {
|
|
410
466
|
var mockUseCase = _globals.jest.fn(fileUseCase);
|
|
411
|
-
var
|
|
467
|
+
var _renderHook13 = (0, _react.renderHook)(function () {
|
|
412
468
|
return (0, _.useUseCase)(defaultFile, mockUseCase, {}, [1, 'x']);
|
|
413
469
|
}),
|
|
414
|
-
result =
|
|
415
|
-
rerender =
|
|
470
|
+
result = _renderHook13.result,
|
|
471
|
+
rerender = _renderHook13.rerender;
|
|
416
472
|
var cores = result.current;
|
|
417
473
|
var _cores5 = (0, _slicedToArray2["default"])(cores, 2),
|
|
418
474
|
setEntity = _cores5[1].setEntity;
|
|
@@ -426,11 +482,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
426
482
|
(0, _globals.test)('`usecase` should be called if deps has changed', function () {
|
|
427
483
|
var i = 0;
|
|
428
484
|
var mockUseCase = _globals.jest.fn(fileUseCase);
|
|
429
|
-
var
|
|
485
|
+
var _renderHook14 = (0, _react.renderHook)(function () {
|
|
430
486
|
return (0, _.useUseCase)(defaultFile, mockUseCase, {}, [i++, 'x']);
|
|
431
487
|
}),
|
|
432
|
-
result =
|
|
433
|
-
rerender =
|
|
488
|
+
result = _renderHook14.result,
|
|
489
|
+
rerender = _renderHook14.rerender;
|
|
434
490
|
var cores = result.current;
|
|
435
491
|
var _cores6 = (0, _slicedToArray2["default"])(cores, 2),
|
|
436
492
|
setEntity = _cores6[1].setEntity;
|
|
@@ -445,7 +501,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
445
501
|
(0, _globals.test)('after call non-generator reducer, it should not trigger update', function () {
|
|
446
502
|
var onUpdate = _globals.jest.fn();
|
|
447
503
|
var onDeepUpdate = _globals.jest.fn();
|
|
448
|
-
var
|
|
504
|
+
var _renderHook15 = (0, _react.renderHook)(function () {
|
|
449
505
|
var context = (0, _.useUseCase)(defaultFile, fileUseCase);
|
|
450
506
|
var _context4 = (0, _slicedToArray2["default"])(context, 2),
|
|
451
507
|
reducers = _context4[1];
|
|
@@ -465,7 +521,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
465
521
|
update();
|
|
466
522
|
};
|
|
467
523
|
}),
|
|
468
|
-
result =
|
|
524
|
+
result = _renderHook15.result;
|
|
469
525
|
(0, _react.act)(function () {
|
|
470
526
|
result.current();
|
|
471
527
|
});
|
|
@@ -479,13 +535,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
479
535
|
});
|
|
480
536
|
(0, _globals.test)('after `yield entity`, it should trigger update', function () {
|
|
481
537
|
var onUpdate = _globals.jest.fn();
|
|
482
|
-
var
|
|
538
|
+
var _renderHook16 = (0, _react.renderHook)(function () {
|
|
483
539
|
(0, _ahooks.useUpdateEffect)(function () {
|
|
484
540
|
onUpdate();
|
|
485
541
|
});
|
|
486
542
|
return (0, _.useUseCase)(defaultFile, fileUseCase);
|
|
487
543
|
}),
|
|
488
|
-
result =
|
|
544
|
+
result = _renderHook16.result;
|
|
489
545
|
var cores = result.current;
|
|
490
546
|
var _cores7 = (0, _slicedToArray2["default"])(cores, 2),
|
|
491
547
|
entity = _cores7[0],
|
|
@@ -510,17 +566,17 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
510
566
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(1);
|
|
511
567
|
});
|
|
512
568
|
(0, _globals.test)('after `yield entity` on async mode, it should trigger update', /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
513
|
-
var onUpdate,
|
|
569
|
+
var onUpdate, _renderHook17, result, cores, _cores8, entity, reducers, readFile, promise;
|
|
514
570
|
return _regenerator["default"].wrap(function _callee3$(_context5) {
|
|
515
571
|
while (1) switch (_context5.prev = _context5.next) {
|
|
516
572
|
case 0:
|
|
517
573
|
onUpdate = _globals.jest.fn();
|
|
518
|
-
|
|
574
|
+
_renderHook17 = (0, _react.renderHook)(function () {
|
|
519
575
|
(0, _ahooks.useUpdateEffect)(function () {
|
|
520
576
|
onUpdate();
|
|
521
577
|
});
|
|
522
578
|
return (0, _.useUseCase)(defaultFile, fileUseCase);
|
|
523
|
-
}), result =
|
|
579
|
+
}), result = _renderHook17.result;
|
|
524
580
|
cores = result.current;
|
|
525
581
|
_cores8 = (0, _slicedToArray2["default"])(cores, 2), entity = _cores8[0], reducers = _cores8[1];
|
|
526
582
|
readFile = reducers.readFile;
|
|
@@ -548,13 +604,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
548
604
|
})));
|
|
549
605
|
(0, _globals.test)('after `yield entity` callbacks, it should trigger update', function () {
|
|
550
606
|
var onUpdate = _globals.jest.fn();
|
|
551
|
-
var
|
|
607
|
+
var _renderHook18 = (0, _react.renderHook)(function () {
|
|
552
608
|
(0, _ahooks.useUpdateEffect)(function () {
|
|
553
609
|
onUpdate();
|
|
554
610
|
});
|
|
555
611
|
return (0, _.useUseCase)(defaultFile, fileUseCase);
|
|
556
612
|
}),
|
|
557
|
-
result =
|
|
613
|
+
result = _renderHook18.result;
|
|
558
614
|
var cores = result.current;
|
|
559
615
|
var _cores9 = (0, _slicedToArray2["default"])(cores, 2),
|
|
560
616
|
reducers = _cores9[1];
|
|
@@ -691,12 +747,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
691
747
|
});
|
|
692
748
|
(0, _globals.test)('`options.onChange` should be trigger when entity has changed', function () {
|
|
693
749
|
var onChange = _globals.jest.fn();
|
|
694
|
-
var
|
|
750
|
+
var _renderHook19 = (0, _react.renderHook)(function () {
|
|
695
751
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
696
752
|
onChange: onChange
|
|
697
753
|
});
|
|
698
754
|
}),
|
|
699
|
-
result =
|
|
755
|
+
result = _renderHook19.result;
|
|
700
756
|
var cores = result.current;
|
|
701
757
|
var _cores10 = (0, _slicedToArray2["default"])(cores, 2),
|
|
702
758
|
reducers = _cores10[1];
|
|
@@ -715,12 +771,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
715
771
|
var onChange1 = _globals.jest.fn();
|
|
716
772
|
var onChange2 = _globals.jest.fn();
|
|
717
773
|
var onChange = onChange1;
|
|
718
|
-
var
|
|
774
|
+
var _renderHook20 = (0, _react.renderHook)(function () {
|
|
719
775
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
720
776
|
onChange: onChange
|
|
721
777
|
}, []);
|
|
722
778
|
}),
|
|
723
|
-
result =
|
|
779
|
+
result = _renderHook20.result;
|
|
724
780
|
var cores = result.current;
|
|
725
781
|
var _cores11 = (0, _slicedToArray2["default"])(cores, 2),
|
|
726
782
|
reducers = _cores11[1];
|
|
@@ -750,7 +806,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
750
806
|
}));
|
|
751
807
|
});
|
|
752
808
|
(0, _globals.test)('`options.options` should override rest options', function () {
|
|
753
|
-
var
|
|
809
|
+
var _renderHook21 = (0, _react.renderHook)(function () {
|
|
754
810
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
755
811
|
pathPrefix: 'xyz/',
|
|
756
812
|
options: {
|
|
@@ -758,7 +814,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
758
814
|
}
|
|
759
815
|
});
|
|
760
816
|
}),
|
|
761
|
-
result =
|
|
817
|
+
result = _renderHook21.result;
|
|
762
818
|
var cores = result.current;
|
|
763
819
|
var _cores12 = (0, _slicedToArray2["default"])(cores, 2),
|
|
764
820
|
path = _cores12[0].path,
|
|
@@ -773,7 +829,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
773
829
|
(0, _globals.test)('when `options` has changed, it should not trigger update', function () {
|
|
774
830
|
var onUpdate = _globals.jest.fn();
|
|
775
831
|
var onDeepUpdate = _globals.jest.fn();
|
|
776
|
-
var
|
|
832
|
+
var _renderHook22 = (0, _react.renderHook)(function () {
|
|
777
833
|
var _useState = (0, _react2.useState)('user/'),
|
|
778
834
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
779
835
|
pathPrefix = _useState2[0],
|
|
@@ -789,7 +845,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
789
845
|
}, [context]);
|
|
790
846
|
return setPathPrefix;
|
|
791
847
|
}),
|
|
792
|
-
result =
|
|
848
|
+
result = _renderHook22.result;
|
|
793
849
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
794
850
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
795
851
|
(0, _react.act)(function () {
|
|
@@ -801,7 +857,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
801
857
|
(0, _globals.test)('when `deps` has changed, it should trigger update', function () {
|
|
802
858
|
var onUpdate = _globals.jest.fn();
|
|
803
859
|
var onDeepUpdate = _globals.jest.fn();
|
|
804
|
-
var
|
|
860
|
+
var _renderHook23 = (0, _react.renderHook)(function () {
|
|
805
861
|
var _useState3 = (0, _react2.useState)('user/'),
|
|
806
862
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
807
863
|
pathPrefix = _useState4[0],
|
|
@@ -817,7 +873,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
817
873
|
}, [context]);
|
|
818
874
|
return setPathPrefix;
|
|
819
875
|
}),
|
|
820
|
-
result =
|
|
876
|
+
result = _renderHook23.result;
|
|
821
877
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
822
878
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
823
879
|
(0, _react.act)(function () {
|
|
@@ -829,7 +885,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
829
885
|
(0, _globals.test)('empty `deps` should not trigger update', function () {
|
|
830
886
|
var onUpdate = _globals.jest.fn();
|
|
831
887
|
var onDeepUpdate = _globals.jest.fn();
|
|
832
|
-
var
|
|
888
|
+
var _renderHook24 = (0, _react.renderHook)(function () {
|
|
833
889
|
var _useState5 = (0, _react2.useState)('user/'),
|
|
834
890
|
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
835
891
|
pathPrefix = _useState6[0],
|
|
@@ -845,7 +901,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
845
901
|
}, [context]);
|
|
846
902
|
return setPathPrefix;
|
|
847
903
|
}),
|
|
848
|
-
result =
|
|
904
|
+
result = _renderHook24.result;
|
|
849
905
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
850
906
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
851
907
|
(0, _react.act)(function () {
|
|
@@ -858,12 +914,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
858
914
|
var onPathChange1 = _globals.jest.fn();
|
|
859
915
|
var onPathChange2 = _globals.jest.fn();
|
|
860
916
|
var onPathChange = onPathChange1;
|
|
861
|
-
var
|
|
917
|
+
var _renderHook25 = (0, _react.renderHook)(function () {
|
|
862
918
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
863
919
|
onPathChange: onPathChange
|
|
864
920
|
});
|
|
865
921
|
}),
|
|
866
|
-
result =
|
|
922
|
+
result = _renderHook25.result;
|
|
867
923
|
var context = result.current;
|
|
868
924
|
var _context6 = (0, _slicedToArray2["default"])(context, 2),
|
|
869
925
|
setPath = _context6[1].setPath;
|
|
@@ -884,7 +940,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
884
940
|
(0, _globals.test)('`options.watch` should be trigger after entity changed', function () {
|
|
885
941
|
var onPathChange = _globals.jest.fn();
|
|
886
942
|
var onSizeChange = _globals.jest.fn();
|
|
887
|
-
var
|
|
943
|
+
var _renderHook26 = (0, _react.renderHook)(function () {
|
|
888
944
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
889
945
|
watch: {
|
|
890
946
|
path: onPathChange,
|
|
@@ -892,7 +948,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
892
948
|
}
|
|
893
949
|
});
|
|
894
950
|
}),
|
|
895
|
-
result =
|
|
951
|
+
result = _renderHook26.result;
|
|
896
952
|
var cores = result.current;
|
|
897
953
|
var _cores13 = (0, _slicedToArray2["default"])(cores, 2),
|
|
898
954
|
setPath = _cores13[1].setPath;
|
|
@@ -917,14 +973,14 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
917
973
|
var onPathChange1 = _globals.jest.fn();
|
|
918
974
|
var onPathChange2 = _globals.jest.fn();
|
|
919
975
|
var onPathChange = onPathChange1;
|
|
920
|
-
var
|
|
976
|
+
var _renderHook27 = (0, _react.renderHook)(function () {
|
|
921
977
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
922
978
|
watch: {
|
|
923
979
|
path: onPathChange
|
|
924
980
|
}
|
|
925
981
|
});
|
|
926
982
|
}),
|
|
927
|
-
result =
|
|
983
|
+
result = _renderHook27.result;
|
|
928
984
|
var cores = result.current;
|
|
929
985
|
var _cores14 = (0, _slicedToArray2["default"])(cores, 2),
|
|
930
986
|
_cores14$ = _cores14[1],
|
|
@@ -972,7 +1028,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
972
1028
|
var initialData = {};
|
|
973
1029
|
var onExtChange = _globals.jest.fn();
|
|
974
1030
|
var onSizeChange = _globals.jest.fn();
|
|
975
|
-
var
|
|
1031
|
+
var _renderHook28 = (0, _react.renderHook)(function () {
|
|
976
1032
|
return (0, _.useUseCase)(initialData, fieldPathUseCase, {
|
|
977
1033
|
watch: {
|
|
978
1034
|
'list.ext': onExtChange,
|
|
@@ -980,7 +1036,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
980
1036
|
}
|
|
981
1037
|
});
|
|
982
1038
|
}),
|
|
983
|
-
result =
|
|
1039
|
+
result = _renderHook28.result;
|
|
984
1040
|
var cores = result.current;
|
|
985
1041
|
var _cores15 = (0, _slicedToArray2["default"])(cores, 2),
|
|
986
1042
|
setEntity = _cores15[1].setEntity;
|
|
@@ -1268,7 +1324,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1268
1324
|
var lengthUseCase = function lengthUseCase() {
|
|
1269
1325
|
return (0, _usecases.entityUseCase)();
|
|
1270
1326
|
};
|
|
1271
|
-
var
|
|
1327
|
+
var _renderHook29 = (0, _react.renderHook)(function () {
|
|
1272
1328
|
return (0, _.useUseCase)([], lengthUseCase, {
|
|
1273
1329
|
watch: {
|
|
1274
1330
|
length: onEntityLengthChange,
|
|
@@ -1276,7 +1332,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1276
1332
|
}
|
|
1277
1333
|
});
|
|
1278
1334
|
}),
|
|
1279
|
-
result =
|
|
1335
|
+
result = _renderHook29.result;
|
|
1280
1336
|
var cores = result.current;
|
|
1281
1337
|
var _cores16 = (0, _slicedToArray2["default"])(cores, 2),
|
|
1282
1338
|
setEntity = _cores16[1].setEntity;
|
|
@@ -1311,14 +1367,14 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1311
1367
|
(0, _globals.test)('`options.watch` should work with field path of nested array', function () {
|
|
1312
1368
|
var initialData = {};
|
|
1313
1369
|
var onChange = _globals.jest.fn();
|
|
1314
|
-
var
|
|
1370
|
+
var _renderHook30 = (0, _react.renderHook)(function () {
|
|
1315
1371
|
return (0, _.useUseCase)(initialData, fieldPathUseCase, {
|
|
1316
1372
|
watch: {
|
|
1317
1373
|
'nestedList.size': onChange
|
|
1318
1374
|
}
|
|
1319
1375
|
});
|
|
1320
1376
|
}),
|
|
1321
|
-
result =
|
|
1377
|
+
result = _renderHook30.result;
|
|
1322
1378
|
var cores = result.current;
|
|
1323
1379
|
var _cores17 = (0, _slicedToArray2["default"])(cores, 2),
|
|
1324
1380
|
setEntity = _cores17[1].setEntity;
|
|
@@ -1406,7 +1462,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1406
1462
|
var initialData = {};
|
|
1407
1463
|
var onExtChange = _globals.jest.fn();
|
|
1408
1464
|
var onSizeChange = _globals.jest.fn();
|
|
1409
|
-
var
|
|
1465
|
+
var _renderHook31 = (0, _react.renderHook)(function () {
|
|
1410
1466
|
return (0, _.useUseCase)(initialData, fieldPathUseCase, {
|
|
1411
1467
|
watch: {
|
|
1412
1468
|
'obj.file.ext': onExtChange,
|
|
@@ -1414,7 +1470,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1414
1470
|
}
|
|
1415
1471
|
});
|
|
1416
1472
|
}),
|
|
1417
|
-
result =
|
|
1473
|
+
result = _renderHook31.result;
|
|
1418
1474
|
var cores = result.current;
|
|
1419
1475
|
var _cores18 = (0, _slicedToArray2["default"])(cores, 2),
|
|
1420
1476
|
setEntity = _cores18[1].setEntity;
|
|
@@ -1968,38 +2024,38 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1968
2024
|
});
|
|
1969
2025
|
(0, _globals.describe)('`useUseCase` should work the same as `useReducers`', function () {
|
|
1970
2026
|
(0, _globals.test)('`entity` should equal `defaultFile`', function () {
|
|
1971
|
-
var
|
|
2027
|
+
var _renderHook32 = (0, _react.renderHook)(function () {
|
|
1972
2028
|
return (0, _.useUseCase)(mathUseCase);
|
|
1973
2029
|
}),
|
|
1974
|
-
result =
|
|
2030
|
+
result = _renderHook32.result;
|
|
1975
2031
|
var reducers = result.current;
|
|
1976
2032
|
(0, _globals.expect)(Array.isArray(reducers)).toBe(false);
|
|
1977
2033
|
});
|
|
1978
2034
|
(0, _globals.test)('returned reducer should work', function () {
|
|
1979
|
-
var
|
|
2035
|
+
var _renderHook33 = (0, _react.renderHook)(function () {
|
|
1980
2036
|
return (0, _.useUseCase)(mathUseCase);
|
|
1981
2037
|
}),
|
|
1982
|
-
result =
|
|
2038
|
+
result = _renderHook33.result;
|
|
1983
2039
|
var reducers = result.current;
|
|
1984
2040
|
var add = reducers.add;
|
|
1985
2041
|
(0, _globals.expect)(add(1, 2)).toBe(3);
|
|
1986
2042
|
});
|
|
1987
2043
|
(0, _globals.test)('`usecase` should be called only once if deps has not provided', function () {
|
|
1988
2044
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
1989
|
-
var
|
|
2045
|
+
var _renderHook34 = (0, _react.renderHook)(function () {
|
|
1990
2046
|
return (0, _.useUseCase)(mockUseCase);
|
|
1991
2047
|
}),
|
|
1992
|
-
rerender =
|
|
2048
|
+
rerender = _renderHook34.rerender;
|
|
1993
2049
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
1994
2050
|
rerender();
|
|
1995
2051
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
1996
2052
|
});
|
|
1997
2053
|
(0, _globals.test)('`usecase` should be called only once if deps has not changed', function () {
|
|
1998
2054
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
1999
|
-
var
|
|
2055
|
+
var _renderHook35 = (0, _react.renderHook)(function () {
|
|
2000
2056
|
return (0, _.useUseCase)(mockUseCase, {}, [1, 'x']);
|
|
2001
2057
|
}),
|
|
2002
|
-
rerender =
|
|
2058
|
+
rerender = _renderHook35.rerender;
|
|
2003
2059
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
2004
2060
|
rerender();
|
|
2005
2061
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
@@ -2007,10 +2063,10 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2007
2063
|
(0, _globals.test)('`usecase` should be called if deps has changed', function () {
|
|
2008
2064
|
var i = 0;
|
|
2009
2065
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
2010
|
-
var
|
|
2066
|
+
var _renderHook36 = (0, _react.renderHook)(function () {
|
|
2011
2067
|
return (0, _.useUseCase)(mockUseCase, {}, [i++, 'x']);
|
|
2012
2068
|
}),
|
|
2013
|
-
rerender =
|
|
2069
|
+
rerender = _renderHook36.rerender;
|
|
2014
2070
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
2015
2071
|
rerender();
|
|
2016
2072
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(2);
|
|
@@ -2094,12 +2150,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2094
2150
|
(0, _globals.expect)(subtractionReducer).toHaveReturnedWith(4);
|
|
2095
2151
|
});
|
|
2096
2152
|
(0, _globals.test)('`options.extraValue` should be added after call `add` method', function () {
|
|
2097
|
-
var
|
|
2153
|
+
var _renderHook37 = (0, _react.renderHook)(function () {
|
|
2098
2154
|
return (0, _.useUseCase)(mathUseCase, {
|
|
2099
2155
|
extraValue: 5
|
|
2100
2156
|
});
|
|
2101
2157
|
}),
|
|
2102
|
-
result =
|
|
2158
|
+
result = _renderHook37.result;
|
|
2103
2159
|
var reducers = result.current;
|
|
2104
2160
|
var add = reducers.add;
|
|
2105
2161
|
(0, _globals.expect)(add(1, 2)).toBe(8);
|
|
@@ -2107,7 +2163,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2107
2163
|
(0, _globals.test)('when `options` has changed, it should not trigger update', function () {
|
|
2108
2164
|
var onUpdate = _globals.jest.fn();
|
|
2109
2165
|
var onDeepUpdate = _globals.jest.fn();
|
|
2110
|
-
var
|
|
2166
|
+
var _renderHook38 = (0, _react.renderHook)(function () {
|
|
2111
2167
|
var _useState7 = (0, _react2.useState)(0),
|
|
2112
2168
|
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
2113
2169
|
extraValue = _useState8[0],
|
|
@@ -2123,7 +2179,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2123
2179
|
}, [reducers]);
|
|
2124
2180
|
return setExtraValue;
|
|
2125
2181
|
}),
|
|
2126
|
-
result =
|
|
2182
|
+
result = _renderHook38.result;
|
|
2127
2183
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2128
2184
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2129
2185
|
(0, _react.act)(function () {
|
|
@@ -2135,7 +2191,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2135
2191
|
(0, _globals.test)('when `deps` change, it should update reducers', function () {
|
|
2136
2192
|
var onUpdate = _globals.jest.fn();
|
|
2137
2193
|
var onDeepUpdate = _globals.jest.fn();
|
|
2138
|
-
var
|
|
2194
|
+
var _renderHook39 = (0, _react.renderHook)(function () {
|
|
2139
2195
|
var _useState9 = (0, _react2.useState)(0),
|
|
2140
2196
|
_useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
|
|
2141
2197
|
extraValue = _useState10[0],
|
|
@@ -2151,7 +2207,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2151
2207
|
}, [reducers]);
|
|
2152
2208
|
return setExtraValue;
|
|
2153
2209
|
}),
|
|
2154
|
-
result =
|
|
2210
|
+
result = _renderHook39.result;
|
|
2155
2211
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2156
2212
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2157
2213
|
(0, _react.act)(function () {
|
|
@@ -2163,7 +2219,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2163
2219
|
(0, _globals.test)('empty `deps` should not update reducers', function () {
|
|
2164
2220
|
var onUpdate = _globals.jest.fn();
|
|
2165
2221
|
var onDeepUpdate = _globals.jest.fn();
|
|
2166
|
-
var
|
|
2222
|
+
var _renderHook40 = (0, _react.renderHook)(function () {
|
|
2167
2223
|
var _useState11 = (0, _react2.useState)(0),
|
|
2168
2224
|
_useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
|
|
2169
2225
|
extraValue = _useState12[0],
|
|
@@ -2179,7 +2235,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2179
2235
|
}, [reducers]);
|
|
2180
2236
|
return setExtraValue;
|
|
2181
2237
|
}),
|
|
2182
|
-
result =
|
|
2238
|
+
result = _renderHook40.result;
|
|
2183
2239
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2184
2240
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2185
2241
|
(0, _react.act)(function () {
|