@mic-rexjs/usecases-react 2.1.1 → 2.1.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.
Files changed (41) hide show
  1. package/dist/index.min.js +1 -1
  2. package/es/hooks/useEntity/index.js +12 -10
  3. package/es/hooks/useProvider/index.js +1 -1
  4. package/es/hooks/useUseCase/index.test.js +12 -12
  5. package/lib/components/UpdateFragment/index.js +3 -4
  6. package/lib/components/UseCaseFragment/index.js +2 -3
  7. package/lib/configs/defaultUseCaseContext/index.js +1 -2
  8. package/lib/configs/useCaseContextReferenceMap/index.js +1 -2
  9. package/lib/enums/UseCaseArgumentTypes/index.js +0 -1
  10. package/lib/enums/UseCaseModeErrors/index.js +0 -1
  11. package/lib/enums/UseCaseModes/index.js +0 -1
  12. package/lib/enums/UseCaseStatuses/index.js +0 -1
  13. package/lib/hooks/useArgumentTypes/index.js +2 -3
  14. package/lib/hooks/useCompareDeps/index.js +2 -3
  15. package/lib/hooks/useConstant/index.js +2 -3
  16. package/lib/hooks/useConstantFn/index.js +2 -3
  17. package/lib/hooks/useContextualItem/index.js +2 -3
  18. package/lib/hooks/useEntity/index.js +14 -13
  19. package/lib/hooks/useGlobalUseCase/index.js +2 -3
  20. package/lib/hooks/useGlobalUseCase/index.test.js +2 -2
  21. package/lib/hooks/useIsRenderingRef/index.js +2 -3
  22. package/lib/hooks/useMemoizedCall/index.js +2 -3
  23. package/lib/hooks/useProvider/index.js +5 -6
  24. package/lib/hooks/useSafeMode/index.js +2 -3
  25. package/lib/hooks/useStatelessUseCase/index.js +2 -3
  26. package/lib/hooks/useStatelessUseCase/index.test.js +2 -2
  27. package/lib/hooks/useUseCase/index.js +2 -3
  28. package/lib/hooks/useUseCase/index.test.js +21 -21
  29. package/lib/hooks/useUseCaseContext/index.js +2 -3
  30. package/lib/hooks/useUseCaseStatuses/index.js +2 -3
  31. package/lib/methods/cacheCall/index.js +2 -3
  32. package/lib/methods/cacheCalls/index.js +2 -3
  33. package/lib/methods/compareProperty/index.js +2 -3
  34. package/lib/methods/fillArguments/index.js +2 -3
  35. package/lib/methods/getRenderingEntity/index.js +2 -3
  36. package/lib/methods/hasField/index.js +2 -3
  37. package/lib/methods/initEntityReducers/index.js +4 -5
  38. package/lib/methods/isSameArray/index.js +2 -3
  39. package/lib/methods/triggerCallbacks/index.js +2 -3
  40. package/lib/methods/triggerWatchers/index.js +2 -3
  41. package/package.json +14 -14
