pre-installations and preparations
This commit is contained in:
1 parent
3e5a0329cb
commit
201d621ac3
6977 files changed
+742826
No files matched your search
+16
@@ -0,0 +1,16 @@
|
||||
import { clamp } from '@mui/utils';
|
||||
export function clampStepwise(val, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER, stepProp = NaN) {
|
||||
if (Number.isNaN(stepProp)) {
|
||||
return clamp(val, min, max);
|
||||
}
|
||||
const step = stepProp || 1;
|
||||
const remainder = val % step;
|
||||
const positivity = Math.sign(remainder);
|
||||
if (Math.abs(remainder) > step / 2) {
|
||||
return clamp(val + positivity * (step - Math.abs(remainder)), min, max);
|
||||
}
|
||||
return clamp(val - positivity * Math.abs(remainder), min, max);
|
||||
}
|
||||
export function isNumber(val) {
|
||||
return typeof val === 'number' && !Number.isNaN(val) && Number.isFinite(val);
|
||||
}
|
||||
Reference in new issue
Block a user