Add production dependencies
This commit is contained in:
parent
5a0114f3e2
commit
579ccdc29f
12113 changed files with 978046 additions and 3 deletions
38
node_modules/es5-ext/string/random.js
generated
vendored
Normal file
38
node_modules/es5-ext/string/random.js
generated
vendored
Normal file
|
@ -0,0 +1,38 @@
|
|||
"use strict";
|
||||
|
||||
var isValue = require("../object/is-value")
|
||||
, toNaturalNumber = require("../number/to-pos-integer");
|
||||
|
||||
var generated = Object.create(null), random = Math.random, uniqTryLimit = 100;
|
||||
|
||||
var getChunk = function () { return random().toString(36).slice(2); };
|
||||
|
||||
var getString = function (/* length */) {
|
||||
var str = getChunk(), length = arguments[0];
|
||||
if (!isValue(length)) return str;
|
||||
while (str.length < length) str += getChunk();
|
||||
return str.slice(0, length);
|
||||
};
|
||||
|
||||
module.exports = function (/* options */) {
|
||||
var options = Object(arguments[0]), length = options.length, isUnique = options.isUnique;
|
||||
|
||||
if (isValue(length)) length = toNaturalNumber(length);
|
||||
|
||||
var str = getString(length);
|
||||
if (isUnique) {
|
||||
var count = 0;
|
||||
while (generated[str]) {
|
||||
if (++count === uniqTryLimit) {
|
||||
throw new Error(
|
||||
"Cannot generate random string.\n" +
|
||||
"String.random is not designed to effectively generate many short and " +
|
||||
"unique random strings"
|
||||
);
|
||||
}
|
||||
str = getString(length);
|
||||
}
|
||||
generated[str] = true;
|
||||
}
|
||||
return str;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue