UNPKG

stick-js

Version:

Fast toolkit for functional programming in JS. Provides idioms for referentially transparent expressions, clear separation of mutable and immutable operations, object factories, function calls based on English grammar, and pipe & compose operators.

1 lines 43.3 kB
import _construct from"@babel/runtime/helpers/construct.js";import _defineProperty from"@babel/runtime/helpers/defineProperty.js";import _slicedToArray from"@babel/runtime/helpers/slicedToArray.js";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray.js";function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly)symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable;});keys.push.apply(keys,symbols);}return keys;}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};if(i%2){ownKeys(Object(source),true).forEach(function(key){_defineProperty(target,key,source[key]);});}else if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source));}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key));});}}return target;}function _createForOfIteratorHelper(o,allowArrayLike){var it;if(typeof Symbol==="undefined"||o[Symbol.iterator]==null){if(Array.isArray(o)||(it=_unsupportedIterableToArray(o))||allowArrayLike&&o&&typeof o.length==="number"){if(it)o=it;var i=0;var F=function F(){};return{s:F,n:function n(){if(i>=o.length)return{done:true};return{done:false,value:o[i++]};},e:function e(_e){throw _e;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var normalCompletion=true,didErr=false,err;return{s:function s(){it=o[Symbol.iterator]();},n:function n(){var step=it.next();normalCompletion=step.done;return step;},e:function e(_e2){didErr=true;err=_e2;},f:function f(){try{if(!normalCompletion&&it.return!=null)it.return();}finally{if(didErr)throw err;}}};}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++){arr2[i]=arr[i];}return arr2;}import sprintfMod from'sprintf-js';var sprintf=sprintfMod.sprintf;var _ref={},hasOwn=_ref.hasOwnProperty,oStr=_ref.toString;export var pipe=function pipe(a,b){return b(a);};export var composeRight=function composeRight(a,b){return function(){return b(a.apply(void 0,arguments));};};export var compose=function compose(a,b){return function(){return a(b.apply(void 0,arguments));};};export var composeAsMethodsRight=function composeAsMethodsRight(b,a){return a.compose(b);};export var composeAsMethods=function composeAsMethods(a,b){return a.compose(b);};export var noop=function noop(){};export var not=function not(x){return!x;};export var ok=function ok(x){return x!=null;};export var notOk=function notOk(x){return x==null;};export var always=function always(x){return function(_){return x;};};export var eq=function eq(x){return function(y){return x===y;};};export var ne=function ne(x){return function(y){return x!==y;};};export var gt=function gt(m){return function(n){return n>m;};};export var gte=function gte(m){return function(n){return n>=m;};};export var lt=function lt(m){return function(n){return n<m;};};export var lte=function lte(m){return function(n){return n<=m;};};export var isTrue=eq(true);export var isFalse=eq(false);export var ifPredicate=function ifPredicate(p){return function(yes){return function(no){return function(x){return p(x)?yes(x):no(x);};};};};export var whenPredicate=function whenPredicate(p){return function(yes){return ifPredicate(p)(yes)(noop);};};export var ifPredicateV=function ifPredicateV(p){return function(yes){return function(no){return function(x){return p(x)?yes:no;};};};};export var whenPredicateV=function whenPredicateV(p){return function(yes){return ifPredicateV(p)(yes)(void 8);};};export var ifPredicateResults=function ifPredicateResults(p){return function(yes){return function(no){return function(x){var y=p(x);return y?yes(y):no(y);};};};};export var whenPredicateResults=function whenPredicateResults(p){return function(yes){return ifPredicateResults(p)(yes)(noop);};};export var ifPredicateWithResults=function ifPredicateWithResults(p){return function(yes){return function(no){return function(x){var y=p(x);return y?yes(x,y):no(x,y);};};};};export var whenPredicateWithResults=function whenPredicateWithResults(p){return function(yes){return ifPredicateWithResults(p)(yes)(noop);};};export var ifAlways=composeRight(always,ifPredicate);export var whenAlways=composeRight(always,whenPredicate);export var isYes=Boolean;export var isNo=not;export var ifOk=ifPredicate(ok);export var whenOk=whenPredicate(ok);export var ifNotOk=ifPredicate(notOk);export var whenNotOk=whenPredicate(notOk);export var ifTrue=ifPredicate(isTrue);export var whenTrue=whenPredicate(isTrue);export var ifFalse=ifPredicate(isFalse);export var whenFalse=whenPredicate(isFalse);export var ifYes=ifPredicate(isYes);export var whenYes=whenPredicate(isYes);export var ifNo=ifPredicate(isNo);export var whenNo=whenPredicate(isNo);export var getType=function getType(x){return oStr.call(x).slice(8,-1);};export var isType=function isType(t){return function(x){return getType(x)===t;};};export var isFunction=function isFunction(o){var type=getType(o);return false||type==='Function'||type==='GeneratorFunction'||type==='AsyncFunction'||type==='Proxy';};export var isArray=isType('Array');export var isObject=isType('Object');export var isNumber=isType('Number');export var isRegExp=isType('RegExp');export var isBoolean=isType('Boolean');export var isString=isType('String');export var isSymbol=isType('Symbol');export var tap=function tap(f){return function(o){return f(o),o;};};export var dot=function dot(prop){return function(o){return o[prop]();};};export var dot1=function dot1(prop){return function(val){return function(o){return o[prop](val);};};};export var dot2=function dot2(prop){return function(val1){return function(val2){return function(o){return o[prop](val1,val2);};};};};export var dot3=function dot3(prop){return function(val1){return function(val2){return function(val3){return function(o){return o[prop](val1,val2,val3);};};};};};export var dot4=function dot4(prop){return function(val1){return function(val2){return function(val3){return function(val4){return function(o){return o[prop](val1,val2,val3,val4);};};};};};};export var dot5=function dot5(prop){return function(val1){return function(val2){return function(val3){return function(val4){return function(val5){return function(o){return o[prop](val1,val2,val3,val4,val5);};};};};};};};export var dotN=function dotN(prop){return function(vs){return function(o){return o[prop].apply(o,_toConsumableArray(vs));};};};export var side=function side(prop){return function(o){return dot(prop)(o),o;};};export var side1=function side1(prop){return function(val1){return function(o){return dot1(prop)(val1)(o),o;};};};export var side2=function side2(prop){return function(val1){return function(val2){return function(o){return dot2(prop)(val1)(val2)(o),o;};};};};export var side3=function side3(prop){return function(val1){return function(val2){return function(val3){return function(o){return dot3(prop)(val1)(val2)(val3)(o),o;};};};};};export var side4=function side4(prop){return function(val1){return function(val2){return function(val3){return function(val4){return function(o){return dot4(prop)(val1)(val2)(val3)(val4)(o),o;};};};};};};export var side5=function side5(prop){return function(val1){return function(val2){return function(val3){return function(val4){return function(val5){return function(o){return dot5(prop)(val1)(val2)(val3)(val4)(val5)(o),o;};};};};};};};export var sideN=function sideN(prop){return function(vs){return function(o){return dotN(prop)(vs)(o),o;};};};export var has=function has(k){return function(o){return hasOwn.call(o,k);};};export var hasIn=function hasIn(k){return function(o){return k in o;};};export var ifHas=function ifHas(yes){return function(no){return function(_ref2){var _ref3=_slicedToArray(_ref2,2),o=_ref3[0],k=_ref3[1];return has(k)(o)?yes(o[k],o,k):no(o,k);};};};export var whenHas=function whenHas(yes){return ifHas(yes)(noop);};export var ifHasIn=function ifHasIn(yes){return function(no){return function(_ref4){var _ref5=_slicedToArray(_ref4,2),o=_ref5[0],k=_ref5[1];return hasIn(k)(o)?yes(o[k],o,k):no(o,k);};};};export var whenHasIn=function whenHasIn(yes){return ifHasIn(yes)(noop);};export var bindLatePropTo=function bindLatePropTo(o){return function(prop){return function(){return o[prop].apply(o,arguments);};};};export var bindLateProp=function bindLateProp(prop){return function(o){return function(){return o[prop].apply(o,arguments);};};};export var bindPropTo=function bindPropTo(o){return function(prop){return o[prop].bind(o);};};export var bindProp=function bindProp(prop){return function(o){return o[prop].bind(o);};};export var bindTo=function bindTo(o){return function(f){return f.bind(o);};};export var bind=function bind(f){return function(o){return f.bind(o);};};export var bindTryPropTo=function bindTryPropTo(o){return function(prop){return typeof o[prop]==='function'?bindPropTo(o)(prop):null;};};export var bindTryProp=function bindTryProp(prop){return function(o){return typeof o[prop]==='function'?bindPropTo(o)(prop):null;};};export var bindTryTo=function bindTryTo(o){return function(f){return typeof f==='function'?bindTo(o)(f):null;};};export var bindTry=function bindTry(f){return function(o){return typeof f==='function'?bindTo(o)(f):null;};};export var ifBind=function ifBind(trier){return ifPredicateWithResults(passToN(trier));};export var whenBind=function whenBind(trier){return function(yes){return ifBind(trier)(yes)(noop);};};export var T=always(true);export var F=always(false);export var condPredicate=function condPredicate(exec){return function(pred){return[pred,exec];};};export var cond=function cond(){for(var _len=arguments.length,blocks=new Array(_len),_key=0;_key<_len;_key++){blocks[_key]=arguments[_key];}for(var _i=0,_blocks=blocks;_i<_blocks.length;_i++){var _blocks$_i=_slicedToArray(_blocks[_i],2),test=_blocks$_i[0],exec=_blocks$_i[1];var result=test();if(result)return exec(result);}};export var condS=function condS(blocks){return function(target){var _iterator=_createForOfIteratorHelper(blocks),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var _step$value=_slicedToArray(_step.value,2),test=_step$value[0],exec=_step$value[1];var result=test(target);if(result)return exec(target,result);}}catch(err){_iterator.e(err);}finally{_iterator.f();}};};export var add=function add(m){return function(n){return m+n;};};export var multiply=function multiply(m){return function(n){return m*n;};};export var divideBy=function divideBy(m){return function(n){return n/m;};};export var divideInto=function divideInto(m){return function(n){return m/n;};};export var subtract=function subtract(m){return function(n){return n-m;};};export var subtractFrom=function subtractFrom(m){return function(n){return m-n;};};export var modulo=function modulo(m){return function(n){return n%m;};};export var moduloWholePart=function moduloWholePart(m){return function(n){var div=n/m;var flo=Math.floor(div);return div<0?1+flo:flo;};};export var toThe=function toThe(e){return function(b){return Math.pow(b,e);};};export var tryCatch=function tryCatch(good){return function(bad){return function(f){var successVal;try{successVal=f();}catch(e){return bad(e);}return good(successVal);};};};export var decorateException=function decorateException(prefix){return function(e){var msg=[prefix];whenOk(function(m){return msg.push(m);})(e.message);e.message=msg.join(' ');return e;};};export var exception=function exception(){for(var _len2=arguments.length,args=new Array(_len2),_key2=0;_key2<_len2;_key2++){args[_key2]=arguments[_key2];}return new Error(args.join(' '));};export var raise=function raise(e){throw e;};export var die=composeRight(exception,raise);export var defaultTo=function defaultTo(f){return function(x){return ok(x)?x:f();};};export var prop=function prop(p){return function(o){return o[p];};};export var propOf=function propOf(o){return function(p){return o[p];};};export var path=function path(xs){return function(o){var j=o;var _iterator2=_createForOfIteratorHelper(xs),_step2;try{for(_iterator2.s();!(_step2=_iterator2.n()).done;){var i=_step2.value;if(!ok(j))return j;else j=j[i];}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}return j;};};export var pathOf=function pathOf(o){return function(xs){return path(xs)(o);};};export var assoc=function assoc(prop){return function(val){return function(o){var oo=mergeInM(o)({});oo[prop]=val;return oo;};};};export var assocM=function assocM(prop){return function(val){return function(o){return o[prop]=val,o;};};};export var assocPath=function assocPath(xs){return function(x){return function(o){return assocPathM(xs)(x)(mergeInM(o)({}));};};};export var assocPathM=function assocPathM(xs){return function(x){return function(o){var reducer=function reducer(ptr,pat,el){if(!ok(pat))return[ptr,el];var pp=ptr[pat];var ppp=isArray(pp)||isObject(pp)?pp:ptr[pat]={};return[ppp,el];};var _xs$reduce=xs.reduce(function(_ref6,x){var _ref7=_slicedToArray(_ref6,2),p=_ref7[0],s=_ref7[1];return reducer(p,s,x);},[o,null]),_xs$reduce2=_slicedToArray(_xs$reduce,2),ptr=_xs$reduce2[0],pat=_xs$reduce2[1];ptr[pat]=x;return o;};};};export var updateM=function updateM(prop){return function(f){return function(o){return o[prop]=f(o[prop]),o;};};};export var update=function update(prop){return function(f){return function(o){var oo=merge(o)({});oo[prop]=f(o[prop]);return oo;};};};export var updatePathM=function updatePathM(xs){return function(f){return function(o){var x=path(xs)(o);return assocPathM(xs)(f(x))(o);};};};export var updatePath=function updatePath(xs){return function(f){return function(o){var x=path(xs)(o);return assocPath(xs)(f(x))(o);};};};export var append=function append(elem){return function(ary){return[].concat(_toConsumableArray(ary),[elem]);};};export var appendTo=function appendTo(ary){return function(elem){return[].concat(_toConsumableArray(ary),[elem]);};};export var appendToM=function appendToM(tgt){return function(src){return tgt.push(src),tgt;};};export var appendM=function appendM(src){return function(tgt){return tgt.push(src),tgt;};};export var prependTo=function prependTo(ary){return function(elem){return[elem].concat(_toConsumableArray(ary));};};export var prepend=function prepend(elem){return function(ary){return[elem].concat(_toConsumableArray(ary));};};export var prependM=function prependM(src){return function(tgt){return tgt.unshift(src),tgt;};};export var prependToM=function prependToM(tgt){return function(src){return tgt.unshift(src),tgt;};};export var concatTo=function concatTo(tgt){return function(src){return tgt.concat(src);};};export var concat=function concat(src){return function(tgt){return tgt.concat(src);};};export var concatToM=function concatToM(tgt){return function(src){return tgt.push.apply(tgt,_toConsumableArray(src)),tgt;};};export var concatM=function concatM(src){return function(tgt){return tgt.push.apply(tgt,_toConsumableArray(src)),tgt;};};export var mergeToM=function mergeToM(tgt){return function(src){for(var i in src){if(hasOwn.call(src,i))tgt[i]=src[i];}return tgt;};};export var mergeM=function mergeM(src){return function(tgt){for(var i in src){if(hasOwn.call(src,i))tgt[i]=src[i];}return tgt;};};export var mergeTo=function mergeTo(tgt){return function(src){var a=mergeToM({})(tgt);return mergeToM(a)(src);};};export var merge=function merge(src){return function(tgt){var a=mergeToM({})(tgt);return mergeToM(a)(src);};};export var mergeInToM=function mergeInToM(tgt){return function(src){for(var i in src){tgt[i]=src[i];}return tgt;};};export var mergeInM=function mergeInM(src){return function(tgt){return mergeInToM(tgt)(src);};};export var mergeInTo=function mergeInTo(tgt){return function(src){var a=mergeInToM({})(tgt);return mergeInToM(a)(src);};};export var mergeIn=function mergeIn(src){return function(tgt){return mergeInTo(tgt)(src);};};var getMergeX=function getMergeX(pluck){return function(mergerSym){return ifOk(pluck)(function(_){return die(sprintf('No merge function for symbol "%s"'));})(merges()[mergerSym]);};};var getMergeFunction=getMergeX(function(_ref8){var f=_ref8.f;return f;});var getMergeInfo=getMergeX(function(_ref9){var to=_ref9.to,mut=_ref9.mut,own=_ref9.own;return{to:to,mut:mut,own:own};});export var mergeToMSym=Symbol('mergeToM');export var mergeToSym=Symbol('mergeTo');export var mergeMSym=Symbol('mergeM');export var mergeSym=Symbol('merge');export var mergeInToMSym=Symbol('mergeInToM');export var mergeInToSym=Symbol('mergeInTo');export var mergeInMSym=Symbol('mergeInM');export var mergeInSym=Symbol('mergeIn');export var mergeAllIn=function mergeAllIn(xs){return xs.reduce(function(tgt,src){return mergeInToM(tgt)(src);},{});};var merges=function merges(_){var _ref10;return _ref10={},_defineProperty(_ref10,mergeToMSym,{f:mergeToM,to:true,mut:true,own:true}),_defineProperty(_ref10,mergeToSym,{f:mergeTo,to:true,mut:false,own:true}),_defineProperty(_ref10,mergeMSym,{f:mergeM,to:false,mut:true,own:true}),_defineProperty(_ref10,mergeSym,{f:merge,to:false,mut:false,own:true}),_defineProperty(_ref10,mergeInToMSym,{f:mergeInToM,to:true,mut:true,own:false}),_defineProperty(_ref10,mergeInToSym,{f:mergeInTo,to:true,mut:false,own:false}),_defineProperty(_ref10,mergeInMSym,{f:mergeInM,to:false,mut:true,own:false}),_defineProperty(_ref10,mergeInSym,{f:mergeIn,to:false,mut:false,own:false}),_ref10;};var mergeXWith=function mergeXWith(collision){return function(own){return function(src){return function(tgt){var _ref11=own?[whenHas,ifHas]:[whenHasIn,ifHasIn],_ref12=_slicedToArray(_ref11,2),_whenHas=_ref12[0],_ifHas=_ref12[1];var _loop=function _loop(i){_whenHas(function(v,o,k){return _ifHas(function(v,o,k){return tgt[i]=collision(src[i],tgt[i]);})(function(o,k){return tgt[i]=src[i];})([tgt,i]);})([src,i]);};for(var i in src){_loop(i);}return tgt;};};};};export var mergeWith=function mergeWith(collision){return function(mergerSym){var merger=getMergeFunction(mergerSym);return function(a){return function(b){var _getMergeInfo=getMergeInfo(mergerSym),to=_getMergeInfo.to,mut=_getMergeInfo.mut,own=_getMergeInfo.own;var _ref13=to?[b,a]:[a,b],_ref14=_slicedToArray(_ref13,2),src=_ref14[0],tgt=_ref14[1];var tgtM=mut?tgt:to?merger({})(tgt):merger(tgt)({});return mergeXWith(collision)(own)(src)(tgtM);};};};};var mergeXWhen=function mergeXWhen(p){return function(own){return function(src){return function(tgt){var checkHas=own?hasOwn:T;for(var i in src){if(checkHas.call(src,i)&&p(src[i],tgt[i]))tgt[i]=src[i];}return tgt;};};};};export var mergeWhen=function mergeWhen(p){return function(mergerSym){var merger=getMergeFunction(mergerSym);return function(a){return function(b){var _getMergeInfo2=getMergeInfo(mergerSym),to=_getMergeInfo2.to,mut=_getMergeInfo2.mut,own=_getMergeInfo2.own;var _ref15=to?[b,a]:[a,b],_ref16=_slicedToArray(_ref15,2),src=_ref16[0],tgt=_ref16[1];var tgtM=mut?tgt:to?merger({})(tgt):merger(tgt)({});return mergeXWhen(p)(own)(src)(tgtM);};};};};export var map=function map(f){return function(xs){return xs.map(function(x){return f(x);});};};export var each=function each(f){return function(xs){return xs.forEach(function(x){return f(x);});};};export var reduce=function reduce(f){return function(acc){return function(xs){return xs.reduce(function(acc,x){return f(acc,x);},acc);};};};export var reduceRight=function reduceRight(f){return function(acc){return function(xs){var acco=acc;var l=xs.length;if(l===0)return acco;for(var i=l-1;i>=0;i-=1){acco=f(xs[i],acco);}return acco;};};};export var reduceRightC=function reduceRightC(f){return function(accInit){return function(xs){var acc=accInit;var l=xs.length;if(l===0)return acc;for(var i=l-1;i>=0;i-=1){acc=f(xs[i])(acc);}return acc;};};};export var find=function find(p){return function(xs){return xs.find(function(x){return p(x);});};};export var findIndex=function findIndex(p){return function(xs){var i=0;var _iterator3=_createForOfIteratorHelper(xs),_step3;try{for(_iterator3.s();!(_step3=_iterator3.n()).done;){var x=_step3.value;if(p(x))return i;i++;}}catch(err){_iterator3.e(err);}finally{_iterator3.f();}return undefined;};};export var findWithIndex=function findWithIndex(p){return function(xs){var i=0;var _iterator4=_createForOfIteratorHelper(xs),_step4;try{for(_iterator4.s();!(_step4=_iterator4.n()).done;){var x=_step4.value;if(p(x))return[x,i];i++;}}catch(err){_iterator4.e(err);}finally{_iterator4.f();}return[undefined,undefined];};};export var filter=function filter(f){return function(xs){return xs.filter(function(x){return f(x);});};};export var reject=function reject(f){return function(xs){return xs.filter(function(x){return!f(x);});};};export var containsV=function containsV(v){return function(xs){var _iterator5=_createForOfIteratorHelper(xs),_step5;try{for(_iterator5.s();!(_step5=_iterator5.n()).done;){var x=_step5.value;if(x===v)return true;}}catch(err){_iterator5.e(err);}finally{_iterator5.f();}return false;};};export var contains=function contains(p){return function(xs){var _iterator6=_createForOfIteratorHelper(xs),_step6;try{for(_iterator6.s();!(_step6=_iterator6.n()).done;){var x=_step6.value;if(p(x))return true;}}catch(err){_iterator6.e(err);}finally{_iterator6.f();}return false;};};export var reduceAbort=function reduceAbort(f){return function(accInit){return function(abortVal){return function(xs){var acc=accInit;var _iterator7=_createForOfIteratorHelper(xs),_step7;try{for(_iterator7.s();!(_step7=_iterator7.n()).done;){var x=_step7.value;var g=f(acc,x);if(g===abortVal)return abortVal;acc=g;}}catch(err){_iterator7.e(err);}finally{_iterator7.f();}return acc;};};};};export var drop=function drop(x){return function(xs){return xs.slice(x);};};export var take=function take(x){return function(xs){return xs.slice(0,x);};};export var eachObj=function eachObj(f){return function(o){for(var k in o){if(hasOwn.call(o,k))f(o[k],k);}return o;};};export var eachObjIn=function eachObjIn(f){return function(o){for(var k in o){f(o[k],k);}return o;};};export var addIndex=function addIndex(orig){return function(f){var idx=-1;var g=function g(){for(var _len3=arguments.length,args=new Array(_len3),_key3=0;_key3<_len3;_key3++){args[_key3]=arguments[_key3];}return f.apply(void 0,args.concat([++idx]));};return orig(g);};};export var addCollection=function addCollection(orig){return function(f){return function(coll){var g=function g(){for(var _len4=arguments.length,args=new Array(_len4),_key4=0;_key4<_len4;_key4++){args[_key4]=arguments[_key4];}return f.apply(void 0,args.concat([coll]));};return orig(g)(coll);};};};export var addIndex2=addIndex;export var addCollection2=function addCollection2(orig){return function(f){return function(x){return function(coll){var g=function g(){for(var _len5=arguments.length,args=new Array(_len5),_key5=0;_key5<_len5;_key5++){args[_key5]=arguments[_key5];}return f.apply(void 0,args.concat([coll]));};return orig(g)(x)(coll);};};};};export var reduceObj=function reduceObj(f){return function(acc){return function(o){var curAcc=acc;for(var k in o){if(hasOwn.call(o,k))curAcc=f(curAcc,[k,o[k]]);}return curAcc;};};};export var reduceObjIn=function reduceObjIn(f){return function(acc){return function(o){var curAcc=acc;for(var k in o){curAcc=f(curAcc,[k,o[k]]);}return curAcc;};};};export var ampersandN=function ampersandN(fs){return function(x){var mapper=function mapper(f){return f(x);};return map(mapper)(fs);};};export var asteriskN=function asteriskN(fs){return function(xs){var ret=[];var i=-1;var _iterator8=_createForOfIteratorHelper(fs),_step8;try{for(_iterator8.s();!(_step8=_iterator8.n()).done;){var f=_step8.value;var x=xs[++i];ret.push(f(x));}}catch(err){_iterator8.e(err);}finally{_iterator8.f();}return ret;};};export var asterisk1=function asterisk1(f){return function(a){return[f(a)];};};export var asterisk2=function asterisk2(f){return function(g){return function(a){return function(b){return[f(a),g(b)];};};};};export var asterisk3=function asterisk3(f){return function(g){return function(h){return function(a){return function(b){return function(c){return[f(a),g(b),h(c)];};};};};};};export var asterisk4=function asterisk4(f){return function(g){return function(h){return function(i){return function(a){return function(b){return function(c){return function(d){return[f(a),g(b),h(c),i(d)];};};};};};};};};export var asterisk5=function asterisk5(f){return function(g){return function(h){return function(i){return function(j){return function(a){return function(b){return function(c){return function(d){return function(e){return[f(a),g(b),h(c),i(d),j(e)];};};};};};};};};};};export var letNV=function letNV(xs){return function(f){return f.apply(null,xs);};};export var letV=function letV(){for(var _len6=arguments.length,xs=new Array(_len6),_key6=0;_key6<_len6;_key6++){xs[_key6]=arguments[_key6];}var f=xs.pop();return letNV(xs)(f);};export var lets1=function lets1(f){return invoke(f);};export var lets2=function lets2(f1,f2){var n1=f1();return f2(n1);};export var lets3=function lets3(f1,f2,f3){var n1=f1();var n2=f2(n1);return f3(n1,n2);};export var lets4=function lets4(f1,f2,f3,f4){var n1=f1();var n2=f2(n1);var n3=f3(n1,n2);return f4(n1,n2,n3);};export var lets5=function lets5(f1,f2,f3,f4,f5){var n1=f1();var n2=f2(n1);var n3=f3(n1,n2);var n4=f4(n1,n2,n3);return f5(n1,n2,n3,n4);};export var lets6=function lets6(f1,f2,f3,f4,f5,f6){var n1=f1();var n2=f2(n1);var n3=f3(n1,n2);var n4=f4(n1,n2,n3);var n5=f5(n1,n2,n3,n4);return f6(n1,n2,n3,n4,n5);};export var letN=function letN(xs){return lets.apply(void 0,_toConsumableArray(xs));};export var lets=function lets(){var acc=[];var last;for(var _len7=arguments.length,fs=new Array(_len7),_key7=0;_key7<_len7;_key7++){fs[_key7]=arguments[_key7];}for(var _i2=0,_fs=fs;_i2<_fs.length;_i2++){var f=_fs[_i2];var ret=f.apply(void 0,acc);acc.push(ret);last=ret;}return last;};export var letS=function letS(specAry){return function(tgt){return lets.apply(void 0,[function(_){return tgt;}].concat(_toConsumableArray(specAry)));};};export var callOn=function callOn(o){return function(f){return f.call(o);};};export var callOn1=function callOn1(o){return function(val1){return function(f){return f.call(o,val1);};};};export var callOn2=function callOn2(o){return function(val1){return function(val2){return function(f){return f.call(o,val1,val2);};};};};export var callOn3=function callOn3(o){return function(val1){return function(val2){return function(val3){return function(f){return f.call(o,val1,val2,val3);};};};};};export var callOn4=function callOn4(o){return function(val1){return function(val2){return function(val3){return function(val4){return function(f){return f.call(o,val1,val2,val3,val4);};};};};};};export var callOn5=function callOn5(o){return function(val1){return function(val2){return function(val3){return function(val4){return function(val5){return function(f){return f.call(o,val1,val2,val3,val4,val5);};};};};};};};export var callOnN=function callOnN(o){return function(vs){return function(f){return f.apply(o,vs);};};};export var provideTo=function provideTo(f){return function(o){return f.call(o);};};export var provideTo1=function provideTo1(f){return function(val){return function(o){return f.call(o,val);};};};export var provideTo2=function provideTo2(f){return function(val1){return function(val2){return function(o){return f.call(o,val1,val2);};};};};export var provideTo3=function provideTo3(f){return function(val1){return function(val2){return function(val3){return function(o){return f.call(o,val1,val2,val3);};};};};};export var provideTo4=function provideTo4(f){return function(val1){return function(val2){return function(val3){return function(val4){return function(o){return f.call(o,val1,val2,val3,val4);};};};};};};export var provideTo5=function provideTo5(f){return function(val1){return function(val2){return function(val3){return function(val4){return function(val5){return function(o){return f.call(o,val1,val2,val3,val4,val5);};};};};};};};export var provideToN=function provideToN(f){return function(vs){return function(o){return f.apply(o,vs);};};};export var invoke=function invoke(f){return f();};export var applyTo1=function applyTo1(val1){return function(f){return f(val1);};};export var applyTo2=function applyTo2(val1){return function(val2){return function(f){return f(val1,val2);};};};export var applyTo3=function applyTo3(val1){return function(val2){return function(val3){return function(f){return f(val1,val2,val3);};};};};export var applyTo4=function applyTo4(val1){return function(val2){return function(val3){return function(val4){return function(f){return f(val1,val2,val3,val4);};};};};};export var applyTo5=function applyTo5(val1){return function(val2){return function(val3){return function(val4){return function(val5){return function(f){return f(val1,val2,val3,val4,val5);};};};};};};export var applyToN=function applyToN(vs){return function(f){return f.apply(null,vs);};};export var passTo=function passTo(f){return function(val){return f(val);};};export var passToN=function passToN(f){return function(vs){return f.apply(null,vs);};};export var spreadTo=passToN;export var join=dot1('join');export var split=dot1('split');export var flip=function flip(f){return function(a){return function(b){return f(b)(a);};};};export var flip3=function flip3(f){return function(a){return function(b){return function(c){return f(b)(a)(c);};};};};export var flip4=function flip4(f){return function(a){return function(b){return function(c){return function(d){return f(b)(a)(c)(d);};};};};};export var flip5=function flip5(f){return function(a){return function(b){return function(c){return function(d){return function(e){return f(b)(a)(c)(d)(e);};};};};};};export var sprintf1=function sprintf1(str){return function(a){return sprintf(str,a);};};export var sprintfN=function sprintfN(str){return function(xs){return sprintf.apply(null,[str].concat(_toConsumableArray(xs)));};};export var repeatV=function repeatV(x){return function(n){var ret=[];for(var i=0;i<n;i++){ret.push(x);}return ret;};};export var repeatF=function repeatF(f){return function(n){var ret=[];for(var i=0;i<n;i++){ret.push(f(i));}return ret;};};export var repeatSide=function repeatSide(f){return function(n){for(var i=0;i<n;i++){f(i);}};};export var timesV=function timesV(x){return function(n){return repeatV(n)(x);};};export var timesF=function timesF(f){return function(n){return repeatF(n)(f);};};export var timesSide=function timesSide(f){return function(n){return repeatSide(n)(f);};};export var ifReplace=function ifReplace(yes){return function(no){return function(re){return function(replArg){return function(target){var success=0;var repl=typeof replArg==='function'?function(){return++success,replArg.apply(void 0,arguments);}:function(_){return++success,replArg;};var out=target.replace(re,repl);return success?yes(out,success):no(target);};};};};};export var rangeFromBy=function rangeFromBy(by){return function(from){return function(to){return from<to?rangeFromByAsc(by)(from)(to):from>to?rangeFromByDesc(by)(from)(to):[];};};};export var rangeFromByAsc=function rangeFromByAsc(by){return function(from){return function(to){var ret=[];for(var i=from;i<to;i+=by){ret.push(i);}return ret;};};};export var rangeFromByDesc=function rangeFromByDesc(by){return function(from){return function(to){var ret=[];for(var i=from;i>to;i+=by){ret.push(i);}return ret;};};};export var rangeToBy=function rangeToBy(by){return function(to){return function(from){return from<to?rangeFromByAsc(by)(from)(to):from>to?rangeFromByDesc(by)(from)(to):[];};};};var removeSpaces=dot2('replace')(/\s+/g)('');export var xRegExp=function xRegExp(re){return new RegExp(removeSpaces(re.source),re.flags);};export var xRegExpFlags=function xRegExpFlags(re,flags){return new RegExp(removeSpaces(re.source),flags);};export var xRegExpStr=function xRegExpStr(reStr){var flags=arguments.length>1&&arguments[1]!==undefined?arguments[1]:'';return lets(function(_){return removeSpaces(reStr);},function(_){return flags;},function(x,y){return neu2(RegExp)(x)(y);});};export var neu1=function neu1(x){return function(val1){return new x(val1);};};export var neu2=function neu2(x){return function(val1){return function(val2){return new x(val1,val2);};};};export var neu3=function neu3(x){return function(val1){return function(val2){return function(val3){return new x(val1,val2,val3);};};};};export var neu4=function neu4(x){return function(val1){return function(val2){return function(val3){return function(val4){return new x(val1,val2,val3,val4);};};};};};export var neu5=function neu5(x){return function(val1){return function(val2){return function(val3){return function(val4){return function(val5){return new x(val1,val2,val3,val4,val5);};};};};};};export var neuN=function neuN(x){return function(vs){return _construct(x,_toConsumableArray(vs));};};export var match=function match(re){return function(target){return re.exec(target);};};export var xMatchGlobal=function xMatchGlobal(re){return function(mapper){return function(target){var out=[];var reGlobal=xRegExpFlags(re,'g');var m;while(m=reGlobal.exec(target)){appendToM(out)(mapper.apply(void 0,_toConsumableArray(m)));}return out;};};};export var xMatch=function xMatch(re){return function(target){return xRegExp(re).exec(target);};};export var xMatchStr=function xMatchStr(reStr){return function(target){return xMatch(new RegExp(reStr))(target);};};export var xMatchStrFlags=function xMatchStrFlags(reStr){return function(flags){return function(target){return xMatch(new RegExp(reStr,flags))(target);};};};export var xReplace=function xReplace(re){return function(repl){return function(target){return target.replace(xRegExp(re),repl);};};};export var xReplaceStr=function xReplaceStr(reStr){return function(repl){return function(target){return target.replace(xRegExpStr(reStr),repl);};};};export var xReplaceStrFlags=function xReplaceStrFlags(reStr){return function(flags){return function(repl){return function(target){return target.replace(xRegExpStr(reStr,flags),repl);};};};};export var ifXReplace=function ifXReplace(re){return function(repl){return function(yes){return function(no){return function(target){return ifReplace(yes)(no)(xRegExp(re))(repl)(target);};};};};};export var ifXReplaceStr=function ifXReplaceStr(reStr){return function(repl){return function(yes){return function(no){return function(target){return ifReplace(yes)(no)(xRegExpStr(reStr))(repl)(target);};};};};};export var ifXReplaceStrFlags=function ifXReplaceStrFlags(reStr){return function(flags){return function(repl){return function(yes){return function(no){return function(target){return ifReplace(yes)(no)(xRegExpStr(reStr,flags))(repl)(target);};};};};};};export var factoryProps=function factoryProps(propsArg){return function(factory){var orig=function orig(){return factory.create.apply(factory,arguments);};return _objectSpread(_objectSpread({},factory),{},{create:function create(args){var props=typeof propsArg==='function'?propsArg():propsArg;var o=orig(props);var src=args,tgt=o;for(var i in args){if(hasOwn.call(src,i)&&ok(src[i]))tgt[i]=src[i];}return tgt;}});};};export var factoryInit=function factoryInit(init){return function(proto){return{proto:proto,create:function create(props){var o=Object.create(proto);init(o,props);return o;}};};};export var mixinPreM=function mixinPreM(mixin){return function(proto){var chooseTgtWhenOk=function chooseTgtWhenOk(src,tgt){return ok(tgt)?tgt:src;};var mergeInToChooseTgtWhenOkM=mergeWith(chooseTgtWhenOk)(mergeInToMSym);return mergeInToChooseTgtWhenOkM(proto)(mixin);};};export var mixinM=function mixinM(mixin){return function(proto){var srcOk=function srcOk(src,_){return ok(src);};var mergeInToWhenSrcOkM=mergeWhen(srcOk)(mergeInToMSym);return mergeInToWhenSrcOkM(proto)(mixin);};};export var mixinPreNM=function mixinPreNM(ms){return function(proto){return ms.reduce(function(protoAcc,mixin){return mixinPreM(mixin)(protoAcc);},proto);};};export var mixinNM=function mixinNM(ms){return function(proto){return ms.reduce(function(protoAcc,mixin){return mixinM(mixin)(protoAcc);},proto);};};export var againstAll=function againstAll(fs){return function(x){var y=false;var _iterator9=_createForOfIteratorHelper(fs),_step9;try{for(_iterator9.s();!(_step9=_iterator9.n()).done;){var f=_step9.value;y=f(x);if(!y)return false;}}catch(err){_iterator9.e(err);}finally{_iterator9.f();}return y;};};export var againstAny=function againstAny(fs){return function(x){var y;var _iterator10=_createForOfIteratorHelper(fs),_step10;try{for(_iterator10.s();!(_step10=_iterator10.n()).done;){var f=_step10.value;y=f(x);if(y)return y;}}catch(err){_iterator10.e(err);}finally{_iterator10.f();}return false;};};export var allAgainst=function allAgainst(f){return function(xs){var y=false;var _iterator11=_createForOfIteratorHelper(xs),_step11;try{for(_iterator11.s();!(_step11=_iterator11.n()).done;){var x=_step11.value;y=f(x);if(!y)return false;}}catch(err){_iterator11.e(err);}finally{_iterator11.f();}return y;};};export var anyAgainst=function anyAgainst(f){return function(xs){var y;var _iterator12=_createForOfIteratorHelper(xs),_step12;try{for(_iterator12.s();!(_step12=_iterator12.n()).done;){var x=_step12.value;y=f(x);if(y)return y;}}catch(err){_iterator12.e(err);}finally{_iterator12.f();}return false;};};export var againstBoth=function againstBoth(f){return function(g){return function(x){return f(x)&&g(x);};};};export var againstEither=function againstEither(f){return function(g){return function(x){return f(x)||g(x);};};};export var deconstruct=function deconstruct(f){return function(o){return f(o,o);};};export var deconstruct2=function deconstruct2(f){return function(o){return f(o)(o);};};export var deconstructN=function deconstructN(f){return function(xs){return f.apply(void 0,_toConsumableArray(xs));};};export var and=function and(y){return function(x){return x&&y;};};export var or=function or(y){return function(x){return x||y;};};export var andNot=function andNot(y){return function(x){return x&&!y;};};export var orNot=function orNot(y){return function(x){return x||!y;};};export default{add:add,addCollection:addCollection,addCollection2:addCollection2,addIndex:addIndex,addIndex2:addIndex2,againstAll:againstAll,againstAny:againstAny,againstBoth:againstBoth,againstEither:againstEither,allAgainst:allAgainst,always:always,ampersandN:ampersandN,and:and,andNot:andNot,anyAgainst:anyAgainst,append:append,appendM:appendM,appendTo:appendTo,appendToM:appendToM,applyTo1:applyTo1,applyTo2:applyTo2,applyTo3:applyTo3,applyTo4:applyTo4,applyTo5:applyTo5,applyToN:applyToN,assoc:assoc,assocM:assocM,assocPath:assocPath,assocPathM:assocPathM,asterisk1:asterisk1,asterisk2:asterisk2,asterisk3:asterisk3,asterisk4:asterisk4,asterisk5:asterisk5,asteriskN:asteriskN,bind:bind,bindLateProp:bindLateProp,bindLatePropTo:bindLatePropTo,bindProp:bindProp,bindPropTo:bindPropTo,bindTo:bindTo,bindTry:bindTry,bindTryProp:bindTryProp,bindTryPropTo:bindTryPropTo,bindTryTo:bindTryTo,callOn:callOn,callOn1:callOn1,callOn2:callOn2,callOn3:callOn3,callOn4:callOn4,callOn5:callOn5,callOnN:callOnN,compose:compose,composeAsMethods:composeAsMethods,composeAsMethodsRight:composeAsMethodsRight,composeRight:composeRight,concat:concat,concatM:concatM,concatTo:concatTo,concatToM:concatToM,cond:cond,condPredicate:condPredicate,condS:condS,contains:contains,containsV:containsV,deconstruct:deconstruct,deconstruct2:deconstruct2,deconstructN:deconstructN,decorateException:decorateException,defaultTo:defaultTo,die:die,divideBy:divideBy,divideInto:divideInto,dot:dot,dot1:dot1,dot2:dot2,dot3:dot3,dot4:dot4,dot5:dot5,dotN:dotN,drop:drop,each:each,eachObj:eachObj,eachObjIn:eachObjIn,eq:eq,exception:exception,F:F,factoryInit:factoryInit,factoryProps:factoryProps,filter:filter,find:find,findIndex:findIndex,findWithIndex:findWithIndex,flip:flip,flip3:flip3,flip4:flip4,flip5:flip5,getType:getType,gt:gt,gte:gte,has:has,hasIn:hasIn,ifAlways:ifAlways,ifBind:ifBind,ifFalse:ifFalse,ifHas:ifHas,ifHasIn:ifHasIn,ifNo:ifNo,ifNotOk:ifNotOk,ifOk:ifOk,ifPredicate:ifPredicate,ifPredicateResults:ifPredicateResults,ifPredicateWithResults:ifPredicateWithResults,ifPredicateV:ifPredicateV,ifReplace:ifReplace,ifTrue:ifTrue,ifXReplace:ifXReplace,ifXReplaceStr:ifXReplaceStr,ifXReplaceStrFlags:ifXReplaceStrFlags,ifYes:ifYes,invoke:invoke,isArray:isArray,isBoolean:isBoolean,isFalse:isFalse,isFunction:isFunction,isNo:isNo,isNumber:isNumber,isObject:isObject,isRegExp:isRegExp,isString:isString,isSymbol:isSymbol,isTrue:isTrue,isType:isType,isYes:isYes,join:join,letN:letN,letNV:letNV,lets:lets,letS:letS,lets1:lets1,lets2:lets2,lets3:lets3,lets4:lets4,lets5:lets5,lets6:lets6,letV:letV,lt:lt,lte:lte,map:map,match:match,merge:merge,mergeAllIn:mergeAllIn,mergeIn:mergeIn,mergeInM:mergeInM,mergeInMSym:mergeInMSym,mergeInSym:mergeInSym,mergeInTo:mergeInTo,mergeInToM:mergeInToM,mergeInToMSym:mergeInToMSym,mergeInToSym:mergeInToSym,mergeM:mergeM,mergeMSym:mergeMSym,mergeSym:mergeSym,mergeTo:mergeTo,mergeToM:mergeToM,mergeToMSym:mergeToMSym,mergeToSym:mergeToSym,mergeWhen:mergeWhen,mergeWith:mergeWith,mixinM:mixinM,mixinNM:mixinNM,mixinPreM:mixinPreM,mixinPreNM:mixinPreNM,modulo:modulo,moduloWholePart:moduloWholePart,multiply:multiply,ne:ne,neu1:neu1,neu2:neu2,neu3:neu3,neu4:neu4,neu5:neu5,neuN:neuN,noop:noop,not:not,notOk:notOk,ok:ok,or:or,orNot:orNot,passTo:passTo,passToN:passToN,path:path,pathOf:pathOf,pipe:pipe,prepend:prepend,prependM:prependM,prependTo:prependTo,prependToM:prependToM,prop:prop,propOf:propOf,provideTo:provideTo,provideTo1:provideTo1,provideTo2:provideTo2,provideTo3:provideTo3,provideTo4:provideTo4,provideTo5:provideTo5,provideToN:provideToN,raise:raise,rangeFromBy:rangeFromBy,rangeFromByAsc:rangeFromByAsc,rangeFromByDesc:rangeFromByDesc,rangeToBy:rangeToBy,reduce:reduce,reduceAbort:reduceAbort,reduceObj:reduceObj,reduceObjIn:reduceObjIn,reduceRight:reduceRight,reduceRightC:reduceRightC,reject:reject,repeatF:repeatF,repeatSide:repeatSide,repeatV:repeatV,side:side,side1:side1,side2:side2,side3:side3,side4:side4,side5:side5,sideN:sideN,split:split,spreadTo:spreadTo,sprintf1:sprintf1,sprintfN:sprintfN,subtract:subtract,subtractFrom:subtractFrom,T:T,take:take,tap:tap,timesF:timesF,timesSide:timesSide,timesV:timesV,toThe:toThe,tryCatch:tryCatch,update:update,updateM:updateM,updatePath:updatePath,updatePathM:updatePathM,whenAlways:whenAlways,whenBind:whenBind,whenFalse:whenFalse,whenHas:whenHas,whenHasIn:whenHasIn,whenNo:whenNo,whenNotOk:whenNotOk,whenOk:whenOk,whenPredicate:whenPredicate,whenPredicateResults:whenPredicateResults,whenPredicateWithResults:whenPredicateWithResults,whenPredicateV:whenPredicateV,whenTrue:whenTrue,whenYes:whenYes,xMatch:xMatch,xMatchGlobal:xMatchGlobal,xMatchStr:xMatchStr,xMatchStrFlags:xMatchStrFlags,xRegExp:xRegExp,xRegExpFlags:xRegExpFlags,xRegExpStr:xRegExpStr,xReplace:xReplace,xReplaceStr:xReplaceStr,xReplaceStrFlags:xReplaceStrFlags};