f-utility
Version:
functional utilities
720 lines (655 loc) • 16.5 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.random = exports.every = exports.some = exports.which = exports.anyLength = exports.objectLength = exports.length = exports.version = exports.isPOJO = exports.isDistinctObject = exports.isArray = exports.isNil = exports.isObject = exports.isString = exports.isFunction = exports.isNumber = exports.isBoolean = exports.isTypeof = exports.propSatisfies = exports.propEq = exports.propIs = exports.propOr = exports.prop = exports.pathSatisfies = exports.pathEq = exports.pathOr = exports.path = exports.pairwiseObject = exports.pairwise = exports.mapKeys = exports.mapTuples = exports.mapTuple = exports.toPairs = exports.fromPairs = exports.entries = exports.merge = exports.freeze = exports.assign = exports.keys = exports.range = exports.triplet = exports.ternary = exports.trim = exports.substr = exports.startsWith = exports.split = exports.search = exports.replace = exports.repeat = exports.padStart = exports.padEnd = exports.match = exports.lastIndexOf = exports.indexOf = exports.endsWith = exports.codePointAt = exports.charAt = exports.reject = exports.reduce = exports.not = exports.invert = exports.pow = exports.multiply = exports.divide = exports.subtract = exports.add = exports.round = exports.equal = exports.equals = exports.flatMap = exports.chain = exports.fold = exports.ap = exports.map = exports.iterate = exports.fork = exports.flip = exports.filter = exports.choice = exports.relativeIndex = exports.alterLastIndex = exports.alterFirstIndex = exports.alterIndex = exports.difference = exports.symmetricDifference = exports.sort = exports.join = exports.concat = exports.I = exports.K = exports.remapArray = exports.remap = exports.curryObjectKN = exports.curryObjectN = exports.curryObjectK = exports.curry = exports.curryify = exports.PLACEHOLDER = exports.$ = exports.pipe = undefined;
var _assign = require("object-assign");
var _katsuCurry = require("katsu-curry");
Object.defineProperty(exports, "pipe", {
enumerable: true,
get: function get() {
return _katsuCurry.pipe;
}
});
Object.defineProperty(exports, "$", {
enumerable: true,
get: function get() {
return _katsuCurry.$;
}
});
Object.defineProperty(exports, "PLACEHOLDER", {
enumerable: true,
get: function get() {
return _katsuCurry.PLACEHOLDER;
}
});
Object.defineProperty(exports, "curryify", {
enumerable: true,
get: function get() {
return _katsuCurry.curryify;
}
});
Object.defineProperty(exports, "curry", {
enumerable: true,
get: function get() {
return _katsuCurry.curry;
}
});
Object.defineProperty(exports, "curryObjectK", {
enumerable: true,
get: function get() {
return _katsuCurry.curryObjectK;
}
});
Object.defineProperty(exports, "curryObjectN", {
enumerable: true,
get: function get() {
return _katsuCurry.curryObjectN;
}
});
Object.defineProperty(exports, "curryObjectKN", {
enumerable: true,
get: function get() {
return _katsuCurry.curryObjectKN;
}
});
Object.defineProperty(exports, "remap", {
enumerable: true,
get: function get() {
return _katsuCurry.remap;
}
});
Object.defineProperty(exports, "remapArray", {
enumerable: true,
get: function get() {
return _katsuCurry.remapArray;
}
});
Object.defineProperty(exports, "K", {
enumerable: true,
get: function get() {
return _katsuCurry.K;
}
});
Object.defineProperty(exports, "I", {
enumerable: true,
get: function get() {
return _katsuCurry.I;
}
});
exports.compose = compose;
var _array = require("./array");
Object.defineProperty(exports, "concat", {
enumerable: true,
get: function get() {
return _array.concat;
}
});
Object.defineProperty(exports, "join", {
enumerable: true,
get: function get() {
return _array.join;
}
});
Object.defineProperty(exports, "sort", {
enumerable: true,
get: function get() {
return _array.sort;
}
});
Object.defineProperty(exports, "symmetricDifference", {
enumerable: true,
get: function get() {
return _array.symmetricDifference;
}
});
Object.defineProperty(exports, "difference", {
enumerable: true,
get: function get() {
return _array.difference;
}
});
Object.defineProperty(exports, "alterIndex", {
enumerable: true,
get: function get() {
return _array.alterIndex;
}
});
Object.defineProperty(exports, "alterFirstIndex", {
enumerable: true,
get: function get() {
return _array.alterFirstIndex;
}
});
Object.defineProperty(exports, "alterLastIndex", {
enumerable: true,
get: function get() {
return _array.alterLastIndex;
}
});
Object.defineProperty(exports, "relativeIndex", {
enumerable: true,
get: function get() {
return _array.relativeIndex;
}
});
var _choice = require("./choice");
Object.defineProperty(exports, "choice", {
enumerable: true,
get: function get() {
return _choice.choice;
}
});
var _filter = require("./filter");
Object.defineProperty(exports, "filter", {
enumerable: true,
get: function get() {
return _filter.filter;
}
});
var _flip = require("./flip");
Object.defineProperty(exports, "flip", {
enumerable: true,
get: function get() {
return _flip.flip;
}
});
var _future = require("./future");
Object.defineProperty(exports, "fork", {
enumerable: true,
get: function get() {
return _future.fork;
}
});
var _iterate = require("./iterate");
Object.defineProperty(exports, "iterate", {
enumerable: true,
get: function get() {
return _iterate.iterate;
}
});
var _map = require("./map");
Object.defineProperty(exports, "map", {
enumerable: true,
get: function get() {
return _map.map;
}
});
var _ap = require("./ap");
Object.defineProperty(exports, "ap", {
enumerable: true,
get: function get() {
return _ap.ap;
}
});
var _either = require("./either");
Object.defineProperty(exports, "fold", {
enumerable: true,
get: function get() {
return _either.fold;
}
});
var _chain = require("./chain");
Object.defineProperty(exports, "chain", {
enumerable: true,
get: function get() {
return _chain.chain;
}
});
Object.defineProperty(exports, "flatMap", {
enumerable: true,
get: function get() {
return _chain.flatMap;
}
});
var _math = require("./math");
Object.defineProperty(exports, "equals", {
enumerable: true,
get: function get() {
return _math.equals;
}
});
Object.defineProperty(exports, "equal", {
enumerable: true,
get: function get() {
return _math.equal;
}
});
Object.defineProperty(exports, "round", {
enumerable: true,
get: function get() {
return _math.round;
}
});
Object.defineProperty(exports, "add", {
enumerable: true,
get: function get() {
return _math.add;
}
});
Object.defineProperty(exports, "subtract", {
enumerable: true,
get: function get() {
return _math.subtract;
}
});
Object.defineProperty(exports, "divide", {
enumerable: true,
get: function get() {
return _math.divide;
}
});
Object.defineProperty(exports, "multiply", {
enumerable: true,
get: function get() {
return _math.multiply;
}
});
Object.defineProperty(exports, "pow", {
enumerable: true,
get: function get() {
return _math.pow;
}
});
var _invert = require("./invert");
Object.defineProperty(exports, "invert", {
enumerable: true,
get: function get() {
return _invert.invert;
}
});
Object.defineProperty(exports, "not", {
enumerable: true,
get: function get() {
return _invert.not;
}
});
var _reduce = require("./reduce");
Object.defineProperty(exports, "reduce", {
enumerable: true,
get: function get() {
return _reduce.reduce;
}
});
var _reject = require("./reject");
Object.defineProperty(exports, "reject", {
enumerable: true,
get: function get() {
return _reject.reject;
}
});
var _string = require("./string");
Object.defineProperty(exports, "charAt", {
enumerable: true,
get: function get() {
return _string.charAt;
}
});
Object.defineProperty(exports, "codePointAt", {
enumerable: true,
get: function get() {
return _string.codePointAt;
}
});
Object.defineProperty(exports, "endsWith", {
enumerable: true,
get: function get() {
return _string.endsWith;
}
});
Object.defineProperty(exports, "indexOf", {
enumerable: true,
get: function get() {
return _string.indexOf;
}
});
Object.defineProperty(exports, "lastIndexOf", {
enumerable: true,
get: function get() {
return _string.lastIndexOf;
}
});
Object.defineProperty(exports, "match", {
enumerable: true,
get: function get() {
return _string.match;
}
});
Object.defineProperty(exports, "padEnd", {
enumerable: true,
get: function get() {
return _string.padEnd;
}
});
Object.defineProperty(exports, "padStart", {
enumerable: true,
get: function get() {
return _string.padStart;
}
});
Object.defineProperty(exports, "repeat", {
enumerable: true,
get: function get() {
return _string.repeat;
}
});
Object.defineProperty(exports, "replace", {
enumerable: true,
get: function get() {
return _string.replace;
}
});
Object.defineProperty(exports, "search", {
enumerable: true,
get: function get() {
return _string.search;
}
});
Object.defineProperty(exports, "split", {
enumerable: true,
get: function get() {
return _string.split;
}
});
Object.defineProperty(exports, "startsWith", {
enumerable: true,
get: function get() {
return _string.startsWith;
}
});
Object.defineProperty(exports, "substr", {
enumerable: true,
get: function get() {
return _string.substr;
}
});
Object.defineProperty(exports, "trim", {
enumerable: true,
get: function get() {
return _string.trim;
}
});
var _ternary = require("./ternary");
Object.defineProperty(exports, "ternary", {
enumerable: true,
get: function get() {
return _ternary.ternary;
}
});
var _triplet = require("./triplet");
Object.defineProperty(exports, "triplet", {
enumerable: true,
get: function get() {
return _triplet.triplet;
}
});
var _range = require("./range");
Object.defineProperty(exports, "range", {
enumerable: true,
get: function get() {
return _range.range;
}
});
var _object = require("./object");
Object.defineProperty(exports, "keys", {
enumerable: true,
get: function get() {
return _object.keys;
}
});
Object.defineProperty(exports, "assign", {
enumerable: true,
get: function get() {
return _object.assign;
}
});
Object.defineProperty(exports, "freeze", {
enumerable: true,
get: function get() {
return _object.freeze;
}
});
Object.defineProperty(exports, "merge", {
enumerable: true,
get: function get() {
return _object.merge;
}
});
Object.defineProperty(exports, "entries", {
enumerable: true,
get: function get() {
return _object.entries;
}
});
Object.defineProperty(exports, "fromPairs", {
enumerable: true,
get: function get() {
return _object.fromPairs;
}
});
Object.defineProperty(exports, "toPairs", {
enumerable: true,
get: function get() {
return _object.toPairs;
}
});
Object.defineProperty(exports, "mapTuple", {
enumerable: true,
get: function get() {
return _object.mapTuple;
}
});
Object.defineProperty(exports, "mapTuples", {
enumerable: true,
get: function get() {
return _object.mapTuples;
}
});
Object.defineProperty(exports, "mapKeys", {
enumerable: true,
get: function get() {
return _object.mapKeys;
}
});
Object.defineProperty(exports, "pairwise", {
enumerable: true,
get: function get() {
return _object.pairwise;
}
});
Object.defineProperty(exports, "pairwiseObject", {
enumerable: true,
get: function get() {
return _object.pairwiseObject;
}
});
var _path = require("./path");
Object.defineProperty(exports, "path", {
enumerable: true,
get: function get() {
return _path.path;
}
});
Object.defineProperty(exports, "pathOr", {
enumerable: true,
get: function get() {
return _path.pathOr;
}
});
Object.defineProperty(exports, "pathEq", {
enumerable: true,
get: function get() {
return _path.pathEq;
}
});
Object.defineProperty(exports, "pathSatisfies", {
enumerable: true,
get: function get() {
return _path.pathSatisfies;
}
});
Object.defineProperty(exports, "prop", {
enumerable: true,
get: function get() {
return _path.prop;
}
});
Object.defineProperty(exports, "propOr", {
enumerable: true,
get: function get() {
return _path.propOr;
}
});
Object.defineProperty(exports, "propIs", {
enumerable: true,
get: function get() {
return _path.propIs;
}
});
Object.defineProperty(exports, "propEq", {
enumerable: true,
get: function get() {
return _path.propEq;
}
});
Object.defineProperty(exports, "propSatisfies", {
enumerable: true,
get: function get() {
return _path.propSatisfies;
}
});
var _types = require("./types");
Object.defineProperty(exports, "isTypeof", {
enumerable: true,
get: function get() {
return _types.isTypeof;
}
});
Object.defineProperty(exports, "isBoolean", {
enumerable: true,
get: function get() {
return _types.isBoolean;
}
});
Object.defineProperty(exports, "isNumber", {
enumerable: true,
get: function get() {
return _types.isNumber;
}
});
Object.defineProperty(exports, "isFunction", {
enumerable: true,
get: function get() {
return _types.isFunction;
}
});
Object.defineProperty(exports, "isString", {
enumerable: true,
get: function get() {
return _types.isString;
}
});
Object.defineProperty(exports, "isObject", {
enumerable: true,
get: function get() {
return _types.isObject;
}
});
Object.defineProperty(exports, "isNil", {
enumerable: true,
get: function get() {
return _types.isNil;
}
});
Object.defineProperty(exports, "isArray", {
enumerable: true,
get: function get() {
return _types.isArray;
}
});
Object.defineProperty(exports, "isDistinctObject", {
enumerable: true,
get: function get() {
return _types.isDistinctObject;
}
});
Object.defineProperty(exports, "isPOJO", {
enumerable: true,
get: function get() {
return _types.isPOJO;
}
});
var _length = require("./length");
Object.defineProperty(exports, "length", {
enumerable: true,
get: function get() {
return _length.length;
}
});
Object.defineProperty(exports, "objectLength", {
enumerable: true,
get: function get() {
return _length.objectLength;
}
});
Object.defineProperty(exports, "anyLength", {
enumerable: true,
get: function get() {
return _length.anyLength;
}
});
var _which = require("./which");
Object.defineProperty(exports, "which", {
enumerable: true,
get: function get() {
return _which.which;
}
});
Object.defineProperty(exports, "some", {
enumerable: true,
get: function get() {
return _which.some;
}
});
Object.defineProperty(exports, "every", {
enumerable: true,
get: function get() {
return _which.every;
}
});
var _package = require("../package.json");
var pkg = _interopRequireWildcard(_package);
var _random2 = require("./random");
var _randomFloor = require("./random-floor");
var f = _interopRequireWildcard(_randomFloor);
var _randomTake = require("./random-take");
var t = _interopRequireWildcard(_randomTake);
var _randomWord = require("./random-word");
var w = _interopRequireWildcard(_randomWord);
var _randomShuffle = require("./random-shuffle");
var s = _interopRequireWildcard(_randomShuffle);
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } }
function _toArray(arr) { return Array.isArray(arr) ? arr : Array.from(arr); }
var innerpipe = function innerpipe(args) {
return function (x) {
var _args = _toArray(args),
first = _args[0],
rest = _args.slice(1);
var current = first(x);
for (var a = 0; a < rest.length; a++) {
current = rest[a](current);
}
return current;
};
};
function compose() {
var length = arguments.length;
var args = new Array(length);
for (var i = length - 1; i > -1; --i) {
args[i] = arguments[i];
}
return innerpipe(args.reverse());
}
var version = pkg.version;
exports.version = version;
var random = exports.random = _assign(_random2.random, f, t, w, s);
;