Anyone know how a form file upload like this is created?

So far I’ve managed to create and customise the input fields and file upload button, now is it possible to change the active state of the file upload button like how it changes to the photo you’ve uploaded with the tick next to it?