advanced-js-kit
Version:
Modern TypeScript utility library with tree-shaking support - Array, String, Number, Network, Sleep, and JWT utilities for JavaScript and TypeScript projects
61 lines (59 loc) • 1.91 kB
JavaScript
;
// src/universal/number/index.ts
function clamp(number, lower, upper) {
if (typeof number !== "number" || typeof lower !== "number" || typeof upper !== "number") {
throw new Error("All arguments must be numbers");
}
if (lower > upper) {
throw new Error("Lower bound must be less than or equal to upper bound");
}
return Math.min(Math.max(number, lower), upper);
}
function inRange(number, lower, upper) {
if (typeof number !== "number" || typeof lower !== "number" || typeof upper !== "number") {
throw new Error("All arguments must be numbers");
}
if (lower > upper) {
throw new Error("Lower bound must be less than or equal to upper bound");
}
return number >= lower && number <= upper;
}
var convertToInt = (data) => {
if (isNaN(data)) {
throw new Error("Invalid input: not a number");
}
if (data === null || data === void 0) {
throw new Error("Invalid input: null or undefined");
}
if (typeof data === "number") {
data = data + "";
}
return +parseInt(data);
};
var convertToTwoDecimalInt = (data) => {
if (isNaN(data)) {
throw new Error("Invalid input: not a number");
}
if (data === null || data === void 0) {
throw new Error("Invalid input: null or undefined");
}
if (typeof data === "number") {
data = data + "";
}
return +parseFloat(data).toFixed(2);
};
var randomNumberWithFixedLength = (length) => {
if (length <= 0 || !Number.isInteger(length)) {
throw new Error("Length must be a positive integer.");
}
return Math.floor(
Math.pow(10, length - 1) + Math.random() * (9 * Math.pow(10, length - 1))
);
};
exports.clamp = clamp;
exports.convertToInt = convertToInt;
exports.convertToTwoDecimalInt = convertToTwoDecimalInt;
exports.inRange = inRange;
exports.randomNumberWithFixedLength = randomNumberWithFixedLength;
//# sourceMappingURL=index.cjs.map
//# sourceMappingURL=index.cjs.map