From 7f9a99127a6a5cc1f3010682d484f489695bbf3c Mon Sep 17 00:00:00 2001 From: Dejan Toteff Date: Mon, 30 Oct 2017 17:32:56 +0200 Subject: [PATCH] fix arguments bug in throttle --- .babelrc | 4 +- __tests__/debounce.js | 62 +-- __tests__/intersection.js | 12 +- __tests__/throttle.js | 51 ++- dist/rambdax.cjs.js | 95 ++--- dist/rambdax.cjs.js.map | 2 +- dist/rambdax.esm.js | 95 ++--- dist/rambdax.esm.js.map | 2 +- modules/debounce.js | 8 +- modules/throttle.js | 6 +- package.json | 3 +- src/rambdax.js | 132 ------ yarn.lock | 817 ++++++++++++++------------------------ 13 files changed, 441 insertions(+), 848 deletions(-) delete mode 100644 src/rambdax.js diff --git a/.babelrc b/.babelrc index ead7099e..0015e74d 100644 --- a/.babelrc +++ b/.babelrc @@ -3,7 +3,7 @@ "development": { "presets": [ ["env", { - "targets": {"node": 8}, + "targets": {"node": "current"}, "modules" : false }] ], @@ -12,7 +12,7 @@ "test": { "presets": [ ["env", { - "targets": {"node": 8} + "targets": {"node": "current"} }] ] } diff --git a/__tests__/debounce.js b/__tests__/debounce.js index 78345e52..115dbdab 100644 --- a/__tests__/debounce.js +++ b/__tests__/debounce.js @@ -1,30 +1,42 @@ -const { debounce } = require('../rambdax') +const { delay, debounce } = require('../rambdax') -describe('', () => { - it('', async () => { - let counter = 0 - const inc = () => { - counter++ - } +test('', async () => { + let counter = 0 + let aHolder + let bHolder - const delay = ms => new Promise(resolve => { - setTimeout(resolve, ms) - }) - const incWrapped = debounce(inc, 500) - incWrapped() - expect(counter).toBe(0) - await delay(200) - incWrapped() - expect(counter).toBe(0) - await delay(200) - incWrapped() - expect(counter).toBe(0) - await delay(200) - incWrapped() - expect(counter).toBe(0) - await delay(700) - expect(counter).toBe(1) - }) + const inc = (a,b) => { + aHolder = a + bHolder = b + counter++ + } + const incWrapped = debounce(inc, 500) + + incWrapped(1,2) + expect(counter).toBe(0) + expect(aHolder).toBe(undefined) + expect(bHolder).toBe(undefined) + + await delay(200) + + incWrapped(2,3) + expect(counter).toBe(0) + + await delay(200) + + incWrapped(3,4) + expect(counter).toBe(0) + expect(aHolder).toBe(undefined) + expect(bHolder).toBe(undefined) + + await delay(200) + incWrapped(5,6) + expect(counter).toBe(0) + + await delay(700) + expect(counter).toBe(1) + expect(aHolder).toBe(5) + expect(bHolder).toBe(6) }) test('immediate debounce', async () => { diff --git a/__tests__/intersection.js b/__tests__/intersection.js index b97dc055..0b4e92ab 100644 --- a/__tests__/intersection.js +++ b/__tests__/intersection.js @@ -1,9 +1,7 @@ const R = require('../rambdax') -describe('intersection', () => { - it('', () => { - expect( - R.intersection([ 1, 3, 5 ], [ 2, 3, 5 ]) - ).toEqual([ 3, 5 ]) - }) -}) +test('', () => { + expect( + R.intersection([ 1, 3, 5 ], [ 2, 3, 5 ]) + ).toEqual([ 3, 5 ]) +}) \ No newline at end of file diff --git a/__tests__/throttle.js b/__tests__/throttle.js index 15bd886b..58058cfe 100644 --- a/__tests__/throttle.js +++ b/__tests__/throttle.js @@ -1,24 +1,35 @@ -const { throttle } = require('../rambdax') +const R = require('../rambdax') -describe('', () => { - it('', async () => { - let counter = 0 - const inc = () => { - counter++ - } +test('', async () => { + let counter = 0 + let aHolder + let bHolder - const delay = ms => new Promise(resolve => { - setTimeout(resolve, ms) - }) - const incWrapped = throttle(inc, 1000) - await delay(500) - incWrapped() - incWrapped() - incWrapped() - expect(counter).toBe(1) - await delay(1500) - incWrapped() - expect(counter).toBe(2) - }) + const inc = (a,b) => { + aHolder = a + bHolder = b + counter++ + } + + const incWrapped = R.throttle(inc, 1000) + + incWrapped(1,2) + + await R.delay(500) + + incWrapped(2,3) + incWrapped(3,4) + + expect(counter).toBe(1) + expect(aHolder).toBe(1) + expect(bHolder).toBe(2) + + await R.delay(1000) + + incWrapped(5,6) + + expect(counter).toBe(2) + expect(aHolder).toBe(5) + expect(bHolder).toBe(6) }) diff --git a/dist/rambdax.cjs.js b/dist/rambdax.cjs.js index 4c557524..293a521f 100644 --- a/dist/rambdax.cjs.js +++ b/dist/rambdax.cjs.js @@ -13,14 +13,14 @@ function isType$1(xType, x) { } const types = ['Null', 'Undefined', 'RegExp']; + function compact(arr) { + return R.filter(a => { const currentType = R.type(a); - if (types.includes(currentType)) { return false; } - if (currentType === 'Object') { return !R.equals(a, {}); } @@ -36,7 +36,6 @@ function composeAsync(...inputArguments) { while (inputArguments.length !== 0) { const fn = inputArguments.pop(); - if (R.type(fn) === 'Async' || R.type(fn) === 'Promise') { argumentsToPass = await fn(argumentsToPass); } else { @@ -53,29 +52,25 @@ function composeAsync(...inputArguments) { function debounce(func, ms, immediate = false) { let timeout; - return function () { - const thisHolder = this; - const args = arguments; + return function (...input) { const later = function () { timeout = null; - if (!immediate) { - func.apply(thisHolder, args); + func.apply(undefined, input); } }; - const callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, ms); - if (callNow) { - func.apply(thisHolder, args); + func.apply(undefined, input); } }; } function delay(ms) { + return new Promise(resolve => { setTimeout(() => { resolve('RAMBDAX_DELAY'); @@ -88,11 +83,7 @@ function debug(...input) { process.exit(); } -const { - type: type$2, - curry: curry$2, - filter: filter$2 -} = require('rambda'); +const { type: type$2, curry: curry$2, filter: filter$2 } = require('rambda'); function evolve(rules, input) { const clone = Object.assign({}, input); @@ -104,13 +95,13 @@ function evolve(rules, input) { propRules.map(prop$$1 => { const fn = rules[prop$$1]; - if (type$2(fn) === 'Function') { clone[prop$$1] = fn(clone[prop$$1]); } else if (type$2(fn) === 'Object') { clone[prop$$1] = evolve(fn, clone[prop$$1]); } }); + return clone; } @@ -141,8 +132,10 @@ function ifElseAsync(condition, ifFn, elseFn) { const conditionPromise = createThenable(condition); const ifFnPromise = createThenable(ifFn); const elseFnPromise = createThenable(elseFn); + conditionPromise(input).then(conditionResult => { const promised = conditionResult === true ? ifFnPromise : elseFnPromise; + promised(input).then(resolve).catch(reject$$1); }).catch(reject$$1); }); @@ -156,21 +149,15 @@ function intersection(a, b) { return R.filter(val => b.includes(val))(a); } -const { - type: type$3 -} = require('rambda'); +const { type: type$3 } = require('rambda'); function isPromiseLike(x) { return ['Async', 'Promise'].includes(type$3(x)); } -function isValid({ - input, - schema -}) { +function isValid({ input, schema }) { if (R.type(input) === 'Object' && R.type(schema) === 'Object') { let flag = true; - for (const requirement in schema) { if (flag) { const rule = schema[requirement]; @@ -186,7 +173,6 @@ function isValid({ localFlag = true; } }); - if (localFlag === false) { flag = false; } @@ -222,7 +208,6 @@ function isValid({ } } else if (arrayRuleType === 'Object') { const result = R.any(val => !isValid(val, rule[0]))(inputProp); - if (result) { flag = false; } @@ -254,7 +239,6 @@ function less(x, y) { async function mapAsyncFn(fn, arr) { try { const willReturn = []; - for (const a of arr) { willReturn.push((await fn(a))); } @@ -278,6 +262,7 @@ function mapAsync(fn, arr) { async function mapFastAsyncFn(fn, arr) { try { const promised = arr.map(a => fn(a)); + return await Promise.all(promised); } catch (err) { throw err; @@ -298,9 +283,9 @@ const cache = {}; const normalizeObject = obj => { const sortFn = (a, b) => a > b; - const willReturn = {}; R.compose(R.map(prop$$1 => willReturn[prop$$1] = obj[prop$$1]), R.sort(sortFn))(Object.keys(obj)); + return willReturn; }; @@ -309,6 +294,7 @@ const stringify = a => { return a; } else if (['Function', 'Async'].includes(R.type(a))) { const compacted = R.replace(/\s{1,}/g, ' ', a.toString()); + return R.replace(/\s/g, '_', R.take(15, compacted)); } else if (R.type(a) === 'Object') { a = normalizeObject(a); @@ -322,6 +308,7 @@ const generateProp = (fn, ...inputArguments) => { inputArguments.map(inputArgument => { propString += `${stringify(inputArgument)}_`; }); + return `${propString}${stringify(fn)}`; }; @@ -329,13 +316,10 @@ function memoize(fn, ...inputArguments) { if (arguments.length === 1) { return (...inputArgumentsHolder) => memoize(fn, ...inputArgumentsHolder); } - const prop$$1 = generateProp(fn, ...inputArguments); - if (prop$$1 in cache) { return cache[prop$$1]; } - if (R.type(fn) === 'Async') { return new Promise(resolve => { fn(...inputArguments).then(result => { @@ -344,9 +328,9 @@ function memoize(fn, ...inputArguments) { }); }); } - const result = fn(...inputArguments); cache[prop$$1] = result; + return result; } @@ -355,6 +339,7 @@ function mergeAll(arr) { R.map(val => { willReturn = R.merge(willReturn, val); }, arr); + return willReturn; } @@ -364,7 +349,6 @@ function omitBy(fn, obj) { } const willReturn = {}; - for (const prop$$1 in obj) { if (!fn(prop$$1, obj[prop$$1])) { willReturn[prop$$1] = obj[prop$$1]; @@ -376,6 +360,7 @@ function omitBy(fn, obj) { function onceFn(fn, context) { let result; + return function () { if (fn) { result = fn.apply(context || this, arguments); @@ -389,6 +374,7 @@ function onceFn(fn, context) { function once(fn, context) { if (arguments.length === 1) { const wrap = onceFn(fn, context); + return R.curry(wrap); } @@ -401,7 +387,6 @@ function pickBy(fn, obj) { } const willReturn = {}; - for (const prop$$1 in obj) { if (fn(prop$$1, obj[prop$$1])) { willReturn[prop$$1] = obj[prop$$1]; @@ -411,11 +396,7 @@ function pickBy(fn, obj) { return willReturn; } -function helper({ - condition, - inputArgument, - prop: prop$$1 -}) { +function helper({ condition, inputArgument, prop: prop$$1 }) { return new Promise((resolve, reject$$1) => { if (!(R.type(condition) === 'Async')) { return resolve({ @@ -437,9 +418,7 @@ function produce(conditions, inputArgument) { if (arguments.length === 1) { return inputArgumentHolder => produce(conditions, inputArgumentHolder); } - let asyncConditionsFlag = false; - for (const prop$$1 in conditions) { if (asyncConditionsFlag === false && R.type(conditions[prop$$1]) === 'Async') { asyncConditionsFlag = true; @@ -448,16 +427,13 @@ function produce(conditions, inputArgument) { if (asyncConditionsFlag === false) { const willReturn = {}; - for (const prop$$1 in conditions) { willReturn[prop$$1] = conditions[prop$$1](inputArgument); } return willReturn; } - const promised = []; - for (const prop$$1 in conditions) { const condition = conditions[prop$$1]; promised.push(helper({ @@ -470,7 +446,9 @@ function produce(conditions, inputArgument) { return new Promise((resolve, reject$$1) => { Promise.all(promised).then(results => { const willReturn = {}; + R.map(result => willReturn[result.type] = result.payload, results); + resolve(willReturn); }).catch(err => reject$$1(err)); }); @@ -488,19 +466,16 @@ function rangeBy(startNum, endNum, distance) { } const isInteger = !distance.toString().includes('.'); - if (startNum > endNum) { const startNumHolder = startNum; startNum = endNum; endNum = startNumHolder; } - const willReturn = [startNum]; let valueToPush = startNum; if (isInteger) { const loopIndexes = R.range(0, Math.floor((endNum - startNum) / distance)); - for (const i of loopIndexes) { valueToPush += distance; willReturn.push(valueToPush); @@ -508,7 +483,6 @@ function rangeBy(startNum, endNum, distance) { } else { const decimalLength = R.compose(R.length, R.last, R.split('.'))(distance.toString()); const loopIndexes = R.range(0, Math.floor((endNum - startNum) / distance)); - for (const i of loopIndexes) { valueToPush += distance; willReturn.push(Number(valueToPush.toFixed(decimalLength))); @@ -522,13 +496,13 @@ function renameProps(conditions, inputObject) { if (inputObject === undefined) { return inputObjectHolder => renameProps(conditions, inputObjectHolder); } - const renamed = {}; Object.keys(conditions).map(renameConditionProp => { if (Object.keys(inputObject).includes(renameConditionProp)) { renamed[conditions[renameConditionProp]] = inputObject[renameConditionProp]; } }); + return R.merge(renamed, R.omit(Object.keys(conditions), inputObject)); } @@ -537,19 +511,18 @@ function resolveMethod(promises) { let counter = 0; const props = {}; const promisedArr = []; - for (const prop$$1 in promises) { props[counter] = prop$$1; promisedArr.push(promises[prop$$1]); counter++; } - Promise.all(promisedArr).then(result => { const willReturn = {}; result.map((val, key) => { const prop$$1 = props[key]; willReturn[prop$$1] = val; }); + res(willReturn); }).catch(rej); }); @@ -572,6 +545,7 @@ const resolveSecureWrapper = promise => new Promise(res => { async function resolveSecure(input) { try { const promised = R.map(a => resolveSecureWrapper(a), input); + return await Promise.all(promised); } catch (err) { console.log(err); @@ -581,7 +555,6 @@ async function resolveSecure(input) { function shuffle(arrayRaw) { const array = arrayRaw.concat(); let counter = array.length; - while (counter > 0) { const index = Math.floor(Math.random() * counter); counter--; @@ -597,7 +570,6 @@ function tapAsync(fn, input) { if (arguments.length === 1) { return inputHolder => tapAsync(fn, inputHolder); } - if (isPromiseLike(fn) === true) { return new Promise((resolve, reject$$1) => { fn(input).then(() => { @@ -605,16 +577,17 @@ function tapAsync(fn, input) { }).catch(reject$$1); }); } - fn(input); + return input; } -function throttle(callback, ms) { +function throttle(fn, ms) { let wait = false; - return function () { + + return function (...input) { if (!wait) { - callback.call(); + fn.apply(undefined, input); wait = true; setTimeout(() => { wait = false; @@ -625,7 +598,6 @@ function throttle(callback, ms) { function tryCatch(fn, input) { const fnType = R.type(fn); - if (fnType === 'Async' || fnType === 'Promise') { return new Promise(resolve => { fn(input).then(resolve).catch(resolve); @@ -648,7 +620,6 @@ function when(condition, whenTrueFn) { if (condition(input) === true) { return whenTrueFn(input); } - return input; }; } @@ -657,12 +628,9 @@ function where(conditions, obj) { if (obj === undefined) { return objHolder => where(conditions, objHolder); } - let flag = true; - for (const prop$$1 in conditions) { const result = conditions[prop$$1](obj[prop$$1]); - if (flag && result === false) { flag = false; } @@ -676,6 +644,7 @@ const isArray = x => isType$1('Array', x); const isObject = x => isType$1('Object', x); const isString = x => isType$1('String', x); const isType = isType$1; +// Follows code generated by `run rambda` const always$1 = R.always; const complement$1 = R.complement; const F$1 = R.F; diff --git a/dist/rambdax.cjs.js.map b/dist/rambdax.cjs.js.map index 9be2fbee..7227c172 100644 --- a/dist/rambdax.cjs.js.map +++ b/dist/rambdax.cjs.js.map @@ -1 +1 @@ -{"version":3,"file":"rambdax.cjs.js","sources":["../modules/isType.js","../modules/compact.js","../modules/composeAsync.js","../modules/debounce.js","../modules/delay.js","../modules/debug.js","../modules/evolve.js","../modules/greater.js","../modules/ifElseAsync.js","../modules/intersection.js","../modules/isPromiseLike.js","../modules/isValid.js","../modules/less.js","../modules/mapAsync.js","../modules/mapFastAsync.js","../modules/memoize.js","../modules/mergeAll.js","../modules/omitBy.js","../modules/once.js","../modules/pickBy.js","../modules/produce.js","../modules/random.js","../modules/rangeBy.js","../modules/renameProps.js","../modules/resolve.js","../modules/resolveSecure.js","../modules/shuffle.js","../modules/tapAsync.js","../modules/throttle.js","../modules/tryCatch.js","../modules/when.js","../modules/where.js","../rambdax.js"],"sourcesContent":["import { type } from 'rambda'\n\nexport default function isType (xType, x) {\n if (arguments.length === 1) {\n return xHolder => isType(xType, xHolder)\n }\n\n return type(x) === xType\n}\n","import {filter, type, equals} from 'rambda'\n\nconst types = [\n 'Null',\n 'Undefined',\n 'RegExp',\n]\n\nexport default function compact (arr) {\n\n return filter(\n a => {\n const currentType = type(a)\n if (types.includes(currentType)) {\n return false\n }\n if (currentType === 'Object') {\n return !equals(a, {})\n }\n\n return a.length !== 0\n },\n arr\n )\n}\n","import {type} from 'rambda'\n\nexport default function composeAsync(...inputArguments){\n try {\n return async function (startArgument) {\n let argumentsToPass = startArgument\n\n while (inputArguments.length !== 0) {\n const fn = inputArguments.pop()\n if (type(fn) === 'Async' || type(fn) === 'Promise') {\n argumentsToPass = await fn(argumentsToPass)\n } else {\n argumentsToPass = fn(argumentsToPass)\n }\n }\n\n return argumentsToPass\n }\n } catch (err) {\n throw err\n }\n}\n","export default function debounce (func, ms, immediate = false) {\n let timeout\n\n return function () {\n const thisHolder = this\n const args = arguments\n const later = function () {\n timeout = null\n if (!immediate) {\n func.apply(thisHolder, args)\n }\n }\n const callNow = immediate && !timeout\n clearTimeout(timeout)\n timeout = setTimeout(later, ms)\n if (callNow) {\n func.apply(thisHolder, args)\n }\n }\n}\n","export default function delay(ms){\n \n return new Promise(resolve => {\n setTimeout(() => {\n resolve('RAMBDAX_DELAY')\n }, ms)\n })\n}\n","export default function debug(...input){\n console.log(...input)\n process.exit()\n}\n","const { type, curry, filter } = require('rambda')\n\nfunction evolve (rules, input) {\n const clone = Object.assign({}, input)\n const propRules = filter(\n x => clone[ x ] !== undefined\n )(Object.keys(rules))\n\n if (propRules.length === 0) {\n return input\n }\n\n propRules.map(prop => {\n const fn = rules[ prop ]\n if (type(fn) === 'Function') {\n clone[ prop ] = fn(clone[ prop ])\n } else if (type(fn) === 'Object') {\n clone[ prop ] = evolve(fn, clone[ prop ])\n }\n })\n\n return clone\n}\n\nexport default curry(evolve)\n","export default function greater(x, y){\n if(y === undefined){\n return yHolder => greater(x,yHolder)\n }\n\n return y > x\n}","function createThenable(x){\n return async function(input){\n return x(input)\n }\n}\n\nfunction ifElseAsync (condition, ifFn, elseFn) {\n if (ifFn === undefined) {\n return (ifFnHolder, elseFnHolder) => ifElseAsync(condition, ifFnHolder, elseFnHolder)\n } else if (elseFn === undefined) {\n return elseFnHolder => ifElseAsync(condition, ifFn, elseFnHolder)\n }\n \n return input => new Promise((resolve, reject) => {\n const conditionPromise = createThenable(condition)\n const ifFnPromise = createThenable(ifFn)\n const elseFnPromise = createThenable(elseFn)\n\n conditionPromise(input)\n .then(conditionResult => {\n const promised = conditionResult === true ?\n ifFnPromise :\n elseFnPromise\n\n promised(input)\n .then(resolve)\n .catch(reject)\n })\n .catch(reject)\n })\n}\n\nexport default ifElseAsync\n","import {filter} from 'rambda'\n\nexport default function intersection (a, b) {\n if (b === undefined) {\n return bHolder => intersection(a, bHolder)\n }\n\n return filter(val => b.includes(val))(a)\n}\n","const { type } = require('rambda')\n\nexport default function isPromiseLike (x) {\n return [ 'Async', 'Promise' ].includes(type(x))\n}\n","import {type, toLower, contains, test, any} from 'rambda'\n\nexport default function isValid({input, schema}){\n if (type(input) === 'Object' && type(schema) === 'Object') {\n let flag = true\n for (const requirement in schema) {\n if (flag) {\n const rule = schema[ requirement ]\n const ruleType = type(rule)\n const inputProp = input[ requirement ]\n const inputPropType = type(input[ requirement ])\n\n if (ruleType === 'Object' && rule.type === 'ArrayOfSchemas' && inputPropType === 'Array') {\n inputProp.map(val => {\n let localFlag = false\n rule.rule.map(singleRule => {\n if (isValid(val, singleRule)) {\n localFlag = true\n }\n })\n if (localFlag === false) {\n flag = false\n }\n })\n } else if (\n ruleType === 'String'\n ) {\n if (inputProp !== undefined) {\n if (toLower(inputPropType) !== rule) {\n flag = false\n }\n } else {\n flag = false\n }\n } else if (\n typeof rule === 'function'\n ) {\n if (rule(inputProp) === false) {\n flag = false\n }\n } else if (\n ruleType === 'Object' &&\n inputPropType === 'Object'\n ) {\n if (\n !isValid(inputProp, rule)\n ) {\n flag = false\n }\n } else if (\n ruleType === 'Array' &&\n inputPropType === 'String'\n ) {\n if (!contains(inputProp, rule)) {\n flag = false\n }\n } else if (\n ruleType === 'Array' &&\n inputPropType === 'Array' &&\n rule.length === 1 &&\n inputProp.length > 0\n ) {\n const arrayRuleType = type(rule[ 0 ])\n\n if (arrayRuleType === 'String') {\n const result = any(\n val => toLower(type(val)) !== rule[ 0 ],\n inputProp\n )\n\n if (result) {\n flag = false\n }\n } else if (arrayRuleType === 'Object') {\n const result = any(\n val => !isValid(val, rule[ 0 ])\n )(inputProp)\n if (result) {\n flag = false\n }\n }\n } else if (\n ruleType === 'RegExp' &&\n inputPropType === 'String'\n ) {\n if (!test(rule, inputProp)) {\n flag = false\n }\n } else {\n flag = false\n }\n }\n }\n\n return flag\n }\n\n return false\n}\n","export default function less(x, y){\n if(y === undefined){\n return yHolder => less(x,yHolder)\n }\n\n return y < x\n}","async function mapAsyncFn (fn, arr) {\n try {\n const willReturn = []\n for (const a of arr) {\n willReturn.push(await fn(a))\n }\n\n return willReturn\n } catch (err) {\n throw err\n }\n}\n\nexport default function mapAsync (fn, arr) {\n if (arr === undefined) {\n return async holder => await mapAsyncFn(fn, holder)\n }\n\n return new Promise((resolve, reject) => {\n mapAsyncFn(fn, arr).then(resolve).catch(reject)\n })\n}\n","async function mapFastAsyncFn (fn, arr) {\n try {\n const promised = arr.map(a => fn(a))\n\n return await Promise.all(promised)\n } catch (err) {\n throw err\n }\n}\n\nexport default function mapFastAsync (fn, arr) {\n if (arr === undefined) {\n return async holder => await mapFastAsyncFn(fn, holder)\n }\n\n return new Promise((resolve, reject) => {\n mapFastAsyncFn(fn, arr).then(resolve).catch(reject)\n })\n}\n","import {\n compose,\n map,\n sort,\n type,\n replace,\n take,\n} from 'rambda'\nconst cache = {}\n\nconst normalizeObject = obj => {\n const sortFn = (a, b) => a > b\n const willReturn = {}\n compose(\n map(prop => willReturn[ prop ] = obj[ prop ]),\n sort(sortFn)\n )(Object.keys(obj))\n\n return willReturn\n}\n\nconst stringify = a => {\n if (type(a) === 'String') {\n return a\n } else if ([ 'Function', 'Async' ].includes(type(a))) {\n const compacted = replace(/\\s{1,}/g, ' ', a.toString())\n\n return replace(/\\s/g, '_', take(15, compacted))\n } else if (type(a) === 'Object') {\n a = normalizeObject(a)\n }\n\n return JSON.stringify(a)\n}\n\nconst generateProp = (fn, ...inputArguments) => {\n let propString = ''\n inputArguments.map(inputArgument => {\n propString += `${ stringify(inputArgument) }_`\n })\n\n return `${ propString }${ stringify(fn) }`\n}\n\nexport default function memoize (fn, ...inputArguments) {\n if (arguments.length === 1) {\n return (...inputArgumentsHolder) => memoize(fn, ...inputArgumentsHolder)\n }\n const prop = generateProp(fn, ...inputArguments)\n if (prop in cache) {\n return cache[ prop ]\n }\n if (type(fn) === 'Async') {\n return new Promise(resolve => {\n fn(...inputArguments).then(result => {\n cache[ prop ] = result\n resolve(result)\n })\n })\n }\n const result = fn(...inputArguments)\n cache[ prop ] = result\n\n return result\n}\n","import {map, merge} from 'rambda'\n\nexport default function mergeAll (arr) {\n let willReturn = {}\n map(val => {\n willReturn = merge(willReturn, val)\n }, arr)\n\n return willReturn\n}\n","export default function omitBy (fn, obj) {\n if (arguments.length === 1) {\n return holder => omitBy(fn, holder)\n }\n\n const willReturn = {}\n for (const prop in obj) {\n if (!fn(prop, obj[ prop ])) {\n willReturn[ prop ] = obj[ prop ]\n }\n }\n\n return willReturn\n}\n","import {curry} from 'rambda'\n\nfunction onceFn (fn, context) {\n let result\n\n return function () {\n if (fn) {\n result = fn.apply(context || this, arguments)\n fn = null\n }\n\n return result\n }\n}\n\nexport default function once (fn, context) {\n if (arguments.length === 1) {\n const wrap = onceFn(fn, context)\n\n return curry(wrap)\n }\n\n return onceFn(fn, context)\n}\n","export default function pickBy (fn, obj) {\n if (arguments.length === 1) {\n return holder => pickBy(fn, holder)\n }\n\n const willReturn = {}\n for (const prop in obj) {\n if (fn(prop, obj[ prop ])) {\n willReturn[ prop ] = obj[ prop ]\n }\n }\n\n return willReturn\n}\n","import {\n type,\n map,\n} from 'rambda'\n\nfunction helper ({ condition, inputArgument, prop }) {\n return new Promise((resolve, reject) => {\n if (!(type(condition) === 'Async')) {\n return resolve({\n type : prop,\n payload : condition(inputArgument),\n })\n }\n\n condition(inputArgument)\n .then(result => {\n resolve({\n type : prop,\n payload : result,\n })\n })\n .catch(err => reject(err))\n })\n}\n\nexport default function produce (conditions, inputArgument) {\n if (arguments.length === 1) {\n return inputArgumentHolder => produce(conditions, inputArgumentHolder)\n }\n let asyncConditionsFlag = false\n for (const prop in conditions) {\n if (\n asyncConditionsFlag === false &&\n type(conditions[ prop ]) === 'Async'\n ) {\n asyncConditionsFlag = true\n }\n }\n\n if (asyncConditionsFlag === false) {\n const willReturn = {}\n for (const prop in conditions) {\n willReturn[ prop ] = conditions[ prop ](inputArgument)\n }\n\n return willReturn\n }\n const promised = []\n for (const prop in conditions) {\n const condition = conditions[ prop ]\n promised.push(helper({\n inputArgument,\n condition,\n prop,\n }))\n }\n\n return new Promise((resolve, reject) => {\n Promise.all(promised)\n .then(results => {\n const willReturn = {}\n\n map(\n result => willReturn[ result.type ] = result.payload,\n results\n )\n\n resolve(willReturn)\n })\n .catch(err => reject(err))\n })\n}\n","export default function random(min,max){\n return Math.floor(Math.random() * (max - min + 1)) + min\n}\n","import {range, length, last, split, compose} from 'rambda'\n\nexport default function rangeBy (startNum, endNum, distance) {\n if (endNum === undefined) {\n return (endNumHolder, distanceHolder) => rangeBy(startNum, endNumHolder, distanceHolder)\n } else if (distance === undefined) {\n return distanceHolder => rangeBy(startNum, endNum, distanceHolder)\n }\n\n const isInteger = !distance.toString().includes('.')\n if (startNum > endNum) {\n const startNumHolder = startNum\n startNum = endNum\n endNum = startNumHolder\n }\n const willReturn = [ startNum ]\n let valueToPush = startNum\n\n if (isInteger) {\n const loopIndexes = range(0, Math.floor((endNum - startNum) / distance))\n for (const i of loopIndexes) {\n valueToPush += distance\n willReturn.push(valueToPush)\n }\n } else {\n const decimalLength = compose(\n length,\n last,\n split('.')\n )(distance.toString())\n const loopIndexes = range(0, Math.floor((endNum - startNum) / distance))\n for (const i of loopIndexes) {\n valueToPush += distance\n willReturn.push(Number(valueToPush.toFixed(decimalLength)))\n }\n }\n\n return willReturn\n}\n","import {merge, omit} from 'rambda'\n\nexport default function renameProps (conditions, inputObject) {\n if (inputObject === undefined) {\n return inputObjectHolder => renameProps(conditions, inputObjectHolder)\n }\n const renamed = {}\n Object.keys(conditions).map(renameConditionProp => {\n if (Object.keys(inputObject).includes(renameConditionProp)) {\n renamed[ conditions[ renameConditionProp ] ] = inputObject[ renameConditionProp ]\n }\n })\n\n return merge(\n renamed,\n omit(\n Object.keys(conditions),\n inputObject\n )\n )\n}\n","export default function resolveMethod (promises) {\n return new Promise((res, rej) => {\n let counter = 0\n const props = {}\n const promisedArr = []\n for (const prop in promises) {\n props[ counter ] = prop\n promisedArr.push(promises[ prop ])\n counter++\n }\n Promise.all(promisedArr)\n .then(result => {\n const willReturn = {}\n result.map((val, key) => {\n const prop = props[ key ]\n willReturn[ prop ] = val\n })\n\n res(willReturn)\n })\n .catch(rej)\n })\n}\n","import {map} from 'rambda'\n\nconst resolveSecureWrapper = promise => new Promise(res => {\n promise.then(result => {\n res({\n payload : result,\n type : 'RESULT',\n })\n }).catch(err => {\n res({\n payload : err,\n type : 'ERROR',\n })\n })\n})\n\nasync function resolveSecure (input) {\n try {\n const promised = map(\n a => resolveSecureWrapper(a),\n input\n )\n\n return await Promise.all(promised)\n } catch (err) {\n console.log(err)\n }\n}\n\nexport default resolveSecure\n","export default function shuffle(arrayRaw){\n const array = arrayRaw.concat()\n let counter = array.length\n while (counter > 0) {\n const index = Math.floor(Math.random() * counter)\n counter--\n const temp = array[ counter ]\n array[ counter ] = array[ index ]\n array[ index ] = temp\n }\n\n return array\n}\n","import isPromiseLike from './isPromiseLike'\n\nexport default function tapAsync (fn, input) {\n if (arguments.length === 1) {\n return inputHolder => tapAsync(fn, inputHolder)\n }\n if (isPromiseLike(fn) === true) {\n return new Promise((resolve, reject) => {\n fn(input)\n .then(() => {\n resolve(input)\n })\n .catch(reject)\n })\n }\n fn(input)\n\n return input\n}\n","export default function throttle (callback, ms) {\n let wait = false\n\n return function () {\n if (!wait) {\n callback.call()\n wait = true\n setTimeout(() => {\n wait = false\n }, ms)\n }\n }\n}\n","import {type} from 'rambda'\n\nexport default function tryCatch(fn, input){\n const fnType = type(fn)\n if(fnType === 'Async' || fnType === 'Promise'){\n return new Promise(resolve => {\n fn(input)\n .then(resolve)\n .catch(resolve)\n })\n }\n\n try{\n return fn(input)\n }catch(err){\n return err\n }\n}","export default function when(condition, whenTrueFn){\n if(whenTrueFn === undefined){\n return whenTrueFnHolder => when(condition, whenTrueFnHolder)\n }\n\n return input => {\n if(condition(input) === true){\n return whenTrueFn(input)\n }\n return input\n }\n}\n","export default function where (conditions, obj) {\n if (obj === undefined) {\n return objHolder => where(conditions, objHolder)\n }\n let flag = true\n for (const prop in conditions) {\n const result = conditions[ prop ](obj[ prop ])\n if (flag && result === false) {\n flag = false\n }\n }\n\n return flag\n}\n","import * as R from 'rambda'\n\nimport isTypeMethod from './modules/isType'\n\nexport {default as compact} from './modules/compact'\nexport {default as composeAsync} from './modules/composeAsync'\nexport {default as debounce} from './modules/debounce'\nexport const DELAY = 'RAMBDAX_DELAY'\nexport {default as delay} from './modules/delay'\nexport {default as debug} from './modules/debug'\nexport {default as evolve} from './modules/evolve'\nexport {default as greater} from './modules/greater'\nexport {default as ifElseAsync} from './modules/ifElseAsync'\nexport {default as intersection} from './modules/intersection'\nexport const isArray = x => isTypeMethod('Array', x)\nexport const isObject = x => isTypeMethod('Object', x)\nexport const isString = x => isTypeMethod('String', x)\nexport const isType = isTypeMethod\nexport {default as isPromiseLike} from './modules/isPromiseLike'\nexport {default as isValid} from './modules/isValid'\nexport {default as less} from './modules/less'\nexport {default as mapAsync} from './modules/mapAsync'\nexport {default as mapFastAsync} from './modules/mapFastAsync'\nexport {default as memoize} from './modules/memoize'\nexport {default as mergeAll} from './modules/mergeAll'\nexport {default as omitBy} from './modules/omitBy'\nexport {default as once} from './modules/once'\nexport {default as pickBy} from './modules/pickBy'\nexport {default as produce} from './modules/produce'\nexport {default as random} from './modules/random'\nexport {default as rangeBy} from './modules/rangeBy'\nexport {default as renameProps} from './modules/renameProps'\nexport {default as resolve} from './modules/resolve'\nexport {default as resolveSecure} from './modules/resolveSecure'\nexport {default as shuffle} from './modules/shuffle'\nexport {default as tapAsync} from './modules/tapAsync'\nexport {default as throttle} from './modules/throttle'\nexport {default as tryCatch} from './modules/tryCatch'\nexport {default as when} from './modules/when'\nexport {default as where} from './modules/where'\n\n// Follows code generated by `run rambda`\nexport const always = R.always\nexport const complement = R.complement\nexport const F = R.F\nexport const identity = R.identity\nexport const not = R.not\nexport const T = R.T\nexport const trim = R.trim\nexport const add = R.add\nexport const addIndex = R.addIndex\nexport const adjust = R.adjust\nexport const all = R.all\nexport const allPass = R.allPass\nexport const anyPass = R.anyPass\nexport const any = R.any\nexport const append = R.append\nexport const both = R.both\nexport const compose = R.compose\nexport const concat = R.concat\nexport const contains = R.contains\nexport const curry = R.curry\nexport const dec = R.dec\nexport const defaultTo = R.defaultTo\nexport const divide = R.divide\nexport const drop = R.drop\nexport const dropLast = R.dropLast\nexport const either = R.either\nexport const endsWith = R.endsWith\nexport const inc = R.inc\nexport const equals = R.equals\nexport const filter = R.filter\nexport const find = R.find\nexport const findIndex = R.findIndex\nexport const flatten = R.flatten\nexport const flip = R.flip\nexport const forEach = R.forEach\nexport const has = R.has\nexport const head = R.head\nexport const ifElse = R.ifElse\nexport const is = R.is\nexport const isNil = R.isNil\nexport const includes = R.includes\nexport const indexOf = R.indexOf\nexport const init = R.init\nexport const join = R.join\nexport const lastIndexOf = R.lastIndexOf\nexport const last = R.last\nexport const length = R.length\nexport const map = R.map\nexport const match = R.match\nexport const merge = R.merge\nexport const modulo = R.modulo\nexport const multiply = R.multiply\nexport const none = R.none\nexport const omit = R.omit\nexport const partialCurry = R.partialCurry\nexport const path = R.path\nexport const pathOr = R.pathOr\nexport const pick = R.pick\nexport const pickAll = R.pickAll\nexport const pipe = R.pipe\nexport const pluck = R.pluck\nexport const prepend = R.prepend\nexport const prop = R.prop\nexport const propEq = R.propEq\nexport const range = R.range\nexport const reduce = R.reduce\nexport const reject = R.reject\nexport const repeat = R.repeat\nexport const replace = R.replace\nexport const reverse = R.reverse\nexport const sort = R.sort\nexport const sortBy = R.sortBy\nexport const split = R.split\nexport const splitEvery = R.splitEvery\nexport const startsWith = R.startsWith\nexport const subtract = R.subtract\nexport const tap = R.tap\nexport const tail = R.tail\nexport const take = R.take\nexport const takeLast = R.takeLast\nexport const test = R.test\nexport const times = R.times\nexport const toLower = R.toLower\nexport const toUpper = R.toUpper\nexport const toString = R.toString\nexport const type = R.type\nexport const uniq = R.uniq\nexport const update = R.update\nexport const values = R.values\nexport const without = R.without"],"names":["isType","xType","x","arguments","length","xHolder","type","types","compact","arr","filter","a","currentType","includes","equals","composeAsync","inputArguments","startArgument","argumentsToPass","fn","pop","err","debounce","func","ms","immediate","timeout","thisHolder","args","later","apply","callNow","setTimeout","delay","Promise","resolve","debug","input","log","exit","require","evolve","rules","clone","Object","assign","propRules","undefined","keys","map","prop","curry","greater","y","yHolder","createThenable","ifElseAsync","condition","ifFn","elseFn","ifFnHolder","elseFnHolder","reject","conditionPromise","ifFnPromise","elseFnPromise","then","conditionResult","promised","catch","intersection","b","bHolder","val","isPromiseLike","isValid","schema","flag","requirement","rule","ruleType","inputProp","inputPropType","localFlag","singleRule","toLower","contains","arrayRuleType","result","any","test","less","mapAsyncFn","willReturn","push","mapAsync","holder","mapFastAsyncFn","all","mapFastAsync","cache","normalizeObject","obj","sortFn","sort","stringify","compacted","replace","toString","take","JSON","generateProp","propString","inputArgument","memoize","inputArgumentsHolder","mergeAll","merge","omitBy","onceFn","context","once","wrap","pickBy","helper","produce","conditions","inputArgumentHolder","asyncConditionsFlag","results","payload","random","min","max","Math","floor","rangeBy","startNum","endNum","distance","endNumHolder","distanceHolder","isInteger","startNumHolder","valueToPush","loopIndexes","range","i","decimalLength","compose","last","split","Number","toFixed","renameProps","inputObject","inputObjectHolder","renamed","renameConditionProp","omit","resolveMethod","promises","res","rej","counter","props","promisedArr","key","resolveSecureWrapper","promise","resolveSecure","shuffle","arrayRaw","array","concat","index","temp","tapAsync","inputHolder","throttle","callback","wait","call","tryCatch","fnType","when","whenTrueFn","whenTrueFnHolder","where","objHolder","DELAY","isArray","isTypeMethod","isObject","isString","always","R","complement","F","identity","not","T","trim","add","addIndex","adjust","allPass","anyPass","append","both","dec","defaultTo","divide","drop","dropLast","either","endsWith","inc","find","findIndex","flatten","flip","forEach","has","head","ifElse","is","isNil","indexOf","init","join","lastIndexOf","match","modulo","multiply","none","partialCurry","path","pathOr","pick","pickAll","pipe","pluck","prepend","propEq","reduce","repeat","reverse","sortBy","splitEvery","startsWith","subtract","tap","tail","takeLast","times","toUpper","uniq","update","values","without"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"rambdax.cjs.js","sources":["../modules/isType.js","../modules/compact.js","../modules/composeAsync.js","../modules/debounce.js","../modules/delay.js","../modules/debug.js","../modules/evolve.js","../modules/greater.js","../modules/ifElseAsync.js","../modules/intersection.js","../modules/isPromiseLike.js","../modules/isValid.js","../modules/less.js","../modules/mapAsync.js","../modules/mapFastAsync.js","../modules/memoize.js","../modules/mergeAll.js","../modules/omitBy.js","../modules/once.js","../modules/pickBy.js","../modules/produce.js","../modules/random.js","../modules/rangeBy.js","../modules/renameProps.js","../modules/resolve.js","../modules/resolveSecure.js","../modules/shuffle.js","../modules/tapAsync.js","../modules/throttle.js","../modules/tryCatch.js","../modules/when.js","../modules/where.js","../rambdax.js"],"sourcesContent":["import { type } from 'rambda'\n\nexport default function isType (xType, x) {\n if (arguments.length === 1) {\n return xHolder => isType(xType, xHolder)\n }\n\n return type(x) === xType\n}\n","import {filter, type, equals} from 'rambda'\n\nconst types = [\n 'Null',\n 'Undefined',\n 'RegExp',\n]\n\nexport default function compact (arr) {\n\n return filter(\n a => {\n const currentType = type(a)\n if (types.includes(currentType)) {\n return false\n }\n if (currentType === 'Object') {\n return !equals(a, {})\n }\n\n return a.length !== 0\n },\n arr\n )\n}\n","import {type} from 'rambda'\n\nexport default function composeAsync(...inputArguments){\n try {\n return async function (startArgument) {\n let argumentsToPass = startArgument\n\n while (inputArguments.length !== 0) {\n const fn = inputArguments.pop()\n if (type(fn) === 'Async' || type(fn) === 'Promise') {\n argumentsToPass = await fn(argumentsToPass)\n } else {\n argumentsToPass = fn(argumentsToPass)\n }\n }\n\n return argumentsToPass\n }\n } catch (err) {\n throw err\n }\n}\n","export default function debounce (func, ms, immediate = false) {\n let timeout\n\n return function (...input) {\n const later = function () {\n timeout = null\n if (!immediate) {\n func.apply(undefined, input)\n }\n }\n const callNow = immediate && !timeout\n clearTimeout(timeout)\n timeout = setTimeout(later, ms)\n if (callNow) {\n func.apply(undefined, input)\n }\n }\n}\n","export default function delay(ms){\n \n return new Promise(resolve => {\n setTimeout(() => {\n resolve('RAMBDAX_DELAY')\n }, ms)\n })\n}\n","export default function debug(...input){\n console.log(...input)\n process.exit()\n}\n","const { type, curry, filter } = require('rambda')\n\nfunction evolve (rules, input) {\n const clone = Object.assign({}, input)\n const propRules = filter(\n x => clone[ x ] !== undefined\n )(Object.keys(rules))\n\n if (propRules.length === 0) {\n return input\n }\n\n propRules.map(prop => {\n const fn = rules[ prop ]\n if (type(fn) === 'Function') {\n clone[ prop ] = fn(clone[ prop ])\n } else if (type(fn) === 'Object') {\n clone[ prop ] = evolve(fn, clone[ prop ])\n }\n })\n\n return clone\n}\n\nexport default curry(evolve)\n","export default function greater(x, y){\n if(y === undefined){\n return yHolder => greater(x,yHolder)\n }\n\n return y > x\n}","function createThenable(x){\n return async function(input){\n return x(input)\n }\n}\n\nfunction ifElseAsync (condition, ifFn, elseFn) {\n if (ifFn === undefined) {\n return (ifFnHolder, elseFnHolder) => ifElseAsync(condition, ifFnHolder, elseFnHolder)\n } else if (elseFn === undefined) {\n return elseFnHolder => ifElseAsync(condition, ifFn, elseFnHolder)\n }\n \n return input => new Promise((resolve, reject) => {\n const conditionPromise = createThenable(condition)\n const ifFnPromise = createThenable(ifFn)\n const elseFnPromise = createThenable(elseFn)\n\n conditionPromise(input)\n .then(conditionResult => {\n const promised = conditionResult === true ?\n ifFnPromise :\n elseFnPromise\n\n promised(input)\n .then(resolve)\n .catch(reject)\n })\n .catch(reject)\n })\n}\n\nexport default ifElseAsync\n","import {filter} from 'rambda'\n\nexport default function intersection (a, b) {\n if (b === undefined) {\n return bHolder => intersection(a, bHolder)\n }\n\n return filter(val => b.includes(val))(a)\n}\n","const { type } = require('rambda')\n\nexport default function isPromiseLike (x) {\n return [ 'Async', 'Promise' ].includes(type(x))\n}\n","import {type, toLower, contains, test, any} from 'rambda'\n\nexport default function isValid({input, schema}){\n if (type(input) === 'Object' && type(schema) === 'Object') {\n let flag = true\n for (const requirement in schema) {\n if (flag) {\n const rule = schema[ requirement ]\n const ruleType = type(rule)\n const inputProp = input[ requirement ]\n const inputPropType = type(input[ requirement ])\n\n if (ruleType === 'Object' && rule.type === 'ArrayOfSchemas' && inputPropType === 'Array') {\n inputProp.map(val => {\n let localFlag = false\n rule.rule.map(singleRule => {\n if (isValid(val, singleRule)) {\n localFlag = true\n }\n })\n if (localFlag === false) {\n flag = false\n }\n })\n } else if (\n ruleType === 'String'\n ) {\n if (inputProp !== undefined) {\n if (toLower(inputPropType) !== rule) {\n flag = false\n }\n } else {\n flag = false\n }\n } else if (\n typeof rule === 'function'\n ) {\n if (rule(inputProp) === false) {\n flag = false\n }\n } else if (\n ruleType === 'Object' &&\n inputPropType === 'Object'\n ) {\n if (\n !isValid(inputProp, rule)\n ) {\n flag = false\n }\n } else if (\n ruleType === 'Array' &&\n inputPropType === 'String'\n ) {\n if (!contains(inputProp, rule)) {\n flag = false\n }\n } else if (\n ruleType === 'Array' &&\n inputPropType === 'Array' &&\n rule.length === 1 &&\n inputProp.length > 0\n ) {\n const arrayRuleType = type(rule[ 0 ])\n\n if (arrayRuleType === 'String') {\n const result = any(\n val => toLower(type(val)) !== rule[ 0 ],\n inputProp\n )\n\n if (result) {\n flag = false\n }\n } else if (arrayRuleType === 'Object') {\n const result = any(\n val => !isValid(val, rule[ 0 ])\n )(inputProp)\n if (result) {\n flag = false\n }\n }\n } else if (\n ruleType === 'RegExp' &&\n inputPropType === 'String'\n ) {\n if (!test(rule, inputProp)) {\n flag = false\n }\n } else {\n flag = false\n }\n }\n }\n\n return flag\n }\n\n return false\n}\n","export default function less(x, y){\n if(y === undefined){\n return yHolder => less(x,yHolder)\n }\n\n return y < x\n}","async function mapAsyncFn (fn, arr) {\n try {\n const willReturn = []\n for (const a of arr) {\n willReturn.push(await fn(a))\n }\n\n return willReturn\n } catch (err) {\n throw err\n }\n}\n\nexport default function mapAsync (fn, arr) {\n if (arr === undefined) {\n return async holder => await mapAsyncFn(fn, holder)\n }\n\n return new Promise((resolve, reject) => {\n mapAsyncFn(fn, arr).then(resolve).catch(reject)\n })\n}\n","async function mapFastAsyncFn (fn, arr) {\n try {\n const promised = arr.map(a => fn(a))\n\n return await Promise.all(promised)\n } catch (err) {\n throw err\n }\n}\n\nexport default function mapFastAsync (fn, arr) {\n if (arr === undefined) {\n return async holder => await mapFastAsyncFn(fn, holder)\n }\n\n return new Promise((resolve, reject) => {\n mapFastAsyncFn(fn, arr).then(resolve).catch(reject)\n })\n}\n","import {\n compose,\n map,\n sort,\n type,\n replace,\n take,\n} from 'rambda'\nconst cache = {}\n\nconst normalizeObject = obj => {\n const sortFn = (a, b) => a > b\n const willReturn = {}\n compose(\n map(prop => willReturn[ prop ] = obj[ prop ]),\n sort(sortFn)\n )(Object.keys(obj))\n\n return willReturn\n}\n\nconst stringify = a => {\n if (type(a) === 'String') {\n return a\n } else if ([ 'Function', 'Async' ].includes(type(a))) {\n const compacted = replace(/\\s{1,}/g, ' ', a.toString())\n\n return replace(/\\s/g, '_', take(15, compacted))\n } else if (type(a) === 'Object') {\n a = normalizeObject(a)\n }\n\n return JSON.stringify(a)\n}\n\nconst generateProp = (fn, ...inputArguments) => {\n let propString = ''\n inputArguments.map(inputArgument => {\n propString += `${ stringify(inputArgument) }_`\n })\n\n return `${ propString }${ stringify(fn) }`\n}\n\nexport default function memoize (fn, ...inputArguments) {\n if (arguments.length === 1) {\n return (...inputArgumentsHolder) => memoize(fn, ...inputArgumentsHolder)\n }\n const prop = generateProp(fn, ...inputArguments)\n if (prop in cache) {\n return cache[ prop ]\n }\n if (type(fn) === 'Async') {\n return new Promise(resolve => {\n fn(...inputArguments).then(result => {\n cache[ prop ] = result\n resolve(result)\n })\n })\n }\n const result = fn(...inputArguments)\n cache[ prop ] = result\n\n return result\n}\n","import {map, merge} from 'rambda'\n\nexport default function mergeAll (arr) {\n let willReturn = {}\n map(val => {\n willReturn = merge(willReturn, val)\n }, arr)\n\n return willReturn\n}\n","export default function omitBy (fn, obj) {\n if (arguments.length === 1) {\n return holder => omitBy(fn, holder)\n }\n\n const willReturn = {}\n for (const prop in obj) {\n if (!fn(prop, obj[ prop ])) {\n willReturn[ prop ] = obj[ prop ]\n }\n }\n\n return willReturn\n}\n","import {curry} from 'rambda'\n\nfunction onceFn (fn, context) {\n let result\n\n return function () {\n if (fn) {\n result = fn.apply(context || this, arguments)\n fn = null\n }\n\n return result\n }\n}\n\nexport default function once (fn, context) {\n if (arguments.length === 1) {\n const wrap = onceFn(fn, context)\n\n return curry(wrap)\n }\n\n return onceFn(fn, context)\n}\n","export default function pickBy (fn, obj) {\n if (arguments.length === 1) {\n return holder => pickBy(fn, holder)\n }\n\n const willReturn = {}\n for (const prop in obj) {\n if (fn(prop, obj[ prop ])) {\n willReturn[ prop ] = obj[ prop ]\n }\n }\n\n return willReturn\n}\n","import {\n type,\n map,\n} from 'rambda'\n\nfunction helper ({ condition, inputArgument, prop }) {\n return new Promise((resolve, reject) => {\n if (!(type(condition) === 'Async')) {\n return resolve({\n type : prop,\n payload : condition(inputArgument),\n })\n }\n\n condition(inputArgument)\n .then(result => {\n resolve({\n type : prop,\n payload : result,\n })\n })\n .catch(err => reject(err))\n })\n}\n\nexport default function produce (conditions, inputArgument) {\n if (arguments.length === 1) {\n return inputArgumentHolder => produce(conditions, inputArgumentHolder)\n }\n let asyncConditionsFlag = false\n for (const prop in conditions) {\n if (\n asyncConditionsFlag === false &&\n type(conditions[ prop ]) === 'Async'\n ) {\n asyncConditionsFlag = true\n }\n }\n\n if (asyncConditionsFlag === false) {\n const willReturn = {}\n for (const prop in conditions) {\n willReturn[ prop ] = conditions[ prop ](inputArgument)\n }\n\n return willReturn\n }\n const promised = []\n for (const prop in conditions) {\n const condition = conditions[ prop ]\n promised.push(helper({\n inputArgument,\n condition,\n prop,\n }))\n }\n\n return new Promise((resolve, reject) => {\n Promise.all(promised)\n .then(results => {\n const willReturn = {}\n\n map(\n result => willReturn[ result.type ] = result.payload,\n results\n )\n\n resolve(willReturn)\n })\n .catch(err => reject(err))\n })\n}\n","export default function random(min,max){\n return Math.floor(Math.random() * (max - min + 1)) + min\n}\n","import {range, length, last, split, compose} from 'rambda'\n\nexport default function rangeBy (startNum, endNum, distance) {\n if (endNum === undefined) {\n return (endNumHolder, distanceHolder) => rangeBy(startNum, endNumHolder, distanceHolder)\n } else if (distance === undefined) {\n return distanceHolder => rangeBy(startNum, endNum, distanceHolder)\n }\n\n const isInteger = !distance.toString().includes('.')\n if (startNum > endNum) {\n const startNumHolder = startNum\n startNum = endNum\n endNum = startNumHolder\n }\n const willReturn = [ startNum ]\n let valueToPush = startNum\n\n if (isInteger) {\n const loopIndexes = range(0, Math.floor((endNum - startNum) / distance))\n for (const i of loopIndexes) {\n valueToPush += distance\n willReturn.push(valueToPush)\n }\n } else {\n const decimalLength = compose(\n length,\n last,\n split('.')\n )(distance.toString())\n const loopIndexes = range(0, Math.floor((endNum - startNum) / distance))\n for (const i of loopIndexes) {\n valueToPush += distance\n willReturn.push(Number(valueToPush.toFixed(decimalLength)))\n }\n }\n\n return willReturn\n}\n","import {merge, omit} from 'rambda'\n\nexport default function renameProps (conditions, inputObject) {\n if (inputObject === undefined) {\n return inputObjectHolder => renameProps(conditions, inputObjectHolder)\n }\n const renamed = {}\n Object.keys(conditions).map(renameConditionProp => {\n if (Object.keys(inputObject).includes(renameConditionProp)) {\n renamed[ conditions[ renameConditionProp ] ] = inputObject[ renameConditionProp ]\n }\n })\n\n return merge(\n renamed,\n omit(\n Object.keys(conditions),\n inputObject\n )\n )\n}\n","export default function resolveMethod (promises) {\n return new Promise((res, rej) => {\n let counter = 0\n const props = {}\n const promisedArr = []\n for (const prop in promises) {\n props[ counter ] = prop\n promisedArr.push(promises[ prop ])\n counter++\n }\n Promise.all(promisedArr)\n .then(result => {\n const willReturn = {}\n result.map((val, key) => {\n const prop = props[ key ]\n willReturn[ prop ] = val\n })\n\n res(willReturn)\n })\n .catch(rej)\n })\n}\n","import {map} from 'rambda'\n\nconst resolveSecureWrapper = promise => new Promise(res => {\n promise.then(result => {\n res({\n payload : result,\n type : 'RESULT',\n })\n }).catch(err => {\n res({\n payload : err,\n type : 'ERROR',\n })\n })\n})\n\nasync function resolveSecure (input) {\n try {\n const promised = map(\n a => resolveSecureWrapper(a),\n input\n )\n\n return await Promise.all(promised)\n } catch (err) {\n console.log(err)\n }\n}\n\nexport default resolveSecure\n","export default function shuffle(arrayRaw){\n const array = arrayRaw.concat()\n let counter = array.length\n while (counter > 0) {\n const index = Math.floor(Math.random() * counter)\n counter--\n const temp = array[ counter ]\n array[ counter ] = array[ index ]\n array[ index ] = temp\n }\n\n return array\n}\n","import isPromiseLike from './isPromiseLike'\n\nexport default function tapAsync (fn, input) {\n if (arguments.length === 1) {\n return inputHolder => tapAsync(fn, inputHolder)\n }\n if (isPromiseLike(fn) === true) {\n return new Promise((resolve, reject) => {\n fn(input)\n .then(() => {\n resolve(input)\n })\n .catch(reject)\n })\n }\n fn(input)\n\n return input\n}\n","export default function throttle (fn, ms) {\n let wait = false\n\n return function (...input) {\n if (!wait) {\n fn.apply(undefined, input)\n wait = true\n setTimeout(() => {\n wait = false\n }, ms)\n }\n }\n}\n","import {type} from 'rambda'\n\nexport default function tryCatch(fn, input){\n const fnType = type(fn)\n if(fnType === 'Async' || fnType === 'Promise'){\n return new Promise(resolve => {\n fn(input)\n .then(resolve)\n .catch(resolve)\n })\n }\n\n try{\n return fn(input)\n }catch(err){\n return err\n }\n}","export default function when(condition, whenTrueFn){\n if(whenTrueFn === undefined){\n return whenTrueFnHolder => when(condition, whenTrueFnHolder)\n }\n\n return input => {\n if(condition(input) === true){\n return whenTrueFn(input)\n }\n return input\n }\n}\n","export default function where (conditions, obj) {\n if (obj === undefined) {\n return objHolder => where(conditions, objHolder)\n }\n let flag = true\n for (const prop in conditions) {\n const result = conditions[ prop ](obj[ prop ])\n if (flag && result === false) {\n flag = false\n }\n }\n\n return flag\n}\n","import * as R from 'rambda'\n\nimport isTypeMethod from './modules/isType'\n\nexport {default as compact} from './modules/compact'\nexport {default as composeAsync} from './modules/composeAsync'\nexport {default as debounce} from './modules/debounce'\nexport const DELAY = 'RAMBDAX_DELAY'\nexport {default as delay} from './modules/delay'\nexport {default as debug} from './modules/debug'\nexport {default as evolve} from './modules/evolve'\nexport {default as greater} from './modules/greater'\nexport {default as ifElseAsync} from './modules/ifElseAsync'\nexport {default as intersection} from './modules/intersection'\nexport const isArray = x => isTypeMethod('Array', x)\nexport const isObject = x => isTypeMethod('Object', x)\nexport const isString = x => isTypeMethod('String', x)\nexport const isType = isTypeMethod\nexport {default as isPromiseLike} from './modules/isPromiseLike'\nexport {default as isValid} from './modules/isValid'\nexport {default as less} from './modules/less'\nexport {default as mapAsync} from './modules/mapAsync'\nexport {default as mapFastAsync} from './modules/mapFastAsync'\nexport {default as memoize} from './modules/memoize'\nexport {default as mergeAll} from './modules/mergeAll'\nexport {default as omitBy} from './modules/omitBy'\nexport {default as once} from './modules/once'\nexport {default as pickBy} from './modules/pickBy'\nexport {default as produce} from './modules/produce'\nexport {default as random} from './modules/random'\nexport {default as rangeBy} from './modules/rangeBy'\nexport {default as renameProps} from './modules/renameProps'\nexport {default as resolve} from './modules/resolve'\nexport {default as resolveSecure} from './modules/resolveSecure'\nexport {default as shuffle} from './modules/shuffle'\nexport {default as tapAsync} from './modules/tapAsync'\nexport {default as throttle} from './modules/throttle'\nexport {default as tryCatch} from './modules/tryCatch'\nexport {default as when} from './modules/when'\nexport {default as where} from './modules/where'\n\n// Follows code generated by `run rambda`\nexport const always = R.always\nexport const complement = R.complement\nexport const F = R.F\nexport const identity = R.identity\nexport const not = R.not\nexport const T = R.T\nexport const trim = R.trim\nexport const add = R.add\nexport const addIndex = R.addIndex\nexport const adjust = R.adjust\nexport const all = R.all\nexport const allPass = R.allPass\nexport const anyPass = R.anyPass\nexport const any = R.any\nexport const append = R.append\nexport const both = R.both\nexport const compose = R.compose\nexport const concat = R.concat\nexport const contains = R.contains\nexport const curry = R.curry\nexport const dec = R.dec\nexport const defaultTo = R.defaultTo\nexport const divide = R.divide\nexport const drop = R.drop\nexport const dropLast = R.dropLast\nexport const either = R.either\nexport const endsWith = R.endsWith\nexport const inc = R.inc\nexport const equals = R.equals\nexport const filter = R.filter\nexport const find = R.find\nexport const findIndex = R.findIndex\nexport const flatten = R.flatten\nexport const flip = R.flip\nexport const forEach = R.forEach\nexport const has = R.has\nexport const head = R.head\nexport const ifElse = R.ifElse\nexport const is = R.is\nexport const isNil = R.isNil\nexport const includes = R.includes\nexport const indexOf = R.indexOf\nexport const init = R.init\nexport const join = R.join\nexport const lastIndexOf = R.lastIndexOf\nexport const last = R.last\nexport const length = R.length\nexport const map = R.map\nexport const match = R.match\nexport const merge = R.merge\nexport const modulo = R.modulo\nexport const multiply = R.multiply\nexport const none = R.none\nexport const omit = R.omit\nexport const partialCurry = R.partialCurry\nexport const path = R.path\nexport const pathOr = R.pathOr\nexport const pick = R.pick\nexport const pickAll = R.pickAll\nexport const pipe = R.pipe\nexport const pluck = R.pluck\nexport const prepend = R.prepend\nexport const prop = R.prop\nexport const propEq = R.propEq\nexport const range = R.range\nexport const reduce = R.reduce\nexport const reject = R.reject\nexport const repeat = R.repeat\nexport const replace = R.replace\nexport const reverse = R.reverse\nexport const sort = R.sort\nexport const sortBy = R.sortBy\nexport const split = R.split\nexport const splitEvery = R.splitEvery\nexport const startsWith = R.startsWith\nexport const subtract = R.subtract\nexport const tap = R.tap\nexport const tail = R.tail\nexport const take = R.take\nexport const takeLast = R.takeLast\nexport const test = R.test\nexport const times = R.times\nexport const toLower = R.toLower\nexport const toUpper = R.toUpper\nexport const toString = R.toString\nexport const type = R.type\nexport const uniq = R.uniq\nexport const update = R.update\nexport const values = R.values\nexport const without = R.without"],"names":["isType","xType","x","arguments","length","xHolder","type","types","compact","arr","filter","a","currentType","includes","equals","composeAsync","inputArguments","startArgument","argumentsToPass","fn","pop","err","debounce","func","ms","immediate","timeout","input","later","apply","undefined","callNow","setTimeout","delay","Promise","resolve","debug","log","exit","curry","require","evolve","rules","clone","Object","assign","propRules","keys","map","prop","greater","y","yHolder","createThenable","ifElseAsync","condition","ifFn","elseFn","ifFnHolder","elseFnHolder","reject","conditionPromise","ifFnPromise","elseFnPromise","then","conditionResult","promised","catch","intersection","b","bHolder","val","isPromiseLike","isValid","schema","flag","requirement","rule","ruleType","inputProp","inputPropType","localFlag","singleRule","toLower","contains","arrayRuleType","result","any","test","less","mapAsyncFn","willReturn","push","mapAsync","holder","mapFastAsyncFn","all","mapFastAsync","cache","normalizeObject","obj","sortFn","sort","stringify","compacted","replace","toString","take","JSON","generateProp","propString","inputArgument","memoize","inputArgumentsHolder","mergeAll","merge","omitBy","onceFn","context","once","wrap","pickBy","helper","produce","conditions","inputArgumentHolder","asyncConditionsFlag","results","payload","random","min","max","Math","floor","rangeBy","startNum","endNum","distance","endNumHolder","distanceHolder","isInteger","startNumHolder","valueToPush","loopIndexes","range","i","decimalLength","compose","last","split","Number","toFixed","renameProps","inputObject","inputObjectHolder","renamed","renameConditionProp","omit","resolveMethod","promises","res","rej","counter","props","promisedArr","key","resolveSecureWrapper","promise","resolveSecure","shuffle","arrayRaw","array","concat","index","temp","tapAsync","inputHolder","throttle","wait","tryCatch","fnType","when","whenTrueFn","whenTrueFnHolder","where","objHolder","DELAY","isArray","isTypeMethod","isObject","isString","always","R","complement","F","identity","not","T","trim","add","addIndex","adjust","allPass","anyPass","append","both","dec","defaultTo","divide","drop","dropLast","either","endsWith","inc","find","findIndex","flatten","flip","forEach","has","head","ifElse","is","isNil","indexOf","init","join","lastIndexOf","match","modulo","multiply","none","partialCurry","path","pathOr","pick","pickAll","pipe","pluck","prepend","propEq","reduce","repeat","reverse","sortBy","splitEvery","startsWith","subtract","tap","tail","takeLast","times","toUpper","uniq","update","values","without"],"mappings":"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"} \ No newline at end of file diff --git a/dist/rambdax.esm.js b/dist/rambdax.esm.js index 814e6fd9..d21bb6b5 100644 --- a/dist/rambdax.esm.js +++ b/dist/rambdax.esm.js @@ -9,14 +9,14 @@ function isType$1(xType, x) { } const types = ['Null', 'Undefined', 'RegExp']; + function compact(arr) { + return filter(a => { const currentType = type(a); - if (types.includes(currentType)) { return false; } - if (currentType === 'Object') { return !equals(a, {}); } @@ -32,7 +32,6 @@ function composeAsync(...inputArguments) { while (inputArguments.length !== 0) { const fn = inputArguments.pop(); - if (type(fn) === 'Async' || type(fn) === 'Promise') { argumentsToPass = await fn(argumentsToPass); } else { @@ -49,29 +48,25 @@ function composeAsync(...inputArguments) { function debounce(func, ms, immediate = false) { let timeout; - return function () { - const thisHolder = this; - const args = arguments; + return function (...input) { const later = function () { timeout = null; - if (!immediate) { - func.apply(thisHolder, args); + func.apply(undefined, input); } }; - const callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, ms); - if (callNow) { - func.apply(thisHolder, args); + func.apply(undefined, input); } }; } function delay(ms) { + return new Promise(resolve => { setTimeout(() => { resolve('RAMBDAX_DELAY'); @@ -84,11 +79,7 @@ function debug(...input) { process.exit(); } -const { - type: type$2, - curry: curry$2, - filter: filter$2 -} = require('rambda'); +const { type: type$2, curry: curry$2, filter: filter$2 } = require('rambda'); function evolve(rules, input) { const clone = Object.assign({}, input); @@ -100,13 +91,13 @@ function evolve(rules, input) { propRules.map(prop$$1 => { const fn = rules[prop$$1]; - if (type$2(fn) === 'Function') { clone[prop$$1] = fn(clone[prop$$1]); } else if (type$2(fn) === 'Object') { clone[prop$$1] = evolve(fn, clone[prop$$1]); } }); + return clone; } @@ -137,8 +128,10 @@ function ifElseAsync(condition, ifFn, elseFn) { const conditionPromise = createThenable(condition); const ifFnPromise = createThenable(ifFn); const elseFnPromise = createThenable(elseFn); + conditionPromise(input).then(conditionResult => { const promised = conditionResult === true ? ifFnPromise : elseFnPromise; + promised(input).then(resolve).catch(reject$$1); }).catch(reject$$1); }); @@ -152,21 +145,15 @@ function intersection(a, b) { return filter(val => b.includes(val))(a); } -const { - type: type$3 -} = require('rambda'); +const { type: type$3 } = require('rambda'); function isPromiseLike(x) { return ['Async', 'Promise'].includes(type$3(x)); } -function isValid({ - input, - schema -}) { +function isValid({ input, schema }) { if (type(input) === 'Object' && type(schema) === 'Object') { let flag = true; - for (const requirement in schema) { if (flag) { const rule = schema[requirement]; @@ -182,7 +169,6 @@ function isValid({ localFlag = true; } }); - if (localFlag === false) { flag = false; } @@ -218,7 +204,6 @@ function isValid({ } } else if (arrayRuleType === 'Object') { const result = any(val => !isValid(val, rule[0]))(inputProp); - if (result) { flag = false; } @@ -250,7 +235,6 @@ function less(x, y) { async function mapAsyncFn(fn, arr) { try { const willReturn = []; - for (const a of arr) { willReturn.push((await fn(a))); } @@ -274,6 +258,7 @@ function mapAsync(fn, arr) { async function mapFastAsyncFn(fn, arr) { try { const promised = arr.map(a => fn(a)); + return await Promise.all(promised); } catch (err) { throw err; @@ -294,9 +279,9 @@ const cache = {}; const normalizeObject = obj => { const sortFn = (a, b) => a > b; - const willReturn = {}; compose(map(prop$$1 => willReturn[prop$$1] = obj[prop$$1]), sort(sortFn))(Object.keys(obj)); + return willReturn; }; @@ -305,6 +290,7 @@ const stringify = a => { return a; } else if (['Function', 'Async'].includes(type(a))) { const compacted = replace(/\s{1,}/g, ' ', a.toString()); + return replace(/\s/g, '_', take(15, compacted)); } else if (type(a) === 'Object') { a = normalizeObject(a); @@ -318,6 +304,7 @@ const generateProp = (fn, ...inputArguments) => { inputArguments.map(inputArgument => { propString += `${stringify(inputArgument)}_`; }); + return `${propString}${stringify(fn)}`; }; @@ -325,13 +312,10 @@ function memoize(fn, ...inputArguments) { if (arguments.length === 1) { return (...inputArgumentsHolder) => memoize(fn, ...inputArgumentsHolder); } - const prop$$1 = generateProp(fn, ...inputArguments); - if (prop$$1 in cache) { return cache[prop$$1]; } - if (type(fn) === 'Async') { return new Promise(resolve => { fn(...inputArguments).then(result => { @@ -340,9 +324,9 @@ function memoize(fn, ...inputArguments) { }); }); } - const result = fn(...inputArguments); cache[prop$$1] = result; + return result; } @@ -351,6 +335,7 @@ function mergeAll(arr) { map(val => { willReturn = merge(willReturn, val); }, arr); + return willReturn; } @@ -360,7 +345,6 @@ function omitBy(fn, obj) { } const willReturn = {}; - for (const prop$$1 in obj) { if (!fn(prop$$1, obj[prop$$1])) { willReturn[prop$$1] = obj[prop$$1]; @@ -372,6 +356,7 @@ function omitBy(fn, obj) { function onceFn(fn, context) { let result; + return function () { if (fn) { result = fn.apply(context || this, arguments); @@ -385,6 +370,7 @@ function onceFn(fn, context) { function once(fn, context) { if (arguments.length === 1) { const wrap = onceFn(fn, context); + return curry(wrap); } @@ -397,7 +383,6 @@ function pickBy(fn, obj) { } const willReturn = {}; - for (const prop$$1 in obj) { if (fn(prop$$1, obj[prop$$1])) { willReturn[prop$$1] = obj[prop$$1]; @@ -407,11 +392,7 @@ function pickBy(fn, obj) { return willReturn; } -function helper({ - condition, - inputArgument, - prop: prop$$1 -}) { +function helper({ condition, inputArgument, prop: prop$$1 }) { return new Promise((resolve, reject$$1) => { if (!(type(condition) === 'Async')) { return resolve({ @@ -433,9 +414,7 @@ function produce(conditions, inputArgument) { if (arguments.length === 1) { return inputArgumentHolder => produce(conditions, inputArgumentHolder); } - let asyncConditionsFlag = false; - for (const prop$$1 in conditions) { if (asyncConditionsFlag === false && type(conditions[prop$$1]) === 'Async') { asyncConditionsFlag = true; @@ -444,16 +423,13 @@ function produce(conditions, inputArgument) { if (asyncConditionsFlag === false) { const willReturn = {}; - for (const prop$$1 in conditions) { willReturn[prop$$1] = conditions[prop$$1](inputArgument); } return willReturn; } - const promised = []; - for (const prop$$1 in conditions) { const condition = conditions[prop$$1]; promised.push(helper({ @@ -466,7 +442,9 @@ function produce(conditions, inputArgument) { return new Promise((resolve, reject$$1) => { Promise.all(promised).then(results => { const willReturn = {}; + map(result => willReturn[result.type] = result.payload, results); + resolve(willReturn); }).catch(err => reject$$1(err)); }); @@ -484,19 +462,16 @@ function rangeBy(startNum, endNum, distance) { } const isInteger = !distance.toString().includes('.'); - if (startNum > endNum) { const startNumHolder = startNum; startNum = endNum; endNum = startNumHolder; } - const willReturn = [startNum]; let valueToPush = startNum; if (isInteger) { const loopIndexes = range(0, Math.floor((endNum - startNum) / distance)); - for (const i of loopIndexes) { valueToPush += distance; willReturn.push(valueToPush); @@ -504,7 +479,6 @@ function rangeBy(startNum, endNum, distance) { } else { const decimalLength = compose(length, last, split('.'))(distance.toString()); const loopIndexes = range(0, Math.floor((endNum - startNum) / distance)); - for (const i of loopIndexes) { valueToPush += distance; willReturn.push(Number(valueToPush.toFixed(decimalLength))); @@ -518,13 +492,13 @@ function renameProps(conditions, inputObject) { if (inputObject === undefined) { return inputObjectHolder => renameProps(conditions, inputObjectHolder); } - const renamed = {}; Object.keys(conditions).map(renameConditionProp => { if (Object.keys(inputObject).includes(renameConditionProp)) { renamed[conditions[renameConditionProp]] = inputObject[renameConditionProp]; } }); + return merge(renamed, omit(Object.keys(conditions), inputObject)); } @@ -533,19 +507,18 @@ function resolveMethod(promises) { let counter = 0; const props = {}; const promisedArr = []; - for (const prop$$1 in promises) { props[counter] = prop$$1; promisedArr.push(promises[prop$$1]); counter++; } - Promise.all(promisedArr).then(result => { const willReturn = {}; result.map((val, key) => { const prop$$1 = props[key]; willReturn[prop$$1] = val; }); + res(willReturn); }).catch(rej); }); @@ -568,6 +541,7 @@ const resolveSecureWrapper = promise => new Promise(res => { async function resolveSecure(input) { try { const promised = map(a => resolveSecureWrapper(a), input); + return await Promise.all(promised); } catch (err) { console.log(err); @@ -577,7 +551,6 @@ async function resolveSecure(input) { function shuffle(arrayRaw) { const array = arrayRaw.concat(); let counter = array.length; - while (counter > 0) { const index = Math.floor(Math.random() * counter); counter--; @@ -593,7 +566,6 @@ function tapAsync(fn, input) { if (arguments.length === 1) { return inputHolder => tapAsync(fn, inputHolder); } - if (isPromiseLike(fn) === true) { return new Promise((resolve, reject$$1) => { fn(input).then(() => { @@ -601,16 +573,17 @@ function tapAsync(fn, input) { }).catch(reject$$1); }); } - fn(input); + return input; } -function throttle(callback, ms) { +function throttle(fn, ms) { let wait = false; - return function () { + + return function (...input) { if (!wait) { - callback.call(); + fn.apply(undefined, input); wait = true; setTimeout(() => { wait = false; @@ -621,7 +594,6 @@ function throttle(callback, ms) { function tryCatch(fn, input) { const fnType = type(fn); - if (fnType === 'Async' || fnType === 'Promise') { return new Promise(resolve => { fn(input).then(resolve).catch(resolve); @@ -644,7 +616,6 @@ function when(condition, whenTrueFn) { if (condition(input) === true) { return whenTrueFn(input); } - return input; }; } @@ -653,12 +624,9 @@ function where(conditions, obj) { if (obj === undefined) { return objHolder => where(conditions, objHolder); } - let flag = true; - for (const prop$$1 in conditions) { const result = conditions[prop$$1](obj[prop$$1]); - if (flag && result === false) { flag = false; } @@ -672,6 +640,7 @@ const isArray = x => isType$1('Array', x); const isObject = x => isType$1('Object', x); const isString = x => isType$1('String', x); const isType = isType$1; +// Follows code generated by `run rambda` const always$1 = always; const complement$1 = complement; const F$1 = F; diff --git a/dist/rambdax.esm.js.map b/dist/rambdax.esm.js.map index 5d6e0bbf..d445b64d 100644 --- a/dist/rambdax.esm.js.map +++ b/dist/rambdax.esm.js.map @@ -1 +1 @@ -{"version":3,"file":"rambdax.esm.js","sources":["../modules/isType.js","../modules/compact.js","../modules/composeAsync.js","../modules/debounce.js","../modules/delay.js","../modules/debug.js","../modules/evolve.js","../modules/greater.js","../modules/ifElseAsync.js","../modules/intersection.js","../modules/isPromiseLike.js","../modules/isValid.js","../modules/less.js","../modules/mapAsync.js","../modules/mapFastAsync.js","../modules/memoize.js","../modules/mergeAll.js","../modules/omitBy.js","../modules/once.js","../modules/pickBy.js","../modules/produce.js","../modules/random.js","../modules/rangeBy.js","../modules/renameProps.js","../modules/resolve.js","../modules/resolveSecure.js","../modules/shuffle.js","../modules/tapAsync.js","../modules/throttle.js","../modules/tryCatch.js","../modules/when.js","../modules/where.js","../rambdax.js"],"sourcesContent":["import { type } from 'rambda'\n\nexport default function isType (xType, x) {\n if (arguments.length === 1) {\n return xHolder => isType(xType, xHolder)\n }\n\n return type(x) === xType\n}\n","import {filter, type, equals} from 'rambda'\n\nconst types = [\n 'Null',\n 'Undefined',\n 'RegExp',\n]\n\nexport default function compact (arr) {\n\n return filter(\n a => {\n const currentType = type(a)\n if (types.includes(currentType)) {\n return false\n }\n if (currentType === 'Object') {\n return !equals(a, {})\n }\n\n return a.length !== 0\n },\n arr\n )\n}\n","import {type} from 'rambda'\n\nexport default function composeAsync(...inputArguments){\n try {\n return async function (startArgument) {\n let argumentsToPass = startArgument\n\n while (inputArguments.length !== 0) {\n const fn = inputArguments.pop()\n if (type(fn) === 'Async' || type(fn) === 'Promise') {\n argumentsToPass = await fn(argumentsToPass)\n } else {\n argumentsToPass = fn(argumentsToPass)\n }\n }\n\n return argumentsToPass\n }\n } catch (err) {\n throw err\n }\n}\n","export default function debounce (func, ms, immediate = false) {\n let timeout\n\n return function () {\n const thisHolder = this\n const args = arguments\n const later = function () {\n timeout = null\n if (!immediate) {\n func.apply(thisHolder, args)\n }\n }\n const callNow = immediate && !timeout\n clearTimeout(timeout)\n timeout = setTimeout(later, ms)\n if (callNow) {\n func.apply(thisHolder, args)\n }\n }\n}\n","export default function delay(ms){\n \n return new Promise(resolve => {\n setTimeout(() => {\n resolve('RAMBDAX_DELAY')\n }, ms)\n })\n}\n","export default function debug(...input){\n console.log(...input)\n process.exit()\n}\n","const { type, curry, filter } = require('rambda')\n\nfunction evolve (rules, input) {\n const clone = Object.assign({}, input)\n const propRules = filter(\n x => clone[ x ] !== undefined\n )(Object.keys(rules))\n\n if (propRules.length === 0) {\n return input\n }\n\n propRules.map(prop => {\n const fn = rules[ prop ]\n if (type(fn) === 'Function') {\n clone[ prop ] = fn(clone[ prop ])\n } else if (type(fn) === 'Object') {\n clone[ prop ] = evolve(fn, clone[ prop ])\n }\n })\n\n return clone\n}\n\nexport default curry(evolve)\n","export default function greater(x, y){\n if(y === undefined){\n return yHolder => greater(x,yHolder)\n }\n\n return y > x\n}","function createThenable(x){\n return async function(input){\n return x(input)\n }\n}\n\nfunction ifElseAsync (condition, ifFn, elseFn) {\n if (ifFn === undefined) {\n return (ifFnHolder, elseFnHolder) => ifElseAsync(condition, ifFnHolder, elseFnHolder)\n } else if (elseFn === undefined) {\n return elseFnHolder => ifElseAsync(condition, ifFn, elseFnHolder)\n }\n \n return input => new Promise((resolve, reject) => {\n const conditionPromise = createThenable(condition)\n const ifFnPromise = createThenable(ifFn)\n const elseFnPromise = createThenable(elseFn)\n\n conditionPromise(input)\n .then(conditionResult => {\n const promised = conditionResult === true ?\n ifFnPromise :\n elseFnPromise\n\n promised(input)\n .then(resolve)\n .catch(reject)\n })\n .catch(reject)\n })\n}\n\nexport default ifElseAsync\n","import {filter} from 'rambda'\n\nexport default function intersection (a, b) {\n if (b === undefined) {\n return bHolder => intersection(a, bHolder)\n }\n\n return filter(val => b.includes(val))(a)\n}\n","const { type } = require('rambda')\n\nexport default function isPromiseLike (x) {\n return [ 'Async', 'Promise' ].includes(type(x))\n}\n","import {type, toLower, contains, test, any} from 'rambda'\n\nexport default function isValid({input, schema}){\n if (type(input) === 'Object' && type(schema) === 'Object') {\n let flag = true\n for (const requirement in schema) {\n if (flag) {\n const rule = schema[ requirement ]\n const ruleType = type(rule)\n const inputProp = input[ requirement ]\n const inputPropType = type(input[ requirement ])\n\n if (ruleType === 'Object' && rule.type === 'ArrayOfSchemas' && inputPropType === 'Array') {\n inputProp.map(val => {\n let localFlag = false\n rule.rule.map(singleRule => {\n if (isValid(val, singleRule)) {\n localFlag = true\n }\n })\n if (localFlag === false) {\n flag = false\n }\n })\n } else if (\n ruleType === 'String'\n ) {\n if (inputProp !== undefined) {\n if (toLower(inputPropType) !== rule) {\n flag = false\n }\n } else {\n flag = false\n }\n } else if (\n typeof rule === 'function'\n ) {\n if (rule(inputProp) === false) {\n flag = false\n }\n } else if (\n ruleType === 'Object' &&\n inputPropType === 'Object'\n ) {\n if (\n !isValid(inputProp, rule)\n ) {\n flag = false\n }\n } else if (\n ruleType === 'Array' &&\n inputPropType === 'String'\n ) {\n if (!contains(inputProp, rule)) {\n flag = false\n }\n } else if (\n ruleType === 'Array' &&\n inputPropType === 'Array' &&\n rule.length === 1 &&\n inputProp.length > 0\n ) {\n const arrayRuleType = type(rule[ 0 ])\n\n if (arrayRuleType === 'String') {\n const result = any(\n val => toLower(type(val)) !== rule[ 0 ],\n inputProp\n )\n\n if (result) {\n flag = false\n }\n } else if (arrayRuleType === 'Object') {\n const result = any(\n val => !isValid(val, rule[ 0 ])\n )(inputProp)\n if (result) {\n flag = false\n }\n }\n } else if (\n ruleType === 'RegExp' &&\n inputPropType === 'String'\n ) {\n if (!test(rule, inputProp)) {\n flag = false\n }\n } else {\n flag = false\n }\n }\n }\n\n return flag\n }\n\n return false\n}\n","export default function less(x, y){\n if(y === undefined){\n return yHolder => less(x,yHolder)\n }\n\n return y < x\n}","async function mapAsyncFn (fn, arr) {\n try {\n const willReturn = []\n for (const a of arr) {\n willReturn.push(await fn(a))\n }\n\n return willReturn\n } catch (err) {\n throw err\n }\n}\n\nexport default function mapAsync (fn, arr) {\n if (arr === undefined) {\n return async holder => await mapAsyncFn(fn, holder)\n }\n\n return new Promise((resolve, reject) => {\n mapAsyncFn(fn, arr).then(resolve).catch(reject)\n })\n}\n","async function mapFastAsyncFn (fn, arr) {\n try {\n const promised = arr.map(a => fn(a))\n\n return await Promise.all(promised)\n } catch (err) {\n throw err\n }\n}\n\nexport default function mapFastAsync (fn, arr) {\n if (arr === undefined) {\n return async holder => await mapFastAsyncFn(fn, holder)\n }\n\n return new Promise((resolve, reject) => {\n mapFastAsyncFn(fn, arr).then(resolve).catch(reject)\n })\n}\n","import {\n compose,\n map,\n sort,\n type,\n replace,\n take,\n} from 'rambda'\nconst cache = {}\n\nconst normalizeObject = obj => {\n const sortFn = (a, b) => a > b\n const willReturn = {}\n compose(\n map(prop => willReturn[ prop ] = obj[ prop ]),\n sort(sortFn)\n )(Object.keys(obj))\n\n return willReturn\n}\n\nconst stringify = a => {\n if (type(a) === 'String') {\n return a\n } else if ([ 'Function', 'Async' ].includes(type(a))) {\n const compacted = replace(/\\s{1,}/g, ' ', a.toString())\n\n return replace(/\\s/g, '_', take(15, compacted))\n } else if (type(a) === 'Object') {\n a = normalizeObject(a)\n }\n\n return JSON.stringify(a)\n}\n\nconst generateProp = (fn, ...inputArguments) => {\n let propString = ''\n inputArguments.map(inputArgument => {\n propString += `${ stringify(inputArgument) }_`\n })\n\n return `${ propString }${ stringify(fn) }`\n}\n\nexport default function memoize (fn, ...inputArguments) {\n if (arguments.length === 1) {\n return (...inputArgumentsHolder) => memoize(fn, ...inputArgumentsHolder)\n }\n const prop = generateProp(fn, ...inputArguments)\n if (prop in cache) {\n return cache[ prop ]\n }\n if (type(fn) === 'Async') {\n return new Promise(resolve => {\n fn(...inputArguments).then(result => {\n cache[ prop ] = result\n resolve(result)\n })\n })\n }\n const result = fn(...inputArguments)\n cache[ prop ] = result\n\n return result\n}\n","import {map, merge} from 'rambda'\n\nexport default function mergeAll (arr) {\n let willReturn = {}\n map(val => {\n willReturn = merge(willReturn, val)\n }, arr)\n\n return willReturn\n}\n","export default function omitBy (fn, obj) {\n if (arguments.length === 1) {\n return holder => omitBy(fn, holder)\n }\n\n const willReturn = {}\n for (const prop in obj) {\n if (!fn(prop, obj[ prop ])) {\n willReturn[ prop ] = obj[ prop ]\n }\n }\n\n return willReturn\n}\n","import {curry} from 'rambda'\n\nfunction onceFn (fn, context) {\n let result\n\n return function () {\n if (fn) {\n result = fn.apply(context || this, arguments)\n fn = null\n }\n\n return result\n }\n}\n\nexport default function once (fn, context) {\n if (arguments.length === 1) {\n const wrap = onceFn(fn, context)\n\n return curry(wrap)\n }\n\n return onceFn(fn, context)\n}\n","export default function pickBy (fn, obj) {\n if (arguments.length === 1) {\n return holder => pickBy(fn, holder)\n }\n\n const willReturn = {}\n for (const prop in obj) {\n if (fn(prop, obj[ prop ])) {\n willReturn[ prop ] = obj[ prop ]\n }\n }\n\n return willReturn\n}\n","import {\n type,\n map,\n} from 'rambda'\n\nfunction helper ({ condition, inputArgument, prop }) {\n return new Promise((resolve, reject) => {\n if (!(type(condition) === 'Async')) {\n return resolve({\n type : prop,\n payload : condition(inputArgument),\n })\n }\n\n condition(inputArgument)\n .then(result => {\n resolve({\n type : prop,\n payload : result,\n })\n })\n .catch(err => reject(err))\n })\n}\n\nexport default function produce (conditions, inputArgument) {\n if (arguments.length === 1) {\n return inputArgumentHolder => produce(conditions, inputArgumentHolder)\n }\n let asyncConditionsFlag = false\n for (const prop in conditions) {\n if (\n asyncConditionsFlag === false &&\n type(conditions[ prop ]) === 'Async'\n ) {\n asyncConditionsFlag = true\n }\n }\n\n if (asyncConditionsFlag === false) {\n const willReturn = {}\n for (const prop in conditions) {\n willReturn[ prop ] = conditions[ prop ](inputArgument)\n }\n\n return willReturn\n }\n const promised = []\n for (const prop in conditions) {\n const condition = conditions[ prop ]\n promised.push(helper({\n inputArgument,\n condition,\n prop,\n }))\n }\n\n return new Promise((resolve, reject) => {\n Promise.all(promised)\n .then(results => {\n const willReturn = {}\n\n map(\n result => willReturn[ result.type ] = result.payload,\n results\n )\n\n resolve(willReturn)\n })\n .catch(err => reject(err))\n })\n}\n","export default function random(min,max){\n return Math.floor(Math.random() * (max - min + 1)) + min\n}\n","import {range, length, last, split, compose} from 'rambda'\n\nexport default function rangeBy (startNum, endNum, distance) {\n if (endNum === undefined) {\n return (endNumHolder, distanceHolder) => rangeBy(startNum, endNumHolder, distanceHolder)\n } else if (distance === undefined) {\n return distanceHolder => rangeBy(startNum, endNum, distanceHolder)\n }\n\n const isInteger = !distance.toString().includes('.')\n if (startNum > endNum) {\n const startNumHolder = startNum\n startNum = endNum\n endNum = startNumHolder\n }\n const willReturn = [ startNum ]\n let valueToPush = startNum\n\n if (isInteger) {\n const loopIndexes = range(0, Math.floor((endNum - startNum) / distance))\n for (const i of loopIndexes) {\n valueToPush += distance\n willReturn.push(valueToPush)\n }\n } else {\n const decimalLength = compose(\n length,\n last,\n split('.')\n )(distance.toString())\n const loopIndexes = range(0, Math.floor((endNum - startNum) / distance))\n for (const i of loopIndexes) {\n valueToPush += distance\n willReturn.push(Number(valueToPush.toFixed(decimalLength)))\n }\n }\n\n return willReturn\n}\n","import {merge, omit} from 'rambda'\n\nexport default function renameProps (conditions, inputObject) {\n if (inputObject === undefined) {\n return inputObjectHolder => renameProps(conditions, inputObjectHolder)\n }\n const renamed = {}\n Object.keys(conditions).map(renameConditionProp => {\n if (Object.keys(inputObject).includes(renameConditionProp)) {\n renamed[ conditions[ renameConditionProp ] ] = inputObject[ renameConditionProp ]\n }\n })\n\n return merge(\n renamed,\n omit(\n Object.keys(conditions),\n inputObject\n )\n )\n}\n","export default function resolveMethod (promises) {\n return new Promise((res, rej) => {\n let counter = 0\n const props = {}\n const promisedArr = []\n for (const prop in promises) {\n props[ counter ] = prop\n promisedArr.push(promises[ prop ])\n counter++\n }\n Promise.all(promisedArr)\n .then(result => {\n const willReturn = {}\n result.map((val, key) => {\n const prop = props[ key ]\n willReturn[ prop ] = val\n })\n\n res(willReturn)\n })\n .catch(rej)\n })\n}\n","import {map} from 'rambda'\n\nconst resolveSecureWrapper = promise => new Promise(res => {\n promise.then(result => {\n res({\n payload : result,\n type : 'RESULT',\n })\n }).catch(err => {\n res({\n payload : err,\n type : 'ERROR',\n })\n })\n})\n\nasync function resolveSecure (input) {\n try {\n const promised = map(\n a => resolveSecureWrapper(a),\n input\n )\n\n return await Promise.all(promised)\n } catch (err) {\n console.log(err)\n }\n}\n\nexport default resolveSecure\n","export default function shuffle(arrayRaw){\n const array = arrayRaw.concat()\n let counter = array.length\n while (counter > 0) {\n const index = Math.floor(Math.random() * counter)\n counter--\n const temp = array[ counter ]\n array[ counter ] = array[ index ]\n array[ index ] = temp\n }\n\n return array\n}\n","import isPromiseLike from './isPromiseLike'\n\nexport default function tapAsync (fn, input) {\n if (arguments.length === 1) {\n return inputHolder => tapAsync(fn, inputHolder)\n }\n if (isPromiseLike(fn) === true) {\n return new Promise((resolve, reject) => {\n fn(input)\n .then(() => {\n resolve(input)\n })\n .catch(reject)\n })\n }\n fn(input)\n\n return input\n}\n","export default function throttle (callback, ms) {\n let wait = false\n\n return function () {\n if (!wait) {\n callback.call()\n wait = true\n setTimeout(() => {\n wait = false\n }, ms)\n }\n }\n}\n","import {type} from 'rambda'\n\nexport default function tryCatch(fn, input){\n const fnType = type(fn)\n if(fnType === 'Async' || fnType === 'Promise'){\n return new Promise(resolve => {\n fn(input)\n .then(resolve)\n .catch(resolve)\n })\n }\n\n try{\n return fn(input)\n }catch(err){\n return err\n }\n}","export default function when(condition, whenTrueFn){\n if(whenTrueFn === undefined){\n return whenTrueFnHolder => when(condition, whenTrueFnHolder)\n }\n\n return input => {\n if(condition(input) === true){\n return whenTrueFn(input)\n }\n return input\n }\n}\n","export default function where (conditions, obj) {\n if (obj === undefined) {\n return objHolder => where(conditions, objHolder)\n }\n let flag = true\n for (const prop in conditions) {\n const result = conditions[ prop ](obj[ prop ])\n if (flag && result === false) {\n flag = false\n }\n }\n\n return flag\n}\n","import * as R from 'rambda'\n\nimport isTypeMethod from './modules/isType'\n\nexport {default as compact} from './modules/compact'\nexport {default as composeAsync} from './modules/composeAsync'\nexport {default as debounce} from './modules/debounce'\nexport const DELAY = 'RAMBDAX_DELAY'\nexport {default as delay} from './modules/delay'\nexport {default as debug} from './modules/debug'\nexport {default as evolve} from './modules/evolve'\nexport {default as greater} from './modules/greater'\nexport {default as ifElseAsync} from './modules/ifElseAsync'\nexport {default as intersection} from './modules/intersection'\nexport const isArray = x => isTypeMethod('Array', x)\nexport const isObject = x => isTypeMethod('Object', x)\nexport const isString = x => isTypeMethod('String', x)\nexport const isType = isTypeMethod\nexport {default as isPromiseLike} from './modules/isPromiseLike'\nexport {default as isValid} from './modules/isValid'\nexport {default as less} from './modules/less'\nexport {default as mapAsync} from './modules/mapAsync'\nexport {default as mapFastAsync} from './modules/mapFastAsync'\nexport {default as memoize} from './modules/memoize'\nexport {default as mergeAll} from './modules/mergeAll'\nexport {default as omitBy} from './modules/omitBy'\nexport {default as once} from './modules/once'\nexport {default as pickBy} from './modules/pickBy'\nexport {default as produce} from './modules/produce'\nexport {default as random} from './modules/random'\nexport {default as rangeBy} from './modules/rangeBy'\nexport {default as renameProps} from './modules/renameProps'\nexport {default as resolve} from './modules/resolve'\nexport {default as resolveSecure} from './modules/resolveSecure'\nexport {default as shuffle} from './modules/shuffle'\nexport {default as tapAsync} from './modules/tapAsync'\nexport {default as throttle} from './modules/throttle'\nexport {default as tryCatch} from './modules/tryCatch'\nexport {default as when} from './modules/when'\nexport {default as where} from './modules/where'\n\n// Follows code generated by `run rambda`\nexport const always = R.always\nexport const complement = R.complement\nexport const F = R.F\nexport const identity = R.identity\nexport const not = R.not\nexport const T = R.T\nexport const trim = R.trim\nexport const add = R.add\nexport const addIndex = R.addIndex\nexport const adjust = R.adjust\nexport const all = R.all\nexport const allPass = R.allPass\nexport const anyPass = R.anyPass\nexport const any = R.any\nexport const append = R.append\nexport const both = R.both\nexport const compose = R.compose\nexport const concat = R.concat\nexport const contains = R.contains\nexport const curry = R.curry\nexport const dec = R.dec\nexport const defaultTo = R.defaultTo\nexport const divide = R.divide\nexport const drop = R.drop\nexport const dropLast = R.dropLast\nexport const either = R.either\nexport const endsWith = R.endsWith\nexport const inc = R.inc\nexport const equals = R.equals\nexport const filter = R.filter\nexport const find = R.find\nexport const findIndex = R.findIndex\nexport const flatten = R.flatten\nexport const flip = R.flip\nexport const forEach = R.forEach\nexport const has = R.has\nexport const head = R.head\nexport const ifElse = R.ifElse\nexport const is = R.is\nexport const isNil = R.isNil\nexport const includes = R.includes\nexport const indexOf = R.indexOf\nexport const init = R.init\nexport const join = R.join\nexport const lastIndexOf = R.lastIndexOf\nexport const last = R.last\nexport const length = R.length\nexport const map = R.map\nexport const match = R.match\nexport const merge = R.merge\nexport const modulo = R.modulo\nexport const multiply = R.multiply\nexport const none = R.none\nexport const omit = R.omit\nexport const partialCurry = R.partialCurry\nexport const path = R.path\nexport const pathOr = R.pathOr\nexport const pick = R.pick\nexport const pickAll = R.pickAll\nexport const pipe = R.pipe\nexport const pluck = R.pluck\nexport const prepend = R.prepend\nexport const prop = R.prop\nexport const propEq = R.propEq\nexport const range = R.range\nexport const reduce = R.reduce\nexport const reject = R.reject\nexport const repeat = R.repeat\nexport const replace = R.replace\nexport const reverse = R.reverse\nexport const sort = R.sort\nexport const sortBy = R.sortBy\nexport const split = R.split\nexport const splitEvery = R.splitEvery\nexport const startsWith = R.startsWith\nexport const subtract = R.subtract\nexport const tap = R.tap\nexport const tail = R.tail\nexport const take = R.take\nexport const takeLast = R.takeLast\nexport const test = R.test\nexport const times = R.times\nexport const toLower = R.toLower\nexport const toUpper = R.toUpper\nexport const toString = R.toString\nexport const type = R.type\nexport const uniq = R.uniq\nexport const update = R.update\nexport const values = R.values\nexport const without = R.without"],"names":["isType","xType","x","arguments","length","xHolder","type","types","compact","arr","filter","a","currentType","includes","equals","composeAsync","inputArguments","startArgument","argumentsToPass","fn","pop","err","debounce","func","ms","immediate","timeout","thisHolder","args","later","apply","callNow","setTimeout","delay","Promise","resolve","debug","input","log","exit","require","evolve","rules","clone","Object","assign","propRules","undefined","keys","map","prop","curry","greater","y","yHolder","createThenable","ifElseAsync","condition","ifFn","elseFn","ifFnHolder","elseFnHolder","reject","conditionPromise","ifFnPromise","elseFnPromise","then","conditionResult","promised","catch","intersection","b","bHolder","val","isPromiseLike","isValid","schema","flag","requirement","rule","ruleType","inputProp","inputPropType","localFlag","singleRule","toLower","contains","arrayRuleType","result","any","test","less","mapAsyncFn","willReturn","push","mapAsync","holder","mapFastAsyncFn","all","mapFastAsync","cache","normalizeObject","obj","sortFn","sort","stringify","compacted","replace","toString","take","JSON","generateProp","propString","inputArgument","memoize","inputArgumentsHolder","mergeAll","merge","omitBy","onceFn","context","once","wrap","pickBy","helper","produce","conditions","inputArgumentHolder","asyncConditionsFlag","results","payload","random","min","max","Math","floor","rangeBy","startNum","endNum","distance","endNumHolder","distanceHolder","isInteger","startNumHolder","valueToPush","loopIndexes","range","i","decimalLength","compose","last","split","Number","toFixed","renameProps","inputObject","inputObjectHolder","renamed","renameConditionProp","omit","resolveMethod","promises","res","rej","counter","props","promisedArr","key","resolveSecureWrapper","promise","resolveSecure","shuffle","arrayRaw","array","concat","index","temp","tapAsync","inputHolder","throttle","callback","wait","call","tryCatch","fnType","when","whenTrueFn","whenTrueFnHolder","where","objHolder","DELAY","isArray","isTypeMethod","isObject","isString","always","R","complement","F","identity","not","T","trim","add","addIndex","adjust","allPass","anyPass","append","both","dec","defaultTo","divide","drop","dropLast","either","endsWith","inc","find","findIndex","flatten","flip","forEach","has","head","ifElse","is","isNil","indexOf","init","join","lastIndexOf","match","modulo","multiply","none","partialCurry","path","pathOr","pick","pickAll","pipe","pluck","prepend","propEq","reduce","repeat","reverse","sortBy","splitEvery","startsWith","subtract","tap","tail","takeLast","times","toUpper","uniq","update","values","without"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"rambdax.esm.js","sources":["../modules/isType.js","../modules/compact.js","../modules/composeAsync.js","../modules/debounce.js","../modules/delay.js","../modules/debug.js","../modules/evolve.js","../modules/greater.js","../modules/ifElseAsync.js","../modules/intersection.js","../modules/isPromiseLike.js","../modules/isValid.js","../modules/less.js","../modules/mapAsync.js","../modules/mapFastAsync.js","../modules/memoize.js","../modules/mergeAll.js","../modules/omitBy.js","../modules/once.js","../modules/pickBy.js","../modules/produce.js","../modules/random.js","../modules/rangeBy.js","../modules/renameProps.js","../modules/resolve.js","../modules/resolveSecure.js","../modules/shuffle.js","../modules/tapAsync.js","../modules/throttle.js","../modules/tryCatch.js","../modules/when.js","../modules/where.js","../rambdax.js"],"sourcesContent":["import { type } from 'rambda'\n\nexport default function isType (xType, x) {\n if (arguments.length === 1) {\n return xHolder => isType(xType, xHolder)\n }\n\n return type(x) === xType\n}\n","import {filter, type, equals} from 'rambda'\n\nconst types = [\n 'Null',\n 'Undefined',\n 'RegExp',\n]\n\nexport default function compact (arr) {\n\n return filter(\n a => {\n const currentType = type(a)\n if (types.includes(currentType)) {\n return false\n }\n if (currentType === 'Object') {\n return !equals(a, {})\n }\n\n return a.length !== 0\n },\n arr\n )\n}\n","import {type} from 'rambda'\n\nexport default function composeAsync(...inputArguments){\n try {\n return async function (startArgument) {\n let argumentsToPass = startArgument\n\n while (inputArguments.length !== 0) {\n const fn = inputArguments.pop()\n if (type(fn) === 'Async' || type(fn) === 'Promise') {\n argumentsToPass = await fn(argumentsToPass)\n } else {\n argumentsToPass = fn(argumentsToPass)\n }\n }\n\n return argumentsToPass\n }\n } catch (err) {\n throw err\n }\n}\n","export default function debounce (func, ms, immediate = false) {\n let timeout\n\n return function (...input) {\n const later = function () {\n timeout = null\n if (!immediate) {\n func.apply(undefined, input)\n }\n }\n const callNow = immediate && !timeout\n clearTimeout(timeout)\n timeout = setTimeout(later, ms)\n if (callNow) {\n func.apply(undefined, input)\n }\n }\n}\n","export default function delay(ms){\n \n return new Promise(resolve => {\n setTimeout(() => {\n resolve('RAMBDAX_DELAY')\n }, ms)\n })\n}\n","export default function debug(...input){\n console.log(...input)\n process.exit()\n}\n","const { type, curry, filter } = require('rambda')\n\nfunction evolve (rules, input) {\n const clone = Object.assign({}, input)\n const propRules = filter(\n x => clone[ x ] !== undefined\n )(Object.keys(rules))\n\n if (propRules.length === 0) {\n return input\n }\n\n propRules.map(prop => {\n const fn = rules[ prop ]\n if (type(fn) === 'Function') {\n clone[ prop ] = fn(clone[ prop ])\n } else if (type(fn) === 'Object') {\n clone[ prop ] = evolve(fn, clone[ prop ])\n }\n })\n\n return clone\n}\n\nexport default curry(evolve)\n","export default function greater(x, y){\n if(y === undefined){\n return yHolder => greater(x,yHolder)\n }\n\n return y > x\n}","function createThenable(x){\n return async function(input){\n return x(input)\n }\n}\n\nfunction ifElseAsync (condition, ifFn, elseFn) {\n if (ifFn === undefined) {\n return (ifFnHolder, elseFnHolder) => ifElseAsync(condition, ifFnHolder, elseFnHolder)\n } else if (elseFn === undefined) {\n return elseFnHolder => ifElseAsync(condition, ifFn, elseFnHolder)\n }\n \n return input => new Promise((resolve, reject) => {\n const conditionPromise = createThenable(condition)\n const ifFnPromise = createThenable(ifFn)\n const elseFnPromise = createThenable(elseFn)\n\n conditionPromise(input)\n .then(conditionResult => {\n const promised = conditionResult === true ?\n ifFnPromise :\n elseFnPromise\n\n promised(input)\n .then(resolve)\n .catch(reject)\n })\n .catch(reject)\n })\n}\n\nexport default ifElseAsync\n","import {filter} from 'rambda'\n\nexport default function intersection (a, b) {\n if (b === undefined) {\n return bHolder => intersection(a, bHolder)\n }\n\n return filter(val => b.includes(val))(a)\n}\n","const { type } = require('rambda')\n\nexport default function isPromiseLike (x) {\n return [ 'Async', 'Promise' ].includes(type(x))\n}\n","import {type, toLower, contains, test, any} from 'rambda'\n\nexport default function isValid({input, schema}){\n if (type(input) === 'Object' && type(schema) === 'Object') {\n let flag = true\n for (const requirement in schema) {\n if (flag) {\n const rule = schema[ requirement ]\n const ruleType = type(rule)\n const inputProp = input[ requirement ]\n const inputPropType = type(input[ requirement ])\n\n if (ruleType === 'Object' && rule.type === 'ArrayOfSchemas' && inputPropType === 'Array') {\n inputProp.map(val => {\n let localFlag = false\n rule.rule.map(singleRule => {\n if (isValid(val, singleRule)) {\n localFlag = true\n }\n })\n if (localFlag === false) {\n flag = false\n }\n })\n } else if (\n ruleType === 'String'\n ) {\n if (inputProp !== undefined) {\n if (toLower(inputPropType) !== rule) {\n flag = false\n }\n } else {\n flag = false\n }\n } else if (\n typeof rule === 'function'\n ) {\n if (rule(inputProp) === false) {\n flag = false\n }\n } else if (\n ruleType === 'Object' &&\n inputPropType === 'Object'\n ) {\n if (\n !isValid(inputProp, rule)\n ) {\n flag = false\n }\n } else if (\n ruleType === 'Array' &&\n inputPropType === 'String'\n ) {\n if (!contains(inputProp, rule)) {\n flag = false\n }\n } else if (\n ruleType === 'Array' &&\n inputPropType === 'Array' &&\n rule.length === 1 &&\n inputProp.length > 0\n ) {\n const arrayRuleType = type(rule[ 0 ])\n\n if (arrayRuleType === 'String') {\n const result = any(\n val => toLower(type(val)) !== rule[ 0 ],\n inputProp\n )\n\n if (result) {\n flag = false\n }\n } else if (arrayRuleType === 'Object') {\n const result = any(\n val => !isValid(val, rule[ 0 ])\n )(inputProp)\n if (result) {\n flag = false\n }\n }\n } else if (\n ruleType === 'RegExp' &&\n inputPropType === 'String'\n ) {\n if (!test(rule, inputProp)) {\n flag = false\n }\n } else {\n flag = false\n }\n }\n }\n\n return flag\n }\n\n return false\n}\n","export default function less(x, y){\n if(y === undefined){\n return yHolder => less(x,yHolder)\n }\n\n return y < x\n}","async function mapAsyncFn (fn, arr) {\n try {\n const willReturn = []\n for (const a of arr) {\n willReturn.push(await fn(a))\n }\n\n return willReturn\n } catch (err) {\n throw err\n }\n}\n\nexport default function mapAsync (fn, arr) {\n if (arr === undefined) {\n return async holder => await mapAsyncFn(fn, holder)\n }\n\n return new Promise((resolve, reject) => {\n mapAsyncFn(fn, arr).then(resolve).catch(reject)\n })\n}\n","async function mapFastAsyncFn (fn, arr) {\n try {\n const promised = arr.map(a => fn(a))\n\n return await Promise.all(promised)\n } catch (err) {\n throw err\n }\n}\n\nexport default function mapFastAsync (fn, arr) {\n if (arr === undefined) {\n return async holder => await mapFastAsyncFn(fn, holder)\n }\n\n return new Promise((resolve, reject) => {\n mapFastAsyncFn(fn, arr).then(resolve).catch(reject)\n })\n}\n","import {\n compose,\n map,\n sort,\n type,\n replace,\n take,\n} from 'rambda'\nconst cache = {}\n\nconst normalizeObject = obj => {\n const sortFn = (a, b) => a > b\n const willReturn = {}\n compose(\n map(prop => willReturn[ prop ] = obj[ prop ]),\n sort(sortFn)\n )(Object.keys(obj))\n\n return willReturn\n}\n\nconst stringify = a => {\n if (type(a) === 'String') {\n return a\n } else if ([ 'Function', 'Async' ].includes(type(a))) {\n const compacted = replace(/\\s{1,}/g, ' ', a.toString())\n\n return replace(/\\s/g, '_', take(15, compacted))\n } else if (type(a) === 'Object') {\n a = normalizeObject(a)\n }\n\n return JSON.stringify(a)\n}\n\nconst generateProp = (fn, ...inputArguments) => {\n let propString = ''\n inputArguments.map(inputArgument => {\n propString += `${ stringify(inputArgument) }_`\n })\n\n return `${ propString }${ stringify(fn) }`\n}\n\nexport default function memoize (fn, ...inputArguments) {\n if (arguments.length === 1) {\n return (...inputArgumentsHolder) => memoize(fn, ...inputArgumentsHolder)\n }\n const prop = generateProp(fn, ...inputArguments)\n if (prop in cache) {\n return cache[ prop ]\n }\n if (type(fn) === 'Async') {\n return new Promise(resolve => {\n fn(...inputArguments).then(result => {\n cache[ prop ] = result\n resolve(result)\n })\n })\n }\n const result = fn(...inputArguments)\n cache[ prop ] = result\n\n return result\n}\n","import {map, merge} from 'rambda'\n\nexport default function mergeAll (arr) {\n let willReturn = {}\n map(val => {\n willReturn = merge(willReturn, val)\n }, arr)\n\n return willReturn\n}\n","export default function omitBy (fn, obj) {\n if (arguments.length === 1) {\n return holder => omitBy(fn, holder)\n }\n\n const willReturn = {}\n for (const prop in obj) {\n if (!fn(prop, obj[ prop ])) {\n willReturn[ prop ] = obj[ prop ]\n }\n }\n\n return willReturn\n}\n","import {curry} from 'rambda'\n\nfunction onceFn (fn, context) {\n let result\n\n return function () {\n if (fn) {\n result = fn.apply(context || this, arguments)\n fn = null\n }\n\n return result\n }\n}\n\nexport default function once (fn, context) {\n if (arguments.length === 1) {\n const wrap = onceFn(fn, context)\n\n return curry(wrap)\n }\n\n return onceFn(fn, context)\n}\n","export default function pickBy (fn, obj) {\n if (arguments.length === 1) {\n return holder => pickBy(fn, holder)\n }\n\n const willReturn = {}\n for (const prop in obj) {\n if (fn(prop, obj[ prop ])) {\n willReturn[ prop ] = obj[ prop ]\n }\n }\n\n return willReturn\n}\n","import {\n type,\n map,\n} from 'rambda'\n\nfunction helper ({ condition, inputArgument, prop }) {\n return new Promise((resolve, reject) => {\n if (!(type(condition) === 'Async')) {\n return resolve({\n type : prop,\n payload : condition(inputArgument),\n })\n }\n\n condition(inputArgument)\n .then(result => {\n resolve({\n type : prop,\n payload : result,\n })\n })\n .catch(err => reject(err))\n })\n}\n\nexport default function produce (conditions, inputArgument) {\n if (arguments.length === 1) {\n return inputArgumentHolder => produce(conditions, inputArgumentHolder)\n }\n let asyncConditionsFlag = false\n for (const prop in conditions) {\n if (\n asyncConditionsFlag === false &&\n type(conditions[ prop ]) === 'Async'\n ) {\n asyncConditionsFlag = true\n }\n }\n\n if (asyncConditionsFlag === false) {\n const willReturn = {}\n for (const prop in conditions) {\n willReturn[ prop ] = conditions[ prop ](inputArgument)\n }\n\n return willReturn\n }\n const promised = []\n for (const prop in conditions) {\n const condition = conditions[ prop ]\n promised.push(helper({\n inputArgument,\n condition,\n prop,\n }))\n }\n\n return new Promise((resolve, reject) => {\n Promise.all(promised)\n .then(results => {\n const willReturn = {}\n\n map(\n result => willReturn[ result.type ] = result.payload,\n results\n )\n\n resolve(willReturn)\n })\n .catch(err => reject(err))\n })\n}\n","export default function random(min,max){\n return Math.floor(Math.random() * (max - min + 1)) + min\n}\n","import {range, length, last, split, compose} from 'rambda'\n\nexport default function rangeBy (startNum, endNum, distance) {\n if (endNum === undefined) {\n return (endNumHolder, distanceHolder) => rangeBy(startNum, endNumHolder, distanceHolder)\n } else if (distance === undefined) {\n return distanceHolder => rangeBy(startNum, endNum, distanceHolder)\n }\n\n const isInteger = !distance.toString().includes('.')\n if (startNum > endNum) {\n const startNumHolder = startNum\n startNum = endNum\n endNum = startNumHolder\n }\n const willReturn = [ startNum ]\n let valueToPush = startNum\n\n if (isInteger) {\n const loopIndexes = range(0, Math.floor((endNum - startNum) / distance))\n for (const i of loopIndexes) {\n valueToPush += distance\n willReturn.push(valueToPush)\n }\n } else {\n const decimalLength = compose(\n length,\n last,\n split('.')\n )(distance.toString())\n const loopIndexes = range(0, Math.floor((endNum - startNum) / distance))\n for (const i of loopIndexes) {\n valueToPush += distance\n willReturn.push(Number(valueToPush.toFixed(decimalLength)))\n }\n }\n\n return willReturn\n}\n","import {merge, omit} from 'rambda'\n\nexport default function renameProps (conditions, inputObject) {\n if (inputObject === undefined) {\n return inputObjectHolder => renameProps(conditions, inputObjectHolder)\n }\n const renamed = {}\n Object.keys(conditions).map(renameConditionProp => {\n if (Object.keys(inputObject).includes(renameConditionProp)) {\n renamed[ conditions[ renameConditionProp ] ] = inputObject[ renameConditionProp ]\n }\n })\n\n return merge(\n renamed,\n omit(\n Object.keys(conditions),\n inputObject\n )\n )\n}\n","export default function resolveMethod (promises) {\n return new Promise((res, rej) => {\n let counter = 0\n const props = {}\n const promisedArr = []\n for (const prop in promises) {\n props[ counter ] = prop\n promisedArr.push(promises[ prop ])\n counter++\n }\n Promise.all(promisedArr)\n .then(result => {\n const willReturn = {}\n result.map((val, key) => {\n const prop = props[ key ]\n willReturn[ prop ] = val\n })\n\n res(willReturn)\n })\n .catch(rej)\n })\n}\n","import {map} from 'rambda'\n\nconst resolveSecureWrapper = promise => new Promise(res => {\n promise.then(result => {\n res({\n payload : result,\n type : 'RESULT',\n })\n }).catch(err => {\n res({\n payload : err,\n type : 'ERROR',\n })\n })\n})\n\nasync function resolveSecure (input) {\n try {\n const promised = map(\n a => resolveSecureWrapper(a),\n input\n )\n\n return await Promise.all(promised)\n } catch (err) {\n console.log(err)\n }\n}\n\nexport default resolveSecure\n","export default function shuffle(arrayRaw){\n const array = arrayRaw.concat()\n let counter = array.length\n while (counter > 0) {\n const index = Math.floor(Math.random() * counter)\n counter--\n const temp = array[ counter ]\n array[ counter ] = array[ index ]\n array[ index ] = temp\n }\n\n return array\n}\n","import isPromiseLike from './isPromiseLike'\n\nexport default function tapAsync (fn, input) {\n if (arguments.length === 1) {\n return inputHolder => tapAsync(fn, inputHolder)\n }\n if (isPromiseLike(fn) === true) {\n return new Promise((resolve, reject) => {\n fn(input)\n .then(() => {\n resolve(input)\n })\n .catch(reject)\n })\n }\n fn(input)\n\n return input\n}\n","export default function throttle (fn, ms) {\n let wait = false\n\n return function (...input) {\n if (!wait) {\n fn.apply(undefined, input)\n wait = true\n setTimeout(() => {\n wait = false\n }, ms)\n }\n }\n}\n","import {type} from 'rambda'\n\nexport default function tryCatch(fn, input){\n const fnType = type(fn)\n if(fnType === 'Async' || fnType === 'Promise'){\n return new Promise(resolve => {\n fn(input)\n .then(resolve)\n .catch(resolve)\n })\n }\n\n try{\n return fn(input)\n }catch(err){\n return err\n }\n}","export default function when(condition, whenTrueFn){\n if(whenTrueFn === undefined){\n return whenTrueFnHolder => when(condition, whenTrueFnHolder)\n }\n\n return input => {\n if(condition(input) === true){\n return whenTrueFn(input)\n }\n return input\n }\n}\n","export default function where (conditions, obj) {\n if (obj === undefined) {\n return objHolder => where(conditions, objHolder)\n }\n let flag = true\n for (const prop in conditions) {\n const result = conditions[ prop ](obj[ prop ])\n if (flag && result === false) {\n flag = false\n }\n }\n\n return flag\n}\n","import * as R from 'rambda'\n\nimport isTypeMethod from './modules/isType'\n\nexport {default as compact} from './modules/compact'\nexport {default as composeAsync} from './modules/composeAsync'\nexport {default as debounce} from './modules/debounce'\nexport const DELAY = 'RAMBDAX_DELAY'\nexport {default as delay} from './modules/delay'\nexport {default as debug} from './modules/debug'\nexport {default as evolve} from './modules/evolve'\nexport {default as greater} from './modules/greater'\nexport {default as ifElseAsync} from './modules/ifElseAsync'\nexport {default as intersection} from './modules/intersection'\nexport const isArray = x => isTypeMethod('Array', x)\nexport const isObject = x => isTypeMethod('Object', x)\nexport const isString = x => isTypeMethod('String', x)\nexport const isType = isTypeMethod\nexport {default as isPromiseLike} from './modules/isPromiseLike'\nexport {default as isValid} from './modules/isValid'\nexport {default as less} from './modules/less'\nexport {default as mapAsync} from './modules/mapAsync'\nexport {default as mapFastAsync} from './modules/mapFastAsync'\nexport {default as memoize} from './modules/memoize'\nexport {default as mergeAll} from './modules/mergeAll'\nexport {default as omitBy} from './modules/omitBy'\nexport {default as once} from './modules/once'\nexport {default as pickBy} from './modules/pickBy'\nexport {default as produce} from './modules/produce'\nexport {default as random} from './modules/random'\nexport {default as rangeBy} from './modules/rangeBy'\nexport {default as renameProps} from './modules/renameProps'\nexport {default as resolve} from './modules/resolve'\nexport {default as resolveSecure} from './modules/resolveSecure'\nexport {default as shuffle} from './modules/shuffle'\nexport {default as tapAsync} from './modules/tapAsync'\nexport {default as throttle} from './modules/throttle'\nexport {default as tryCatch} from './modules/tryCatch'\nexport {default as when} from './modules/when'\nexport {default as where} from './modules/where'\n\n// Follows code generated by `run rambda`\nexport const always = R.always\nexport const complement = R.complement\nexport const F = R.F\nexport const identity = R.identity\nexport const not = R.not\nexport const T = R.T\nexport const trim = R.trim\nexport const add = R.add\nexport const addIndex = R.addIndex\nexport const adjust = R.adjust\nexport const all = R.all\nexport const allPass = R.allPass\nexport const anyPass = R.anyPass\nexport const any = R.any\nexport const append = R.append\nexport const both = R.both\nexport const compose = R.compose\nexport const concat = R.concat\nexport const contains = R.contains\nexport const curry = R.curry\nexport const dec = R.dec\nexport const defaultTo = R.defaultTo\nexport const divide = R.divide\nexport const drop = R.drop\nexport const dropLast = R.dropLast\nexport const either = R.either\nexport const endsWith = R.endsWith\nexport const inc = R.inc\nexport const equals = R.equals\nexport const filter = R.filter\nexport const find = R.find\nexport const findIndex = R.findIndex\nexport const flatten = R.flatten\nexport const flip = R.flip\nexport const forEach = R.forEach\nexport const has = R.has\nexport const head = R.head\nexport const ifElse = R.ifElse\nexport const is = R.is\nexport const isNil = R.isNil\nexport const includes = R.includes\nexport const indexOf = R.indexOf\nexport const init = R.init\nexport const join = R.join\nexport const lastIndexOf = R.lastIndexOf\nexport const last = R.last\nexport const length = R.length\nexport const map = R.map\nexport const match = R.match\nexport const merge = R.merge\nexport const modulo = R.modulo\nexport const multiply = R.multiply\nexport const none = R.none\nexport const omit = R.omit\nexport const partialCurry = R.partialCurry\nexport const path = R.path\nexport const pathOr = R.pathOr\nexport const pick = R.pick\nexport const pickAll = R.pickAll\nexport const pipe = R.pipe\nexport const pluck = R.pluck\nexport const prepend = R.prepend\nexport const prop = R.prop\nexport const propEq = R.propEq\nexport const range = R.range\nexport const reduce = R.reduce\nexport const reject = R.reject\nexport const repeat = R.repeat\nexport const replace = R.replace\nexport const reverse = R.reverse\nexport const sort = R.sort\nexport const sortBy = R.sortBy\nexport const split = R.split\nexport const splitEvery = R.splitEvery\nexport const startsWith = R.startsWith\nexport const subtract = R.subtract\nexport const tap = R.tap\nexport const tail = R.tail\nexport const take = R.take\nexport const takeLast = R.takeLast\nexport const test = R.test\nexport const times = R.times\nexport const toLower = R.toLower\nexport const toUpper = R.toUpper\nexport const toString = R.toString\nexport const type = R.type\nexport const uniq = R.uniq\nexport const update = R.update\nexport const values = R.values\nexport const without = R.without"],"names":["isType","xType","x","arguments","length","xHolder","type","types","compact","arr","filter","a","currentType","includes","equals","composeAsync","inputArguments","startArgument","argumentsToPass","fn","pop","err","debounce","func","ms","immediate","timeout","input","later","apply","undefined","callNow","setTimeout","delay","Promise","resolve","debug","log","exit","curry","require","evolve","rules","clone","Object","assign","propRules","keys","map","prop","greater","y","yHolder","createThenable","ifElseAsync","condition","ifFn","elseFn","ifFnHolder","elseFnHolder","reject","conditionPromise","ifFnPromise","elseFnPromise","then","conditionResult","promised","catch","intersection","b","bHolder","val","isPromiseLike","isValid","schema","flag","requirement","rule","ruleType","inputProp","inputPropType","localFlag","singleRule","toLower","contains","arrayRuleType","result","any","test","less","mapAsyncFn","willReturn","push","mapAsync","holder","mapFastAsyncFn","all","mapFastAsync","cache","normalizeObject","obj","sortFn","sort","stringify","compacted","replace","toString","take","JSON","generateProp","propString","inputArgument","memoize","inputArgumentsHolder","mergeAll","merge","omitBy","onceFn","context","once","wrap","pickBy","helper","produce","conditions","inputArgumentHolder","asyncConditionsFlag","results","payload","random","min","max","Math","floor","rangeBy","startNum","endNum","distance","endNumHolder","distanceHolder","isInteger","startNumHolder","valueToPush","loopIndexes","range","i","decimalLength","compose","last","split","Number","toFixed","renameProps","inputObject","inputObjectHolder","renamed","renameConditionProp","omit","resolveMethod","promises","res","rej","counter","props","promisedArr","key","resolveSecureWrapper","promise","resolveSecure","shuffle","arrayRaw","array","concat","index","temp","tapAsync","inputHolder","throttle","wait","tryCatch","fnType","when","whenTrueFn","whenTrueFnHolder","where","objHolder","DELAY","isArray","isTypeMethod","isObject","isString","always","R","complement","F","identity","not","T","trim","add","addIndex","adjust","allPass","anyPass","append","both","dec","defaultTo","divide","drop","dropLast","either","endsWith","inc","find","findIndex","flatten","flip","forEach","has","head","ifElse","is","isNil","indexOf","init","join","lastIndexOf","match","modulo","multiply","none","partialCurry","path","pathOr","pick","pickAll","pipe","pluck","prepend","propEq","reduce","repeat","reverse","sortBy","splitEvery","startsWith","subtract","tap","tail","takeLast","times","toUpper","uniq","update","values","without"],"mappings":";;AAEe,SAASA,QAAT,CAAiBC,KAAjB,EAAwBC,CAAxB,EAA2B;MACpCC,UAAUC,MAAV,KAAqB,CAAzB,EAA4B;WACnBC,WAAWL,SAAOC,KAAP,EAAcI,OAAd,CAAlB;;;SAGKC,KAAKJ,CAAL,MAAYD,KAAnB;;;ACLF,MAAMM,QAAQ,CACZ,MADY,EAEZ,WAFY,EAGZ,QAHY,CAAd;;AAMA,AAAe,SAASC,OAAT,CAAkBC,GAAlB,EAAuB;;SAE7BC,OACLC,KAAK;UACGC,cAAcN,KAAKK,CAAL,CAApB;QACIJ,MAAMM,QAAN,CAAeD,WAAf,CAAJ,EAAiC;aACxB,KAAP;;QAEEA,gBAAgB,QAApB,EAA8B;aACrB,CAACE,OAAOH,CAAP,EAAU,EAAV,CAAR;;;WAGKA,EAAEP,MAAF,KAAa,CAApB;GAVG,EAYLK,GAZK,CAAP;;;ACRa,SAASM,YAAT,CAAsB,GAAGC,cAAzB,EAAwC;MACjD;WACK,gBAAgBC,aAAhB,EAA+B;UAChCC,kBAAkBD,aAAtB;;aAEOD,eAAeZ,MAAf,KAA0B,CAAjC,EAAoC;cAC5Be,KAAKH,eAAeI,GAAf,EAAX;YACId,KAAKa,EAAL,MAAa,OAAb,IAAwBb,KAAKa,EAAL,MAAa,SAAzC,EAAoD;4BAChC,MAAMA,GAAGD,eAAH,CAAxB;SADF,MAEO;4BACaC,GAAGD,eAAH,CAAlB;;;;aAIGA,eAAP;KAZF;GADF,CAeE,OAAOG,GAAP,EAAY;UACNA,GAAN;;;;ACnBW,SAASC,QAAT,CAAmBC,IAAnB,EAAyBC,EAAzB,EAA6BC,YAAY,KAAzC,EAAgD;MACzDC,OAAJ;;SAEO,UAAU,GAAGC,KAAb,EAAoB;UACnBC,QAAQ,YAAY;gBACd,IAAV;UACI,CAACH,SAAL,EAAgB;aACTI,KAAL,CAAWC,SAAX,EAAsBH,KAAtB;;KAHJ;UAMMI,UAAUN,aAAa,CAACC,OAA9B;iBACaA,OAAb;cACUM,WAAWJ,KAAX,EAAkBJ,EAAlB,CAAV;QACIO,OAAJ,EAAa;WACNF,KAAL,CAAWC,SAAX,EAAsBH,KAAtB;;GAXJ;;;ACHa,SAASM,KAAT,CAAeT,EAAf,EAAkB;;SAExB,IAAIU,OAAJ,CAAYC,WAAW;eAClB,MAAM;cACP,eAAR;KADF,EAEGX,EAFH;GADM,CAAP;;;ACFa,SAASY,KAAT,CAAe,GAAGT,KAAlB,EAAwB;UAC7BU,GAAR,CAAY,GAAGV,KAAf;UACQW,IAAR;;;ACFF,MAAM,QAAEhC,MAAF,SAAQiC,OAAR,UAAe7B,QAAf,KAA0B8B,QAAQ,QAAR,CAAhC;;AAEA,SAASC,MAAT,CAAiBC,KAAjB,EAAwBf,KAAxB,EAA+B;QACvBgB,QAAQC,OAAOC,MAAP,CAAc,EAAd,EAAkBlB,KAAlB,CAAd;QACMmB,YAAYpC,SAChBR,KAAKyC,MAAOzC,CAAP,MAAe4B,SADJ,EAEhBc,OAAOG,IAAP,CAAYL,KAAZ,CAFgB,CAAlB;;MAIII,UAAU1C,MAAV,KAAqB,CAAzB,EAA4B;WACnBuB,KAAP;;;YAGQqB,GAAV,CAAcC,WAAQ;UACd9B,KAAKuB,MAAOO,OAAP,CAAX;QACI3C,OAAKa,EAAL,MAAa,UAAjB,EAA6B;YACpB8B,OAAP,IAAgB9B,GAAGwB,MAAOM,OAAP,CAAH,CAAhB;KADF,MAEO,IAAI3C,OAAKa,EAAL,MAAa,QAAjB,EAA2B;YACzB8B,OAAP,IAAgBR,OAAOtB,EAAP,EAAWwB,MAAOM,OAAP,CAAX,CAAhB;;GALJ;;SASON,KAAP;;;AAGF,eAAeJ,QAAME,MAAN,CAAf;;ACxBe,SAASS,OAAT,CAAiBhD,CAAjB,EAAoBiD,CAApB,EAAsB;MAChCA,MAAMrB,SAAT,EAAmB;WACVsB,WAAWF,QAAQhD,CAAR,EAAUkD,OAAV,CAAlB;;;SAGKD,IAAIjD,CAAX;;;ACLF,SAASmD,cAAT,CAAwBnD,CAAxB,EAA0B;SACjB,gBAAeyB,KAAf,EAAqB;WACnBzB,EAAEyB,KAAF,CAAP;GADF;;;AAKF,SAAS2B,WAAT,CAAsBC,SAAtB,EAAiCC,IAAjC,EAAuCC,MAAvC,EAA+C;MACzCD,SAAS1B,SAAb,EAAwB;WACf,CAAC4B,UAAD,EAAaC,YAAb,KAA8BL,YAAYC,SAAZ,EAAuBG,UAAvB,EAAmCC,YAAnC,CAArC;GADF,MAEO,IAAIF,WAAW3B,SAAf,EAA0B;WACxB6B,gBAAgBL,YAAYC,SAAZ,EAAuBC,IAAvB,EAA6BG,YAA7B,CAAvB;;;SAGKhC,SAAS,IAAIO,OAAJ,CAAY,CAACC,OAAD,EAAUyB,SAAV,KAAqB;UACzCC,mBAAmBR,eAAeE,SAAf,CAAzB;UACMO,cAAcT,eAAeG,IAAf,CAApB;UACMO,gBAAgBV,eAAeI,MAAf,CAAtB;;qBAEiB9B,KAAjB,EACGqC,IADH,CACQC,mBAAmB;YACjBC,WAAWD,oBAAoB,IAApB,GACfH,WADe,GAEfC,aAFF;;eAISpC,KAAT,EACGqC,IADH,CACQ7B,OADR,EAEGgC,KAFH,CAESP,SAFT;KANJ,EAUGO,KAVH,CAUSP,SAVT;GALc,CAAhB;;;ACXa,SAASQ,YAAT,CAAuBzD,CAAvB,EAA0B0D,CAA1B,EAA6B;MACtCA,MAAMvC,SAAV,EAAqB;WACZwC,WAAWF,aAAazD,CAAb,EAAgB2D,OAAhB,CAAlB;;;SAGK5D,OAAO6D,OAAOF,EAAExD,QAAF,CAAW0D,GAAX,CAAd,EAA+B5D,CAA/B,CAAP;;;ACPF,MAAM,QAAEL,MAAF,KAAWkC,QAAQ,QAAR,CAAjB;;AAEA,AAAe,SAASgC,aAAT,CAAwBtE,CAAxB,EAA2B;SACjC,CAAE,OAAF,EAAW,SAAX,EAAuBW,QAAvB,CAAgCP,OAAKJ,CAAL,CAAhC,CAAP;;;ACDa,SAASuE,OAAT,CAAiB,EAAC9C,KAAD,EAAQ+C,MAAR,EAAjB,EAAiC;MAC1CpE,KAAKqB,KAAL,MAAgB,QAAhB,IAA4BrB,KAAKoE,MAAL,MAAiB,QAAjD,EAA2D;QACrDC,OAAO,IAAX;SACK,MAAMC,WAAX,IAA0BF,MAA1B,EAAkC;UAC5BC,IAAJ,EAAU;cACFE,OAAOH,OAAQE,WAAR,CAAb;cACME,WAAWxE,KAAKuE,IAAL,CAAjB;cACME,YAAYpD,MAAOiD,WAAP,CAAlB;cACMI,gBAAgB1E,KAAKqB,MAAOiD,WAAP,CAAL,CAAtB;;YAEIE,aAAa,QAAb,IAAyBD,KAAKvE,IAAL,KAAc,gBAAvC,IAA2D0E,kBAAkB,OAAjF,EAA0F;oBAC9EhC,GAAV,CAAcuB,OAAO;gBACfU,YAAY,KAAhB;iBACKJ,IAAL,CAAU7B,GAAV,CAAckC,cAAc;kBACtBT,QAAQF,GAAR,EAAaW,UAAb,CAAJ,EAA8B;4BAChB,IAAZ;;aAFJ;gBAKID,cAAc,KAAlB,EAAyB;qBAChB,KAAP;;WARJ;SADF,MAYO,IACLH,aAAa,QADR,EAEL;cACIC,cAAcjD,SAAlB,EAA6B;gBACvBqD,QAAQH,aAAR,MAA2BH,IAA/B,EAAqC;qBAC5B,KAAP;;WAFJ,MAIO;mBACE,KAAP;;SARG,MAUA,IACL,OAAOA,IAAP,KAAgB,UADX,EAEL;cACIA,KAAKE,SAAL,MAAoB,KAAxB,EAA+B;mBACtB,KAAP;;SAJG,MAMA,IACLD,aAAa,QAAb,IACAE,kBAAkB,QAFb,EAGL;cAEE,CAACP,QAAQM,SAAR,EAAmBF,IAAnB,CADH,EAEE;mBACO,KAAP;;SAPG,MASA,IACLC,aAAa,OAAb,IACAE,kBAAkB,QAFb,EAGL;cACI,CAACI,SAASL,SAAT,EAAoBF,IAApB,CAAL,EAAgC;mBACvB,KAAP;;SALG,MAOA,IACLC,aAAa,OAAb,IACAE,kBAAkB,OADlB,IAEAH,KAAKzE,MAAL,KAAgB,CAFhB,IAGA2E,UAAU3E,MAAV,GAAmB,CAJd,EAKL;gBACMiF,gBAAgB/E,KAAKuE,KAAM,CAAN,CAAL,CAAtB;;cAEIQ,kBAAkB,QAAtB,EAAgC;kBACxBC,SAASC,IACbhB,OAAOY,QAAQ7E,KAAKiE,GAAL,CAAR,MAAuBM,KAAM,CAAN,CADjB,EAEbE,SAFa,CAAf;;gBAKIO,MAAJ,EAAY;qBACH,KAAP;;WAPJ,MASO,IAAID,kBAAkB,QAAtB,EAAgC;kBAC/BC,SAASC,IACbhB,OAAO,CAACE,QAAQF,GAAR,EAAaM,KAAM,CAAN,CAAb,CADK,EAEbE,SAFa,CAAf;gBAGIO,MAAJ,EAAY;qBACH,KAAP;;;SAtBC,MAyBA,IACLR,aAAa,QAAb,IACAE,kBAAkB,QAFb,EAGL;cACI,CAACQ,KAAKX,IAAL,EAAWE,SAAX,CAAL,EAA4B;mBACnB,KAAP;;SALG,MAOA;iBACE,KAAP;;;;;WAKCJ,IAAP;;;SAGK,KAAP;;;ACjGa,SAASc,IAAT,CAAcvF,CAAd,EAAiBiD,CAAjB,EAAmB;MAC7BA,MAAMrB,SAAT,EAAmB;WACVsB,WAAWqC,KAAKvF,CAAL,EAAOkD,OAAP,CAAlB;;;SAGKD,IAAIjD,CAAX;;;ACLF,eAAewF,UAAf,CAA2BvE,EAA3B,EAA+BV,GAA/B,EAAoC;MAC9B;UACIkF,aAAa,EAAnB;SACK,MAAMhF,CAAX,IAAgBF,GAAhB,EAAqB;iBACRmF,IAAX,EAAgB,MAAMzE,GAAGR,CAAH,CAAtB;;;WAGKgF,UAAP;GANF,CAOE,OAAOtE,GAAP,EAAY;UACNA,GAAN;;;;AAIJ,AAAe,SAASwE,QAAT,CAAmB1E,EAAnB,EAAuBV,GAAvB,EAA4B;MACrCA,QAAQqB,SAAZ,EAAuB;WACd,MAAMgE,MAAN,IAAgB,MAAMJ,WAAWvE,EAAX,EAAe2E,MAAf,CAA7B;;;SAGK,IAAI5D,OAAJ,CAAY,CAACC,OAAD,EAAUyB,SAAV,KAAqB;eAC3BzC,EAAX,EAAeV,GAAf,EAAoBuD,IAApB,CAAyB7B,OAAzB,EAAkCgC,KAAlC,CAAwCP,SAAxC;GADK,CAAP;;;AClBF,eAAemC,cAAf,CAA+B5E,EAA/B,EAAmCV,GAAnC,EAAwC;MAClC;UACIyD,WAAWzD,IAAIuC,GAAJ,CAAQrC,KAAKQ,GAAGR,CAAH,CAAb,CAAjB;;WAEO,MAAMuB,QAAQ8D,GAAR,CAAY9B,QAAZ,CAAb;GAHF,CAIE,OAAO7C,GAAP,EAAY;UACNA,GAAN;;;;AAIJ,AAAe,SAAS4E,YAAT,CAAuB9E,EAAvB,EAA2BV,GAA3B,EAAgC;MACzCA,QAAQqB,SAAZ,EAAuB;WACd,MAAMgE,MAAN,IAAgB,MAAMC,eAAe5E,EAAf,EAAmB2E,MAAnB,CAA7B;;;SAGK,IAAI5D,OAAJ,CAAY,CAACC,OAAD,EAAUyB,SAAV,KAAqB;mBACvBzC,EAAf,EAAmBV,GAAnB,EAAwBuD,IAAxB,CAA6B7B,OAA7B,EAAsCgC,KAAtC,CAA4CP,SAA5C;GADK,CAAP;;;ACPF,MAAMsC,QAAQ,EAAd;;AAEA,MAAMC,kBAAkBC,OAAO;QACvBC,SAAS,CAAC1F,CAAD,EAAI0D,CAAJ,KAAU1D,IAAI0D,CAA7B;QACMsB,aAAa,EAAnB;UAEE3C,IAAIC,WAAQ0C,WAAY1C,OAAZ,IAAqBmD,IAAKnD,OAAL,CAAjC,CADF,EAEEqD,KAAKD,MAAL,CAFF,EAGEzD,OAAOG,IAAP,CAAYqD,GAAZ,CAHF;;SAKOT,UAAP;CARF;;AAWA,MAAMY,YAAY5F,KAAK;MACjBL,KAAKK,CAAL,MAAY,QAAhB,EAA0B;WACjBA,CAAP;GADF,MAEO,IAAI,CAAE,UAAF,EAAc,OAAd,EAAwBE,QAAxB,CAAiCP,KAAKK,CAAL,CAAjC,CAAJ,EAA+C;UAC9C6F,YAAYC,QAAQ,SAAR,EAAmB,GAAnB,EAAwB9F,EAAE+F,QAAF,EAAxB,CAAlB;;WAEOD,QAAQ,KAAR,EAAe,GAAf,EAAoBE,KAAK,EAAL,EAASH,SAAT,CAApB,CAAP;GAHK,MAIA,IAAIlG,KAAKK,CAAL,MAAY,QAAhB,EAA0B;QAC3BwF,gBAAgBxF,CAAhB,CAAJ;;;SAGKiG,KAAKL,SAAL,CAAe5F,CAAf,CAAP;CAXF;;AAcA,MAAMkG,eAAe,CAAC1F,EAAD,EAAK,GAAGH,cAAR,KAA2B;MAC1C8F,aAAa,EAAjB;iBACe9D,GAAf,CAAmB+D,iBAAiB;kBACnB,GAAGR,UAAUQ,aAAV,CAA0B,GAA5C;GADF;;SAIQ,GAAGD,UAAY,GAAGP,UAAUpF,EAAV,CAAe,EAAzC;CANF;;AASA,AAAe,SAAS6F,OAAT,CAAkB7F,EAAlB,EAAsB,GAAGH,cAAzB,EAAyC;MAClDb,UAAUC,MAAV,KAAqB,CAAzB,EAA4B;WACnB,CAAC,GAAG6G,oBAAJ,KAA6BD,QAAQ7F,EAAR,EAAY,GAAG8F,oBAAf,CAApC;;QAEIhE,UAAO4D,aAAa1F,EAAb,EAAiB,GAAGH,cAApB,CAAb;MACIiC,WAAQiD,KAAZ,EAAmB;WACVA,MAAOjD,OAAP,CAAP;;MAEE3C,KAAKa,EAAL,MAAa,OAAjB,EAA0B;WACjB,IAAIe,OAAJ,CAAYC,WAAW;SACzB,GAAGnB,cAAN,EAAsBgD,IAAtB,CAA2BsB,UAAU;cAC5BrC,OAAP,IAAgBqC,MAAhB;gBACQA,MAAR;OAFF;KADK,CAAP;;QAOIA,SAASnE,GAAG,GAAGH,cAAN,CAAf;QACOiC,OAAP,IAAgBqC,MAAhB;;SAEOA,MAAP;;;AC7Da,SAAS4B,QAAT,CAAmBzG,GAAnB,EAAwB;MACjCkF,aAAa,EAAjB;MACIpB,OAAO;iBACI4C,MAAMxB,UAAN,EAAkBpB,GAAlB,CAAb;GADF,EAEG9D,GAFH;;SAIOkF,UAAP;;;ACRa,SAASyB,MAAT,CAAiBjG,EAAjB,EAAqBiF,GAArB,EAA0B;MACnCjG,UAAUC,MAAV,KAAqB,CAAzB,EAA4B;WACnB0F,UAAUsB,OAAOjG,EAAP,EAAW2E,MAAX,CAAjB;;;QAGIH,aAAa,EAAnB;OACK,MAAM1C,OAAX,IAAmBmD,GAAnB,EAAwB;QAClB,CAACjF,GAAG8B,OAAH,EAASmD,IAAKnD,OAAL,CAAT,CAAL,EAA4B;iBACdA,OAAZ,IAAqBmD,IAAKnD,OAAL,CAArB;;;;SAIG0C,UAAP;;;ACVF,SAAS0B,MAAT,CAAiBlG,EAAjB,EAAqBmG,OAArB,EAA8B;MACxBhC,MAAJ;;SAEO,YAAY;QACbnE,EAAJ,EAAQ;eACGA,GAAGU,KAAH,CAASyF,WAAW,IAApB,EAA0BnH,SAA1B,CAAT;WACK,IAAL;;;WAGKmF,MAAP;GANF;;;AAUF,AAAe,SAASiC,IAAT,CAAepG,EAAf,EAAmBmG,OAAnB,EAA4B;MACrCnH,UAAUC,MAAV,KAAqB,CAAzB,EAA4B;UACpBoH,OAAOH,OAAOlG,EAAP,EAAWmG,OAAX,CAAb;;WAEO/E,MAAMiF,IAAN,CAAP;;;SAGKH,OAAOlG,EAAP,EAAWmG,OAAX,CAAP;;;ACtBa,SAASG,MAAT,CAAiBtG,EAAjB,EAAqBiF,GAArB,EAA0B;MACnCjG,UAAUC,MAAV,KAAqB,CAAzB,EAA4B;WACnB0F,UAAU2B,OAAOtG,EAAP,EAAW2E,MAAX,CAAjB;;;QAGIH,aAAa,EAAnB;OACK,MAAM1C,OAAX,IAAmBmD,GAAnB,EAAwB;QAClBjF,GAAG8B,OAAH,EAASmD,IAAKnD,OAAL,CAAT,CAAJ,EAA2B;iBACbA,OAAZ,IAAqBmD,IAAKnD,OAAL,CAArB;;;;SAIG0C,UAAP;;;ACPF,SAAS+B,MAAT,CAAiB,EAAEnE,SAAF,EAAawD,aAAb,QAA4B9D,OAA5B,EAAjB,EAAqD;SAC5C,IAAIf,OAAJ,CAAY,CAACC,OAAD,EAAUyB,SAAV,KAAqB;QAClC,EAAEtD,KAAKiD,SAAL,MAAoB,OAAtB,CAAJ,EAAoC;aAC3BpB,QAAQ;cACHc,OADG;iBAEHM,UAAUwD,aAAV;OAFL,CAAP;;;cAMQA,aAAV,EACG/C,IADH,CACQsB,UAAU;cACN;cACIrC,OADJ;iBAEIqC;OAFZ;KAFJ,EAOGnB,KAPH,CAOS9C,OAAOuC,UAAOvC,GAAP,CAPhB;GARK,CAAP;;;AAmBF,AAAe,SAASsG,OAAT,CAAkBC,UAAlB,EAA8Bb,aAA9B,EAA6C;MACtD5G,UAAUC,MAAV,KAAqB,CAAzB,EAA4B;WACnByH,uBAAuBF,QAAQC,UAAR,EAAoBC,mBAApB,CAA9B;;MAEEC,sBAAsB,KAA1B;OACK,MAAM7E,OAAX,IAAmB2E,UAAnB,EAA+B;QAE3BE,wBAAwB,KAAxB,IACFxH,KAAKsH,WAAY3E,OAAZ,CAAL,MAA6B,OAF7B,EAGE;4BACsB,IAAtB;;;;MAIA6E,wBAAwB,KAA5B,EAAmC;UAC3BnC,aAAa,EAAnB;SACK,MAAM1C,OAAX,IAAmB2E,UAAnB,EAA+B;iBACjB3E,OAAZ,IAAqB2E,WAAY3E,OAAZ,EAAmB8D,aAAnB,CAArB;;;WAGKpB,UAAP;;QAEIzB,WAAW,EAAjB;OACK,MAAMjB,OAAX,IAAmB2E,UAAnB,EAA+B;UACvBrE,YAAYqE,WAAY3E,OAAZ,CAAlB;aACS2C,IAAT,CAAc8B,OAAO;mBAAA;eAAA;;KAAP,CAAd;;;SAOK,IAAIxF,OAAJ,CAAY,CAACC,OAAD,EAAUyB,SAAV,KAAqB;YAC9BoC,GAAR,CAAY9B,QAAZ,EACGF,IADH,CACQ+D,WAAW;YACTpC,aAAa,EAAnB;;UAGEL,UAAUK,WAAYL,OAAOhF,IAAnB,IAA4BgF,OAAO0C,OAD/C,EAEED,OAFF;;cAKQpC,UAAR;KATJ,EAWGxB,KAXH,CAWS9C,OAAOuC,UAAOvC,GAAP,CAXhB;GADK,CAAP;;;ACzDa,SAAS4G,MAAT,CAAgBC,GAAhB,EAAoBC,GAApB,EAAwB;SAC9BC,KAAKC,KAAL,CAAWD,KAAKH,MAAL,MAAiBE,MAAMD,GAAN,GAAY,CAA7B,CAAX,IAA8CA,GAArD;;;ACCa,SAASI,OAAT,CAAkBC,QAAlB,EAA4BC,MAA5B,EAAoCC,QAApC,EAA8C;MACvDD,WAAW1G,SAAf,EAA0B;WACjB,CAAC4G,YAAD,EAAeC,cAAf,KAAkCL,QAAQC,QAAR,EAAkBG,YAAlB,EAAgCC,cAAhC,CAAzC;GADF,MAEO,IAAIF,aAAa3G,SAAjB,EAA4B;WAC1B6G,kBAAkBL,QAAQC,QAAR,EAAkBC,MAAlB,EAA0BG,cAA1B,CAAzB;;;QAGIC,YAAY,CAACH,SAAS/B,QAAT,GAAoB7F,QAApB,CAA6B,GAA7B,CAAnB;MACI0H,WAAWC,MAAf,EAAuB;UACfK,iBAAiBN,QAAvB;eACWC,MAAX;aACSK,cAAT;;QAEIlD,aAAa,CAAE4C,QAAF,CAAnB;MACIO,cAAcP,QAAlB;;MAEIK,SAAJ,EAAe;UACPG,cAAcC,MAAM,CAAN,EAASZ,KAAKC,KAAL,CAAW,CAACG,SAASD,QAAV,IAAsBE,QAAjC,CAAT,CAApB;SACK,MAAMQ,CAAX,IAAgBF,WAAhB,EAA6B;qBACZN,QAAf;iBACW7C,IAAX,CAAgBkD,WAAhB;;GAJJ,MAMO;UACCI,gBAAgBC,QACpB/I,MADoB,EAEpBgJ,IAFoB,EAGpBC,MAAM,GAAN,CAHoB,EAIpBZ,SAAS/B,QAAT,EAJoB,CAAtB;UAKMqC,cAAcC,MAAM,CAAN,EAASZ,KAAKC,KAAL,CAAW,CAACG,SAASD,QAAV,IAAsBE,QAAjC,CAAT,CAApB;SACK,MAAMQ,CAAX,IAAgBF,WAAhB,EAA6B;qBACZN,QAAf;iBACW7C,IAAX,CAAgB0D,OAAOR,YAAYS,OAAZ,CAAoBL,aAApB,CAAP,CAAhB;;;;SAIGvD,UAAP;;;ACnCa,SAAS6D,WAAT,CAAsB5B,UAAtB,EAAkC6B,WAAlC,EAA+C;MACxDA,gBAAgB3H,SAApB,EAA+B;WACtB4H,qBAAqBF,YAAY5B,UAAZ,EAAwB8B,iBAAxB,CAA5B;;QAEIC,UAAU,EAAhB;SACO5G,IAAP,CAAY6E,UAAZ,EAAwB5E,GAAxB,CAA4B4G,uBAAuB;QAC7ChH,OAAOG,IAAP,CAAY0G,WAAZ,EAAyB5I,QAAzB,CAAkC+I,mBAAlC,CAAJ,EAA4D;cACjDhC,WAAYgC,mBAAZ,CAAT,IAA+CH,YAAaG,mBAAb,CAA/C;;GAFJ;;SAMOzC,MACLwC,OADK,EAELE,KACEjH,OAAOG,IAAP,CAAY6E,UAAZ,CADF,EAEE6B,WAFF,CAFK,CAAP;;;ACba,SAASK,aAAT,CAAwBC,QAAxB,EAAkC;SACxC,IAAI7H,OAAJ,CAAY,CAAC8H,GAAD,EAAMC,GAAN,KAAc;QAC3BC,UAAU,CAAd;UACMC,QAAQ,EAAd;UACMC,cAAc,EAApB;SACK,MAAMnH,OAAX,IAAmB8G,QAAnB,EAA6B;YACpBG,OAAP,IAAmBjH,OAAnB;kBACY2C,IAAZ,CAAiBmE,SAAU9G,OAAV,CAAjB;;;YAGM+C,GAAR,CAAYoE,WAAZ,EACGpG,IADH,CACQsB,UAAU;YACRK,aAAa,EAAnB;aACO3C,GAAP,CAAW,CAACuB,GAAD,EAAM8F,GAAN,KAAc;cACjBpH,UAAOkH,MAAOE,GAAP,CAAb;mBACYpH,OAAZ,IAAqBsB,GAArB;OAFF;;UAKIoB,UAAJ;KARJ,EAUGxB,KAVH,CAUS8F,GAVT;GATK,CAAP;;;ACCF,MAAMK,uBAAuBC,WAAW,IAAIrI,OAAJ,CAAY8H,OAAO;UACjDhG,IAAR,CAAasB,UAAU;QACjB;eACQA,MADR;YAEQ;KAFZ;GADF,EAKGnB,KALH,CAKS9C,OAAO;QACV;eACQA,GADR;YAEQ;KAFZ;GANF;CADsC,CAAxC;;AAcA,eAAemJ,aAAf,CAA8B7I,KAA9B,EAAqC;MAC/B;UACIuC,WAAWlB,IACfrC,KAAK2J,qBAAqB3J,CAArB,CADU,EAEfgB,KAFe,CAAjB;;WAKO,MAAMO,QAAQ8D,GAAR,CAAY9B,QAAZ,CAAb;GANF,CAOE,OAAO7C,GAAP,EAAY;YACJgB,GAAR,CAAYhB,GAAZ;;;;ACzBW,SAASoJ,OAAT,CAAiBC,QAAjB,EAA0B;QACjCC,QAAQD,SAASE,MAAT,EAAd;MACIV,UAAUS,MAAMvK,MAApB;SACO8J,UAAU,CAAjB,EAAoB;UACZW,QAAQzC,KAAKC,KAAL,CAAWD,KAAKH,MAAL,KAAgBiC,OAA3B,CAAd;;UAEMY,OAAOH,MAAOT,OAAP,CAAb;UACOA,OAAP,IAAmBS,MAAOE,KAAP,CAAnB;UACOA,KAAP,IAAiBC,IAAjB;;;SAGKH,KAAP;;;ACTa,SAASI,QAAT,CAAmB5J,EAAnB,EAAuBQ,KAAvB,EAA8B;MACvCxB,UAAUC,MAAV,KAAqB,CAAzB,EAA4B;WACnB4K,eAAeD,SAAS5J,EAAT,EAAa6J,WAAb,CAAtB;;MAEExG,cAAcrD,EAAd,MAAsB,IAA1B,EAAgC;WACvB,IAAIe,OAAJ,CAAY,CAACC,OAAD,EAAUyB,SAAV,KAAqB;SACnCjC,KAAH,EACGqC,IADH,CACQ,MAAM;gBACFrC,KAAR;OAFJ,EAIGwC,KAJH,CAISP,SAJT;KADK,CAAP;;KAQCjC,KAAH;;SAEOA,KAAP;;;ACjBa,SAASsJ,QAAT,CAAmB9J,EAAnB,EAAuBK,EAAvB,EAA2B;MACpC0J,OAAO,KAAX;;SAEO,UAAU,GAAGvJ,KAAb,EAAoB;QACrB,CAACuJ,IAAL,EAAW;SACNrJ,KAAH,CAASC,SAAT,EAAoBH,KAApB;aACO,IAAP;iBACW,MAAM;eACR,KAAP;OADF,EAEGH,EAFH;;GAJJ;;;ACDa,SAAS2J,QAAT,CAAkBhK,EAAlB,EAAsBQ,KAAtB,EAA4B;QACnCyJ,SAAS9K,KAAKa,EAAL,CAAf;MACGiK,WAAW,OAAX,IAAsBA,WAAW,SAApC,EAA8C;WACrC,IAAIlJ,OAAJ,CAAYC,WAAW;SACzBR,KAAH,EACGqC,IADH,CACQ7B,OADR,EAEGgC,KAFH,CAEShC,OAFT;KADK,CAAP;;;MAOC;WACMhB,GAAGQ,KAAH,CAAP;GADF,CAEC,OAAMN,GAAN,EAAU;WACFA,GAAP;;;;ACfW,SAASgK,IAAT,CAAc9H,SAAd,EAAyB+H,UAAzB,EAAoC;MAC9CA,eAAexJ,SAAlB,EAA4B;WACnByJ,oBAAoBF,KAAK9H,SAAL,EAAgBgI,gBAAhB,CAA3B;;;SAGK5J,SAAS;QACX4B,UAAU5B,KAAV,MAAqB,IAAxB,EAA6B;aACpB2J,WAAW3J,KAAX,CAAP;;WAEKA,KAAP;GAJF;;;ACLa,SAAS6J,KAAT,CAAgB5D,UAAhB,EAA4BxB,GAA5B,EAAiC;MAC1CA,QAAQtE,SAAZ,EAAuB;WACd2J,aAAaD,MAAM5D,UAAN,EAAkB6D,SAAlB,CAApB;;MAEE9G,OAAO,IAAX;OACK,MAAM1B,OAAX,IAAmB2E,UAAnB,EAA+B;UACvBtC,SAASsC,WAAY3E,OAAZ,EAAmBmD,IAAKnD,OAAL,CAAnB,CAAf;QACI0B,QAAQW,WAAW,KAAvB,EAA8B;aACrB,KAAP;;;;SAIGX,IAAP;;;ACLK,MAAM+G,QAAQ,eAAd;AACP,AAMO,MAAMC,UAAUzL,KAAK0L,SAAa,OAAb,EAAsB1L,CAAtB,CAArB;AACP,AAAO,MAAM2L,WAAW3L,KAAK0L,SAAa,QAAb,EAAuB1L,CAAvB,CAAtB;AACP,AAAO,MAAM4L,WAAW5L,KAAK0L,SAAa,QAAb,EAAuB1L,CAAvB,CAAtB;AACP,AAAO,MAAMF,SAAS4L,QAAf;AACP,AAuBA;AACA,AAAO,MAAMG,WAASC,MAAf;AACP,AAAO,MAAMC,eAAaD,UAAnB;AACP,AAAO,MAAME,MAAIF,CAAV;AACP,AAAO,MAAMG,aAAWH,QAAjB;AACP,AAAO,MAAMI,QAAMJ,GAAZ;AACP,AAAO,MAAMK,MAAIL,CAAV;AACP,AAAO,MAAMM,SAAON,IAAb;AACP,AAAO,MAAMO,QAAMP,GAAZ;AACP,AAAO,MAAMQ,aAAWR,QAAjB;AACP,AAAO,MAAMS,WAAST,MAAf;AACP,AAAO,MAAMhG,QAAMgG,GAAZ;AACP,AAAO,MAAMU,YAAUV,OAAhB;AACP,AAAO,MAAMW,YAAUX,OAAhB;AACP,AAAO,MAAMzG,QAAMyG,GAAZ;AACP,AAAO,MAAMY,WAASZ,MAAf;AACP,AAAO,MAAMa,SAAOb,IAAb;AACP,AAAO,MAAM7C,YAAU6C,OAAhB;AACP,AAAO,MAAMpB,WAASoB,MAAf;AACP,AAAO,MAAM5G,aAAW4G,QAAjB;AACP,AAAO,MAAMzJ,UAAQyJ,KAAd;AACP,AAAO,MAAMc,QAAMd,GAAZ;AACP,AAAO,MAAMe,cAAYf,SAAlB;AACP,AAAO,MAAMgB,WAAShB,MAAf;AACP,AAAO,MAAMiB,SAAOjB,IAAb;AACP,AAAO,MAAMkB,aAAWlB,QAAjB;AACP,AAAO,MAAMmB,WAASnB,MAAf;AACP,AAAO,MAAMoB,aAAWpB,QAAjB;AACP,AAAO,MAAMqB,QAAMrB,GAAZ;AACP,AAAO,MAAMlL,WAASkL,MAAf;AACP,AAAO,MAAMtL,WAASsL,MAAf;AACP,AAAO,MAAMsB,SAAOtB,IAAb;AACP,AAAO,MAAMuB,cAAYvB,SAAlB;AACP,AAAO,MAAMwB,YAAUxB,OAAhB;AACP,AAAO,MAAMyB,SAAOzB,IAAb;AACP,AAAO,MAAM0B,YAAU1B,OAAhB;AACP,AAAO,MAAM2B,QAAM3B,GAAZ;AACP,AAAO,MAAM4B,SAAO5B,IAAb;AACP,AAAO,MAAM6B,WAAS7B,MAAf;AACP,AAAO,MAAM8B,OAAK9B,EAAX;AACP,AAAO,MAAM+B,UAAQ/B,KAAd;AACP,AAAO,MAAMnL,aAAWmL,QAAjB;AACP,AAAO,MAAMgC,YAAUhC,OAAhB;AACP,AAAO,MAAMiC,SAAOjC,IAAb;AACP,AAAO,MAAMkC,SAAOlC,IAAb;AACP,AAAO,MAAMmC,gBAAcnC,WAApB;AACP,AAAO,MAAM5C,SAAO4C,IAAb;AACP,AAAO,MAAM5L,WAAS4L,MAAf;AACP,AAAO,MAAMhJ,QAAMgJ,GAAZ;AACP,AAAO,MAAMoC,UAAQpC,KAAd;AACP,AAAO,MAAM7E,UAAQ6E,KAAd;AACP,AAAO,MAAMqC,WAASrC,MAAf;AACP,AAAO,MAAMsC,aAAWtC,QAAjB;AACP,AAAO,MAAMuC,SAAOvC,IAAb;AACP,AAAO,MAAMnC,SAAOmC,IAAb;AACP,AAAO,MAAMwC,iBAAexC,YAArB;AACP,AAAO,MAAMyC,SAAOzC,IAAb;AACP,AAAO,MAAM0C,WAAS1C,MAAf;AACP,AAAO,MAAM2C,SAAO3C,IAAb;AACP,AAAO,MAAM4C,YAAU5C,OAAhB;AACP,AAAO,MAAM6C,SAAO7C,IAAb;AACP,AAAO,MAAM8C,UAAQ9C,KAAd;AACP,AAAO,MAAM+C,YAAU/C,OAAhB;AACP,AAAO,MAAM/I,SAAO+I,IAAb;AACP,AAAO,MAAMgD,WAAShD,MAAf;AACP,AAAO,MAAMhD,UAAQgD,KAAd;AACP,AAAO,MAAMiD,WAASjD,MAAf;AACP,AAAO,MAAMpI,WAASoI,MAAf;AACP,AAAO,MAAMkD,WAASlD,MAAf;AACP,AAAO,MAAMvF,YAAUuF,OAAhB;AACP,AAAO,MAAMmD,YAAUnD,OAAhB;AACP,AAAO,MAAM1F,SAAO0F,IAAb;AACP,AAAO,MAAMoD,WAASpD,MAAf;AACP,AAAO,MAAM3C,UAAQ2C,KAAd;AACP,AAAO,MAAMqD,eAAarD,UAAnB;AACP,AAAO,MAAMsD,eAAatD,UAAnB;AACP,AAAO,MAAMuD,aAAWvD,QAAjB;AACP,AAAO,MAAMwD,QAAMxD,GAAZ;AACP,AAAO,MAAMyD,SAAOzD,IAAb;AACP,AAAO,MAAMrF,SAAOqF,IAAb;AACP,AAAO,MAAM0D,aAAW1D,QAAjB;AACP,AAAO,MAAMxG,SAAOwG,IAAb;AACP,AAAO,MAAM2D,UAAQ3D,KAAd;AACP,AAAO,MAAM7G,YAAU6G,OAAhB;AACP,AAAO,MAAM4D,YAAU5D,OAAhB;AACP,AAAO,MAAMtF,aAAWsF,QAAjB;AACP,AAAO,MAAM1L,SAAO0L,IAAb;AACP,AAAO,MAAM6D,SAAO7D,IAAb;AACP,AAAO,MAAM8D,WAAS9D,MAAf;AACP,AAAO,MAAM+D,WAAS/D,MAAf;AACP,AAAO,MAAMgE,YAAUhE,OAAhB;;;;"} \ No newline at end of file diff --git a/modules/debounce.js b/modules/debounce.js index 1af86986..78454991 100644 --- a/modules/debounce.js +++ b/modules/debounce.js @@ -1,20 +1,18 @@ export default function debounce (func, ms, immediate = false) { let timeout - return function () { - const thisHolder = this - const args = arguments + return function (...input) { const later = function () { timeout = null if (!immediate) { - func.apply(thisHolder, args) + func.apply(undefined, input) } } const callNow = immediate && !timeout clearTimeout(timeout) timeout = setTimeout(later, ms) if (callNow) { - func.apply(thisHolder, args) + func.apply(undefined, input) } } } diff --git a/modules/throttle.js b/modules/throttle.js index e924ae84..57a49ae9 100644 --- a/modules/throttle.js +++ b/modules/throttle.js @@ -1,9 +1,9 @@ -export default function throttle (callback, ms) { +export default function throttle (fn, ms) { let wait = false - return function () { + return function (...input) { if (!wait) { - callback.call() + fn.apply(undefined, input) wait = true setTimeout(() => { wait = false diff --git a/package.json b/package.json index 8eec0210..ffa399a5 100644 --- a/package.json +++ b/package.json @@ -37,9 +37,8 @@ "rambda": "https://github.com/selfrefactor/rambda#1.0.3" }, "devDependencies": { - "babel-core": "7.0.0-alpha.17", "babel-plugin-external-helpers": "^7.0.0-beta.3", - "babel-preset-env": "^7.0.0-beta.3", + "babel-preset-env": "1.6.1", "fs-extra": "4.0.2", "jest": "^21.1.0", "npm-run-all": "4.1.1", diff --git a/src/rambdax.js b/src/rambdax.js deleted file mode 100644 index 9253c0f6..00000000 --- a/src/rambdax.js +++ /dev/null @@ -1,132 +0,0 @@ -import * as R from 'rambda' - -import isTypeMethod from './modules/isType' - -export {default as compact} from './modules/compact' -export {default as composeAsync} from './modules/composeAsync' -export {default as debounce} from './modules/debounce' -export const DELAY = 'RAMBDAX_DELAY' -export {default as delay} from './modules/delay' -export {default as debug} from './modules/debug' -export {default as evolve} from './modules/evolve' -export {default as greater} from './modules/greater' -export {default as ifElseAsync} from './modules/ifElseAsync' -export {default as intersection} from './modules/intersection' -export const isArray = x => isTypeMethod('Array', x) -export const isObject = x => isTypeMethod('Object', x) -export const isString = x => isTypeMethod('String', x) -export const isType = isTypeMethod -export {default as isPromiseLike} from './modules/isPromiseLike' -export {default as isValid} from './modules/isValid' -export {default as less} from './modules/less' -export {default as mapAsync} from './modules/mapAsync' -export {default as mapFastAsync} from './modules/mapFastAsync' -export {default as memoize} from './modules/memoize' -export {default as mergeAll} from './modules/mergeAll' -export {default as omitBy} from './modules/omitBy' -export {default as once} from './modules/once' -export {default as pickBy} from './modules/pickBy' -export {default as produce} from './modules/produce' -export {default as random} from './modules/random' -export {default as rangeBy} from './modules/rangeBy' -export {default as renameProps} from './modules/renameProps' -export {default as resolve} from './modules/resolve' -export {default as resolveSecure} from './modules/resolveSecure' -export {default as shuffle} from './modules/shuffle' -export {default as tapAsync} from './modules/tapAsync' -export {default as throttle} from './modules/throttle' -export {default as tryCatch} from './modules/tryCatch' -export {default as when} from './modules/when' -export {default as where} from './modules/where' - -// Follows code generated by `run rambda` -export const always = R.always -export const complement = R.complement -export const F = R.F -export const identity = R.identity -export const not = R.not -export const T = R.T -export const trim = R.trim -export const add = R.add -export const addIndex = R.addIndex -export const adjust = R.adjust -export const all = R.all -export const allPass = R.allPass -export const anyPass = R.anyPass -export const any = R.any -export const append = R.append -export const both = R.both -export const compose = R.compose -export const concat = R.concat -export const contains = R.contains -export const curry = R.curry -export const dec = R.dec -export const defaultTo = R.defaultTo -export const divide = R.divide -export const drop = R.drop -export const dropLast = R.dropLast -export const either = R.either -export const endsWith = R.endsWith -export const inc = R.inc -export const equals = R.equals -export const filter = R.filter -export const find = R.find -export const findIndex = R.findIndex -export const flatten = R.flatten -export const flip = R.flip -export const forEach = R.forEach -export const has = R.has -export const head = R.head -export const ifElse = R.ifElse -export const is = R.is -export const isNil = R.isNil -export const includes = R.includes -export const indexOf = R.indexOf -export const init = R.init -export const join = R.join -export const lastIndexOf = R.lastIndexOf -export const last = R.last -export const length = R.length -export const map = R.map -export const match = R.match -export const merge = R.merge -export const modulo = R.modulo -export const multiply = R.multiply -export const none = R.none -export const omit = R.omit -export const partialCurry = R.partialCurry -export const path = R.path -export const pathOr = R.pathOr -export const pick = R.pick -export const pickAll = R.pickAll -export const pipe = R.pipe -export const pluck = R.pluck -export const prepend = R.prepend -export const prop = R.prop -export const propEq = R.propEq -export const range = R.range -export const reduce = R.reduce -export const reject = R.reject -export const repeat = R.repeat -export const replace = R.replace -export const reverse = R.reverse -export const sort = R.sort -export const sortBy = R.sortBy -export const split = R.split -export const splitEvery = R.splitEvery -export const startsWith = R.startsWith -export const subtract = R.subtract -export const tap = R.tap -export const tail = R.tail -export const take = R.take -export const takeLast = R.takeLast -export const test = R.test -export const times = R.times -export const toLower = R.toLower -export const toUpper = R.toUpper -export const toString = R.toString -export const type = R.type -export const uniq = R.uniq -export const update = R.update -export const values = R.values -export const without = R.without \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 6c7c7e26..d0c60c68 100644 --- a/yarn.lock +++ b/yarn.lock @@ -176,22 +176,6 @@ aws4@^1.2.1, aws4@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" -babel-code-frame@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-7.0.0-alpha.17.tgz#06a5daddb0946d8e95392477065a86480474f19c" - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^3.0.0" - -babel-code-frame@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-7.0.0-beta.3.tgz#1614a91b2ba0e3848559f410bbacd030726899c9" - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^3.0.0" - babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" @@ -200,26 +184,6 @@ babel-code-frame@^6.26.0: esutils "^2.0.2" js-tokens "^3.0.2" -babel-core@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-alpha.17.tgz#916ba10b4ac4674e2b476774b2392d2e40c27571" - dependencies: - babel-code-frame "7.0.0-alpha.17" - babel-generator "7.0.0-alpha.17" - babel-helpers "7.0.0-alpha.17" - babel-messages "7.0.0-alpha.17" - babel-template "7.0.0-alpha.17" - babel-traverse "7.0.0-alpha.17" - babel-types "7.0.0-alpha.17" - babylon "7.0.0-beta.18" - convert-source-map "^1.1.0" - debug "^2.1.1" - json5 "^0.5.0" - lodash "^4.2.0" - micromatch "^2.3.11" - resolve "^1.3.2" - source-map "^0.5.0" - babel-core@^6.0.0, babel-core@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" @@ -244,17 +208,6 @@ babel-core@^6.0.0, babel-core@^6.26.0: slash "^1.0.0" source-map "^0.5.6" -babel-generator@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-7.0.0-alpha.17.tgz#56a417572ad2836c32396193839664df10d89a8e" - dependencies: - babel-messages "7.0.0-alpha.17" - babel-types "7.0.0-alpha.17" - jsesc "^2.5.1" - lodash "^4.2.0" - source-map "^0.5.0" - trim-right "^1.0.1" - babel-generator@^6.18.0, babel-generator@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" @@ -268,108 +221,72 @@ babel-generator@^6.18.0, babel-generator@^6.26.0: source-map "^0.5.6" trim-right "^1.0.1" -babel-helper-annotate-as-pure@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-annotate-as-pure/-/babel-helper-annotate-as-pure-7.0.0-beta.3.tgz#f86e3f15b48c1f8df1669d890548ad6f7ca252d6" - dependencies: - babel-types "7.0.0-beta.3" - -babel-helper-builder-binary-assignment-operator-visitor@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-7.0.0-beta.3.tgz#2066d342b96c2874db1f650443438ca15b497e79" - dependencies: - babel-helper-explode-assignable-expression "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - -babel-helper-call-delegate@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-7.0.0-beta.3.tgz#c85406545d71c8913f71e6eea01b3765e8e6f221" - dependencies: - babel-helper-hoist-variables "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - -babel-helper-define-map@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-7.0.0-beta.3.tgz#503db9efcac5308d8df70fef48936364ac8e4212" - dependencies: - babel-helper-function-name "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - lodash "^4.2.0" - -babel-helper-explode-assignable-expression@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-7.0.0-beta.3.tgz#de59f895219de658ef64c85c7b1b0223ca74c1ba" - dependencies: - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - -babel-helper-function-name@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-7.0.0-alpha.17.tgz#b976290af579712345ecd6a146e6dff86b47b8ed" - dependencies: - babel-helper-get-function-arity "7.0.0-alpha.17" - babel-template "7.0.0-alpha.17" - babel-traverse "7.0.0-alpha.17" - babel-types "7.0.0-alpha.17" - -babel-helper-function-name@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-7.0.0-beta.3.tgz#e86dd2eb2c09e06e392e79e203fc02427b24c871" +babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" dependencies: - babel-helper-get-function-arity "7.0.0-beta.3" - babel-template "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" + babel-helper-explode-assignable-expression "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-helper-get-function-arity@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-7.0.0-alpha.17.tgz#f9ee3be4b6e892235ee790a8849ada1f88eedcf1" +babel-helper-call-delegate@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" dependencies: - babel-types "7.0.0-alpha.17" + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-get-function-arity@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-7.0.0-beta.3.tgz#61a47709318a31bc2db872f4be9b4c8447198be8" +babel-helper-define-map@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" dependencies: - babel-types "7.0.0-beta.3" + babel-helper-function-name "^6.24.1" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" -babel-helper-hoist-variables@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-7.0.0-beta.3.tgz#02c7dbc2a8981650958d4b815511bbd89704a95c" +babel-helper-explode-assignable-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" dependencies: - babel-types "7.0.0-beta.3" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-module-imports@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-module-imports/-/babel-helper-module-imports-7.0.0-beta.3.tgz#e15764e3af9c8e11810c09f78f498a2bdc71585a" +babel-helper-function-name@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" dependencies: - babel-types "7.0.0-beta.3" - lodash "^4.2.0" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helper-module-transforms@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-module-transforms/-/babel-helper-module-transforms-7.0.0-beta.3.tgz#42ccfa323e2d3aaaf0f743e66c2e7a292dc064f7" +babel-helper-get-function-arity@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" dependencies: - babel-helper-module-imports "7.0.0-beta.3" - babel-helper-simple-access "7.0.0-beta.3" - babel-template "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - lodash "^4.2.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-helper-optimise-call-expression@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-7.0.0-beta.3.tgz#8c533bf31f05a4aa893700916e6a7e2a5fde7b9c" +babel-helper-hoist-variables@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" dependencies: - babel-types "7.0.0-beta.3" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-helper-regex@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-7.0.0-beta.3.tgz#51867ffe66aa7760c5b4489fd7bdfdd2c1d8719e" +babel-helper-optimise-call-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" dependencies: - lodash "^4.2.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-helper-regex@^6.26.0: +babel-helper-regex@^6.24.1: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" dependencies: @@ -377,46 +294,26 @@ babel-helper-regex@^6.26.0: babel-types "^6.26.0" lodash "^4.17.4" -babel-helper-remap-async-to-generator@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-7.0.0-beta.3.tgz#03d300afbbf85262512923caec9790e6e8beeb18" - dependencies: - babel-helper-wrap-function "7.0.0-beta.3" - babel-template "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - -babel-helper-replace-supers@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-7.0.0-beta.3.tgz#73598401b73feff5a6689a929b77496f15d673c3" - dependencies: - babel-helper-optimise-call-expression "7.0.0-beta.3" - babel-template "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - -babel-helper-simple-access@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-simple-access/-/babel-helper-simple-access-7.0.0-beta.3.tgz#dee94c31289fca79076f7ced2d751a06e430756c" - dependencies: - babel-template "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - lodash "^4.2.0" - -babel-helper-wrap-function@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-helper-wrap-function/-/babel-helper-wrap-function-7.0.0-beta.3.tgz#0698f3acd2b61bf2ff2f3c8417eb80e878b175fc" +babel-helper-remap-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" dependencies: - babel-helper-function-name "7.0.0-beta.3" - babel-template "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-helpers@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-7.0.0-alpha.17.tgz#fcf1355f71baba8281ceca6a50f3f1678e3d88b2" +babel-helper-replace-supers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" dependencies: - babel-template "7.0.0-alpha.17" + babel-helper-optimise-call-expression "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" babel-helpers@^6.24.1: version "6.24.1" @@ -432,19 +329,17 @@ babel-jest@^21.2.0: babel-plugin-istanbul "^4.0.0" babel-preset-jest "^21.2.0" -babel-messages@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-7.0.0-alpha.17.tgz#777d7f82656d5e3526c1f4c74aaaba99b260d7db" - babel-messages@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" dependencies: babel-runtime "^6.22.0" -babel-plugin-check-es2015-constants@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-7.0.0-beta.3.tgz#d4b0c9de206c6478df2d74b7d82f4f94662b2a4b" +babel-plugin-check-es2015-constants@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" + dependencies: + babel-runtime "^6.22.0" babel-plugin-external-helpers@^7.0.0-beta.3: version "7.0.0-beta.3" @@ -462,262 +357,251 @@ babel-plugin-jest-hoist@^21.2.0: version "21.2.0" resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-21.2.0.tgz#2cef637259bd4b628a6cace039de5fcd14dbb006" -babel-plugin-syntax-async-functions@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-7.0.0-beta.0.tgz#2d4074c6167cc78e0bdc49de65902f90e09b59de" - -babel-plugin-syntax-async-generators@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-7.0.0-beta.3.tgz#f177f72fc88696911129e1e832e560595244034e" - -babel-plugin-syntax-exponentiation-operator@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-7.0.0-beta.0.tgz#0e09f65168b7dd2cc73ad7af547036ff128eb7d6" +babel-plugin-syntax-async-functions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" -babel-plugin-syntax-object-rest-spread@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-7.0.0-beta.3.tgz#7f781c180899dafd88f132f69472397549be48e5" +babel-plugin-syntax-exponentiation-operator@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" babel-plugin-syntax-object-rest-spread@^6.13.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" -babel-plugin-syntax-optional-catch-binding@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-optional-catch-binding/-/babel-plugin-syntax-optional-catch-binding-7.0.0-beta.3.tgz#61416bec2803a97ff25beb80771ce88e21793365" - -babel-plugin-syntax-trailing-function-commas@7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" +babel-plugin-syntax-trailing-function-commas@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" -babel-plugin-transform-async-generator-functions@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-7.0.0-beta.3.tgz#0e6079201bfd7030c281983ed4e7662f6f986587" +babel-plugin-transform-async-to-generator@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" dependencies: - babel-helper-remap-async-to-generator "7.0.0-beta.3" - babel-plugin-syntax-async-generators "7.0.0-beta.3" + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-functions "^6.8.0" + babel-runtime "^6.22.0" -babel-plugin-transform-async-to-generator@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-7.0.0-beta.3.tgz#48494551dc456859553b9c39995bc35d07bea755" +babel-plugin-transform-es2015-arrow-functions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" dependencies: - babel-helper-remap-async-to-generator "7.0.0-beta.3" - babel-plugin-syntax-async-functions "7.0.0-beta.0" - -babel-plugin-transform-es2015-arrow-functions@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-7.0.0-beta.3.tgz#89fb349000d5275927f4f8a722c3d0212e13dc5e" - -babel-plugin-transform-es2015-block-scoped-functions@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-7.0.0-beta.3.tgz#b019ae2bb96fd5648fb7925ddaca7515f6580e82" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-block-scoping@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-7.0.0-beta.3.tgz#240eaee5484e3b8f204d493c88754aeb7f86eb19" +babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" dependencies: - babel-template "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - lodash "^4.2.0" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-classes@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-7.0.0-beta.3.tgz#578b9604a3ace50a1a92944cb045088cd69474bf" - dependencies: - babel-helper-annotate-as-pure "7.0.0-beta.3" - babel-helper-define-map "7.0.0-beta.3" - babel-helper-function-name "7.0.0-beta.3" - babel-helper-optimise-call-expression "7.0.0-beta.3" - babel-helper-replace-supers "7.0.0-beta.3" - babel-template "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - -babel-plugin-transform-es2015-computed-properties@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-7.0.0-beta.3.tgz#e77a3c6a551839ea6f7ca7bf043125a21fecb489" +babel-plugin-transform-es2015-block-scoping@^6.23.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" dependencies: - babel-template "7.0.0-beta.3" - -babel-plugin-transform-es2015-destructuring@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-7.0.0-beta.3.tgz#2f81be249c7e90c88e4b51d884e710bc626f145d" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" -babel-plugin-transform-es2015-duplicate-keys@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-7.0.0-beta.3.tgz#9a309e63c3eb72f845d53c17c16c966b78648b4b" +babel-plugin-transform-es2015-classes@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" dependencies: - babel-types "7.0.0-beta.3" + babel-helper-define-map "^6.24.1" + babel-helper-function-name "^6.24.1" + babel-helper-optimise-call-expression "^6.24.1" + babel-helper-replace-supers "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-plugin-transform-es2015-for-of@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-7.0.0-beta.3.tgz#f3eb9140e1de900899e6fa646226807e545f16a4" +babel-plugin-transform-es2015-computed-properties@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-function-name@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-7.0.0-beta.3.tgz#a6f48b1f3cca8c37bb09c976303d72f144692e39" +babel-plugin-transform-es2015-destructuring@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" dependencies: - babel-helper-function-name "7.0.0-beta.3" - babel-types "7.0.0-beta.3" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-literals@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-7.0.0-beta.3.tgz#78bea16e8745d1f3301a7c3b589a6554317d0dc8" +babel-plugin-transform-es2015-duplicate-keys@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-es2015-modules-amd@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-7.0.0-beta.3.tgz#ae2e560f707bde99fb9c919380cab16e5a968948" +babel-plugin-transform-es2015-for-of@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" dependencies: - babel-helper-module-transforms "7.0.0-beta.3" - babel-template "7.0.0-beta.3" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-modules-commonjs@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-7.0.0-beta.3.tgz#d53ae18f16e0b6a50ab65cdafbe3fa51a22f39b5" +babel-plugin-transform-es2015-function-name@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" dependencies: - babel-helper-module-transforms "7.0.0-beta.3" - babel-helper-simple-access "7.0.0-beta.3" - babel-types "7.0.0-beta.3" + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-es2015-modules-systemjs@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-7.0.0-beta.3.tgz#a74c000939941d705c8c7c1e68983f35412cc042" +babel-plugin-transform-es2015-literals@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" dependencies: - babel-helper-hoist-variables "7.0.0-beta.3" - babel-template "7.0.0-beta.3" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-modules-umd@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-7.0.0-beta.3.tgz#79713a0f7678b0b041d56e871423afa623c84751" +babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" dependencies: - babel-helper-module-transforms "7.0.0-beta.3" - babel-template "7.0.0-beta.3" + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-object-super@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-7.0.0-beta.3.tgz#85a4637c913c809de49b31e8f68f012b00998b30" +babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" dependencies: - babel-helper-replace-supers "7.0.0-beta.3" + babel-plugin-transform-strict-mode "^6.24.1" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-types "^6.26.0" -babel-plugin-transform-es2015-parameters@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-7.0.0-beta.3.tgz#276be7b06b5e53372b9928b5a67571c43f348522" +babel-plugin-transform-es2015-modules-systemjs@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" dependencies: - babel-helper-call-delegate "7.0.0-beta.3" - babel-helper-get-function-arity "7.0.0-beta.3" - babel-template "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-shorthand-properties@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-7.0.0-beta.3.tgz#2afe134eb42b62873dd65572022930dfad2b0415" +babel-plugin-transform-es2015-modules-umd@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" dependencies: - babel-types "7.0.0-beta.3" + babel-plugin-transform-es2015-modules-amd "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" -babel-plugin-transform-es2015-spread@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-7.0.0-beta.3.tgz#aa4b99f316a6784cf4eead7749ca706a4ae9a8d2" +babel-plugin-transform-es2015-object-super@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" + dependencies: + babel-helper-replace-supers "^6.24.1" + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-sticky-regex@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-7.0.0-beta.3.tgz#572c0aa13dbb39468b0b0f57343597c0d3804f5f" +babel-plugin-transform-es2015-parameters@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" dependencies: - babel-helper-regex "7.0.0-beta.3" - babel-types "7.0.0-beta.3" + babel-helper-call-delegate "^6.24.1" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" -babel-plugin-transform-es2015-template-literals@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-7.0.0-beta.3.tgz#3fb80b58b411a242f6bcf82c8296156e6aa57611" +babel-plugin-transform-es2015-shorthand-properties@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-es2015-typeof-symbol@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-7.0.0-beta.3.tgz#8194f5b4e2f134d8744daa72fe4cb219f739b9ed" +babel-plugin-transform-es2015-spread@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" + dependencies: + babel-runtime "^6.22.0" -babel-plugin-transform-es2015-unicode-regex@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-7.0.0-beta.3.tgz#0b55ffe810505ecd8148dabb43b0c1e886dc84ab" +babel-plugin-transform-es2015-sticky-regex@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" dependencies: - babel-helper-regex "7.0.0-beta.3" - regexpu-core "^4.1.3" + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-plugin-transform-exponentiation-operator@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-7.0.0-beta.3.tgz#f7399d3d73dbceb6a6df82b4824c4719c6e21ad8" +babel-plugin-transform-es2015-template-literals@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" dependencies: - babel-helper-builder-binary-assignment-operator-visitor "7.0.0-beta.3" - babel-plugin-syntax-exponentiation-operator "7.0.0-beta.0" + babel-runtime "^6.22.0" -babel-plugin-transform-new-target@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-new-target/-/babel-plugin-transform-new-target-7.0.0-beta.3.tgz#de2855f8422a9d07a85cc8d65a0bfc7f9c9c37b3" +babel-plugin-transform-es2015-typeof-symbol@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" + dependencies: + babel-runtime "^6.22.0" -babel-plugin-transform-object-rest-spread@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-7.0.0-beta.3.tgz#5c409f3cd70819dbb3382d2056971c5ebe01393a" +babel-plugin-transform-es2015-unicode-regex@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" dependencies: - babel-plugin-syntax-object-rest-spread "7.0.0-beta.3" + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + regexpu-core "^2.0.0" -babel-plugin-transform-optional-catch-binding@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-optional-catch-binding/-/babel-plugin-transform-optional-catch-binding-7.0.0-beta.3.tgz#029c6e8db58ba5f192efcfdfab1c0e60fc5a48c6" +babel-plugin-transform-exponentiation-operator@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" dependencies: - babel-plugin-syntax-optional-catch-binding "7.0.0-beta.3" + babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" + babel-plugin-syntax-exponentiation-operator "^6.8.0" + babel-runtime "^6.22.0" -babel-plugin-transform-regenerator@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-7.0.0-beta.3.tgz#761200c174183268a6ef57727967f6bbc8cecb1b" +babel-plugin-transform-regenerator@^6.22.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" dependencies: - regenerator-transform "^0.11.0" + regenerator-transform "^0.10.0" -babel-plugin-transform-unicode-property-regex@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-unicode-property-regex/-/babel-plugin-transform-unicode-property-regex-2.0.5.tgz#24922190f9598384d258a6c8e7409309dc6f3898" +babel-plugin-transform-strict-mode@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" dependencies: - babel-helper-regex "^6.26.0" - regexpu-core "^4.1.3" + babel-runtime "^6.22.0" + babel-types "^6.24.1" -babel-preset-env@^7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-7.0.0-beta.3.tgz#3811da21ede73107223940bcea91a0325027026c" - dependencies: - babel-plugin-check-es2015-constants "7.0.0-beta.3" - babel-plugin-syntax-async-generators "7.0.0-beta.3" - babel-plugin-syntax-object-rest-spread "7.0.0-beta.3" - babel-plugin-syntax-optional-catch-binding "7.0.0-beta.3" - babel-plugin-syntax-trailing-function-commas "7.0.0-beta.0" - babel-plugin-transform-async-generator-functions "7.0.0-beta.3" - babel-plugin-transform-async-to-generator "7.0.0-beta.3" - babel-plugin-transform-es2015-arrow-functions "7.0.0-beta.3" - babel-plugin-transform-es2015-block-scoped-functions "7.0.0-beta.3" - babel-plugin-transform-es2015-block-scoping "7.0.0-beta.3" - babel-plugin-transform-es2015-classes "7.0.0-beta.3" - babel-plugin-transform-es2015-computed-properties "7.0.0-beta.3" - babel-plugin-transform-es2015-destructuring "7.0.0-beta.3" - babel-plugin-transform-es2015-duplicate-keys "7.0.0-beta.3" - babel-plugin-transform-es2015-for-of "7.0.0-beta.3" - babel-plugin-transform-es2015-function-name "7.0.0-beta.3" - babel-plugin-transform-es2015-literals "7.0.0-beta.3" - babel-plugin-transform-es2015-modules-amd "7.0.0-beta.3" - babel-plugin-transform-es2015-modules-commonjs "7.0.0-beta.3" - babel-plugin-transform-es2015-modules-systemjs "7.0.0-beta.3" - babel-plugin-transform-es2015-modules-umd "7.0.0-beta.3" - babel-plugin-transform-es2015-object-super "7.0.0-beta.3" - babel-plugin-transform-es2015-parameters "7.0.0-beta.3" - babel-plugin-transform-es2015-shorthand-properties "7.0.0-beta.3" - babel-plugin-transform-es2015-spread "7.0.0-beta.3" - babel-plugin-transform-es2015-sticky-regex "7.0.0-beta.3" - babel-plugin-transform-es2015-template-literals "7.0.0-beta.3" - babel-plugin-transform-es2015-typeof-symbol "7.0.0-beta.3" - babel-plugin-transform-es2015-unicode-regex "7.0.0-beta.3" - babel-plugin-transform-exponentiation-operator "7.0.0-beta.3" - babel-plugin-transform-new-target "7.0.0-beta.3" - babel-plugin-transform-object-rest-spread "7.0.0-beta.3" - babel-plugin-transform-optional-catch-binding "7.0.0-beta.3" - babel-plugin-transform-regenerator "7.0.0-beta.3" - babel-plugin-transform-unicode-property-regex "^2.0.5" - browserslist "^2.4.0" +babel-preset-env@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.1.tgz#a18b564cc9b9afdf4aae57ae3c1b0d99188e6f48" + dependencies: + babel-plugin-check-es2015-constants "^6.22.0" + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-to-generator "^6.22.0" + babel-plugin-transform-es2015-arrow-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoping "^6.23.0" + babel-plugin-transform-es2015-classes "^6.23.0" + babel-plugin-transform-es2015-computed-properties "^6.22.0" + babel-plugin-transform-es2015-destructuring "^6.23.0" + babel-plugin-transform-es2015-duplicate-keys "^6.22.0" + babel-plugin-transform-es2015-for-of "^6.23.0" + babel-plugin-transform-es2015-function-name "^6.22.0" + babel-plugin-transform-es2015-literals "^6.22.0" + babel-plugin-transform-es2015-modules-amd "^6.22.0" + babel-plugin-transform-es2015-modules-commonjs "^6.23.0" + babel-plugin-transform-es2015-modules-systemjs "^6.23.0" + babel-plugin-transform-es2015-modules-umd "^6.23.0" + babel-plugin-transform-es2015-object-super "^6.22.0" + babel-plugin-transform-es2015-parameters "^6.23.0" + babel-plugin-transform-es2015-shorthand-properties "^6.22.0" + babel-plugin-transform-es2015-spread "^6.22.0" + babel-plugin-transform-es2015-sticky-regex "^6.22.0" + babel-plugin-transform-es2015-template-literals "^6.22.0" + babel-plugin-transform-es2015-typeof-symbol "^6.23.0" + babel-plugin-transform-es2015-unicode-regex "^6.22.0" + babel-plugin-transform-exponentiation-operator "^6.22.0" + babel-plugin-transform-regenerator "^6.22.0" + browserslist "^2.1.2" invariant "^2.2.2" semver "^5.3.0" @@ -740,32 +624,13 @@ babel-register@^6.26.0: mkdirp "^0.5.1" source-map-support "^0.4.15" -babel-runtime@^6.22.0, babel-runtime@^6.26.0: +babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" dependencies: core-js "^2.4.0" regenerator-runtime "^0.11.0" -babel-template@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-7.0.0-alpha.17.tgz#085597c0021644c72fa74460a8f76a85e76da943" - dependencies: - babel-traverse "7.0.0-alpha.17" - babel-types "7.0.0-alpha.17" - babylon "7.0.0-beta.18" - lodash "^4.2.0" - -babel-template@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-7.0.0-beta.3.tgz#ebb877b6070ce9912b0d0c22fcad3372165913a8" - dependencies: - babel-code-frame "7.0.0-beta.3" - babel-traverse "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - babylon "7.0.0-beta.27" - lodash "^4.2.0" - babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" @@ -776,34 +641,7 @@ babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: babylon "^6.18.0" lodash "^4.17.4" -babel-traverse@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-7.0.0-alpha.17.tgz#c8a33788274bc4138c529ec9c29f0bacb573f42c" - dependencies: - babel-code-frame "7.0.0-alpha.17" - babel-helper-function-name "7.0.0-alpha.17" - babel-messages "7.0.0-alpha.17" - babel-types "7.0.0-alpha.17" - babylon "7.0.0-beta.18" - debug "^2.2.0" - globals "^10.0.0" - invariant "^2.2.0" - lodash "^4.2.0" - -babel-traverse@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-7.0.0-beta.3.tgz#3cf0a45d53d934d85275d8770775d7944fc7c199" - dependencies: - babel-code-frame "7.0.0-beta.3" - babel-helper-function-name "7.0.0-beta.3" - babel-types "7.0.0-beta.3" - babylon "7.0.0-beta.27" - debug "^3.0.1" - globals "^10.0.0" - invariant "^2.2.0" - lodash "^4.2.0" - -babel-traverse@^6.18.0, babel-traverse@^6.26.0: +babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" dependencies: @@ -817,23 +655,7 @@ babel-traverse@^6.18.0, babel-traverse@^6.26.0: invariant "^2.2.2" lodash "^4.17.4" -babel-types@7.0.0-alpha.17: - version "7.0.0-alpha.17" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-7.0.0-alpha.17.tgz#bc74e19423b015a5ce88727440fc6ae863463dc0" - dependencies: - esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^2.0.0" - -babel-types@7.0.0-beta.3: - version "7.0.0-beta.3" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-7.0.0-beta.3.tgz#cd927ca70e0ae8ab05f4aab83778cfb3e6eb20b4" - dependencies: - esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^2.0.0" - -babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.26.0: +babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" dependencies: @@ -842,14 +664,6 @@ babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.26.0: lodash "^4.17.4" to-fast-properties "^1.0.3" -babylon@7.0.0-beta.18: - version "7.0.0-beta.18" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.18.tgz#5c23ee3fdb66358aabf3789779319c5b78a233c7" - -babylon@7.0.0-beta.27: - version "7.0.0-beta.27" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.27.tgz#b6edd30ef30619e2f630eb52585fdda84e6542cd" - babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" @@ -909,7 +723,7 @@ browser-resolve@^1.11.2: dependencies: resolve "1.1.7" -browserslist@^2.4.0: +browserslist@^2.1.2: version "2.6.1" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.6.1.tgz#cc65a05ad6131ebda26f076f2822ba1bc826376b" dependencies: @@ -963,7 +777,7 @@ chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0: +chalk@^2.0.1, chalk@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" dependencies: @@ -1027,7 +841,7 @@ content-type-parser@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7" -convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.0: +convert-source-map@^1.4.0, convert-source-map@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" @@ -1075,13 +889,13 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -debug@^2.1.1, debug@^2.2.0, debug@^2.6.8: +debug@^2.2.0, debug@^2.6.8: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: ms "2.0.0" -debug@^3.0.1, debug@^3.1.0: +debug@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" dependencies: @@ -1457,10 +1271,6 @@ glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: once "^1.3.0" path-is-absolute "^1.0.0" -globals@^10.0.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-10.2.0.tgz#69490789091fcaa7f7d512c668c8eb73894a4ef2" - globals@^9.18.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" @@ -1611,7 +1421,7 @@ ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" -invariant@^2.2.0, invariant@^2.2.2: +invariant@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" dependencies: @@ -2084,10 +1894,6 @@ jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" -jsesc@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" - jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" @@ -2110,7 +1916,7 @@ json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" -json5@^0.5.0, json5@^0.5.1: +json5@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -2192,7 +1998,7 @@ locate-path@^2.0.0: p-locate "^2.0.0" path-exists "^3.0.0" -lodash@^4.14.0, lodash@^4.17.4, lodash@^4.2.0: +lodash@^4.14.0, lodash@^4.17.4: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -2685,13 +2491,7 @@ readable-stream@~1.0.2: isarray "0.0.1" string_decoder "~0.10.x" -regenerate-unicode-properties@^5.1.1: - version "5.1.3" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-5.1.3.tgz#54f5891543468f36f2274b67c6bc4c033c27b308" - dependencies: - regenerate "^1.3.3" - -regenerate@^1.3.3: +regenerate@^1.2.1: version "1.3.3" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" @@ -2699,10 +2499,11 @@ regenerator-runtime@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz#7e54fe5b5ccd5d6624ea6255c3473be090b802e1" -regenerator-transform@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.11.0.tgz#0e204c1e69defc6ac70677232b29ea5d4d1df989" +regenerator-transform@^0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" dependencies: + babel-runtime "^6.18.0" babel-types "^6.19.0" private "^0.1.6" @@ -2712,24 +2513,21 @@ regex-cache@^0.4.2: dependencies: is-equal-shallow "^0.1.3" -regexpu-core@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.1.3.tgz#fb81616dbbc2a917a7419b33f8379144f51eb8d0" +regexpu-core@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" dependencies: - regenerate "^1.3.3" - regenerate-unicode-properties "^5.1.1" - regjsgen "^0.3.0" - regjsparser "^0.2.1" - unicode-match-property-ecmascript "^1.0.3" - unicode-match-property-value-ecmascript "^1.0.1" + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" -regjsgen@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.3.0.tgz#0ee4a3e9276430cda25f1e789ea6c15b87b0cb43" +regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" -regjsparser@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.2.1.tgz#c3787553faf04e775c302102ef346d995000ec1c" +regjsparser@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" dependencies: jsesc "~0.5.0" @@ -2817,12 +2615,6 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@^1.3.2: - version "1.5.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36" - dependencies: - path-parse "^1.0.5" - right-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" @@ -2937,7 +2729,7 @@ source-map@^0.4.4: dependencies: amdefine ">=0.0.4" -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.6: +source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -3126,10 +2918,6 @@ to-fast-properties@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - tough-cookie@^2.3.2, tough-cookie@~2.3.0, tough-cookie@~2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" @@ -3177,25 +2965,6 @@ uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" -unicode-canonical-property-names-ecmascript@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.3.tgz#f6119f417467593c0086357c85546b6ad5abc583" - -unicode-match-property-ecmascript@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.3.tgz#db9b1cb4ffc67e0c5583780b1b59370e4cbe97b9" - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.2" - unicode-property-aliases-ecmascript "^1.0.3" - -unicode-match-property-value-ecmascript@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.1.tgz#fea059120a016f403afd3bf586162b4db03e0604" - -unicode-property-aliases-ecmascript@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.3.tgz#ac3522583b9e630580f916635333e00c5ead690d" - universalify@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7"