@constantiner/fun-ctional
Version:
The library brings most of the familiar functional techniques (like functional composition) to asynchronous world with shining Promises
3 lines (2 loc) • 2.2 kB
JavaScript
!function(r,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(r=r||self).funCtional=t()}(this,function(){"use strict";function c(r,t,n,e,u,o,i){try{var a=r[o](i),c=a.value}catch(r){return void n(r)}a.done?t(c):Promise.resolve(c).then(e,u)}function e(a){return function(){var r=this,i=arguments;return new Promise(function(t,n){var e=a.apply(r,i);function u(r){c(e,t,n,u,o,"next",r)}function o(r){c(e,t,n,u,o,"throw",r)}u(void 0)})}}function u(r){return function(r){if(Array.isArray(r)){for(var t=0,n=new Array(r.length);t<r.length;t++)n[t]=r[t];return n}}(r)||function(r){if(Symbol.iterator in Object(r)||"[object Arguments]"===Object.prototype.toString.call(r))return Array.from(r)}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function o(r){var t=function(u){return function(r,t,n,e){return Promise.resolve(r).then(function(r){return u(r,t,n,e)})}}(r[0]),n=u(r);return n[0]=t,n}var n=function(){var t=e(regeneratorRuntime.mark(function r(t){return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.t0=Array,r.next=3,Promise.resolve(t);case 3:return r.t1=r.sent,r.abrupt("return",r.t0.from.call(r.t0,r.t1));case 5:case"end":return r.stop()}},r)}));return function(r){return t.apply(this,arguments)}}(),i=function(){var t=e(regeneratorRuntime.mark(function r(t){return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.t0=Promise,r.next=3,n(t);case 3:return r.t1=r.sent,r.abrupt("return",r.t0.all.call(r.t0,r.t1));case 5:case"end":return r.stop()}},r)}));return function(r){return t.apply(this,arguments)}}();return function(){for(var r=arguments.length,n=new Array(r),t=0;t<r;t++)n[t]=arguments[t];return function(){var t=e(regeneratorRuntime.mark(function r(t){return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.t0=Array.prototype.reduce,r.next=3,i(t);case 3:return r.t1=r.sent,r.t2=o(n),r.abrupt("return",r.t0.apply.call(r.t0,r.t1,r.t2));case 6:case"end":return r.stop()}},r)}));return function(r){return t.apply(this,arguments)}}()}});
//# sourceMappingURL=areduce.min.js.map