Please describe the problem.
It seems that all tools could be handled in the same way; there is no need to separate them into shape and draw tools.
Describe the solution you'd like
Some preparations have been made; now canvas will have raster and vector context. Each tool has access to both, so it will open the door to new features like showing a circle for the eraser tool. Refactor the code so that all tools are managed by the same hook.
Please describe the problem. It seems that all tools could be handled in the same way; there is no need to separate them into shape and draw tools.
Describe the solution you'd like Some preparations have been made; now canvas will have raster and vector context. Each tool has access to both, so it will open the door to new features like showing a circle for the eraser tool. Refactor the code so that all tools are managed by the same hook.
Describe alternatives you've considered N/A
Additional context N/A