use-enhanced-reducer
Version:
[](https://www.npmjs.com/package/use-enhanced-reducer) [](https://www.npmjs.com/package/use-en
2 lines (1 loc) • 806 B
JavaScript
import{useReducer as n}from"react";function t(t,o,r){void 0===r&&(r=[]);var i=n(t,o),c=i[0],u=i[1];if(!Array.isArray(r)||0===r.length)return[c,u];var f=r.map((function(n){return n(c,t)})),a=e.apply(void 0,f)(u);return[c,a]}var o=function(n,t){return function(o){return function(r){console.info("%cPrevious State:","color: #9E9E9E; font-weight: 700;",n),console.info("%cAction:","color: #00A7F7; font-weight: 700;",r),console.log("%cNext State:","color: #47B04B; font-weight: 700;",t(n,r)),o(r)}}},r=function(n){return function(t){return function(o){"function"!=typeof o?t(o):o(t,n)}}},e=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return function(t){return n.reduceRight((function(n,t){return t(n)}),t)}};export{o as loggerMiddleware,r as thunkMiddleware,t as useEnhancedReducer};