UNPKG

use-enhanced-reducer

Version:

[![npm version](https://badgen.net/npm/v/use-enhanced-reducer?icon=npm)](https://www.npmjs.com/package/use-enhanced-reducer) [![npm downloads](https://badgen.net/npm/dt/use-enhanced-reducer?icon=libraries&color=green)](https://www.npmjs.com/package/use-en

2 lines (1 loc) 865 B
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),n=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return function(n){return e.reduceRight((function(e,n){return n(e)}),n)}};exports.loggerMiddleware=function(e,n){return function(r){return function(t){console.info("%cPrevious State:","color: #9E9E9E; font-weight: 700;",e),console.info("%cAction:","color: #00A7F7; font-weight: 700;",t),console.log("%cNext State:","color: #47B04B; font-weight: 700;",n(e,t)),r(t)}}},exports.thunkMiddleware=function(e){return function(n){return function(r){"function"!=typeof r?n(r):r(n,e)}}},exports.useEnhancedReducer=function(r,t,o){void 0===o&&(o=[]);var u=e.useReducer(r,t),c=u[0],i=u[1];if(!Array.isArray(o)||0===o.length)return[c,i];var f=o.map((function(e){return e(c,r)})),a=n.apply(void 0,f)(i);return[c,a]};