diff --git a/src/core_views.js b/src/core_views.js index 7e66c13..2411b05 100644 --- a/src/core_views.js +++ b/src/core_views.js @@ -294,7 +294,7 @@ export function renderClassesView(deps) { return; } setFormError("classEditError", ""); - editingClass.name = cleaned; + state.classes = state.classes.map((item) => (item.id === editingClass.id ? { ...item, name: cleaned } : item)); setSelectedClassEditId(null); saveState(); renderView(); @@ -478,10 +478,17 @@ export function renderDriversView(deps) { return; } setFormError("driverEditError", ""); - editingDriver.name = cleanedName; - editingDriver.classId = cleanedClassId || editingDriver.classId; - editingDriver.brand = cleanedBrand; - editingDriver.transponder = cleanedTp; + state.drivers = state.drivers.map((item) => + item.id === editingDriver.id + ? normalizeDriver({ + ...item, + name: cleanedName, + classId: cleanedClassId || item.classId, + brand: cleanedBrand, + transponder: cleanedTp, + }) + : item + ); setSelectedDriverEditId(null); saveState(); renderView(); @@ -654,9 +661,16 @@ export function renderCarsView(deps) { return; } setFormError("carEditError", ""); - editingCar.name = cleanedName; - editingCar.brand = cleanedBrand; - editingCar.transponder = cleanedTp; + state.cars = state.cars.map((item) => + item.id === editingCar.id + ? normalizeCar({ + ...item, + name: cleanedName, + brand: cleanedBrand, + transponder: cleanedTp, + }) + : item + ); setSelectedCarEditId(null); saveState(); renderView();