MyPaintPot- Draw Line/Circle/Rectangle with dragging on canvas and redo/undo function

Here is my version of PaintPot:

We can use tools like: pencil, line, multiLine, circle, circle filled, rectange, rectangle filled, number.
We can choose line width, line color.
And we can Undo, Redo, Erase canvas, load image as background, save image, share image.

Here is the aia.
MyPaintPot.aia (392.0 KB)

Extension used:
Thanks to Canvas To Base64 by @TIMAI2

Font used:
Material Icons

If any bug/suggestion, please feel free to post here.