Changing value

When the value property updates make sure the component updates its internal state
If someone outside has a reference to the values array, they can modify your own values array directly. So by comparing it to the values array that you currently have, you can't verify if it has changed or not.