Select.Item with an empty value will throw, which is undesirable
The following is a fairly common pattern to use with a select element within a form:
<select name="optional-colour">
<option value="">-</option>
<option value="red">Red</option>
<option value="green">Green</option>
<option value="blue">Blue</option>
</select>
Using an option with an empty string for a value here allows the user to pick a colour, but then go back on that decision to unset it.
Attempting to use this pattern with a Select component by using <Select.Item value="">-</Select.Item> results in a run-time error being thrown. The error "helpfully" explains the following:
Error: A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.
This error is very frustrating, as it's describing exactly the behaviour I wish to achieve. I want to be able to set the value to an empty string to clear the selection and have the placeholder shown.
I can see from #207 that this is intended behaviour, but this technique to support an optional select is a common one that people have been using for a couple of decades.