randex
Version:
Generates random filename, username, email, name, full name, etc for test purposes.
47 lines (46 loc) • 1.57 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.randexManyNumber = exports.randexNumber = void 0;
var set_1 = require("../basic/set");
function getNumberBase(decimals) {
return decimals === 1 ? 10 : Math.pow(10, decimals);
}
function getNumberValue(value, decimals) {
var result = value;
if (typeof decimals === "number") {
result = result * getNumberBase(decimals);
}
return result;
}
function innerRandomNumber(from, to, decimals) {
var fromV = getNumberValue(from, decimals);
var toV = getNumberValue(to, decimals);
var result = set_1.RandexSetUtil.randomRangeNumber(fromV, toV);
if (typeof decimals === "number") {
result = result / getNumberBase(decimals);
}
return result;
}
function randexNumber(p1, p2, p3) {
if (typeof p1 === "number" && typeof p2 === "number") {
return innerRandomNumber(p1, p2, p3 === null || p3 === void 0 ? void 0 : p3.decimals);
}
else {
var decimals = p2 === null || p2 === void 0 ? void 0 : p2.decimals;
if (typeof p1 === "number") {
return innerRandomNumber(0, p1, decimals);
}
else {
var min = p1[0], max = p1[1];
return innerRandomNumber(min, max, decimals);
}
}
}
exports.randexNumber = randexNumber;
function randexManyNumber(count) {
function many(p1, p2, p3) {
return set_1.RandexSetUtil.many(count, function () { return randexNumber(p1, p2, p3); });
}
return many;
}
exports.randexManyNumber = randexManyNumber;