@mic-rexjs/usecases-react 2.9.6 → 2.10.0
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,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})})();
|
|
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={},l=null,f=null;for(n in void 0!==r&&(l=""+r),void 0!==e.key&&(l=""+e.key),void 0!==e.ref&&(f=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:l,ref:f,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";function t(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 e(e,r){if(e){if("string"==typeof e)return t(e,r);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)?t(e,r):void 0}}function o(t,r){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,l=!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){l=!0,o=t}finally{try{if(!c&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(l)throw o}}return a}}(t,r)||e(t,r)||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.")}()}r.r(n),r.d(n,{UseCaseFragment:()=>A,useUseCase:()=>x});var u=r(848),i=r(594),a=r.n(i);function c(t){return c="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},c(t)}function l(t,e,r){return(e=function(t){var e=function(t,e){if("object"!=c(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!=c(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==c(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function f(r){return function(e){if(Array.isArray(e))return t(e)}(r)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(r)||e(r)||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.")}()}const s=ahooks;var y=function(t){return o((0,i.useState)((function(){return t})),1)[0]},v=function(t){return o((0,i.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,e=(0,i.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(r,n){if(t.has(r)){var o=t.get(r),u=o.value,a=o.times;return t.set(r,{value:u,times:a+1}),u}if((n&d.Entity)!==d.Entity)return e;var c=(0,i.createContext)(null);return t.set(r,{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){l(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,l=c.parameters,f=c.returnValue;if(a(l,o))return f}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"===c(t)&&null!==t&&Object.hasOwn(t,e)},P=function t(e,r,n,u){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],a=void 0,c=o(n.match(/^([^.]+)\.(.+)$/)||[],3),l=c[1],s=void 0===l?n:l,y=c[2],v=void 0===y?"":y,b=C(e,s),d=C(r,s),p=[].concat(f(i),[s]);if(b||d){var E=b?e[s]:a,h=d?r[s]:a;if(v)return void t(E,h,v,u,p);if(E===h)return;u(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,u,[].concat(f(i),["".concat(S)]))},R=function(t,e,r){for(var n=function(){var t=o(i[u],2),n=t[0],a=t[1];P(r,e,n,(function(t,n,o){a({fieldPaths:o,newEntity:e,oldEntity:r,newValue:n,oldValue:t})}))},u=0,i=Object.entries(t);u<i.length;u++)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,e=((t=(0,i.useRef)(!0)).current=!0,(0,i.useEffect)((function(){t.current=!1})),t),r=arguments.length,n=new Array(r),u=0;u<r;u++)n[u]=arguments[u];var E=function(t){return v((function(){var e=d.None;return"function"===c(o(t,2)[1])&&(e|=d.Entity),e}))}(n),O=function(t,e){var r=o(t,4),n=r[0],u=r[1],i=r[2],a=r[3];return(e&d.Entity)!==d.Entity?[null,n,u||{},i||[]]:[n,u,i||{},a||[]]}(n,E),C=o(O,4),P=C[0],x=C[1],A=C[2],M=C[3],U=y(x),D=U,N=U,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}(U,E),I=(0,i.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 e=(0,i.useRef)(0),r=(0,i.useRef)([]),n=r.current,o=j(t,n);return r.current=t,e.current+=o?0:1,e.current}(M),$=(I||{}).reducers,z=void 0===$?null:$,B=(T||{}).store,G=o(function(t,e,r,n,o){var u=(0,s.useUpdate)(),a=(0,i.useRef)(),c=(0,s.useLatest)(n),l=r?r.value:null,f=(t&p.EntityEnabled)===p.EntityEnabled,y=(t&p.EntityRootEnabled)===p.EntityRootEnabled,v=S(r,t,(function(){var t;if(y){var r,n="function"==typeof e?e(null===(r=a.current)||void 0===r?void 0:r.value):e;t=new b.EntityStore(n)}else t=new b.EntityStore(null);return a.current=t,t}),o),d=function(t,e,r,n){var o=(0,i.useRef)(e);if((n&p.EntityRootEnabled)!==p.EntityRootEnabled)return r;var u="function"==typeof e,a=o.current;switch(!0){case u:case a===e:return t.value}return o.current=e,e}(v,e,l,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&&u()}));return y&&(v.value=d),(0,s.useCreation)((function(){f&&v.watch(E)}),[f,v,E]),(0,i.useEffect)((function(){return function(){v.unwatch(E)}}),[f,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?D(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,e,r,n){var o=r.value,u=h().createContextValue,c=(0,i.useMemo)((function(){return u(r,n,t)}),[t,o,r,n,u]),l=(0,s.useLatest)(c);return y((function(t){var r=t.children,n=t.with,o=void 0===n?[]:n,u=e.Provider,i=l.current;return a().createElement(u,{value:i},o.reduceRight((function(t,e){return a().createElement(e,{},t)}),r))}))}(L,k,Y,q);return(0,s.useCreation)((function(){if((L&p.EntityEnabled)!==p.EntityEnabled)return q;var t=(L&p.RootEnabled)===p.RootEnabled,r=function(t,e){var r={};return Object.entries(t).forEach((function(t){var n=o(t,2),u=n[0],i=n[1];r[u]=w(i,e)})),r}(q,{onShouldCache:function(){return e.current}}),n=null===W,u=Array.isArray(W),i="object"!==c(W)||n||u?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){l(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?[i,r,H]:[i,r]}),[L,W,q,H,e])},A=function(t){var e=t.usecase,r=t.watch,n=t.onMount,a=t.onChange,c=o(x(e,{watch:r,onChange:a}),1)[0];return(0,s.useMount)((function(){null==n||n(c)})),(0,u.jsx)(i.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})})();
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { UseCaseFragmentProps } from './types';
|
|
2
2
|
import { EntityReducerMap } from '@mic-rexjs/usecases/es/types';
|
|
3
|
-
export declare const UseCaseFragment: <T, TEntityReducers extends EntityReducerMap<T>>({ usecase, watch, onChange, }: UseCaseFragmentProps<T, TEntityReducers>) => React.ReactElement;
|
|
3
|
+
export declare const UseCaseFragment: <T, TEntityReducers extends EntityReducerMap<T>>({ usecase, watch, onMount, onChange, }: UseCaseFragmentProps<T, TEntityReducers>) => React.ReactElement;
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Fragment } from 'react';
|
|
3
3
|
import { useUseCase } from '../../hooks/useUseCase';
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
import { useMount } from 'ahooks';
|
|
5
|
+
export const UseCaseFragment = ({ usecase, watch, onMount, onChange, }) => {
|
|
6
|
+
const [entity] = useUseCase(usecase, { watch, onChange });
|
|
7
|
+
useMount(() => {
|
|
8
|
+
onMount?.(entity);
|
|
9
|
+
});
|
|
6
10
|
return _jsx(Fragment, {});
|
|
7
11
|
};
|
|
@@ -3,5 +3,6 @@ import { EntityReducerMap, InferableEntityUseCase } from '@mic-rexjs/usecases/es
|
|
|
3
3
|
export interface UseCaseFragmentProps<T, TEntityReducers extends EntityReducerMap<T>> {
|
|
4
4
|
usecase: InferableEntityUseCase<T, TEntityReducers>;
|
|
5
5
|
watch?: EntityWatchMap<T>;
|
|
6
|
+
onMount?(entity: T): void;
|
|
6
7
|
onChange?(newEntity: T, oldEntity: T): void;
|
|
7
8
|
}
|
|
@@ -1,19 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
7
|
exports.UseCaseFragment = void 0;
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
7
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
8
10
|
var _react = require("react");
|
|
9
|
-
var
|
|
11
|
+
var _useUseCase3 = require("../../hooks/useUseCase");
|
|
12
|
+
var _ahooks = require("ahooks");
|
|
10
13
|
var UseCaseFragment = exports.UseCaseFragment = function UseCaseFragment(_ref) {
|
|
11
14
|
var usecase = _ref.usecase,
|
|
12
15
|
watch = _ref.watch,
|
|
16
|
+
onMount = _ref.onMount,
|
|
13
17
|
onChange = _ref.onChange;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
18
|
+
var _useUseCase = (0, _useUseCase3.useUseCase)(usecase, {
|
|
19
|
+
watch: watch,
|
|
20
|
+
onChange: onChange
|
|
21
|
+
}),
|
|
22
|
+
_useUseCase2 = (0, _slicedToArray2["default"])(_useUseCase, 1),
|
|
23
|
+
entity = _useUseCase2[0];
|
|
24
|
+
(0, _ahooks.useMount)(function () {
|
|
25
|
+
onMount === null || onMount === void 0 || onMount(entity);
|
|
17
26
|
});
|
|
18
27
|
return (0, _jsxRuntime.jsx)(_react.Fragment, {});
|
|
19
28
|
};
|