f-utility
Version:
functional utilities
53 lines (46 loc) • 1.42 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.word = exports.wordSource = undefined;
var _katsuCurry = require("katsu-curry");
var _randomTake = require("./random-take");
var _array = require("./array");
// const trace = curry((a, b) => {
// console.log(a, b)
// return b
// })
var alphabet = "abcdefghijklmnopqrstuvwxyz".split("");
/**
* generate a "word" of some known length
* @function random.wordSource
* @param {strings[]} source - which characters should be used?
* @param {number} howLong - how many characters should be used?
* @return {string} word
* @public
* @example
* import {random} from 'f-utility'
* const {wordSource} = random
* const dna = wordSource([`g`, `a`, `t`, `c`])
* dna(7) // `gattaca`
*/
var wordSource = exports.wordSource = (0, _katsuCurry.curry)(function (source, howLong) {
return (0, _katsuCurry.pipe)((0, _randomTake.allot)(howLong),
// trace(`...`),
(0, _array.join)(""))(source);
});
/**
* generate a "word" of some known length
* @function random.word
* @param {number} x - how many characters should be used?
* @return {string} word
* @public
* @example
* import {random} from 'f-utility'
* const {word} = random
* word(5) // `lrmbs`
*/
var word = exports.word = function word() {
var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 5;
return wordSource(alphabet, x);
};
;