https://github.com/Solvro/web-planer/blob/main/frontend/src/lib/use-plan.ts ten pliczek może dałoby się odchudzić używając immerjs'a, bo jednak dużo tutaj jest logiki