first commit
This commit is contained in:
54
build/node_modules/math-clamp-x/index.js
generated
vendored
Normal file
54
build/node_modules/math-clamp-x/index.js
generated
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
/**
|
||||
* @file Clamp a number to limits.
|
||||
* @version 1.2.0
|
||||
* @author Xotic750 <Xotic750@gmail.com>
|
||||
* @copyright Xotic750
|
||||
* @license {@link <https://opensource.org/licenses/MIT> MIT}
|
||||
* @module math-clamp-x
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
var toNumber = require('to-number-x').toNumber2018;
|
||||
|
||||
/**
|
||||
* This method clamp a number to min and max limits inclusive.
|
||||
*
|
||||
* @param {number} value - The number to be clamped.
|
||||
* @param {number} [min=0] - The minimum number.
|
||||
* @param {number} max - The maximum number.
|
||||
* @throws {RangeError} If min > max.
|
||||
* @return {number} The clamped number.
|
||||
* @example
|
||||
* var mathClamp = require('math-clamp-x');
|
||||
*/
|
||||
module.exports = function clamp(value) {
|
||||
var number = toNumber(value);
|
||||
var argsLength = arguments.length;
|
||||
if (argsLength < 2) {
|
||||
return number;
|
||||
}
|
||||
|
||||
var min = toNumber(arguments[1]);
|
||||
var max;
|
||||
if (argsLength < 3) {
|
||||
max = min;
|
||||
min = 0;
|
||||
} else {
|
||||
max = toNumber(arguments[2]);
|
||||
}
|
||||
|
||||
if (min > max) {
|
||||
throw new RangeError('"min" must be less than "max"');
|
||||
}
|
||||
|
||||
if (number < min) {
|
||||
return min;
|
||||
}
|
||||
|
||||
if (number > max) {
|
||||
return max;
|
||||
}
|
||||
|
||||
return number;
|
||||
};
|
||||
Reference in New Issue
Block a user