use-watcher
The `useWatcher` React hook runs a function when a prop, state or other value changes, and gives you easy access to both the previous and next values. Think of it as the functional equivalent of `componentDidUpdate` and `getDerivedStateFromProps`.