package/dist/index.min.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see index.min.js.LICENSE.txt */
2
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("react"),require("ahooks"),require("@mic-rexjs/usecases"));else if("function"==typeof define&&define.amd)define(["react","ahooks","@mic-rexjs/usecases"],t);else{var n="object"==typeof exports?t(require("react"),require("ahooks"),require("@mic-rexjs/usecases")):t(e.react,e.ahooks,e["@mic-rexjs/usecases"]);for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,((e,t,n)=>(()=>{"use strict";var r={251:(e,t,n)=>{var r=n(156),o=Symbol.for("react.element"),a=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),u=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};t.jsx=function(e,t,n){var r,l={},s=null,c=null;for(r in void 0!==n&&(s=""+n),void 0!==t.key&&(s=""+t.key),void 0!==t.ref&&(c=t.ref),t)a.call(t,r)&&!i.hasOwnProperty(r)&&(l[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===l[r]&&(l[r]=t[r]);return{$$typeof:o,type:e,key:s,ref:c,props:l,_owner:u.current}}},893:(e,t,n)=>{e.exports=n(251)},112:e=>{e.exports=n},749:e=>{e.exports=t},156:t=>{t.exports=e}},o={};function a(e){var t=o[e];if(void 0!==t)return t.exports;var n=o[e]={exports:{}};return r[e](n,n.exports,a),n.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var u={};return(()=>{a.r(u),a.d(u,{UseCaseFragment:()=>A,useGlobalUseCase:()=>N,useStatelessUseCase:()=>U,useUseCase:()=>G});var e=a(893),t=a(156),n=a.n(t);function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function o(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,u,i=[],l=!0,s=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=a.call(n)).done)&&(i.push(r.value),i.length!==t);l=!0);}catch(e){s=!0,o=e}finally{try{if(!l&&null!=n.return&&(u=n.return(),Object(u)!==u))return}finally{if(s)throw o}}return i}}(e,t)||o(e,t)||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.")}()}var l,s=a(749),c=function(e){return i((0,t.useState)((function(){return e})),1)[0]};function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function b(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==f(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==f(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===f(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}!function(e){e[e.None=0]="None",e[e.RootEnabled=2]="RootEnabled",e[e.ContextEnabled=4]="ContextEnabled",e[e.EntityEnabled=8]="EntityEnabled",e[e.ContextRootEnabled=22]="ContextRootEnabled",e[e.EntityRootEnabled=62]="EntityRootEnabled",e[e.StatelessEnabled=72]="StatelessEnabled",e[e.GlobalEnabled=150]="GlobalEnabled"}(l||(l={}));var d=a(112),y=["watch","onChange","options"];function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function p(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?v(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):v(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var E,m,h=function(e){return i((0,t.useState)(e),1)[0]},S=new Map;!function(e){e[e.None=0]="None",e[e.Entity=2]="Entity",e[e.Mode=4]="Mode"}(E||(E={})),function(e){e[e.Normal=2]="Normal",e[e.Stateless=4]="Stateless",e[e.Global=8]="Global",e[e.StatelessGlobal=12]="StatelessGlobal"}(m||(m={}));var g=(0,t.createContext)(null),O=function(e,t){var n=e.length;if(n!==t.length)return!1;for(var r=0;r<n;r++)if(e[r]!==t[r])return!1;return!0},w=function(e,t){var n,r=t||{},o=r.onShouldCache,a=void 0===o?function(){return!0}:o,u=r.onCompare,i=void 0===u?function(e,t){return O(e,t)}:u;return function(){for(var t=a(),r=arguments.length,o=new Array(r),u=0;u<r;u++)o[u]=arguments[u];if(n&&t){var l=n,s=l.parameters,c=l.returnValue;if(i(s,o))return c}var f=e.apply(void 0,o);return t&&(n={parameters:o,returnValue:f}),f}},j=function(e,n,r){var o,a,u,i=(o=r,a=function(e){var n=(0,t.useRef)(0),r=(0,t.useRef)([]),o=r.current,a=O(e,o);return r.current=e,n.current+=a?0:1,n.current}(arguments.length>3&&void 0!==arguments[3]?arguments[3]:[]),u=(0,s.useLatest)(o),(0,s.useCreation)((function(){return w(u.current,{onCompare:function(){return!0}})}),[a,u]));return(0,s.useCreation)((function(){return(e&l.RootEnabled)!==l.RootEnabled&&n?n:i()}),[e,n,i])};function x(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||o(e)||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.")}()}var C,R=function(e,t){return"object"===f(e)&&null!==e&&Object.hasOwn(e,t)},P=function e(t,n,r,o){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],u=void 0,l=i(r.match(/^([^.]+)\.(.+)$/)||[],3),s=l[1],c=void 0===s?r:s,f=l[2],b=void 0===f?"":f,d=R(t,c),y=R(n,c),v=[].concat(x(a),[c]);if(d||y){var p=d?t[c]:u,E=y?n[c]:u;if(b)return void e(p,E,b,o,v);if(p===E)return;o(p,E,v)}else if(!/^\d+^/.test(c))for(var m=Array.isArray(t)?t:[],h=Array.isArray(n)?n:[],S=m.length,g=h.length,O=Math.max(S,g),w=0;w<O;w++)e(m[w],h[w],r,o,[].concat(x(a),["".concat(w)]))},_=function(e,t,n){for(var r=function(){var e=i(a[o],2),r=e[0],u=e[1];P(n,t,r,(function(e,r,o){u({fieldPaths:o,newEntity:t,oldEntity:n,newValue:r,oldValue:e})}))},o=0,a=Object.entries(e);o<a.length;o++)r()};!function(e){e.UnsupportedGlobal='useUseCase does not support "global" mode with entity usecase',e.UnsupportedStateless='useUseCase does not support "stateless" mode with non-entity usecase'}(C||(C={}));var G=function(){for(var e=arguments.length,r=new Array(e),o=0;o<e;o++)r[o]=arguments[o];var a,u=function(e){return h((function(){var t=E.None,n=i(e,3),r=n[1],o=n[2],a=f(r);switch("function"===a&&(t|=E.Entity),"number"){case a:case f(o):t|=E.Mode}return t}))}(r),b=function(e,t){var n=i(e,5),r=n[0],o=n[1],a=n[2],u=n[3],l=n[4],s=(t&E.Entity)===E.Entity,c=(t&E.Mode)===E.Mode;return s?c?[r,o,a,u||{},l||[]]:[r,o,m.Normal,a||{},u||[]]:c?[null,r,o,a||{},u||[]]:[null,r,m.Normal,o||{},a||[]]}(r,u),v=i(b,5),O=v[0],x=v[1],R=v[2],P=v[3],G=v[4],A=c(x),N=A,U=A,M=((a=(0,t.useRef)(!0)).current=!0,(0,t.useEffect)((function(){a.current=!1})),a),k=function(e,t){return h((function(){if((t&E.Entity)===E.Entity){if((e&m.Global)===m.Global)throw C.UnsupportedGlobal;return e}if((e&m.Stateless)===m.Stateless)throw C.UnsupportedStateless;return e}))}(R,u),I=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:E.None,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:m.Normal,o=S,a=h((function(){if(o.has(e)){var a=o.get(e),u=a.value,i=a.times;return o.set(e,{value:u,times:i+1}),u}switch(!0){case(r&m.Global)===m.Global:case(n&E.Entity)===E.Entity:break;default:return g}var l=(0,t.createContext)(null);return o.set(e,{value:l,times:1}),l}));return(0,s.useUnmount)((function(){if(o.has(e)){var t=o.get(e),n=t.value,r=t.times;a===n&&(1!==r?o.set(e,{value:n,times:r-1}):o.delete(e))}})),a}(A,u,k),T=(0,t.useContext)(I),V=T,q=function(e,t,n){return(0,s.useCreation)((function(){var r=l.None,o=(n||{}).store;return(e&E.Entity)===E.Entity&&(r|=l.EntityRootEnabled),r|=null===n?l.RootEnabled:l.ContextEnabled,o&&(r|=l.EntityEnabled),(t&m.Stateless)===m.Stateless&&(r|=l.StatelessEnabled),(t&m.Global)===m.Global&&(r|=l.GlobalEnabled),r}),[e,n,t])}(u,k,T),D=(T||{}).reducers,L=void 0===D?null:D,$=(V||{}).store,F=i(function(e,n,r,o){var a=i((0,t.useState)(n),2),u=a[0],c=a[1],f=(null==r?void 0:r.getValue())||null,b=function(e,t,n,r){return(e&l.EntityRootEnabled)!==l.EntityRootEnabled?r:(e&l.StatelessEnabled)!==l.StatelessEnabled?t:"function"==typeof n?n():n}(e,u,n,f),y=(0,s.useLatest)(o),v=(e&l.EntityRootEnabled)===l.EntityRootEnabled,p=j(e,r,(function(){if(!v)return new d.EntityStore(null);var t=(e&l.StatelessEnabled)===l.StatelessEnabled;return new d.EntityStore(b,(function(e){t||c(e)}))}));return v&&p.setValue(b),(0,t.useEffect)((function(){if((e&l.EntityEnabled)===l.EntityEnabled){var t=function(e,t){var n=y.current,r=n.onChange,o=n.watch;o&&_(o,e,t),null==r||r(e,t)};return p.watch(t),function(){p.unwatch(t)}}}),[e,p,y]),(0,s.useCreation)((function(){return[b,p]}),[b,p])}(q,O,void 0===$?null:$,P),2),B=F[0],W=F[1],Y=j(q,L,(function(){return(q&l.EntityEnabled)!==l.EntityEnabled?N(P):function(e,t,n){n.watch,n.onChange;var r=n.options,o=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(n,y);return(0,d.createEntityReducers)(t,e,p(p(p({},o),r),{},{onGenerate:function(e,t){return t}}))}(U,W,P)}),G),z=function(e,r,o,a){var u=o.getValue(),i=(0,t.useMemo)((function(){return(e&l.EntityEnabled)===l.EntityEnabled?{store:o,reducers:a}:{reducers:a}}),[e,u,o,a]),f=(0,s.useLatest)(i);return c((function(e){var t=e.children,o=e.with,a=void 0===o?[]:o,u=r.Provider;return n().createElement(u,{value:f.current},a.reduceRight((function(e,t){return n().createElement(t,{},e)}),t))}))}(q,I,W,Y);return(0,s.useCreation)((function(){if((q&l.ContextEnabled)!==l.ContextEnabled)return Y;var e=(q&l.RootEnabled)===l.RootEnabled;if((q&l.EntityEnabled)!==l.EntityEnabled)return e?[Y,z]:Y;var t=function(e,t){var n={};return Object.entries(e).forEach((function(e){var r=i(e,2),o=r[0],a=r[1];n[o]=w(a,t)})),n}(Y,{onShouldCache:function(){return M.current}});return e?[B,t,z]:[B,t]}),[q,B,Y,z,M])},A=function(n){var r=n.usecase,o=n.watch,a=n.onChange;return G(r,{watch:o,onChange:a}),(0,e.jsx)(t.Fragment,{})},N=function(e,t,n){return G(e,m.Global,t,n)},U=function(e,t,n,r){return G(e,t,m.Stateless,n,r)}})(),u})()));
2
+ (()=>{var t={20:(t,e,n)=>{"use strict";var r=n(594),o=Symbol.for("react.element"),a=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),u=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,l={},s=null,c=null;for(r in void 0!==n&&(s=""+n),void 0!==e.key&&(s=""+e.key),void 0!==e.ref&&(c=e.ref),e)a.call(e,r)&&!i.hasOwnProperty(r)&&(l[r]=e[r]);if(t&&t.defaultProps)for(r in e=t.defaultProps)void 0===l[r]&&(l[r]=e[r]);return{$$typeof:o,type:t,key:s,ref:c,props:l,_owner:u.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 a=e[r]={exports:{}};return t[r](a,a.exports,n),a.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:()=>A,useGlobalUseCase:()=>N,useStatelessUseCase:()=>M,useUseCase:()=>G});var t=n(848),e=n(594),o=n.n(e);function a(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 u(t,e){if(t){if("string"==typeof t)return a(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)?a(t,e):void 0}}function i(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,a,u,i=[],l=!0,s=!1;try{if(a=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=a.call(n)).done)&&(i.push(r.value),i.length!==e);l=!0);}catch(t){s=!0,o=t}finally{try{if(!l&&null!=n.return&&(u=n.return(),Object(u)!==u))return}finally{if(s)throw o}}return i}}(t,e)||u(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 s,c=function(t){return i((0,e.useState)((function(){return t})),1)[0]};function f(t){return f="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},f(t)}function b(t){var e=function(t,e){if("object"!=f(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!=f(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==f(e)?e:String(e)}!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=22]="ContextRootEnabled",t[t.EntityRootEnabled=62]="EntityRootEnabled",t[t.StatelessEnabled=72]="StatelessEnabled",t[t.GlobalEnabled=150]="GlobalEnabled"}(s||(s={}));const d=usecases;var y=["watch","onChange","options"];function v(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 E(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?v(Object(n),!0).forEach((function(e){var r,o,a;r=t,o=e,a=n[e],(o=b(o))in r?Object.defineProperty(r,o,{value:a,enumerable:!0,configurable:!0,writable:!0}):r[o]=a})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):v(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var p,m,h=function(t){return i((0,e.useState)(t),1)[0]},S=new Map;!function(t){t[t.None=0]="None",t[t.Entity=2]="Entity",t[t.Mode=4]="Mode"}(p||(p={})),function(t){t[t.Normal=2]="Normal",t[t.Stateless=4]="Stateless",t[t.Global=8]="Global",t[t.StatelessGlobal=12]="StatelessGlobal"}(m||(m={}));var g=(0,e.createContext)(null),O=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},w=function(t,e){var n,r=e||{},o=r.onShouldCache,a=void 0===o?function(){return!0}:o,u=r.onCompare,i=void 0===u?function(t,e){return O(t,e)}:u;return function(){for(var e=a(),r=arguments.length,o=new Array(r),u=0;u<r;u++)o[u]=arguments[u];if(n&&e){var l=n,s=l.parameters,c=l.returnValue;if(i(s,o))return c}var f=t.apply(void 0,o);return e&&(n={parameters:o,returnValue:f}),f}},j=function(t,n,r){var o,a,u,i=(o=r,a=function(t){var n=(0,e.useRef)(0),r=(0,e.useRef)([]),o=r.current,a=O(t,o);return r.current=t,n.current+=a?0:1,n.current}(arguments.length>3&&void 0!==arguments[3]?arguments[3]:[]),u=(0,l.useLatest)(o),(0,l.useCreation)((function(){return w(u.current,{onCompare:function(){return!0}})}),[a,u]));return(0,l.useCreation)((function(){return(t&s.RootEnabled)!==s.RootEnabled&&n?n:i()}),[t,n,i])};function C(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)||u(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.")}()}var R,P=function(t,e){return"object"===f(t)&&null!==t&&Object.hasOwn(t,e)},_=function t(e,n,r,o){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],u=void 0,l=i(r.match(/^([^.]+)\.(.+)$/)||[],3),s=l[1],c=void 0===s?r:s,f=l[2],b=void 0===f?"":f,d=P(e,c),y=P(n,c),v=[].concat(C(a),[c]);if(d||y){var E=d?e[c]:u,p=y?n[c]:u;if(b)return void t(E,p,b,o,v);if(E===p)return;o(E,p,v)}else if(!/^\d+^/.test(c))for(var m=Array.isArray(e)?e:[],h=Array.isArray(n)?n:[],S=m.length,g=h.length,O=Math.max(S,g),w=0;w<O;w++)t(m[w],h[w],r,o,[].concat(C(a),["".concat(w)]))},x=function(t,e,n){for(var r=function(){var t=i(a[o],2),r=t[0],u=t[1];_(n,e,r,(function(t,r,o){u({fieldPaths:o,newEntity:e,oldEntity:n,newValue:r,oldValue:t})}))},o=0,a=Object.entries(t);o<a.length;o++)r()};!function(t){t.UnsupportedGlobal='useUseCase does not support "global" mode with entity usecase',t.UnsupportedStateless='useUseCase does not support "stateless" mode with non-entity usecase'}(R||(R={}));var G=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];var a,u=function(t){return h((function(){var e=p.None,n=i(t,3),r=n[1],o=n[2],a=f(r);switch("function"===a&&(e|=p.Entity),"number"){case a:case f(o):e|=p.Mode}return e}))}(n),b=function(t,e){var n=i(t,5),r=n[0],o=n[1],a=n[2],u=n[3],l=n[4],s=(e&p.Entity)===p.Entity,c=(e&p.Mode)===p.Mode;return s?c?[r,o,a,u||{},l||[]]:[r,o,m.Normal,a||{},u||[]]:c?[null,r,o,a||{},u||[]]:[null,r,m.Normal,o||{},a||[]]}(n,u),v=i(b,5),O=v[0],C=v[1],P=v[2],_=v[3],G=v[4],A=c(C),N=A,M=A,U=((a=(0,e.useRef)(!0)).current=!0,(0,e.useEffect)((function(){a.current=!1})),a),I=function(t,e){return h((function(){if((e&p.Entity)===p.Entity){if((t&m.Global)===m.Global)throw R.UnsupportedGlobal;return t}if((t&m.Stateless)===m.Stateless)throw R.UnsupportedStateless;return t}))}(P,u),k=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p.None,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:m.Normal,o=S,a=h((function(){if(o.has(t)){var a=o.get(t),u=a.value,i=a.times;return o.set(t,{value:u,times:i+1}),u}switch(!0){case(r&m.Global)===m.Global:case(n&p.Entity)===p.Entity:break;default:return g}var l=(0,e.createContext)(null);return o.set(t,{value:l,times:1}),l}));return(0,l.useUnmount)((function(){if(o.has(t)){var e=o.get(t),n=e.value,r=e.times;a===n&&(1!==r?o.set(t,{value:n,times:r-1}):o.delete(t))}})),a}(A,u,I),T=(0,e.useContext)(k),D=T,L=function(t,e,n){return(0,l.useCreation)((function(){var r=s.None,o=(n||{}).store;return(t&p.Entity)===p.Entity&&(r|=s.EntityRootEnabled),r|=null===n?s.RootEnabled:s.ContextEnabled,o&&(r|=s.EntityEnabled),(e&m.Stateless)===m.Stateless&&(r|=s.StatelessEnabled),(e&m.Global)===m.Global&&(r|=s.GlobalEnabled),r}),[t,n,e])}(u,I,T),V=(T||{}).reducers,$=void 0===V?null:V,F=(D||{}).store,B=i(function(t,n,r,o){var a=i((0,e.useState)(n),2),u=a[0],c=a[1],f=r?r.value:null,b=function(t,e,n,r){return(t&s.EntityRootEnabled)!==s.EntityRootEnabled?r:(t&s.StatelessEnabled)!==s.StatelessEnabled?e:"function"==typeof n?n():n}(t,u,n,f),y=(0,l.useLatest)(o),v=(t&s.EntityRootEnabled)===s.EntityRootEnabled,E=j(t,r,(function(){if(!v)return new d.EntityStore(null);var e=(t&s.StatelessEnabled)===s.StatelessEnabled;return new d.EntityStore(b,{onChange:function(t){e||c(t)}})}));return v&&(E.value=b),(0,e.useEffect)((function(){if((t&s.EntityEnabled)===s.EntityEnabled){var e=function(t,e){var n=y.current,r=n.onChange,o=n.watch;o&&x(o,t,e),null==r||r(t,e)};return E.watch(e),function(){E.unwatch(e)}}}),[t,E,y]),(0,l.useCreation)((function(){return[b,E]}),[b,E])}(L,O,void 0===F?null:F,_),2),W=B[0],Y=B[1],q=j(L,$,(function(){return(L&s.EntityEnabled)!==s.EntityEnabled?N(_):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={},a=Object.keys(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}(n,y);return(0,d.createEntityReducers)(e,t,E(E(E({},o),r),{},{onGenerate:function(t,e){return e}}))}(M,Y,_)}),G),z=function(t,n,r,a){var u=r.value,i=(0,e.useMemo)((function(){return(t&s.EntityEnabled)===s.EntityEnabled?{store:r,reducers:a}:{reducers:a}}),[t,u,r,a]),f=(0,l.useLatest)(i);return c((function(t){var e=t.children,r=t.with,a=void 0===r?[]:r,u=n.Provider;return o().createElement(u,{value:f.current},a.reduceRight((function(t,e){return o().createElement(e,{},t)}),e))}))}(L,k,Y,q);return(0,l.useCreation)((function(){if((L&s.ContextEnabled)!==s.ContextEnabled)return q;var t=(L&s.RootEnabled)===s.RootEnabled;if((L&s.EntityEnabled)!==s.EntityEnabled)return t?[q,z]:q;var e=function(t,e){var n={};return Object.entries(t).forEach((function(t){var r=i(t,2),o=r[0],a=r[1];n[o]=w(a,e)})),n}(q,{onShouldCache:function(){return U.current}});return t?[W,e,z]:[W,e]}),[L,W,q,z,U])},A=function(n){var r=n.usecase,o=n.watch,a=n.onChange;return G(r,{watch:o,onChange:a}),(0,t.jsx)(e.Fragment,{})},N=function(t,e,n){return G(t,m.Global,e,n)},M=function(t,e,n,r){return G(t,e,m.Stateless,n,r)}})();var o=usecases="undefined"==typeof usecases?{}:usecases;for(var a in r)o[a]=r[a];r.__esModule&&Object.defineProperty(o,"__esModule",{value:!0})})();
@@ -7,7 +7,7 @@ import { useCreation, useLatest } from 'ahooks';
7
7
  import { triggerWatchers } from '../../methods/triggerWatchers';
