Nickel oxide electrochromic films: mechanisms, preparation methods, and modification strategies–a review | Synapse