Add utility functions for handling optional numbers and input steps in App.tsx

This commit is contained in:
2026-04-04 19:30:03 +02:00
parent 1060bb11dd
commit 6bb996592d

View File

@@ -260,11 +260,21 @@ const MIN_VIEWPORT_QUAD_SPLIT = 0.2;
const MAX_VIEWPORT_QUAD_SPLIT = 0.8;
type ViewportQuadResizeMode = "vertical" | "horizontal" | "center";
type NumberInputStep = number | "any";
function formatVec3(vector: Vec3): string {
return `${vector.x}, ${vector.y}, ${vector.z}`;
}
function resolveOptionalPositiveNumber(value: string, fallback: number): number {
const parsedValue = Number(value);
return Number.isFinite(parsedValue) && parsedValue > 0 ? parsedValue : fallback;
}
function getWhiteboxInputStep(enabled: boolean, step: number): NumberInputStep {
return enabled ? step : "any";
}
function formatDiagnosticCount(count: number, label: string): string {
return `${count} ${label}${count === 1 ? "" : "s"}`;
}