Skip to content

Commit

Permalink
feat(math): clamp function
Browse files Browse the repository at this point in the history
  • Loading branch information
AliMD committed Feb 1, 2023
1 parent 9916fdf commit 6fe4423
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions core/math/src/math.ts
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ const unitConversion = {
* parseDuration('10d', 'h'); // 240
* ```
*/
export function parseDuration(duration: DurationString, toUnit: DurationUnit | 'ms' = 'ms'): number {
export const parseDuration = (duration: DurationString, toUnit: DurationUnit | 'ms' = 'ms'): number => {
duration = duration.trim() as DurationString;
const durationNumberStr = duration.substring(0, duration.length - 1).trimEnd(); // trimEnd for `10 m`
if (!isNumber(durationNumberStr)) {
Expand All @@ -201,4 +201,9 @@ export function parseDuration(duration: DurationString, toUnit: DurationUnit | '
throw new Error(`invalid_init`);
}
return (durationNumber * unitConversion[durationUnit]) / (toUnit === 'ms' ? 1 : unitConversion[toUnit]);
}
};

/**
* Limit number in range (min, max).
*/
export const clamp = (val: number, min: number, max: number): number => val > max ? max : val < min ? min : val;

0 comments on commit 6fe4423

Please sign in to comment.