![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/dceprojects.corals.io/node_modules/es5-ext/string/ |
"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; };