Isn't this provided by the event? If not then we should probably use `event-valuechange` for a robust implementation.