From 2fc1620495f0ed01438ce6984a98672779cff265 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Mon, 17 Nov 2025 20:50:48 +0100 Subject: [PATCH] fix: add nullish coalescing to parameter dialogs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixed "Cannot read properties of undefined (reading 'toFixed')" errors in TimeBasedParameterDialog and DynamicsParameterDialog by adding nullish coalescing operators with default values to all parameter accesses. This prevents errors when loading presets that have partial parameter sets. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .../effects/DynamicsParameterDialog.tsx | 26 ++++---- .../effects/TimeBasedParameterDialog.tsx | 64 +++++++++---------- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/components/effects/DynamicsParameterDialog.tsx b/components/effects/DynamicsParameterDialog.tsx index 312bed0..91d26ba 100644 --- a/components/effects/DynamicsParameterDialog.tsx +++ b/components/effects/DynamicsParameterDialog.tsx @@ -371,11 +371,11 @@ export function DynamicsParameterDialog({ setParameters((prev) => ({ ...prev, threshold: value })) } @@ -396,11 +396,11 @@ export function DynamicsParameterDialog({ setParameters((prev) => ({ ...prev, ratio: value })) } @@ -421,11 +421,11 @@ export function DynamicsParameterDialog({ setParameters((prev) => ({ ...prev, attack: Math.pow(10, value) })) } @@ -445,11 +445,11 @@ export function DynamicsParameterDialog({ setParameters((prev) => ({ ...prev, release: Math.pow(10, value) })) } @@ -470,11 +470,11 @@ export function DynamicsParameterDialog({ setParameters((prev) => ({ ...prev, knee: value })) } @@ -496,12 +496,12 @@ export function DynamicsParameterDialog({ setParameters((prev) => ({ ...prev, makeupGain: value })) } diff --git a/components/effects/TimeBasedParameterDialog.tsx b/components/effects/TimeBasedParameterDialog.tsx index d327aa7..3308aa0 100644 --- a/components/effects/TimeBasedParameterDialog.tsx +++ b/components/effects/TimeBasedParameterDialog.tsx @@ -331,11 +331,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, time: value })) } @@ -351,11 +351,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, feedback: value })) } @@ -375,11 +375,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, roomSize: value })) } @@ -395,11 +395,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, damping: value })) } @@ -419,11 +419,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, rate: value })) } @@ -439,11 +439,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, depth: value })) } @@ -459,11 +459,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, delay: value })) } @@ -483,11 +483,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, rate: value })) } @@ -503,11 +503,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, depth: value })) } @@ -523,11 +523,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, feedback: value })) } @@ -543,11 +543,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, delay: value })) } @@ -567,11 +567,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, rate: value })) } @@ -587,11 +587,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, depth: value })) } @@ -607,11 +607,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, feedback: value })) } @@ -627,11 +627,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, stages: Math.floor(value) })) } @@ -649,11 +649,11 @@ export function TimeBasedParameterDialog({ setParameters((prev) => ({ ...prev, mix: value })) }