@mic-rexjs/usecases-react 2.10.0 → 2.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +1 -1
- package/es/components/SafeUseCaseFragment/index.d.ts +3 -0
- package/es/components/SafeUseCaseFragment/index.js +11 -0
- package/es/components/SafeUseCaseFragment/types.d.ts +8 -0
- package/es/components/SafeUseCaseFragment/types.js +1 -0
- package/es/components/UseCaseFragment/index.d.ts +1 -1
- package/es/components/UseCaseFragment/index.js +6 -7
- package/es/components/UseCaseFragment/types.d.ts +3 -7
- package/es/hooks/useContext/index.js +3 -2
- package/es/hooks/useProvider/index.js +3 -3
- package/es/usecases/contextUseCase/index.js +8 -0
- package/es/usecases/contextUseCase/types.d.ts +2 -1
- package/lib/components/SafeUseCaseFragment/index.js +28 -0
- package/lib/components/SafeUseCaseFragment/types.js +5 -0
- package/lib/components/UseCaseFragment/index.js +16 -15
- package/lib/hooks/useContext/index.js +5 -4
- package/lib/hooks/useProvider/index.js +4 -4
- package/lib/usecases/contextUseCase/index.js +9 -0
- package/package.json +1 -1
- package/es/hooks/useContextUseCase/index.d.ts +0 -2
- package/es/hooks/useContextUseCase/index.js +0 -7
- package/lib/hooks/useContextUseCase/index.js +0 -13
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={},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})})();
|
|
2
|
+
(()=>{var e={20:(e,t,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};t.jsx=function(e,t,r){var n,c={},l=null,f=null;for(n in void 0!==r&&(l=""+r),void 0!==t.key&&(l=""+t.key),void 0!==t.ref&&(f=t.ref),t)u.call(t,n)&&!a.hasOwnProperty(n)&&(c[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===c[n]&&(c[n]=t[n]);return{$$typeof:o,type:e,key:l,ref:f,props:c,_owner:i.current}}},848:(e,t,r)=>{"use strict";e.exports=r(20)},594:e=>{"use strict";e.exports=React}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var u=t[n]={exports:{}};return e[n](u,u.exports,r),u.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};(()=>{"use strict";function e(t){return e="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},e(t)}function t(t,r,n){return(r=function(t){var r=function(t,r){if("object"!=e(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!=e(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==e(r)?r:String(r)}(r))in t?Object.defineProperty(t,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[r]=n,t}function o(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},u=Object.keys(e);for(n=0;n<u.length;n++)r=u[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n<u.length;n++)r=u[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}r.r(n),r.d(n,{UseCaseFragment:()=>k,useUseCase:()=>_});var u=r(848),i=r(594),a=r.n(i);function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function l(e,t){if(e){if("string"==typeof e)return c(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}function f(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||l(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.")}()}function s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,u,i,a=[],c=!0,l=!1;try{if(u=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=u.call(r)).done)&&(a.push(n.value),a.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(l)throw o}}return a}}(e,t)||l(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.")}()}const y=ahooks;var b=function(e){return s((0,i.useState)((function(){return e})),1)[0]};const v=usecases;var p,d;!function(e){e[e.None=0]="None",e[e.Entity=2]="Entity"}(p||(p={})),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=6]="ContextRootEnabled",e[e.EntityRootEnabled=14]="EntityRootEnabled"}(d||(d={}));var E=(0,v.createUseCase)((function(){var e=new Map,t=(0,i.createContext)(null);return function(){return{createContextValue:function(e,t,r){return(r&d.EntityEnabled)===d.EntityEnabled?{store:e,reducers:t,statuses:r}:{reducers:t,statuses:r}},getUseCaseContext:function(t){return e.has(t)?e.get(t).value:null},registerUseCase:function(r,n){if(e.has(r)){var o=e.get(r),u=o.value,a=o.times;return e.set(r,{value:u,times:a+1}),u}if((n&p.Entity)!==p.Entity)return t;var c=(0,i.createContext)(null);return e.set(r,{value:c,times:1}),c},unregisterUseCase:function(t,r){if((r&p.Entity)!==p.Entity)return!1;if(!e.has(t))return!1;var n=e.get(t),o=n.value,u=n.times;return 1===u?e.delete(t):e.set(t,{value:o,times:u-1}),!0}}}})),O=["watch","onChange","options"];function h(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function g(e){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{};r%2?h(Object(n),!0).forEach((function(r){t(e,r,n[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):h(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var m=function(e){return s((0,i.useState)(e),1)[0]},j=function(e,t){var r=e.length;if(r!==t.length)return!1;for(var n=0;n<r;n++)if(e[n]!==t[n])return!1;return!0},w=function(e,t){var r,n=t||{},o=n.onShouldCache,u=void 0===o?function(){return!0}:o,i=n.onCompare,a=void 0===i?function(e,t){return j(e,t)}:i;return function(){for(var t=u(),n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];if(r&&t){var c=r,l=c.parameters,f=c.returnValue;if(a(l,o))return f}var s=e.apply(void 0,o);return t&&(r={parameters:o,returnValue:s}),s}},P=function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,o=(0,y.useLatest)(r),u=(0,y.useCreation)((function(){return w(o.current,{onCompare:function(){return!0}})}),[n,o]);return(0,y.useCreation)((function(){return(t&d.RootEnabled)!==d.RootEnabled&&e?e:u()}),[t,e,u])},S=function(t,r){return"object"===e(t)&&null!==t&&Object.hasOwn(t,r)},C=function e(t,r,n,o){var u=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],i=void 0,a=s(n.match(/^([^.]+)\.(.+)$/)||[],3),c=a[1],l=void 0===c?n:c,y=a[2],b=void 0===y?"":y,v=S(t,l),p=S(r,l),d=[].concat(f(u),[l]);if(v||p){var E=v?t[l]:i,O=p?r[l]:i;if(b)return void e(E,O,b,o,d);if(E===O)return;o(E,O,d)}else if(!/^\d+^/.test(l))for(var h=Array.isArray(t)?t:[],g=Array.isArray(r)?r:[],m=h.length,j=g.length,w=Math.max(m,j),P=0;P<w;P++)e(h[P],g[P],n,o,[].concat(f(u),["".concat(P)]))},R=function(e,t,r){for(var n=function(){var e=s(u[o],2),n=e[0],i=e[1];C(r,t,n,(function(e,n,o){i({fieldPaths:o,newEntity:t,oldEntity:r,newValue:n,oldValue:e})}))},o=0,u=Object.entries(e);o<u.length;o++)n()};function x(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var _=function(){for(var r,n=((r=(0,i.useRef)(!0)).current=!0,(0,i.useEffect)((function(){r.current=!1})),r),u=arguments.length,c=new Array(u),l=0;l<u;l++)c[l]=arguments[l];var h=function(t){return m((function(){var r=p.None;return"function"===e(s(t,2)[1])&&(r|=p.Entity),r}))}(c),S=function(e,t){var r=s(e,4),n=r[0],o=r[1],u=r[2],i=r[3];return(t&p.Entity)!==p.Entity?[null,n,o||{},u||[]]:[n,o,u||{},i||[]]}(c,h),C=s(S,4),_=C[0],A=C[1],D=C[2],U=C[3],M=b(A),k=M,N=M,I=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p.None,r=m((function(){return(0,E().registerUseCase)(e,t)}));return(0,y.useUnmount)((function(){(0,E().unregisterUseCase)(e,t)})),r}(M,h),T=(0,i.useContext)(I),L=T,V=function(e,t){return(0,y.useCreation)((function(){var r=d.None,n=(t||{}).store;return(e&p.Entity)===p.Entity&&(r|=d.EntityRootEnabled),r|=t?d.ContextEnabled:d.RootEnabled,n&&(r|=d.EntityEnabled),r}),[e,t])}(h,T),F=(0,y.useLatest)(D),$=function(e){var t=(0,i.useRef)(0),r=(0,i.useRef)([]),n=r.current,o=j(e,n);return r.current=e,t.current+=o?0:1,t.current}(U),z=(T||{}).reducers,B=void 0===z?null:z,G=(L||{}).store,W=s(function(e,t,r,n,o){var u=(0,y.useUpdate)(),a=(0,i.useRef)(),c=(0,y.useLatest)(n),l=r?r.value:null,f=(e&d.EntityEnabled)===d.EntityEnabled,s=(e&d.EntityRootEnabled)===d.EntityRootEnabled,b=P(r,e,(function(){var e;if(s){var r,n="function"==typeof t?t(null===(r=a.current)||void 0===r?void 0:r.value):t;e=new v.EntityStore(n)}else e=new v.EntityStore(null);return a.current=e,e}),o),p=function(e,t,r,n){var o=(0,i.useRef)(t);if((n&d.EntityRootEnabled)!==d.EntityRootEnabled)return r;var u="function"==typeof t,a=o.current;switch(!0){case u:case a===t:return e.value}return o.current=t,t}(b,t,l,e),E=(0,y.useMemoizedFn)((function(e,t){var r=c.current,n=r.onChange,o=r.watch;o&&R(o,e,t),null==n||n(e,t),s&&u()}));return s&&(b.value=p),(0,y.useCreation)((function(){f&&b.watch(E)}),[f,b,E]),(0,i.useEffect)((function(){return function(){b.unwatch(E)}}),[f,b,E]),(0,y.useCreation)((function(){return[p,b]}),[p,b])}(V,_,void 0===G?null:G,D,$),2),Y=W[0],q=W[1],H=P(B,V,(function(){var e,t,r,n=(e=D,t=function(e,t){var r,n;return null===(r=(n=F.current)[e])||void 0===r?void 0:r.call.apply(r,[n].concat(f(t)))},r={},Object.keys(e).forEach((function(n){var o=e[n];r[n]="function"!=typeof o?o:function(){for(var e=arguments.length,r=new Array(e),o=0;o<e;o++)r[o]=arguments[o];return t(n,r)}})),r);return(V&d.EntityEnabled)!==d.EntityEnabled?k(n):function(e,t,r){r.watch,r.onChange;var n=r.options,u=o(r,O);return(0,v.createEntityReducers)(t,e,g(g(g({},u),n),{},{onGenerate:function(e,t){return t}}))}(N,q,n)}),$),J=function(e,t,r,n){var o=r.value,u=(0,i.useMemo)((function(){return(0,E().createContextValue)(r,n,e)}),[e,o,r,n]),c=(0,y.useLatest)(u);return b((function(e){var r=e.children,n=e.with,o=void 0===n?[]:n,u=t.Provider,i=c.current;return a().createElement(u,{value:i},o.reduceRight((function(e,t){return a().createElement(t,{},e)}),r))}))}(V,I,q,H);return(0,y.useCreation)((function(){if((V&d.EntityEnabled)!==d.EntityEnabled)return H;var r=(V&d.RootEnabled)===d.RootEnabled,o=function(e,t){var r={};return Object.entries(e).forEach((function(e){var n=s(e,2),o=n[0],u=n[1];r[o]=w(u,t)})),r}(H,{onShouldCache:function(){return n.current}}),u=null===Y,i=Array.isArray(Y),a="object"!==e(Y)||u||i?Y:function(e){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{};r%2?x(Object(n),!0).forEach((function(r){t(e,r,n[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):x(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},Y);return r?[a,o,J]:[a,o]}),[V,Y,H,J,n])},A=function(e){var t=e.usecase,r=e.watch,n=e.onMount,o=e.onChange,a=s(_(t,{watch:r,onChange:o}),1)[0];return(0,y.useMount)((function(){null==n||n(a)})),(0,u.jsx)(i.Fragment,{})},D=["usecase"];function U(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function M(e){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{};r%2?U(Object(n),!0).forEach((function(r){t(e,r,n[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):U(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var k=function(e){var t=e.usecase,r=o(e,D),n=(0,_(E).getUseCaseContext)(t);return(0,u.jsx)(i.Fragment,{children:null===n?null:(0,u.jsx)(A,M({usecase:t},r))})}})();var o=usecases="undefined"==typeof usecases?{}:usecases;for(var u in n)o[u]=n[u];n.__esModule&&Object.defineProperty(o,"__esModule",{value:!0})})();
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { SafeUseCaseFragmentProps } from './types';
|
|
2
|
+
import { EntityReducerMap } from '@mic-rexjs/usecases/es/types';
|
|
3
|
+
export declare const SafeUseCaseFragment: <T, TEntityReducers extends EntityReducerMap<T>>({ usecase, watch, onMount, onChange, }: SafeUseCaseFragmentProps<T, TEntityReducers>) => React.ReactElement;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Fragment } from 'react';
|
|
3
|
+
import { useUseCase } from '../../hooks/useUseCase';
|
|
4
|
+
import { useMount } from 'ahooks';
|
|
5
|
+
export const SafeUseCaseFragment = ({ usecase, watch, onMount, onChange, }) => {
|
|
6
|
+
const [entity] = useUseCase(usecase, { watch, onChange });
|
|
7
|
+
useMount(() => {
|
|
8
|
+
onMount?.(entity);
|
|
9
|
+
});
|
|
10
|
+
return _jsx(Fragment, {});
|
|
11
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { EntityWatchMap } from '../../hooks/useUseCase/types';
|
|
2
|
+
import { EntityReducerMap, InferableEntityUseCase } from '@mic-rexjs/usecases/es/types';
|
|
3
|
+
export interface SafeUseCaseFragmentProps<T, TEntityReducers extends EntityReducerMap<T>> {
|
|
4
|
+
usecase: InferableEntityUseCase<T, TEntityReducers>;
|
|
5
|
+
watch?: EntityWatchMap<T>;
|
|
6
|
+
onMount?(entity: T): void;
|
|
7
|
+
onChange?(newEntity: T, oldEntity: T): void;
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -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,
|
|
3
|
+
export declare const UseCaseFragment: <T, TEntityReducers extends EntityReducerMap<T>>({ usecase, ...props }: UseCaseFragmentProps<T, TEntityReducers>) => React.ReactElement;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Fragment } from 'react';
|
|
3
3
|
import { useUseCase } from '../../hooks/useUseCase';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
});
|
|
10
|
-
return _jsx(Fragment, {});
|
|
4
|
+
import { contextUseCase } from '../../usecases/contextUseCase';
|
|
5
|
+
import { SafeUseCaseFragment } from '../SafeUseCaseFragment';
|
|
6
|
+
export const UseCaseFragment = ({ usecase, ...props }) => {
|
|
7
|
+
const { getUseCaseContext } = useUseCase(contextUseCase);
|
|
8
|
+
const context = getUseCaseContext(usecase);
|
|
9
|
+
return _jsx(Fragment, { children: context === null ? null : _jsx(SafeUseCaseFragment, { usecase: usecase, ...props }) });
|
|
11
10
|
};
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export interface UseCaseFragmentProps<T, TEntityReducers extends EntityReducerMap<T>> {
|
|
4
|
-
usecase: InferableEntityUseCase<T, TEntityReducers>;
|
|
5
|
-
watch?: EntityWatchMap<T>;
|
|
6
|
-
onMount?(entity: T): void;
|
|
7
|
-
onChange?(newEntity: T, oldEntity: T): void;
|
|
1
|
+
import { EntityReducerMap } from '@mic-rexjs/usecases/es/types';
|
|
2
|
+
import { SafeUseCaseFragmentProps } from '../SafeUseCaseFragment/types';
|
|
3
|
+
export interface UseCaseFragmentProps<T, TEntityReducers extends EntityReducerMap<T>> extends SafeUseCaseFragmentProps<T, TEntityReducers> {
|
|
8
4
|
}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { useConstant } from '../useConstant';
|
|
2
2
|
import { useUnmount } from 'ahooks';
|
|
3
3
|
import { ArgumentTypes } from '../../enums/ArgumentTypes';
|
|
4
|
-
import {
|
|
4
|
+
import { contextUseCase } from '../../usecases/contextUseCase';
|
|
5
5
|
export const useContext = (usecase, argumentTypes = ArgumentTypes.None) => {
|
|
6
|
-
const { registerUseCase, unregisterUseCase } = useContextUseCase();
|
|
7
6
|
const context = useConstant(() => {
|
|
7
|
+
const { registerUseCase } = contextUseCase();
|
|
8
8
|
return registerUseCase(usecase, argumentTypes);
|
|
9
9
|
});
|
|
10
10
|
useUnmount(() => {
|
|
11
|
+
const { unregisterUseCase } = contextUseCase();
|
|
11
12
|
unregisterUseCase(usecase, argumentTypes);
|
|
12
13
|
});
|
|
13
14
|
return context;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React, { useMemo } from 'react';
|
|
2
2
|
import { useLatest } from 'ahooks';
|
|
3
3
|
import { useConstantFn } from '../useConstantFn';
|
|
4
|
-
import {
|
|
4
|
+
import { contextUseCase } from '../../usecases/contextUseCase';
|
|
5
5
|
export const useProvider = (statuses, context, store, reducers) => {
|
|
6
6
|
const { value: entity } = store;
|
|
7
|
-
const { createContextValue } = useContextUseCase();
|
|
8
7
|
const contextValue = useMemo(() => {
|
|
8
|
+
const { createContextValue } = contextUseCase();
|
|
9
9
|
void entity;
|
|
10
10
|
return createContextValue(store, reducers, statuses);
|
|
11
|
-
}, [statuses, entity, store, reducers
|
|
11
|
+
}, [statuses, entity, store, reducers]);
|
|
12
12
|
const contextValueRef = useLatest(contextValue);
|
|
13
13
|
return useConstantFn(({ children, with: withProviders = [] }) => {
|
|
14
14
|
const { Provider: ContextProvider } = context;
|
|
@@ -16,6 +16,13 @@ export const contextUseCase = createUseCase(() => {
|
|
|
16
16
|
}
|
|
17
17
|
return { reducers, statuses };
|
|
18
18
|
};
|
|
19
|
+
const getUseCaseContext = (usecase) => {
|
|
20
|
+
if (!referenceMap.has(usecase)) {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
const { value } = referenceMap.get(usecase);
|
|
24
|
+
return value;
|
|
25
|
+
};
|
|
19
26
|
const registerUseCase = (usecase, argumentTypes) => {
|
|
20
27
|
if (referenceMap.has(usecase)) {
|
|
21
28
|
const reference = referenceMap.get(usecase);
|
|
@@ -58,6 +65,7 @@ export const contextUseCase = createUseCase(() => {
|
|
|
58
65
|
};
|
|
59
66
|
return {
|
|
60
67
|
createContextValue,
|
|
68
|
+
getUseCaseContext,
|
|
61
69
|
registerUseCase,
|
|
62
70
|
unregisterUseCase,
|
|
63
71
|
};
|
|
@@ -22,7 +22,8 @@ export interface ContextReference<T> {
|
|
|
22
22
|
}
|
|
23
23
|
export type ContextReducers = Reducers<{
|
|
24
24
|
createContextValue<T, TReducers extends ReducerMap>(store: EntityStore<T>, reducers: TReducers, statuses: Statuses): ContextValue<TReducers>;
|
|
25
|
-
|
|
25
|
+
getUseCaseContext<T extends ReducerMap, TUseCaseOptions extends object>(usecase: InferableUseCase<T, TUseCaseOptions>): Context<ContextValue<T>> | null;
|
|
26
|
+
registerUseCase<T extends ReducerMap, TUseCaseOptions extends object>(usecase: InferableUseCase<T, TUseCaseOptions>, argumentTypes: ArgumentTypes): Context<ContextValue<T>>;
|
|
26
27
|
unregisterUseCase<T extends ReducerMap, TUseCaseOptions extends object>(usecase: InferableUseCase<T, TUseCaseOptions>, argumentTypes: ArgumentTypes): boolean;
|
|
27
28
|
}>;
|
|
28
29
|
export interface ContextUseCase {
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.SafeUseCaseFragment = void 0;
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
9
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
var _useUseCase3 = require("../../hooks/useUseCase");
|
|
12
|
+
var _ahooks = require("ahooks");
|
|
13
|
+
var SafeUseCaseFragment = exports.SafeUseCaseFragment = function SafeUseCaseFragment(_ref) {
|
|
14
|
+
var usecase = _ref.usecase,
|
|
15
|
+
watch = _ref.watch,
|
|
16
|
+
onMount = _ref.onMount,
|
|
17
|
+
onChange = _ref.onChange;
|
|
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);
|
|
26
|
+
});
|
|
27
|
+
return (0, _jsxRuntime.jsx)(_react.Fragment, {});
|
|
28
|
+
};
|
|
@@ -5,24 +5,25 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.UseCaseFragment = void 0;
|
|
8
|
-
var
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
9
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
11
|
var _react = require("react");
|
|
11
|
-
var
|
|
12
|
-
var
|
|
12
|
+
var _useUseCase2 = require("../../hooks/useUseCase");
|
|
13
|
+
var _contextUseCase = require("../../usecases/contextUseCase");
|
|
14
|
+
var _SafeUseCaseFragment = require("../SafeUseCaseFragment");
|
|
15
|
+
var _excluded = ["usecase"];
|
|
16
|
+
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; }
|
|
17
|
+
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; }
|
|
13
18
|
var UseCaseFragment = exports.UseCaseFragment = function UseCaseFragment(_ref) {
|
|
14
19
|
var usecase = _ref.usecase,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
var
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
entity = _useUseCase2[0];
|
|
24
|
-
(0, _ahooks.useMount)(function () {
|
|
25
|
-
onMount === null || onMount === void 0 || onMount(entity);
|
|
20
|
+
props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
21
|
+
var _useUseCase = (0, _useUseCase2.useUseCase)(_contextUseCase.contextUseCase),
|
|
22
|
+
getUseCaseContext = _useUseCase.getUseCaseContext;
|
|
23
|
+
var context = getUseCaseContext(usecase);
|
|
24
|
+
return (0, _jsxRuntime.jsx)(_react.Fragment, {
|
|
25
|
+
children: context === null ? null : (0, _jsxRuntime.jsx)(_SafeUseCaseFragment.SafeUseCaseFragment, _objectSpread({
|
|
26
|
+
usecase: usecase
|
|
27
|
+
}, props))
|
|
26
28
|
});
|
|
27
|
-
return (0, _jsxRuntime.jsx)(_react.Fragment, {});
|
|
28
29
|
};
|
|
@@ -7,16 +7,17 @@ exports.useContext = void 0;
|
|
|
7
7
|
var _useConstant = require("../useConstant");
|
|
8
8
|
var _ahooks = require("ahooks");
|
|
9
9
|
var _ArgumentTypes = require("../../enums/ArgumentTypes");
|
|
10
|
-
var
|
|
10
|
+
var _contextUseCase3 = require("../../usecases/contextUseCase");
|
|
11
11
|
var useContext = exports.useContext = function useContext(usecase) {
|
|
12
12
|
var argumentTypes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _ArgumentTypes.ArgumentTypes.None;
|
|
13
|
-
var _useContextUseCase = (0, _useContextUseCase2.useContextUseCase)(),
|
|
14
|
-
registerUseCase = _useContextUseCase.registerUseCase,
|
|
15
|
-
unregisterUseCase = _useContextUseCase.unregisterUseCase;
|
|
16
13
|
var context = (0, _useConstant.useConstant)(function () {
|
|
14
|
+
var _contextUseCase = (0, _contextUseCase3.contextUseCase)(),
|
|
15
|
+
registerUseCase = _contextUseCase.registerUseCase;
|
|
17
16
|
return registerUseCase(usecase, argumentTypes);
|
|
18
17
|
});
|
|
19
18
|
(0, _ahooks.useUnmount)(function () {
|
|
19
|
+
var _contextUseCase2 = (0, _contextUseCase3.contextUseCase)(),
|
|
20
|
+
unregisterUseCase = _contextUseCase2.unregisterUseCase;
|
|
20
21
|
unregisterUseCase(usecase, argumentTypes);
|
|
21
22
|
});
|
|
22
23
|
return context;
|
|
@@ -8,17 +8,17 @@ exports.useProvider = void 0;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _ahooks = require("ahooks");
|
|
10
10
|
var _useConstantFn = require("../useConstantFn");
|
|
11
|
-
var
|
|
11
|
+
var _contextUseCase2 = require("../../usecases/contextUseCase");
|
|
12
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
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
14
|
var useProvider = exports.useProvider = function useProvider(statuses, context, store, reducers) {
|
|
15
15
|
var entity = store.value;
|
|
16
|
-
var _useContextUseCase = (0, _useContextUseCase2.useContextUseCase)(),
|
|
17
|
-
createContextValue = _useContextUseCase.createContextValue;
|
|
18
16
|
var contextValue = (0, _react.useMemo)(function () {
|
|
17
|
+
var _contextUseCase = (0, _contextUseCase2.contextUseCase)(),
|
|
18
|
+
createContextValue = _contextUseCase.createContextValue;
|
|
19
19
|
void entity;
|
|
20
20
|
return createContextValue(store, reducers, statuses);
|
|
21
|
-
}, [statuses, entity, store, reducers
|
|
21
|
+
}, [statuses, entity, store, reducers]);
|
|
22
22
|
var contextValueRef = (0, _ahooks.useLatest)(contextValue);
|
|
23
23
|
return (0, _useConstantFn.useConstantFn)(function (_ref) {
|
|
24
24
|
var children = _ref.children,
|
|
@@ -25,6 +25,14 @@ var contextUseCase = exports.contextUseCase = (0, _usecases.createUseCase)(funct
|
|
|
25
25
|
statuses: statuses
|
|
26
26
|
};
|
|
27
27
|
};
|
|
28
|
+
var getUseCaseContext = function getUseCaseContext(usecase) {
|
|
29
|
+
if (!referenceMap.has(usecase)) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
var _referenceMap$get = referenceMap.get(usecase),
|
|
33
|
+
value = _referenceMap$get.value;
|
|
34
|
+
return value;
|
|
35
|
+
};
|
|
28
36
|
var registerUseCase = function registerUseCase(usecase, argumentTypes) {
|
|
29
37
|
if (referenceMap.has(usecase)) {
|
|
30
38
|
var reference = referenceMap.get(usecase);
|
|
@@ -68,6 +76,7 @@ var contextUseCase = exports.contextUseCase = (0, _usecases.createUseCase)(funct
|
|
|
68
76
|
};
|
|
69
77
|
return {
|
|
70
78
|
createContextValue: createContextValue,
|
|
79
|
+
getUseCaseContext: getUseCaseContext,
|
|
71
80
|
registerUseCase: registerUseCase,
|
|
72
81
|
unregisterUseCase: unregisterUseCase
|
|
73
82
|
};
|
package/package.json
CHANGED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useContextUseCase = void 0;
|
|
7
|
-
var _useConstant = require("../useConstant");
|
|
8
|
-
var _contextUseCase = require("../../usecases/contextUseCase");
|
|
9
|
-
var useContextUseCase = exports.useContextUseCase = function useContextUseCase() {
|
|
10
|
-
return (0, _useConstant.useConstant)(function () {
|
|
11
|
-
return (0, _contextUseCase.contextUseCase)();
|
|
12
|
-
});
|
|
13
|
-
};
|