8
8
  export const useEntity = (statuses, rootEntity, contextStore, options) => {
9
9
  const [entityState, setEntityState] = useState(rootEntity);
10
- const contextEntity = (contextStore?.getValue() || null);
10
+ const contextEntity = (contextStore ? contextStore.value : null);
11
11
  const renderingEntity = getRenderingEntity(statuses, entityState, rootEntity, contextEntity);
12
12
  const optionsRef = useLatest(options);
13
13
  const entityRootEnabled = (statuses & UseCaseStatuses.EntityRootEnabled) === UseCaseStatuses.EntityRootEnabled;
@@ -16,31 +16,33 @@ export const useEntity = (statuses, rootEntity, contextStore, options) => {
16
16
  return new EntityStore(null);
17
17
  }
18
18
  const stateless = (statuses & UseCaseStatuses.StatelessEnabled) === UseCaseStatuses.StatelessEnabled;
19
- return new EntityStore(renderingEntity, (newEntity) => {
20
- if (stateless) {
21
- return;
22
- }
23
- setEntityState(newEntity);
19
+ return new EntityStore(renderingEntity, {
20
+ onChange(newEntity) {
21
+ if (stateless) {
22
+ return;
23
+ }
24
+ setEntityState(newEntity);
25
+ },
24
26
  });
25
27
  });
26
28
  if (entityRootEnabled) {
27
29
  // 执行同步操作
28
- store.setValue(renderingEntity);
30
+ store.value = renderingEntity;
29
31
  }
30
32
  useEffect(() => {
31
33
  if ((statuses & UseCaseStatuses.EntityEnabled) !== UseCaseStatuses.EntityEnabled) {
32
34
  return;
33
35
  }
34
- const watcher = (newEntity, oldEntity) => {
36
+ const onEntityChange = (newEntity, oldEntity) => {
35
37
  const { onChange, watch } = optionsRef.current;
36
38
  if (watch) {
37
39
  triggerWatchers(watch, newEntity, oldEntity);
38
40
  }
39
41
  onChange?.(newEntity, oldEntity);
40
42
  };
41
- store.watch(watcher);
43
+ store.watch(onEntityChange);
42
44
  return () => {
43
- store.unwatch(watcher);
45
+ store.unwatch(onEntityChange);
44
46
  };
45
47
  }, [statuses, store, optionsRef]);
46
48
  return useCreation(() => {
@@ -3,7 +3,7 @@ import React, { useMemo } from 'react';
3
3
  import { useConstantFn } from '../useConstantFn';
4
4
  import { UseCaseStatuses } from '../../enums/UseCaseStatuses';
5
5
  export const useProvider = (statuses, context, store, reducers) => {
6
- const entity = store.getValue();
6
+ const { value: entity } = store;
7
7
  const contextValue = useMemo(() => {
8
8
  void entity;
9
9
  if ((statuses & UseCaseStatuses.EntityEnabled) === UseCaseStatuses.EntityEnabled) {
@@ -427,13 +427,13 @@ describe('useUseCase', () => {
427
427
  toThrow: '',
428
428
  },
429
429
  ])('does not support global mode', ({ mode, toThrow }) => {
430
- expect(() => {
431
- renderHook(() => {
430
+ renderHook(() => {
431
+ expect(() => {
432
432
  useUseCase(defaultFile, fileUseCase, mode);
433
- });
434
- // 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
435
- throw '';
436
- }).toThrow(toThrow);
433
+ // 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
434
+ throw '';
435
+ }).toThrow(toThrow);
436
+ });
437
437
  });
438
438
  test('stateless mode should not generate new reducers when `yeild entity`', () => {
439
439
  const onUpdate = jest.fn();
@@ -1432,13 +1432,13 @@ describe('useUseCase', () => {
1432
1432
  toThrow: UseCaseModeErrors.UnsupportedStateless,
1433
1433
  },
1434
1434
  ])('does not support stateless mode', ({ mode, toThrow }) => {
1435
- expect(() => {
1436
- renderHook(() => {
1435
+ renderHook(() => {
1436
+ expect(() => {
1437
1437
  useUseCase(mathUseCase, mode);
1438
- });
1439
- // 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
1440
- throw '';
1441
- }).toThrow(toThrow);
1438
+ // 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
1439
+ throw '';
1440
+ }).toThrow(toThrow);
1441
+ });
1442
1442
  });
1443
1443
  test('the return value should be `reducers` object at child component', () => {
1444
1444
  const onMountA = jest.fn();
@@ -6,11 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.UpdateFragment = void 0;
7
7
  var _jsxRuntime = require("react/jsx-runtime");
8
8
  var _react = require("react");
9
- var UpdateFragment = function UpdateFragment(_ref) {
9
+ var UpdateFragment = exports.UpdateFragment = function UpdateFragment(_ref) {
10
10
  var onUpdate = _ref.onUpdate;
11
11
  (0, _react.useEffect)(function () {
12
- onUpdate === null || onUpdate === void 0 ? void 0 : onUpdate();
12
+ onUpdate === null || onUpdate === void 0 || onUpdate();
13
13
  });
14
14
  return (0, _jsxRuntime.jsx)(_react.Fragment, {});
15
- };
16
- exports.UpdateFragment = UpdateFragment;
15
+ };
@@ -7,7 +7,7 @@ exports.UseCaseFragment = void 0;
7
7
  var _jsxRuntime = require("react/jsx-runtime");
8
8
  var _react = require("react");
9
9
  var _useUseCase = require("../../hooks/useUseCase");
10
- var UseCaseFragment = function UseCaseFragment(_ref) {
10
+ var UseCaseFragment = exports.UseCaseFragment = function UseCaseFragment(_ref) {
11
11
  var usecase = _ref.usecase,
12
12
  watch = _ref.watch,
13
13
  onChange = _ref.onChange;
@@ -16,5 +16,4 @@ var UseCaseFragment = function UseCaseFragment(_ref) {
16
16
  onChange: onChange
17
17
  });
18
18
  return (0, _jsxRuntime.jsx)(_react.Fragment, {});
19
- };
20
- exports.UseCaseFragment = UseCaseFragment;
19
+ };
@@ -5,5 +5,4 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.defaultUseCaseContext = void 0;
7
7
  var _react = require("react");
8
- var defaultUseCaseContext = (0, _react.createContext)(null);
9
- exports.defaultUseCaseContext = defaultUseCaseContext;
8
+ var defaultUseCaseContext = exports.defaultUseCaseContext = (0, _react.createContext)(null);
@@ -4,5 +4,4 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.usecaseContextReferenceMap = void 0;
7
- var usecaseContextReferenceMap = new Map();
8
- exports.usecaseContextReferenceMap = usecaseContextReferenceMap;
7
+ var usecaseContextReferenceMap = exports.usecaseContextReferenceMap = new Map();
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.UseCaseArgumentTypes = void 0;
7
7
  var UseCaseArgumentTypes;
8
- exports.UseCaseArgumentTypes = UseCaseArgumentTypes;
9
8
  (function (UseCaseArgumentTypes) {
10
9
  UseCaseArgumentTypes[UseCaseArgumentTypes["None"] = 0] = "None";
11
10
  UseCaseArgumentTypes[UseCaseArgumentTypes["Entity"] = 2] = "Entity";
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.UseCaseModeErrors = void 0;
7
7
  var UseCaseModeErrors;
8
- exports.UseCaseModeErrors = UseCaseModeErrors;
9
8
  (function (UseCaseModeErrors) {
10
9
  UseCaseModeErrors["UnsupportedGlobal"] = "useUseCase does not support \"global\" mode with entity usecase";
11
10
  UseCaseModeErrors["UnsupportedStateless"] = "useUseCase does not support \"stateless\" mode with non-entity usecase";
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.UseCaseModes = void 0;
7
7
  var UseCaseModes;
8
- exports.UseCaseModes = UseCaseModes;
9
8
  (function (UseCaseModes) {
10
9
  UseCaseModes[UseCaseModes["Normal"] = 2] = "Normal";
11
10
  UseCaseModes[UseCaseModes["Stateless"] = 4] = "Stateless";
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.UseCaseStatuses = void 0;
7
7
  var UseCaseStatuses;
8
- exports.UseCaseStatuses = UseCaseStatuses;
9
8
  (function (UseCaseStatuses) {
10
9
  UseCaseStatuses[UseCaseStatuses["None"] = 0] = "None";
11
10
  // 是否需要初始化根 `redurcers`
@@ -9,7 +9,7 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _UseCaseArgumentTypes = require("../../enums/UseCaseArgumentTypes");
11
11
  var _useConstant = require("../useConstant");
12
- var useArgumentTypes = function useArgumentTypes(args) {
12
+ var useArgumentTypes = exports.useArgumentTypes = function useArgumentTypes(args) {
13
13
  return (0, _useConstant.useConstant)(function () {
14
14
  var types = _UseCaseArgumentTypes.UseCaseArgumentTypes.None;
15
15
  var _args = (0, _slicedToArray2["default"])(args, 3),
@@ -27,5 +27,4 @@ var useArgumentTypes = function useArgumentTypes(args) {
27
27
  }
28
28
  return types;
29
29
  });
30
- };
31
- exports.useArgumentTypes = useArgumentTypes;
30
+ };
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useCompareDeps = void 0;
7
7
  var _react = require("react");
8
8
  var _isSameArray = require("../../methods/isSameArray");
9
- var useCompareDeps = function useCompareDeps(deps) {
9
+ var useCompareDeps = exports.useCompareDeps = function useCompareDeps(deps) {
10
10
  var updateTimesRef = (0, _react.useRef)(0);
11
11
  var prevDepsRef = (0, _react.useRef)([]);
12
12
  var prevDeps = prevDepsRef.current;
@@ -14,5 +14,4 @@ var useCompareDeps = function useCompareDeps(deps) {
14
14
  prevDepsRef.current = deps;
15
15
  updateTimesRef.current += isSame ? 0 : 1;
16
16
  return updateTimesRef.current;
17
- };
18
- exports.useCompareDeps = useCompareDeps;
17
+ };
@@ -7,10 +7,9 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.useConstant = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
9
  var _react = require("react");
10
- var useConstant = function useConstant(initialValue) {
10
+ var useConstant = exports.useConstant = function useConstant(initialValue) {
11
11
  var _useState = (0, _react.useState)(initialValue),
12
12
  _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
13
13
  value = _useState2[0];
14
14
  return value;
15
- };
16
- exports.useConstant = useConstant;
15
+ };
@@ -7,12 +7,11 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.useConstantFn = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
9
  var _react = require("react");
10
- var useConstantFn = function useConstantFn(initialValue) {
10
+ var useConstantFn = exports.useConstantFn = function useConstantFn(initialValue) {
11
11
  var _useState = (0, _react.useState)(function () {
12
12
  return initialValue;
13
13
  }),
14
14
  _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
15
15
  value = _useState2[0];
16
16
  return value;
17
- };
18
- exports.useConstantFn = useConstantFn;
17
+ };
@@ -7,7 +7,7 @@ exports.useContextualItem = void 0;
7
7
  var _ahooks = require("ahooks");
8
8
  var _UseCaseStatuses = require("../../enums/UseCaseStatuses");
9
9
  var _useMemoizedCall = require("../useMemoizedCall");
10
- var useContextualItem = function useContextualItem(statuses, contextItem, createFactory) {
10
+ var useContextualItem = exports.useContextualItem = function useContextualItem(statuses, contextItem, createFactory) {
11
11
  var deps = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
12
12
  var create = (0, _useMemoizedCall.useMemoizedCall)(createFactory, deps);
13
13
  return (0, _ahooks.useCreation)(function () {
@@ -17,5 +17,4 @@ var useContextualItem = function useContextualItem(statuses, contextItem, create
17
17
  }
18
18
  return create();
19
19
  }, [statuses, contextItem, create]);
20
- };
21
- exports.useContextualItem = useContextualItem;
20
+ };
@@ -13,12 +13,12 @@ var _getRenderingEntity = require("../../methods/getRenderingEntity");
13
13
  var _useContextualItem = require("../useContextualItem");
14
14
  var _ahooks = require("ahooks");
15
15
  var _triggerWatchers = require("../../methods/triggerWatchers");
16
- var useEntity = function useEntity(statuses, rootEntity, contextStore, options) {
16
+ var useEntity = exports.useEntity = function useEntity(statuses, rootEntity, contextStore, options) {
17
17
  var _useState = (0, _react.useState)(rootEntity),
18
18
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
19
19
  entityState = _useState2[0],
20
20
  setEntityState = _useState2[1];
21
- var contextEntity = (contextStore === null || contextStore === void 0 ? void 0 : contextStore.getValue()) || null;
21
+ var contextEntity = contextStore ? contextStore.value : null;
22
22
  var renderingEntity = (0, _getRenderingEntity.getRenderingEntity)(statuses, entityState, rootEntity, contextEntity);
23
23
  var optionsRef = (0, _ahooks.useLatest)(options);
24
24
  var entityRootEnabled = (statuses & _UseCaseStatuses.UseCaseStatuses.EntityRootEnabled) === _UseCaseStatuses.UseCaseStatuses.EntityRootEnabled;
@@ -27,37 +27,38 @@ var useEntity = function useEntity(statuses, rootEntity, contextStore, options)
27
27
  return new _usecases.EntityStore(null);
28
28
  }
29
29
  var stateless = (statuses & _UseCaseStatuses.UseCaseStatuses.StatelessEnabled) === _UseCaseStatuses.UseCaseStatuses.StatelessEnabled;
30
- return new _usecases.EntityStore(renderingEntity, function (newEntity) {
31
- if (stateless) {
32
- return;
30
+ return new _usecases.EntityStore(renderingEntity, {
31
+ onChange: function onChange(newEntity) {
32
+ if (stateless) {
33
+ return;
34
+ }
35
+ setEntityState(newEntity);
33
36
  }
34
- setEntityState(newEntity);
35
37
  });
36
38
  });
37
39
  if (entityRootEnabled) {
38
40
  // 执行同步操作
39
- store.setValue(renderingEntity);
41
+ store.value = renderingEntity;
40
42
  }
41
43
  (0, _react.useEffect)(function () {
42
44
  if ((statuses & _UseCaseStatuses.UseCaseStatuses.EntityEnabled) !== _UseCaseStatuses.UseCaseStatuses.EntityEnabled) {
43
45
  return;
44
46
  }
45
- var watcher = function watcher(newEntity, oldEntity) {
47
+ var onEntityChange = function onEntityChange(newEntity, oldEntity) {
46
48
  var _optionsRef$current = optionsRef.current,
47
49
  onChange = _optionsRef$current.onChange,
48
50
  watch = _optionsRef$current.watch;
49
51
  if (watch) {
50
52
  (0, _triggerWatchers.triggerWatchers)(watch, newEntity, oldEntity);
51
53
  }
52
- onChange === null || onChange === void 0 ? void 0 : onChange(newEntity, oldEntity);
54
+ onChange === null || onChange === void 0 || onChange(newEntity, oldEntity);
53
55
  };
54
- store.watch(watcher);
56
+ store.watch(onEntityChange);
55
57
  return function () {
56
- store.unwatch(watcher);
58
+ store.unwatch(onEntityChange);
57
59
  };
58
60
  }, [statuses, store, optionsRef]);
59
61
  return (0, _ahooks.useCreation)(function () {
60
62
  return [renderingEntity, store];
61
63
  }, [renderingEntity, store]);
62
- };
63
- exports.useEntity = useEntity;
64
+ };
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useGlobalUseCase = void 0;
7
7
  var _useUseCase = require("../useUseCase");
8
8
  var _UseCaseModes = require("../../enums/UseCaseModes");
9
- var useGlobalUseCase = function useGlobalUseCase(useCase, options, deps) {
9
+ var useGlobalUseCase = exports.useGlobalUseCase = function useGlobalUseCase(useCase, options, deps) {
10
10
  return (0, _useUseCase.useUseCase)(useCase, _UseCaseModes.UseCaseModes.Global, options, deps);
11
- };
12
- exports.useGlobalUseCase = useGlobalUseCase;
11
+ };
@@ -6,8 +6,8 @@ var _globals = require("@jest/globals");
6
6
  var _UseCaseModes = require("../../enums/UseCaseModes");
7
7
  var _react = require("@testing-library/react");
8
8
  var useUseCaseModule = _interopRequireWildcard(require("../useUseCase"));
9
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
9
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
10
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
11
11
  var mathUseCase = function mathUseCase() {
12
12
  return {};
13
13
  };
@@ -5,12 +5,11 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.useIsRenderingRef = void 0;
7
7
  var _react = require("react");
8
- var useIsRenderingRef = function useIsRenderingRef() {
8
+ var useIsRenderingRef = exports.useIsRenderingRef = function useIsRenderingRef() {
9
9
  var ref = (0, _react.useRef)(true);
10
10
  ref.current = true;
11
11
  (0, _react.useEffect)(function () {
12
12
  ref.current = false;
13
13
  });
14
14
  return ref;
15
- };
16
- exports.useIsRenderingRef = useIsRenderingRef;
15
+ };
@@ -7,7 +7,7 @@ exports.useMemoizedCall = void 0;
7
7
  var _ahooks = require("ahooks");
8
8
  var _useCompareDeps = require("../useCompareDeps");
9
9
  var _cacheCall = require("../../methods/cacheCall");
10
- var useMemoizedCall = function useMemoizedCall(factory, deps) {
10
+ var useMemoizedCall = exports.useMemoizedCall = function useMemoizedCall(factory, deps) {
11
11
  var depsKey = (0, _useCompareDeps.useCompareDeps)(deps);
12
12
  var factoryRef = (0, _ahooks.useLatest)(factory);
13
13
  return (0, _ahooks.useCreation)(function () {
@@ -18,5 +18,4 @@ var useMemoizedCall = function useMemoizedCall(factory, deps) {
18
18
  }
19
19
  });
20
20
  }, [depsKey, factoryRef]);
21
- };
22
- exports.useMemoizedCall = useMemoizedCall;
21
+ };
@@ -9,10 +9,10 @@ var _ahooks = require("ahooks");
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _useConstantFn = require("../useConstantFn");
11
11
  var _UseCaseStatuses = require("../../enums/UseCaseStatuses");
12
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
- var useProvider = function useProvider(statuses, context, store, reducers) {
15
- var entity = store.getValue();
12
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
13
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
14
+ var useProvider = exports.useProvider = function useProvider(statuses, context, store, reducers) {
15
+ var entity = store.value;
16
16
  var contextValue = (0, _react.useMemo)(function () {
17
17
  void entity;
18
18
  if ((statuses & _UseCaseStatuses.UseCaseStatuses.EntityEnabled) === _UseCaseStatuses.UseCaseStatuses.EntityEnabled) {
@@ -37,5 +37,4 @@ var useProvider = function useProvider(statuses, context, store, reducers) {
37
37
  return _react["default"].createElement(withProvider, {}, currentChildren);
38
38
  }, children));
39
39
  });
40
- };
41
- exports.useProvider = useProvider;
40
+ };
@@ -8,7 +8,7 @@ var _UseCaseArgumentTypes = require("../../enums/UseCaseArgumentTypes");
8
8
  var _UseCaseModes = require("../../enums/UseCaseModes");
9
9
  var _useConstant = require("../useConstant");
10
10
  var _UseCaseModeErrors = require("../../enums/UseCaseModeErrors");
11
- var useSafeMode = function useSafeMode(unsafeMode, argumentTypes) {
11
+ var useSafeMode = exports.useSafeMode = function useSafeMode(unsafeMode, argumentTypes) {
12
12
  return (0, _useConstant.useConstant)(function () {
13
13
  if ((argumentTypes & _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity) === _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity) {
14
14
  if ((unsafeMode & _UseCaseModes.UseCaseModes.Global) === _UseCaseModes.UseCaseModes.Global) {
@@ -21,5 +21,4 @@ var useSafeMode = function useSafeMode(unsafeMode, argumentTypes) {
21
21
  }
22
22
  return unsafeMode;
23
23
  });
24
- };
25
- exports.useSafeMode = useSafeMode;
24
+ };
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useStatelessUseCase = void 0;
7
7
  var _useUseCase = require("../useUseCase");
8
8
  var _UseCaseModes = require("../../enums/UseCaseModes");
9
- var useStatelessUseCase = function useStatelessUseCase(entity, useCase, options, deps) {
9
+ var useStatelessUseCase = exports.useStatelessUseCase = function useStatelessUseCase(entity, useCase, options, deps) {
10
10
  return (0, _useUseCase.useUseCase)(entity, useCase, _UseCaseModes.UseCaseModes.Stateless, options, deps);
11
- };
12
- exports.useStatelessUseCase = useStatelessUseCase;
11
+ };
@@ -7,8 +7,8 @@ var _UseCaseModes = require("../../enums/UseCaseModes");
7
7
  var _react = require("@testing-library/react");
8
8
  var useUseCaseModule = _interopRequireWildcard(require("../useUseCase"));
9
9
  var _ = require(".");
10
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
10
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
11
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
12
12
  var numberUseCase = function numberUseCase() {
13
13
  return (0, _usecases.entityUseCase)();
14
14
  };
@@ -21,7 +21,7 @@ var _useEntity3 = require("../useEntity");
21
21
  var _useContextualItem = require("../useContextualItem");
22
22
  var _cacheCalls = require("../../methods/cacheCalls");
23
23
  var _useSafeMode = require("../useSafeMode");
24
- var useUseCase = function useUseCase() {
24
+ var useUseCase = exports.useUseCase = function useUseCase() {
25
25
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
26
26
  args[_key] = arguments[_key];
27
27
  }
@@ -78,5 +78,4 @@ var useUseCase = function useUseCase() {
78
78
  }
79
79
  return [entity, cachedReducers];
80
80
  }, [statuses, entity, reducers, Provider, isRenderingRef]);
81
- };
82
- exports.useUseCase = useUseCase;
81
+ };
@@ -18,10 +18,10 @@ var _ahooks = require("ahooks");
18
18
  var _react2 = require("react");
19
19
  var _UseCaseModes = require("../../enums/UseCaseModes");
20
20
  var _UseCaseModeErrors = require("../../enums/UseCaseModeErrors");
21
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
- function _asyncIterator(iterable) { var method, async, sync, retry = 2; for ("undefined" != typeof Symbol && (async = Symbol.asyncIterator, sync = Symbol.iterator); retry--;) { if (async && null != (method = iterable[async])) return method.call(iterable); if (sync && null != (method = iterable[sync])) return new AsyncFromSyncIterator(method.call(iterable)); async = "@@asyncIterator", sync = "@@iterator"; } throw new TypeError("Object is not async iterable"); }
24
- function AsyncFromSyncIterator(s) { function AsyncFromSyncIteratorContinuation(r) { if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object.")); var done = r.done; return Promise.resolve(r.value).then(function (value) { return { value: value, done: done }; }); } return AsyncFromSyncIterator = function AsyncFromSyncIterator(s) { this.s = s, this.n = s.next; }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() { return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments)); }, "return": function _return(value) { var ret = this.s["return"]; return void 0 === ret ? Promise.resolve({ value: value, done: !0 }) : AsyncFromSyncIteratorContinuation(ret.apply(this.s, arguments)); }, "throw": function _throw(value) { var thr = this.s["return"]; return void 0 === thr ? Promise.reject(value) : AsyncFromSyncIteratorContinuation(thr.apply(this.s, arguments)); } }, new AsyncFromSyncIterator(s); }
21
+ 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; }
22
+ 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; }
23
+ function _asyncIterator(r) { var n, t, o, e = 2; for ("undefined" != typeof Symbol && (t = Symbol.asyncIterator, o = Symbol.iterator); e--;) { if (t && null != (n = r[t])) return n.call(r); if (o && null != (n = r[o])) return new AsyncFromSyncIterator(n.call(r)); t = "@@asyncIterator", o = "@@iterator"; } throw new TypeError("Object is not async iterable"); }
24
+ function AsyncFromSyncIterator(r) { function AsyncFromSyncIteratorContinuation(r) { if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object.")); var n = r.done; return Promise.resolve(r.value).then(function (r) { return { value: r, done: n }; }); } return AsyncFromSyncIterator = function AsyncFromSyncIterator(r) { this.s = r, this.n = r.next; }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() { return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments)); }, "return": function _return(r) { var n = this.s["return"]; return void 0 === n ? Promise.resolve({ value: r, done: !0 }) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments)); }, "throw": function _throw(r) { var n = this.s["return"]; return void 0 === n ? Promise.reject(r) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments)); } }, new AsyncFromSyncIterator(r); }
25
25
  var EXT_1 = '.png';
26
26
  var EXT_2 = '.jpg';
27
27
  var PATH_1 = "hello".concat(EXT_1);
@@ -147,10 +147,10 @@ var Child = function Child(_ref2) {
147
147
  setPath(PATH_2);
148
148
  };
149
149
  var undefinedEntity = (0, _ahooks.useMemoizedFn)(function () {
150
- onUndefinedEntity === null || onUndefinedEntity === void 0 ? void 0 : onUndefinedEntity();
150
+ onUndefinedEntity === null || onUndefinedEntity === void 0 || onUndefinedEntity();
151
151
  });
152
152
  (0, _ahooks.useUpdateEffect)(function () {
153
- onUpdate === null || onUpdate === void 0 ? void 0 : onUpdate();
153
+ onUpdate === null || onUpdate === void 0 || onUpdate();
154
154
  });
155
155
  (0, _react2.useEffect)(function () {
156
156
  if (file === void 0) {
@@ -158,7 +158,7 @@ var Child = function Child(_ref2) {
158
158
  }
159
159
  }, [file, undefinedEntity]);
160
160
  var pathChange = (0, _ahooks.useMemoizedFn)(function () {
161
- onPathChange === null || onPathChange === void 0 ? void 0 : onPathChange(path);
161
+ onPathChange === null || onPathChange === void 0 || onPathChange(path);
162
162
  });
163
163
  (0, _ahooks.useUpdateEffect)(pathChange, [path, pathChange]);
164
164
  return (0, _jsxRuntime.jsxs)("div", {
@@ -189,7 +189,7 @@ var Parent = function Parent(_ref4) {
189
189
  setPath((onSetPath === null || onSetPath === void 0 ? void 0 : onSetPath()) || '');
190
190
  };
191
191
  (0, _ahooks.useUpdateEffect)(function () {
192
- onUpdate === null || onUpdate === void 0 ? void 0 : onUpdate();
192
+ onUpdate === null || onUpdate === void 0 || onUpdate();
193
193
  });
194
194
  return (0, _jsxRuntime.jsx)(Provider, {
195
195
  children: (0, _jsxRuntime.jsxs)("div", {
@@ -218,7 +218,7 @@ var MathParent = function MathParent(_ref5) {
218
218
  add(1, 2);
219
219
  };
220
220
  (0, _ahooks.useUpdateEffect)(function () {
221
- onUpdate === null || onUpdate === void 0 ? void 0 : onUpdate();
221
+ onUpdate === null || onUpdate === void 0 || onUpdate();
222
222
  });
223
223
  return (0, _jsxRuntime.jsx)("div", {
224
224
  children: (0, _jsxRuntime.jsx)("button", {
@@ -596,13 +596,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
596
596
  }])('does not support global mode', function (_ref7) {
597
597
  var mode = _ref7.mode,
598
598
  toThrow = _ref7.toThrow;
599
- (0, _globals.expect)(function () {
600
- (0, _react.renderHook)(function () {
599
+ (0, _react.renderHook)(function () {
600
+ (0, _globals.expect)(function () {
601
601
  (0, _.useUseCase)(defaultFile, fileUseCase, mode);
602
- });
603
- // 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
604
- throw '';
605
- }).toThrow(toThrow);
602
+ // 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
603
+ throw '';
604
+ }).toThrow(toThrow);
605
+ });
606
606
  });
607
607
  (0, _globals.test)('stateless mode should not generate new reducers when `yeild entity`', function () {
608
608
  var onUpdate = _globals.jest.fn();
@@ -1881,13 +1881,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1881
1881
  }])('does not support stateless mode', function (_ref10) {
1882
1882
  var mode = _ref10.mode,
1883
1883
  toThrow = _ref10.toThrow;
1884
- (0, _globals.expect)(function () {
1885
- (0, _react.renderHook)(function () {
1884
+ (0, _react.renderHook)(function () {
1885
+ (0, _globals.expect)(function () {
1886
1886
  (0, _.useUseCase)(mathUseCase, mode);
1887
- });
1888
- // 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
1889
- throw '';
1890
- }).toThrow(toThrow);
1887
+ // 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
1888
+ throw '';
1889
+ }).toThrow(toThrow);
1890
+ });
1891
1891
  });
1892
1892
  (0, _globals.test)('the return value should be `reducers` object at child component', function () {
1893
1893
  var onMountA = _globals.jest.fn();
@@ -11,7 +11,7 @@ var _ahooks = require("ahooks");
11
11
  var _UseCaseArgumentTypes = require("../../enums/UseCaseArgumentTypes");
12
12
  var _UseCaseModes = require("../../enums/UseCaseModes");
13
13
  var _defaultUseCaseContext = require("../../configs/defaultUseCaseContext");
14
- var useUseCaseContext = function useUseCaseContext(usecase) {
14
+ var useUseCaseContext = exports.useUseCaseContext = function useUseCaseContext(usecase) {
15
15
  var argumentTypes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _UseCaseArgumentTypes.UseCaseArgumentTypes.None;
16
16
  var mode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _UseCaseModes.UseCaseModes.Normal;
17
17
  var map = _useCaseContextReferenceMap.usecaseContextReferenceMap;
@@ -60,5 +60,4 @@ var useUseCaseContext = function useUseCaseContext(usecase) {
60
60
  });
61
61
  });
62
62
  return context;
63
- };
64
- exports.useUseCaseContext = useUseCaseContext;
63
+ };
@@ -8,7 +8,7 @@ var _UseCaseArgumentTypes = require("../../enums/UseCaseArgumentTypes");
8
8
  var _UseCaseModes = require("../../enums/UseCaseModes");
9
9
  var _UseCaseStatuses = require("../../enums/UseCaseStatuses");
10
10
  var _ahooks = require("ahooks");
11
- var useUseCaseStatuses = function useUseCaseStatuses(argumentTypes, mode, contextValue) {
11
+ var useUseCaseStatuses = exports.useUseCaseStatuses = function useUseCaseStatuses(argumentTypes, mode, contextValue) {
12
12
  return (0, _ahooks.useCreation)(function () {
13
13
  var statuses = _UseCaseStatuses.UseCaseStatuses.None;
14
14
  var _ref = contextValue || {},
@@ -32,5 +32,4 @@ var useUseCaseStatuses = function useUseCaseStatuses(argumentTypes, mode, contex
32
32
  }
33
33
  return statuses;
34
34
  }, [argumentTypes, contextValue, mode]);
35
- };
36
- exports.useUseCaseStatuses = useUseCaseStatuses;
35
+ };
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.cacheCall = void 0;
7
7
  var _isSameArray = require("../isSameArray");
8
- var cacheCall = function cacheCall(factory, options) {
8
+ var cacheCall = exports.cacheCall = function cacheCall(factory, options) {
9
9
  var cache;
10
10
  var _ref = options || {},
11
11
  _ref$onShouldCache = _ref.onShouldCache,
@@ -38,5 +38,4 @@ var cacheCall = function cacheCall(factory, options) {
38
38
  }
39
39
  return returnValue;
40
40
  };
41
- };
42
- exports.cacheCall = cacheCall;
41
+ };
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.cacheCalls = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
9
  var _cacheCall = require("../cacheCall");
10
- var cacheCalls = function cacheCalls(sourceFactories, options) {
10
+ var cacheCalls = exports.cacheCalls = function cacheCalls(sourceFactories, options) {
11
11
  var cachedFactories = {};
12
12
  Object.entries(sourceFactories).forEach(function (_ref) {
13
13
  var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
@@ -16,5 +16,4 @@ var cacheCalls = function cacheCalls(sourceFactories, options) {
16
16
  cachedFactories[key] = (0, _cacheCall.cacheCall)(factory, options);
17
17
  });
18
18
  return cachedFactories;
19
- };
20
- exports.cacheCalls = cacheCalls;
19
+ };
@@ -8,7 +8,7 @@ exports.compareProperty = void 0;
8
8
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _hasField = require("../hasField");
11
- var compareProperty = function compareProperty(from, to, fieldPath, callback) {
11
+ var compareProperty = exports.compareProperty = function compareProperty(from, to, fieldPath, callback) {
12
12
  var fieldPathStack = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
13
13
  var undef = void 0;
14
14
  var _ref = fieldPath.match(/^([^.]+)\.(.+)$/) || [],
@@ -46,5 +46,4 @@ var compareProperty = function compareProperty(from, to, fieldPath, callback) {
46
46
  var toItem = toArray[i];
47
47
  compareProperty(fromItem, toItem, fieldPath, callback, [].concat((0, _toConsumableArray2["default"])(fieldPathStack), ["".concat(i)]));
48
48
  }
49
- };
50
- exports.compareProperty = compareProperty;
49
+ };
@@ -8,7 +8,7 @@ exports.fillArguments = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
9
  var _UseCaseModes = require("../../enums/UseCaseModes");
10
10
  var _UseCaseArgumentTypes = require("../../enums/UseCaseArgumentTypes");
11
- var fillArguments = function fillArguments(args, argumentTypes) {
11
+ var fillArguments = exports.fillArguments = function fillArguments(args, argumentTypes) {
12
12
  var _args = (0, _slicedToArray2["default"])(args, 5),
13
13
  arg1 = _args[0],
14
14
  arg2 = _args[1],
@@ -27,5 +27,4 @@ var fillArguments = function fillArguments(args, argumentTypes) {
27
27
  return [null, arg1, arg2, arg3 || {}, arg4 || []];
28
28
  }
29
29
  return [null, arg1, _UseCaseModes.UseCaseModes.Normal, arg2 || {}, arg3 || []];
30
- };
31
- exports.fillArguments = fillArguments;
30
+ };
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.getRenderingEntity = void 0;
7
7
  var _UseCaseStatuses = require("../../enums/UseCaseStatuses");
8
- var getRenderingEntity = function getRenderingEntity(statuses, entityState, rootEntity, contextEntity) {
8
+ var getRenderingEntity = exports.getRenderingEntity = function getRenderingEntity(statuses, entityState, rootEntity, contextEntity) {
9
9
  if ((statuses & _UseCaseStatuses.UseCaseStatuses.EntityRootEnabled) !== _UseCaseStatuses.UseCaseStatuses.EntityRootEnabled) {
10
10
  return contextEntity;
11
11
  }
@@ -16,5 +16,4 @@ var getRenderingEntity = function getRenderingEntity(statuses, entityState, root
16
16
  return rootEntity();
17
17
  }
18
18
  return rootEntity;
19
- };
20
- exports.getRenderingEntity = getRenderingEntity;
19
+ };
@@ -6,10 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.hasField = void 0;
8
8
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
9
- var hasField = function hasField(data, field) {
9
+ var hasField = exports.hasField = function hasField(data, field) {
10
10
  if ((0, _typeof2["default"])(data) !== 'object' || data === null) {
11
11
  return false;
12
12
  }
13
13
  return Object.hasOwn(data, field);
14
- };
15
- exports.hasField = hasField;
14
+ };
@@ -9,9 +9,9 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
9
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
10
  var _usecases = require("@mic-rexjs/usecases");
11
11
  var _excluded = ["watch", "onChange", "options"];
12
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
14
- var initEntityReducers = function initEntityReducers(usecase, store, options) {
12
+ 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; }
13
+ 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; }
14
+ var initEntityReducers = exports.initEntityReducers = function initEntityReducers(usecase, store, options) {
15
15
  var watch = options.watch,
16
16
  onChange = options.onChange,
17
17
  usecaseOptions = options.options,
@@ -21,5 +21,4 @@ var initEntityReducers = function initEntityReducers(usecase, store, options) {
21
21
  return result;
22
22
  }
23
23
  }));
24
- };
25
- exports.initEntityReducers = initEntityReducers;
24
+ };
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.isSameArray = void 0;
7
- var isSameArray = function isSameArray(array1, array2) {
7
+ var isSameArray = exports.isSameArray = function isSameArray(array1, array2) {
8
8
  var length1 = array1.length;
9
9
  var length2 = array2.length;
10
10
  if (length1 !== length2) {
@@ -17,5 +17,4 @@ var isSameArray = function isSameArray(array1, array2) {
17
17
  return false;
18
18
  }
19
19
  return true;
20
- };
21
- exports.isSameArray = isSameArray;
20
+ };
@@ -4,9 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.triggerCallbacks = void 0;
7
- var triggerCallbacks = function triggerCallbacks(callbacks, newEntity, oldEntity) {
7
+ var triggerCallbacks = exports.triggerCallbacks = function triggerCallbacks(callbacks, newEntity, oldEntity) {
8
8
  for (var i = callbacks.length; i > 0; i--) {
9
9
  callbacks[i - 1](newEntity, oldEntity);
10
10
  }
11
- };
12
- exports.triggerCallbacks = triggerCallbacks;
11
+ };
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.triggerWatchers = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
9
  var _compareProperty = require("../compareProperty");
10
- var triggerWatchers = function triggerWatchers(watch, newEntity, oldEntity) {
10
+ var triggerWatchers = exports.triggerWatchers = function triggerWatchers(watch, newEntity, oldEntity) {
11
11
  var _loop = function _loop() {
12
12
  var _Object$entries$_i = (0, _slicedToArray2["default"])(_Object$entries[_i], 2),
13
13
  fieldPath = _Object$entries$_i[0],
@@ -25,5 +25,4 @@ var triggerWatchers = function triggerWatchers(watch, newEntity, oldEntity) {
25
25
  for (var _i = 0, _Object$entries = Object.entries(watch); _i < _Object$entries.length; _i++) {
26
26
  _loop();
27
27
  }
28
- };
29
- exports.triggerWatchers = triggerWatchers;
28
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mic-rexjs/usecases-react",
3
- "version": "2.1.1",
3
+ "version": "2.1.4",
4
4
  "description": "React-based solution for use usecases of Clean Architecture",
5
5
  "private": false,
6
6
  "keywords": [
@@ -33,7 +33,7 @@
33
33
  },
34
34
  "license": "MIT",
35
35
  "peerDependencies": {
36
- "@mic-rexjs/usecases": "^2.1.5",
36
+ "@mic-rexjs/usecases": "^2.3.3",
37
37
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0"
38
38
  },
39
39
  "dependencies": {
@@ -46,28 +46,28 @@
46
46
  "@babel/core": "^7.22.8",
47
47
  "@babel/preset-react": "^7.22.5",
48
48
  "@babel/preset-typescript": "^7.22.5",
49
- "@commitlint/cli": "^17.6.6",
50
- "@commitlint/config-angular": "^17.6.6",
49
+ "@commitlint/cli": "^19.0.3",
50
+ "@commitlint/config-angular": "^19.0.3",
51
51
  "@jest/globals": "^29.5.0",
52
- "@mic-rexjs/usecases": "^2.1.5",
52
+ "@mic-rexjs/usecases": "^2.4.0",
53
53
  "@testing-library/react": "^14.0.0",
54
54
  "@types/node": "^20.4.2",
55
55
  "@types/react": "^18.2.14",
56
56
  "@types/react-dom": "^18.2.7",
57
- "@typescript-eslint/eslint-plugin": "^5.60.1",
58
- "@typescript-eslint/parser": "^5.60.1",
57
+ "@typescript-eslint/eslint-plugin": "^7.1.1",
58
+ "@typescript-eslint/parser": "^7.1.1",
59
59
  "babel-loader": "^9.1.3",
60
- "copy-webpack-plugin": "^11.0.0",
60
+ "copy-webpack-plugin": "^12.0.2",
61
61
  "eslint": "^8.42.0",
62
- "eslint-config-prettier": "^8.8.0",
62
+ "eslint-config-prettier": "^9.1.0",
63
63
  "eslint-plugin-jest": "^27.2.1",
64
- "eslint-plugin-prettier": "^4.2.1",
64
+ "eslint-plugin-prettier": "^5.1.3",
65
65
  "eslint-plugin-react-hooks": "^4.6.0",
66
- "husky": "^8.0.1",
66
+ "husky": "^9.0.11",
67
67
  "jest": "^29.5.0",
68
68
  "jest-environment-jsdom": "^29.6.1",
69
- "lint-staged": "^13.0.3",
70
- "prettier": "^2.7.1",
69
+ "lint-staged": "^15.2.2",
70
+ "prettier": "^3.2.5",
71
71
  "react": "^18.2.0",
72
72
  "react-dom": "^18.2.0",
73
73
  "rimraf": "^5.0.1",
@@ -76,7 +76,7 @@
76
76
  "tsc-alias": "^1.8.7",
77
77
  "typescript": "^5.1.5",
78
78
  "webpack": "^5.74.0",
79
- "webpack-cli": "^4.10.0"
79
+ "webpack-cli": "^5.1.4"
80
80
  },
81
81
  "lint-staged": {
82
82
  "./**/*.{js,ts,tsx}": "eslint"