UNPKG

@skele/classic

Version:

Skele is an architectural framework that assists with building data-driven apps with React or React Native.

1 lines 814 B
Object.defineProperty(exports,"__esModule",{value:true});exports.default=memoizeOne;var simpleIsEqual=function simpleIsEqual(a,b){return a===b;};function memoizeOne(resultFn){var isEqual=arguments.length>1&&arguments[1]!==undefined?arguments[1]:simpleIsEqual;var lastThis;var lastArgs=[];var lastResult;var calledOnce=false;var isNewArgEqualToLast=function isNewArgEqualToLast(newArg,index){return isEqual(newArg,lastArgs[index]);};var result=function result(){for(var _len=arguments.length,newArgs=new Array(_len),_key=0;_key<_len;_key++){newArgs[_key]=arguments[_key];}if(calledOnce&&lastThis===this&&newArgs.length===lastArgs.length&&newArgs.every(isNewArgEqualToLast)){return lastResult;}lastResult=resultFn.apply(this,newArgs);calledOnce=true;lastThis=this;lastArgs=newArgs;return lastResult;};return result;}