diff --git a/src/app/App.tsx b/src/app/App.tsx index bd5da429..a609dbde 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -168,6 +168,16 @@ function readYawDegreesDraft(source: string): number { return normalizeYawDegrees(yawDegrees); } +function readNonNegativeNumberDraft(source: string, label: string): number { + const value = Number(source); + + if (!Number.isFinite(value) || value < 0) { + throw new Error(`${label} must be a finite number greater than or equal to zero.`); + } + + return value; +} + function areVec2Equal(left: Vec2, right: Vec2): boolean { return left.x === right.x && left.y === right.y; }