Files
papercrate/frontend/src/utils/math.ts
T

26 lines
529 B
TypeScript

export const clamp = (value: number, min: number, max: number): number => {
if (value < min) {
return min;
}
if (value > max) {
return max;
}
return value;
};
export const formatTransform = (
x: number,
y: number,
rotation = 0,
scale = 1,
): string => `translate3d(${x}px, ${y}px, 0) rotate(${rotation}deg) scale(${scale})`;
export const toNumber = (v: unknown, fallback = 0): number =>
Number.isFinite(Number(v)) ? Number(v) : fallback;
export default {
clamp,
formatTransform,
toNumber,
};